500000
858918427 968608936 643257799 626004104 893473150 838572649 959720473 391184236 946860411 78399038 439836502 350197376 730375242 364830046 197420423 348310459 957260455 865663898 963551703 742187620 986407131 780299673 146686748 809004445 861639901 58266263 762171844 725096825 722656528 828106780 427490620 549095708 525633798 487257148 911632990 580609261 838678693 136197130 950976848 800699834 104919003 284515206 846354621 316119108 211525952 80425113 399325074 295358094 941168084 206563335 769941951 621644391 466055942 823111801 407919102 929289707 184035780 816771937 754767279 860196630 997417251 761277046 639094851 908762800 991558127 149757563 932536218 771732336 110124243 801262969 293878583 964699008 173861811 671704122 801867944 682017241 739628889 980638251 107481925 617518542 424736891 133750753 443760936 892119895 357529584 852556470 914327700 912429257 929756871 270124921 762494726 984755739 389816340 754063656 816487137 402274790 78999845 789820993 85940787 834413166 547539743 581033179 614889203 810223813 900727774 820242373 927484931 862674052 155089933 309601125 851922857 722970850 504275907 413829554 357046501 945316537 995112522 108454126 985052497 813735661 760788644 878205045 120743151 943891908 429264988 997307910 796554567 65584777 950189961 749938249 760828942 421602371 127367897 741278322 842614103 602773083 956128736 858758049 965392466 935427895 950395276 890257567 524257114 880209111 590293650 812504447 946291972 767011198 255312811 97381879 835182852 992325314 511823735 65515300 812419359 872424811 3496843 175362299 841475215 928980067 192550724 742993344 875164387 463475952 903836992 939646261 531407069 222841482 991645909 280200882 789556966 954686380 266453132 758065386 243125850 668208283 659125332 883927246 605424417 148856959 469322485 651310463 990797391 499511859 886239100 860882532 528603872 957602909 860366862 833181240 915455502 964087792 955256912 944874415 908947070 135383425 296052754 827613607 776238888 526425758 677746971 934629633 741018434 223023283 912758077 696553770 607547602 149916185 901526376 114619122 776207961 900231257 635755578 96180248 100317735 939854319 764483469 765103977 927864338 953459955 820699767 17817119 829280398 876844426 921312483 523392392 512999639 389582 821749837 744482273 202746956 689549749 689882076 899369033 628009235 905091573 15607244 961902902 967836015 273120891 750601329 919504588 975847088 770274139 223926881 958149805 440586109 774096189 148860139 377232439 526495173 556410840 604224903 514686236 850397585 932544454 174448169 786824005 404629607 945088205 552762448 76447368 665007254 968589370 146133135 189313779 761144936 142307387 525369557 759449275 749360686 917173538 917397039 299922164 860411893 994683671 247965453 565599867 157179382 441502119 538892028 837612112 938908143 495762572 749296361 178365012 531747084 784946124 79657270 41727398 766707167 886600033 884695303 112194710 313047910 977185118 755819533 907955355 367066594 490895226 923990864 970337279 518502983 593939910 136905271 426408098 957763300 777947252 788913895 104818761 525489494 809136422 943694983 310121485 39483348 385042181 455208933 659748180 887093580 969003833 336224897 829729098 229413985 619742294 994607967 441400266 184203935 974349991 820549961 392904437 955637489 902193102 774048974 827992113 544400167 762147788 642965054 875096504 165224298 819702353 607109319 861207258 658202506 857350002 979349373 583299724 227398207 864034781 567993632 72992662 415596752 10988803 443453343 716647252 473535026 919233044 103120677 163972322 984022527 879980954 83007163 271199943 874393495 668203127 638404063 990044166 64290702 170979241 842146138 251993524 752153705 327140420 656175524 789603116 533559865 914825741 815136675 922507176 1652517 786592239 745243495 110646364 862643110 880025344 932360563 996141612 999653247 874196586 136751498 960490827 981198453 883274408 750940825 791214301 848644142 748760660 849462400 868143397 758940716 398045456 277971310 484989265 920677273 585523291 914545637 455720960 751670131 604436752 989950063 769505446 758688919 517458510 745575106 560043539 108106236 809351619 297312148 74821684 703888818 762659953 460125880 875139892 645098614 687244468 824147393 818902400 958486657 659076471 667838060 901294324 354027976 352891797 338502853 824763073 413474747 905939255 266272656 374436350 427147153 42344528 763888423 802944453 545257908 932522827 626931689 918038211 873226750 944297445 938349991 951919032 346422264 970844047 527515075 603128351 987235799 656265684 753333415 895625878 433323106 789248528 451296776 765030599 978996859 943841303 803272342 257551614 586987097 861717437 39982880 329959565 839694528 771900806 400805786 880353121 813697382 908343628 375026199 896361554 682904652 186541652 935953915 902087889 130789821 264545838 132897839 73792416 862211332 162627473 588076455 888970423 653999994 579788909 923547177 796654324 896387170 949816481 756669096 798032805 533446842 478338762 751424407 353361920 830657500 740875207 577597752 987538424 783467164 834642613 372239929 139430950 266415244 480056838 947320465 834551872 14327421 320003580 230576279 71584141 979057830 828483912 588458388 729837465 585941020 951785221 377554142 274517365 107041370 886551223 820615420 781715419 828672622 161441936 850561756 742334891 964418104 938784664 866817201 773083527 904756608 8633165 637311034 903603479 371449179 773292868 249096922 917366544 614826116 770142285 762739058 714293592 817154251 610191661 641243551 47844882 439120387 932894143 753692899 179896091 952965794 635920292 664312039 302986800 972657563 417045312 734893338 257235323 436839015 67957288 277631723 942500713 458748695 798563798 807392826 57228945 959937570 351377904 732233378 939773200 891542692 255184065 292677637 446359655 464515104 891336931 619619823 380699028 964975682 789495988 956474148 827203322 707169127 248576847 915689529 895340339 778921488 955525327 600668655 604421139 723642176 556690890 382121067 933988954 770867506 778044668 13274472 614064227 142573000 591727435 665948715 991476231 494013337 920331528 970850919 517791051 316502033 367133992 943517791 502890676 873485813 402864132 809246082 475712095 691594338 419058080 846500465 181776199 918756011 759066936 761476123 957930499 756404460 714191796 633656169 762882618 851584374 487658038 13119636 773829022 852851480 294050204 236192908 982280563 857935594 139024900 548112530 491648191 655905710 767094092 333832108 559771381 973210064 850967658 756894485 46460471 781006156 806633986 321162181 431091620 561438223 212489382 1683672 860968987 764241450 931443237 555099825 991427822 801153295 781271948 867986666 507448305 869599976 879361477 931946556 813613037 671997450 968951918 250557893 902312024 806854555 498516739 268957480 930218424 757354276 662050631 959224013 971552561 821349890 160644128 935554597 152012865 567272701 921413668 852482639 165472035 696963102 846862520 54293356 549065280 763305847 933349418 228283942 969121931 564402793 626468591 770505394 261941025 822643188 843462674 810606905 556443892 456063711 887198208 824953499 848569226 733911606 555065699 448613669 822891940 863883596 261369225 426731659 859974500 796652744 147272019 16810192 994045187 538993511 107639298 363819672 52950166 772119662 262539888 881778706 659949627 330683412 575424582 373657761 797992323 784135521 220194528 409680972 926810974 282699303 516194230 832281580 845493024 157459412 21016737 846773476 959762267 998117270 762181604 986027311 555408810 580333898 571815841 900856999 200711156 303432966 827986653 437606822 16833275 574045784 171586799 496595226 928305134 919568208 878489457 351991446 702601353 706544081 748521597 919237057 572146591 242493410 81254558 9986894 752341510 737020247 23947817 780375527 752287760 33360430 968349657 958457182 73061595 128687946 995553526 928625273 888147872 909061800 873806430 341998156 808630794 792208346 769102528 942897811 855926785 913443760 792274410 825386662 828036498 791765874 939235728 882893549 804309930 670350349 206513272 942474759 851062673 156493123 949616796 470723066 920725492 25938327 896526971 348634619 782646911 667855775 563166664 437674640 737020247 931974731 969219000 633017422 591206102 402746780 298260788 896937911 896531568 388375675 745118640 299977513 241886616 855394441 265078134 262592846 160083740 120785076 933706599 723480791 363950370 912213941 849039359 686480862 400893318 279506705 872205942 516879424 970858022 774662891 256551164 55187306 770445039 580553281 975591606 826178552 805775951 841968552 377501438 878418977 698655306 393198753 542762788 945827423 672964830 438321900 127603535 51482993 410249135 170553208 14077146 905417267 755872447 738334383 440601296 987256009 340381162 323897006 883029935 920729805 133537024 995244117 409068841 428135662 93305706 772607896 593316270 203599076 940861011 241774787 751594816 438010108 739367930 838804405 785311718 870894130 308024902 791218850 491148415 957917238 939018342 719402935 972755172 850577838 797974168 944504745 655035767 930099788 955769896 783118962 817588786 760062467 972794275 834227300 130567592 927118194 678490437 58680015 944998205 290837030 749078864 868064543 251555510 779553210 312978797 890741490 182286756 993839681 28240177 967945490 997825963 955789515 942531949 418972361 657517766 336069187 882994875 896312219 827179846 505838508 583568663 781832490 972371537 352959817 905291623 20584570 390405931 788929170 691467646 647998621 792312292 887312218 796140399 906623069 817089356 845709681 281224355 723978685 797032264 963028082 532995437 527151205 659445385 774259238 46614753 765614502 170071958 286841542 663829963 807108498 405465317 979546981 872453338 397513346 510300301 36184450 439791071 868811283 989023728 812792820 743170488 790629784 896483626 372945398 751151622 151664188 632288200 12065118 152053065 981644042 54350542 842389022 908714340 293070360 174168608 713332150 889029974 780291716 554685835 423916357 491691839 13766980 34247400 157557771 61394456 562945586 140730033 934058313 628996487 991924127 206451071 984027185 803326702 849625779 256604729 749495143 746276810 741140367 751167815 58921819 18798444 562699748 774130210 858584468 726416372 351078912 948888921 970468918 693946299 218086593 276004976 402430757 658154303 779881280 700741897 656153367 709695920 841871239 990080632 520344778 787394859 856150784 485881888 577715634 975824345 584154936 940651182 754079820 837134385 498402899 530991311 699621719 813017272 599735913 943428383 753266733 802640173 902558679 662863598 104302352 327259120 367369245 886460795 589593260 624173144 783059528 815809171 831783817 212937125 91978118 933555791 913472623 976453102 845302549 786932308 597894884 498795616 959290279 553219517 764670296 745885597 239176850 743605714 392879368 923339632 944000264 868589712 974705955 655840435 100802722 884367304 690730156 654920724 893410071 402133160 768225081 302312099 868922772 516582740 790366611 994662589 536221776 893205116 846390838 46736290 738024346 857790295 144687777 377511027 494942302 985403245 812345899 122829912 358986439 783068176 786763547 658247614 997759444 961020300 55600641 903153989 947623965 765650417 963625806 401727610 158991202 999902462 835303542 845623734 936319148 123234694 154775072 545608557 917189040 453007138 29806889 780571525 994817829 495379722 445315191 522320287 926947119 740698225 743483529 885067155 585931903 946459383 367360693 947374633 787841696 761906863 561166202 301861427 37085268 420744257 378540435 882272046 930613688 619497641 885689777 10890630 400015141 625961513 506008341 955284965 782742339 738888074 554938630 59852700 462581384 570940623 760491852 377334110 705203297 834776928 835286037 819015092 622012980 641498213 804440982 930785826 952761826 818405013 58583931 865505381 745309331 478794405 20028742 923143925 958929980 62454846 784137214 47157445 281732981 994104272 137974131 61863244 961270400 666422768 676873819 105531973 824920999 628619875 817677191 701105114 951548121 485331403 665770242 25639583 440561710 947942751 551837497 775093091 359135453 981594104 884496332 801255734 788338025 977595266 72185171 427700091 85882330 808827715 61439770 865025828 611201324 901103962 865396087 494100225 565319373 644843984 110572016 994725934 887153717 861453562 57237960 518631150 496423235 933299390 411408397 836150035 336474831 111926288 745914129 965291328 423040052 77690735 759575184 243666074 104570351 86154478 804628717 803358692 264485691 891239267 739878400 657899403 836473256 980216325 330894760 771310402 911728647 109643213 366872842 943770604 857383143 198318913 3280804 574835939 813268994 133258183 93689813 628569292 959389716 756917887 45150772 781935606 7857760 32545339 398512764 96431499 815912301 955515628 798204719 213819363 515909817 209805219 768876214 887356562 93652496 173930084 852969653 859288367 563788654 763697306 448899199 844364319 840793264 741877050 785421498 945478832 841514784 861282787 821612893 8529697 611887911 784346331 338114517 844573744 825205814 742511772 900567516 541568677 606961274 388771929 980300350 852996277 165331220 21448793 927378009 782807175 887087104 931329670 375371172 601692491 982237288 746603528 837861116 933679996 727338014 520401489 200611567 914719000 912521167 812572331 920171442 124326816 959516171 968988297 693562948 743608552 766797970 25001218 827520110 815648144 611444467 857121604 329406846 961238846 555657650 908836543 954747301 568336508 154226960 504281778 839482515 483847580 567892363 989478568 922449374 125186264 233922515 997056744 846286577 16790291 933301704 755280053 816396960 436232603 420407118 892259165 975968808 284093649 559851992 97899059 968015158 467711086 386147353 821491147 821686222 377890606 957703503 725379681 854227132 485883509 795363687 833906532 492791461 240027622 491669831 889238588 867334287 957377181 785196037 428908530 899299580 841746314 909706220 999422269 894463766 33557954 333611525 740861388 803988681 764322106 150650165 260112657 454790774 697033184 853069943 972844365 911782185 784929226 749272328 563086299 240729952 231857202 189406461 737020247 801452711 402995172 131942908 771003893 498802905 712083688 478777809 990498954 458445362 867296559 963250214 952339480 929724047 937521361 867512625 706339502 962877631 828669989 123560091 985044071 42967764 882675512 639614547 864552676 744806672 876560138 769189772 13215650 798229371 851574081 772899893 484311696 784633857 333591322 924193684 157063704 576755852 822667430 804045692 745921047 582265579 956524950 904395506 807176930 6464894 110896968 949066682 741617398 979858803 696779909 951986149 936320946 313319063 705933910 926511569 536539866 770659687 988843780 432285202 856805285 316975300 239113042 955048154 979220008 709917872 892690080 325923095 821202841 196001769 557182669 201665584 916807865 28493695 849071587 549603572 948731889 105295711 140717102 748065725 562344476 501728305 990385615 249168167 260582503 506813932 907879233 564999244 780872845 635779671 541362943 920647526 237242152 391430167 772753584 821419588 576175612 284355039 945737050 148615663 835835921 593875100 993514252 375754327 447056369 521410401 990074629 493286967 770415926 321739837 842043093 169867653 848032453 69755096 508555837 741168535 170006834 410127113 965122459 983932985 915727706 863767835 968034886 866845865 996572968 216075195 944949412 897260765 997521131 262515404 758379864 826376684 876478653 697840306 34743088 23117834 818748430 774868596 30768262 466845698 468021786 384995270 431691978 766794259 43307173 290971746 797699242 670330486 225473915 983098047 765562436 12674279 101425767 951804741 637074670 208870216 147903816 780214094 982747006 402013387 592428878 102626135 818464449 799156306 898362043 757361081 438260372 806830017 47932716 557670408 561478994 1114533 579598364 866811815 816008398 812318185 640572493 950239207 837346457 177380281 687685174 722170456 467392144 902612521 485870870 901901706 831593893 274916448 963961170 445672106 553438057 919154610 301101479 30530578 199717556 851094979 936954503 812814246 980874079 812353044 237511964 905480954 779674478 352364006 569636700 650734775 544386950 957028581 637405119 740956393 274839372 828048355 638358719 747150545 188566370 339607623 553924607 865057676 926282537 728682825 986664481 744226044 374971837 68159925 594493897 882442255 882223924 937527353 606897400 141403452 641202917 819742036 879852360 993108138 194286038 907069041 929770280 947498084 604213538 919107665 979661093 988996917 761464786 804454284 958240190 66707389 595955720 935399642 88059887 352433324 847602783 589502225 243397711 28383432 846938333 919108985 840892967 837941407 831820337 497784309 990755754 440871869 987399850 741827447 980264978 464814021 106237866 555898195 355199328 264032720 444331487 7184788 641134101 405273672 925211868 301071690 247841953 749131759 505528971 602093726 628484215 822586059 67685266 855772500 741328649 333712104 750517672 757563448 926548224 20320929 229337685 681570278 338095087 805762042 679852747 801140509 272490586 824674974 20315078 771003811 755082383 131519518 599483215 476118344 863104165 497928244 519568974 912662309 957812284 809067635 833866174 784835524 737020247 968578806 71072720 689945029 918353223 916380131 858490591 100671388 1583483 921678184 464887657 852796986 587352774 731085418 759688887 809536725 876098961 986758590 734062794 694184344 819385844 296627480 542068871 943243316 787697281 715650814 848302728 906757094 124929941 796500421 702222317 856198558 273746540 429146928 15230477 552987077 899516104 790226383 315384684 76708321 290885484 863177191 704678850 771417807 900590753 208493147 546764153 986507556 471601281 638266980 241942359 614116230 938669701 776642211 672725845 890763594 119834462 727172185 826716738 819788380 775631973 123088129 958959150 788664373 747343613 738203338 748929666 163031135 731478891 741303973 465489904 907996490 148270506 763462619 915676372 758909241 978547386 979054965 767071954 998721031 86788085 906991067 248523005 651024285 105325709 707741862 795288034 478401060 84891516 203475917 756553722 817862514 245292793 833297434 347020899 242495110 156692243 917992431 788752028 258640875 759444693 75939288 903226476 276201065 818990351 528641139 233833804 544601417 459140805 926994775 975244042 889964471 796883305 781573047 763106183 950368421 494647833 784251731 751932233 755571233 806267127 910233304 520532012 737020247 82353136 523722329 566548934 655240701 6183575 888420566 667103270 371602248 304917570 849729279 746000132 175933612 170851449 461961393 46014934 440611759 544900538 33035101 921461987 151215343 768690978 735045440 679333588 460034998 887958161 305612380 774693436 422632253 932031136 757580523 945576360 850000893 764607629 939480540 372609136 278676582 808353529 294299010 742228520 683295230 416934336 661773848 336443206 973665520 335107761 808772559 922086614 881076756 460411629 893999869 763223314 817194436 708408480 607035937 684225839 768788581 198878043 254200980 781830381 273479177 785326603 739269754 795446018 746421261 43008839 493822497 885034102 990580608 915332892 802376183 485454866 491831021 148547329 264436942 665977107 829463744 792331203 987998184 795537992 602950871 194863294 438244166 635793102 480766631 985116629 90058492 883100779 863028709 735588357 981946413 323000876 377424407 804398782 242651684 165560984 532014374 791134019 967303620 941568008 891206121 738072823 748981905 976340797 814469472 935405296 157182226 943518364 802147449 889699403 451879619 921354219 322092078 925644967 745441520 761013683 562123857 333956741 829396308 792673679 184796175 843537368 311967852 692072830 497005382 422463410 805968309 397725452 280399720 192908918 792993015 434386600 810599951 358721744 931950556 741124943 121765640 793359555 171894662 311410757 700110086 439071632 615763673 861362482 290398632 69060491 899186929 186550163 713719490 112910046 229317733 863655753 125499507 213263045 942821500 811251673 740702653 848508205 871502312 179946425 597310892 922263667 805526465 851250342 903506002 746764340 867570649 462519756 959029018 238391326 219803132 629554831 945638602 890158574 291756640 828399835 14225435 827693714 987709654 497466689 379423463 928467654 637285808 695018451 793135675 766100852 432068131 189192094 825916499 856178884 870382299 963820275 210175426 966717929 861176523 842399794 899176872 814665265 977362594 961452866 702700393 962061389 713532888 807904729 792141349 986888650 942869176 665149173 909709214 498654328 340746528 901014117 744128570 545656790 979950048 662229601 542130021 668948205 931028017 363744405 631572145 296475026 663307613 867339698 139631909 248771639 152554321 620404206 502589402 741232635 739487490 783150752 14678266 753813721 769770656 53957739 95947214 639201777 422616630 829687149 838879224 915330201 522450771 975508879 748921081 235820666 763815702 633200474 411830954 145035281 707947897 290096446 678885214 370243261 755051195 767513721 973235238 329066766 840849706 852085985 156624702 858033915 802916061 905102346 434363918 24942305 973514623 481703667 465450075 239912702 967008650 199572109 785870973 885416725 750178513 144185311 110119168 647917272 945976253 820033904 634015377 163428691 991953700 134530193 812969088 954671803 870779689 791858551 926298795 773785244 961146825 174429811 894905644 259074618 981788570 901901629 797668319 507404822 817830211 211647166 776972803 292675307 881860959 340088194 44892581 990973481 372157753 877612596 71596977 945231281 890353155 529630846 339970116 892367634 478298924 278568414 657767176 702129458 372056516 64475752 191893840 385481077 758571121 971073890 880462240 720775167 812277169 952138193 264092368 527602413 762625183 479053708 770201048 741492647 368085029 979608467 119643710 433688266 394935037 312827264 381813197 254555252 946343998 164624817 771812093 519792424 18748886 314784901 955284693 229659162 563203148 750639655 950019485 811476915 658115007 971276957 398602475 995484576 874620997 94427757 962215739 569740287 799659585 604887476 375858101 114851641 472272923 715049952 352557622 573461821 363360711 947077411 458815234 847479273 850900446 504633018 328336416 984870541 525094176 105992375 238704738 894121917 782963198 885761815 374957937 795330069 824243224 444462799 501525171 558861775 946683827 441173673 791608645 589941989 765043332 666450723 793663713 829145138 803961941 910411652 846051154 907841843 781856991 357922236 873684495 885131670 620174992 676626012 224185835 674559892 878605342 635780472 693827805 610614096 527001368 762538347 824503199 781811729 871612310 882054621 640863294 783714571 550477829 126860048 190016097 877604204 182604937 855476101 901519269 778866998 953767302 862818082 426109846 726817309 674498823 428054708 365117142 907197567 935767991 588242050 980178344 920573929 352964174 847469090 487171500 420831694 801837409 857308952 803097300 873872262 827265359 255202149 791104859 316252493 775564898 153603443 870610246 804608820 280572769 351401665 785565910 743398137 836042788 952871755 827534345 575753728 764620115 6287073 948410008 839872716 106294227 72800986 338171076 484370285 927354318 151337053 931509175 549268123 474403223 380326121 584716984 339702133 173444057 775546596 470143106 789689821 811346118 222132805 797374018 141960037 824839045 861122522 190178849 464598769 746800089 772460013 68814057 444863136 280913468 963005128 484217639 10611230 413372327 730151434 989681749 598438216 903627497 327885796 799235931 753545266 988429308 751098324 629385377 355320607 781110959 957825415 684105282 983761071 188474629 990634038 339088660 858649370 850259149 638698479 764902656 108108340 604809926 233971842 216802579 338971497 347891899 818297433 984905605 942972475 110682327 822127060 851932273 792091342 746137111 737020247 851507267 764831647 984943908 196841363 582887597 730680436 710123853 296726707 450219747 792998173 852408844 829270162 631786907 634877204 51799494 834487532 159545372 655227657 921313340 824446078 530519452 579082870 867166152 432717033 380300580 951192338 966445807 507996380 262824620 324935865 199573636 344442137 489472309 868952798 104195614 962457950 539406543 465217040 990028449 681067610 848779777 830949975 250147970 420462649 272812536 880733556 758502965 244494903 82734674 259153133 945938784 619372805 309464911 945344473 622056400 994002995 724421061 815650927 45751924 125332981 812785220 807262677 666225716 982111959 964722841 281362354 413541020 826660085 922471064 960185291 946157782 83246324 984569972 639226974 929693282 625402609 581539507 629434620 826542417 87913696 864991026 990249367 267209897 641802827 454804862 487750507 791388165 122945363 434223110 954940258 993428399 280458471 23451840 884624560 760756082 764788614 759562416 362544045 792765275 765965335 967938933 492117310 921350769 835165661 10944894 897650858 847425544 777361245 412015177 442229438 452699708 745762223 272138593 664748845 964087769 346044008 251671662 635887730 784188508 750364632 980515684 935095369 875932306 709662421 898290297 947197966 840406194 442367940 241362069 65805431 920348178 882636800 672830322 57374381 506521288 555508328 767297867 6635858 850063017 118007751 331446735 974082634 82220893 687513438 595072643 863522664 413086186 974173705 635762980 300844150 993374085 315197981 688349545 100914168 44173559 946252723 965249475 750928068 291743912 155293722 279637074 984719623 139642280 985308897 603604341 464588302 595959361 919861459 903021164 577671724 925813389 16485074 849566210 764028992 186232755 914807561 811350649 541521032 941434799 245388528 860963817 781656835 817910988 992523672 621100554 279528384 490519611 912494352 861332234 875132535 856736664 804063733 350292127 768482310 966275609 653812930 978754893 966897313 259353460 607756469 952388723 564615320 865527997 922674537 153339861 688250986 831945440 520761951 949205074 872084220 2026032 865422666 272329296 977424289 179438926 918454508 294029066 976255369 913860696 762799795 749087406 863258599 612745184 292573732 708519417 870994653 156007025 877028453 190577529 931568436 760453137 601147547 745420647 145611605 967167697 950556722 770413326 987735784 661791092 308587702 590956237 871548432 797330357 463587016 760688637 865108318 690631243 920593274 845225439 804465616 802361121 785300468 737020247 983910899 287825381 875877735 750163377 815514356 120677432 916511786 311089928 530023359 976217290 799396207 2432037 906913506 530342986 841751999 447986725 853636990 461766039 749136537 875687382 678701532 679733616 971523325 344452191 994567334 544884133 55442385 97718886 812514394 770163756 726196588 920002565 512740282 248670281 981897982 287315118 865196547 198342289 896019291 573298363 860256816 6453806 271373495 836571929 589922339 786451544 315703062 300702974 140409272 447364966 505121031 79650367 6594225 5742304 870074928 632310118 784138380 492506610 568310450 893376326 486799217 66277736 186915277 747516493 760246709 306268444 965952856 725353668 988304426 351822571 141159529 84702024 984234102 884177855 851093070 563386722 672855094 181393413 430880895 776368131 986828853 847317892 470521199 544170566 118269350 89110347 117529458 751083613 943699127 827002424 273027065 194251086 419531354 272149073 84943154 228663013 643021380 929188376 355996636 856041387 801213188 178036193 738983179 81299275 449051572 33131663 738248463 18177732 887268908 775198320 589755450 942343376 890808306 767780188 976215407 328111269 543573657 387757579 179336300 932235857 868164305 843726120 847203147 28101123 922427561 24452325 971079288 885525888 463864825 958413386 861076969 633482084 305458032 779632089 29130853 193886438 140983353 922059382 847258003 906860758 61877883 601356821 862275750 773259088 908544922 836311052 579445379 183072923 742994242 982403418 271410604 986683498 862252949 948685179 893489557 737470310 175097927 830195104 884050835 728865612 772752960 491140925 433380730 919247184 320700167 411519734 333710626 531492202 813258822 846316472 941178578 899354403 153914751 980220920 6744683 821324027 895904518 238406157 451707604 518729249 163430194 482157064 995918892 362759817 946259685 412408112 186109770 911457406 686832408 939355479 245009404 874093039 348414130 968029513 565071780 953451310 819212218 990700740 795812196 805407845 903230227 835209209 331258024 104826708 378594223 838209979 909440778 682468849 885815498 23783334 29104592 890036127 888927604 93244226 873694240 80681779 61566526 384131669 369105120 999122401 628275721 853326126 226482096 17350137 540518981 99659180 254259472 487378407 735851186 260222526 160469692 893217546 917415291 291550158 787588049 476506715 609797961 615440558 25760638 161646683 938361640 351239187 43811218 854173794 933576317 967723274 749654374 972678660 922702503 146042997 590261978 790278328 980234218 818815109 998471917 251966478 867342523 846198660 442057993 337821562 299044756 28452030 762513909 112790534 697543047 299924363 390557147 748007468 405244581 562301103 100188588 358337456 675712836 853350790 765917212 773256476 811548555 368871576 163627369 899785656 403559080 107429606 392204183 101952806 907438432 672065825 797154487 785351962 779591635 773440840 384841250 993670015 526936943 638228952 940882429 930012181 852648422 970237452 125438940 830227298 399069275 895115864 174162861 61829260 150240486 679560705 745362703 772100763 603404587 534957748 874379915 789992584 945414909 999904651 312349443 954648853 470695987 146257626 473790064 831870116 279548381 88962475 779338373 908024081 501410836 198814353 947235788 568981525 826005120 748349338 910191714 518901597 145249367 896899022 855347513 536812838 794413660 890343976 639545086 688863941 201817063 172829418 300890465 455484463 160184884 185463309 523935888 656119325 270781034 883752719 881009955 860888708 162251319 771579875 936650670 439690073 986339024 791288440 231583627 956636294 970790133 828391780 849251044 165315142 58864705 960818986 309732230 54905552 457843977 118497556 578741818 269263445 73931621 751545156 792314225 801753059 359940378 906447545 417370658 615792375 921005222 294523365 551999653 528021170 743787160 865233553 936286530 889045260 221342232 139076877 895369343 646001595 254873169 644605794 944469189 367323553 832382736 655174443 929538444 86546255 41054842 751721806 203270457 697401367 59578136 713110671 258564753 529034978 987278074 548965866 533742946 785965267 744539303 550790271 954219594 647714608 137218123 766981444 680152577 791407460 898129599 173622339 165693642 793056197 987345179 148793738 613376497 197802808 966636762 921623765 782102104 787283889 594899024 763550402 788341592 650900789 977882218 892568384 926230777 979860030 721717557 793727095 978411953 988066814 283196921 593766650 537593251 528217027 752903882 807993232 856600969 515087731 244489066 110788849 814863548 852922974 673812560 899285195 815161743 242313241 593126854 117561799 833459599 529426977 817471950 102969007 568466373 44376553 650796691 798711445 258850273 980622119 583559319 828383536 938906046 8827690 936159714 349069431 827188912 921885185 325410092 985803880 403514913 835633386 294034885 860997894 168409375 519080672 430412002 555884103 899950790 889001912 777691184 776282925 499608166 37690432 889619745 416068706 738342321 861289709 654859564 887280656 320096439 157052698 757574878 597510043 399448875 753215539 970816041 840090417 266707260 741924385 803721993 485939962 971557690 370471412 70056173 633414309 872850122 226696390 878226349 883913270 902867062 983704818 791443451 198574853 756729225 821555937 809929255 737399674 863835408 404113074 551895841 889684584 807600152 962054463 183089895 902689676 535627692 778705109 870927164 529682155 728474594 878812156 384964183 895306480 964819374 845104293 873353622 73425230 814030655 587425687 121909343 743312692 589682968 755128729 550557956 939845537 768990016 916204805 554428004 152974218 978438077 770597864 835378366 39482116 960406348 669065301 835213558 269390929 294950460 425399739 243384281 283215533 78242257 32029111 606046716 581432119 833261187 270806467 937423990 835529008 716543876 996818334 35320490 656059670 817616892 914273625 346954335 902003866 261738542 790305507 899197657 630003487 716967535 429576904 989731337 293680624 993656224 196055278 559637537 509984308 618346475 202159417 244341139 241884480 592823634 914822413 890756795 228739945 363451876 908056383 821351779 412011850 690579043 904205731 891733870 877550822 807853999 940501122 881056755 935620409 518252240 817041384 618909701 838065709 599969126 657444323 906320884 194273750 778317414 853067992 799738371 828635308 582748812 510729153 150416946 811547586 689887538 145972752 865070389 332962789 481763025 975323169 870592073 222626053 308078961 581435908 981196326 889911085 947418973 924936648 809465552 754823019 937526529 89255069 898015799 735224942 287911077 857022213 882642249 994153773 791964006 533368221 748788566 761049077 963046157 384962362 576174139 642139594 249105206 866008748 16975302 796906031 991995957 178894518 451688824 6531099 915330041 961783655 260391321 415849018 386032004 483242475 422851895 680366707 548133180 766258549 576108287 786063019 941703707 509172177 787880095 828666443 441899642 948021094 823304079 838573454 62267839 961179020 55700718 894649654 942446206 932634581 975450022 433752457 860606564 746280967 18778030 788726145 727400772 266547420 8104975 927541438 5717987 238502038 384563385 787071326 799195659 726737690 913943678 753417757 547788103 960052522 371191509 888507553 913721159 608916572 850023493 991237833 139033559 231387896 51444799 728428806 771926508 385000934 699355842 723813269 478322349 744010626 274924319 134337198 538611040 867075809 57765733 409385933 848119211 41558011 222208100 872939332 717239392 825819041 801956350 782919224 742478291 563039783 911534994 819266526 837868342 103302315 603106435 855636103 935898889 881785518 318660866 741365811 733640907 932341229 962568437 908201352 800103945 180698980 958173226 274574433 472027704 850587486 509184388 832774966 880703550 602394386 239548549 645897473 215455209 730200278 755003491 130992816 847772716 729311105 904309689 421511708 751855381 825520263 882101667 523643692 501668084 954043825 937422602 757816486 559540881 878668817 195751287 296033735 877847158 551847232 896563686 981946952 167765923 287950573 198142748 422167126 800369669 768091086 276112973 824628927 749364615 890606007 994013314 215528593 842792349 492917677 627200460 572137443 834575328 802430590 851358060 495772013 919279626 201151275 384936484 539624086 806665520 238903050 947141033 772783128 332678999 121746269 934322256 878061946 691345617 738488031 820382953 59431865 578717055 358129210 832749203 338605083 993274368 541533151 136262950 636968324 514047256 366973999 978219914 254449120 791701442 719207693 962329111 925563949 35663692 846672727 383475737 981302689 668851457 955868766 964240424 353775812 963641832 770987643 989216382 822766578 690719613 878630363 610665110 798858111 859286596 922958913 795207313 90511939 851362099 340663289 931515632 225582038 762536337 987605895 831831959 880027605 358750310 644787703 768792263 495611084 188854908 900276363 796095739 956499592 731867577 908286118 974808172 384698266 563960954 340004566 893993907 884621578 107399391 908786664 968713602 178571100 513757586 328740766 393308653 631790381 144077475 856372748 783335016 972861119 808602128 788514521 629699856 343915613 804747018 199565376 391088191 792314789 131063545 440394223 998680124 862943215 768748570 628892119 629842558 302319895 168685998 874523843 641477571 526877579 984875836 44214571 367868927 746825611 644166383 95660220 106969760 515065078 600416371 779561234 199135404 841781819 319533667 827600823 847082326 736082471 915358081 774001952 630207068 802882633 260947320 809058470 993735830 376527437 975461570 575402940 442071238 877242866 882259493 95163417 556740280 843777072 932328153 920757300 476695397 952409845 2771250 356069712 476812610 968058440 905885276 5258480 721100947 993986648 770392549 833352653 981661624 657382490 637268735 160779802 162263588 678831440 113142896 976318154 739644773 332666327 59838371 998193276 143806858 922568434 753272441 749127705 817859957 386634881 268366980 786680144 810928406 691891985 774888267 896107802 482326565 550811076 8535370 886019477 893068047 454291699 824858463 891924573 114805544 161480891 897960325 320429805 742427916 923648089 759744912 288021032 234949187 107012656 13843484 893932093 808046563 114542443 494184383 888345852 352010340 998402427 796318739 880740054 791138540 936759017 695148533 163180186 367635966 509240072 95529229 798186966 959577836 392019452 860182989 657080511 958918680 723697190 880103842 180524383 920397180 586356261 859191477 845674579 991852630 179323848 770930310 916524000 407171381 105476811 98287257 811515685 185508477 828632970 744381329 842582812 858269252 936117281 974152879 770950382 885977103 380057976 991058377 968679048 896843004 60855178 151673825 708870122 825586101 695811078 704591310 817832922 331674659 674422358 428643350 921535088 546235289 842042654 519682876 737020247 887764165 560136897 346746570 987014659 963513358 495064794 376194136 189409222 998470026 130817115 933178547 670605678 692735985 333736805 925115057 796773446 857552735 63982428 815329064 314413948 458530504 558892184 803296999 339743648 88395842 58781376 933366095 817304146 856559006 915924014 910316075 823686371 782148730 945395622 972072603 250690623 983713024 709641096 764035342 814630917 765850335 825910880 603631479 978903691 685383004 195603998 843068869 975433547 750564796 145657931 542584939 819424886 678898603 281950405 196179042 935245936 998082723 759200551 734750621 790605362 630743490 980441292 810193444 950658567 987859781 856408459 990030547 446491179 891090255 786876572 439088703 728334164 967016945 916351473 374449861 75299436 755481381 865820096 734939993 384592712 311369757 655767199 658424648 935774238 877499234 827696315 611500041 931749602 312637505 294565409 355750083 403552582 51915393 835749106 593339627 793686329 968695595 768608013 182225167 954329084 549250720 843199431 56664416 886150426 201498329 635153002 440723557 397615598 745603401 870553445 741646464 506554967 955376695 998838724 972158055 701438914 40006998 819529155 908680140 877625577 155969263 991496024 139651373 958372849 963111763 628179957 279608928 939025608 281792835 156148180 82192790 81023105 853945851 843898552 769698112 920281846 917039182 963823697 994216444 83187714 389286871 192583181 261969070 127698219 352836246 935218950 942794903 912538735 737020247 976742525 865357550 737020247 817276574 758282283 27291328 204869163 952056868 944340991 626799001 737020247 790572476 293860191 177929694 765000075 919736585 791050668 766003862 831074942 972726527 582092608 958480971 643872862 106358744 51034943 829791744 777947050 737020247 656746875 379017053 754120537 852584311 24875504 815294593 280086213 194775233 788082258 370210365 372048005 972154975 103694658 449316526 899407311 549965430 293909868 89006050 964825679 262340290 182579590 214066908 839587311 856607413 330426631 264602752 307017122 843978341 85943085 499018143 858066655 235281426 320818 768251622 969364987 398263052 457447506 413736704 777645793 62558886 520500468 769678518 82078425 235186687 717131617 167836872 745168815 862677405 312045562 966364444 460155676 924937361 865417624 571455772 794378777 968488872 942696272 812057620 379353280 870019144 869386080 834096844 486725022 232758841 767472296 270990053 684691179 725278020 448214335 315519694 834943435 576345841 196194574 858440196 912174626 601583447 472794510 754683007 281524561 854330260 505127526 35981625 773253049 806589715 917346506 238207615 945736866 738100131 741956123 395867731 186752264 820570143 990582132 21820816 325277484 861615126 122552561 837463748 840318611 513028453 856603709 759166511 966906614 651504603 793857844 923781393 70126420 271742 907447029 728292626 115601008 860983390 882115495 679400443 887847649 652514067 926214790 744489307 2356522 746381686 982103460 383678448 760242576 761677662 846237877 13823983 824713227 937686701 122972240 527974166 154298838 479587410 716661594 87935887 763904143 860481935 983429918 757147953 811269493 116158308 412922570 775296238 505574140 182029872 446435959 249456929 456153506 932954571 634815227 605511282 981492169 497845540 686907534 619364546 134263027 327556344 739808469 623337011 722235452 914043607 821742653 759748136 989500589 68877615 882993572 932747782 144438755 839637272 336257639 700798720 990064007 790501855 507222064 312245284 382600604 619064830 938760266 916335634 900346748 881841982 308261492 833551387 773569321 783006727 810918198 488102954 690267868 165279028 633688095 995322077 303369728 390467851 95239985 945442128 901950168 880021209 969868526 855825760 601558173 200026222 413500208 104439255 331688859 406397765 749727693 142742476 820638414 849552947 934861399 822970918 871826506 915085131 443373820 343542054 995785512 849271447 715897869 212248719 810833050 200126797 847270118 983743810 554167050 748271228 28881377 721524758 296667997 192915111 756916099 503447874 754586935 675729697 997490095 342688274 924366305 73864006 931528526 740528062 845979609 855786013 936213321 314290303 59235443 737020247 183174686 960699485 557060808 961689011 827703574 502992730 312983862 323743602 895346657 347613087 73539569 897914758 18077314 754234431 418512725 66934490 764073540 885281173 265457330 890725079 592207778 717605957 873218626 779902503 889216518 73942394 410097651 893587610 354796661 872679355 955238306 934984612 849803769 908151988 434595758 667659615 219617127 139686844 436634162 526832264 998011944 241108504 811496011 956284633 901178882 214117232 138841148 76812206 263778780 780795898 679603471 186468032 955039031 303510718 51644113 157264645 163514654 903941791 886352593 728646013 736907249 590459754 989214494 930892259 434112602 934351430 931094965 366506055 568151777 296832507 658650611 848767590 569088775 216177365 999473868 845260089 142639046 296292601 876950198 794732179 791582550 441916612 774865771 746985655 199169931 272248126 986548363 893590234 620666856 768367560 521918366 827648490 56000614 278580397 930252921 438789047 849451524 157763233 473548112 85224603 803527600 866728199 747894877 547971641 613258179 266071106 880186216 323261919 308438477 461976485 116202942 802790138 44050123 103317685 972306664 589186933 737995341 774119012 741411311 862364806 105561273 552994213 297179618 733488916 439756129 412777549 43434857 936933356 847009578 305529601 757272690 780552908 680504304 891583820 86939830 236361433 765507693 699366633 556984323 792218115 957735435 401659009 880952082 562056440 756045722 316581864 281107156 678921723 795593597 963499887 901746776 751731773 344927593 141918350 341080554 869509424 951595385 616145619 932969948 774597135 865018666 313055587 871097661 156079958 776728462 912507876 203249689 170796053 581972790 118228141 627498618 953958800 66692930 766937955 809578451 794118602 486055160 150337931 747214200 863950247 577774025 791602333 830342335 684121876 869887983 927123043 874821397 141804256 822138506 802638782 433137289 442007912 346617585 974942246 403711544 888506136 737020247 850815006 712352250 68391912 861558415 380182185 163779649 966371749 390057497 741619098 736830220 355762745 14979651 817077739 824281942 294277980 997854782 423900030 721262814 604591182 768952446 286542288 603692263 558382569 782166101 189272075 456451632 457229989 189302859 509782365 904142544 737150344 870109623 483664317 765313551 780221898 423732772 907199967 911981245 834280275 551994919 970776229 763471444 241555294 709715261 876847249 772235242 882081696 772191813 936932070 722003654 110911169 993430068 703391639 879954347 160261754 604677054 16711601 266754336 853463725 913759226 772556275 113055309 374586434 249646564 756207947 959196071 949305767 781672050 876457267 538015525 924486805 795867631 661874233 109033762 213313225 656167979 797441098 261996573 992867203 903609445 263031075 148219009 567617294 503993425 143529385 644659998 847450330 904836121 831062434 359087665 802215383 131154869 807182460 801257558 790432780 64074936 999317960 473764184 686896850 966707763 197349891 515508878 277786979 807792020 709923883 855486775 113063074 989225515 748106772 720745306 931814587 232626942 552233009 981101851 974934572 121650725 649691705 191589408 354587530 558473102 205784747 935761927 245252529 388508207 113243547 259189325 756139878 104309524 610145642 793736628 130255479 830689529 292578312 456675150 742150917 915172194 801792736 47543774 810351672 795292617 862180511 733627879 737020247 80807201 855127607 610559612 142119024 3309554 45418201 863444975 667486051 9558982 793366582 932746506 745507549 378689076 922661944 379244199 460246729 138850229 752960815 872204400 542726195 916224967 848156607 806191533 533155573 429177794 265027445 39041969 800571098 113466739 356279101 257962173 951874932 788680162 128902925 890027308 817228337 989761646 431007826 150308916 837162403 884413714 112254483 849567807 750243159 857751285 961404053 825231673 946274984 201628635 856593696 809263170 552586084 809964800 694753119 122997290 394128627 724274840 856734039 923980470 757695694 285458145 897506805 819680688 259804060 214827105 172076353 887765922 293381264 605677091 463707471 848194342 966595397 982892607 782016954 472837425 331355303 966790486 961993385 146012451 381153111 255143047 653586576 572529149 312672811 779074352 343335610 779521177 210343311 484400527 342587488 175955349 844282705 960149100 19150137 853689468 734977146 18631179 180161075 75488497 634916547 742754822 756522176 579479174 979566243 994616328 587117451 925644942 866624276 260692526 228229144 881171143 907807053 256760854 883035294 282145477 74783839 889895127 860544248 813313929 633723356 704357421 834021303 687592906 49818312 815590873 143126144 857265413 214634877 805428037 806005146 315261743 422628632 777369423 351411693 923438018 450520178 190004063 373975902 928890003 377291289 693538005 483013082 832970749 895301756 334215081 524373957 899090009 876186256 594542218 130152754 829060099 786381985 809937847 928604598 774161762 810521513 391841434 343241433 399177065 833249654 842933086 857415360 368345024 372565988 388528426 709278369 747442135 906905678 889140570 865244626 10935486 599365188 993645048 117643827 761701552 761241991 494683701 789322378 13128193 944974956 817085248 835304921 70843901 876108220 844682743 300927385 684495577 737464540 614360159 848215121 451021619 213712642 943854712 621222710 522267558 557429949 926650587 185417918 126931193 995715154 473008252 659673503 776974263 474383461 678308772 541478971 839926460 121023526 938489831 560757883 289035795 782651897 142319936 50261465 3858199 167857721 922561577 761503076 758175923 764570235 841920893 274434954 436903547 77830734 818783732 977003932 667300453 814612337 585102390 815133287 996233073 212452267 659020984 186518181 906677748 440588011 690597515 467337584 16579864 671091098 903938342 163633030 172824164 944714493 466628154 839493205 980478410 596816720 750363370 827047014 975708913 96366749 569493890 555778752 758354263 338063087 670604613 304549354 545847554 859976536 746275891 748102062 351508856 216031998 979184708 595905267 457364716 553754069 594744629 941629292 123255504 13090093 800373246 169046831 78427610 943975197 841424791 811944602 920670353 928555043 761928727 824043276 919659068 746612420 919145461 979195696 741859544 174780115 365869391 740641355 867275085 332101634 77616366 948335739 586204244 551683664 929634828 788459098 875698909 940832431 990725787 222120071 589014077 782796677 210412438 517918992 940978983 229684480 382931577 321455055 842180860 688674856 815865753 142249506 965794610 975586765 906970698 741728399 694414391 553997139 919105746 931641002 212805394 66867926 845132897 824182103 659751754 395404173 401238864 833479212 158920137 132020058 817611666 955571895 930266123 999971245 181040812 733105426 695356084 799891940 76425948 703373968 908991756 920640742 944729002 157999806 980722972 657921639 743795772 785084349 955013185 607681365 427909528 323150372 528563540 806341647 985264662 445164398 320461411 779380376 823057825 718495366 283570918 970682387 104565490 344082605 957280120 969073342 769773562 792475273 379340817 998209575 918419565 970198106 788921412 398940269 957467125 779877125 737824212 759327654 826485682 144641143 786498981 301968610 920049873 776930597 823139504 85386628 855755300 767288548 438933908 325623012 653600098 888424262 473230460 946627406 68118224 937669201 759193243 797567164 946942198 833891551 431021844 843876069 183818959 900546581 369129866 956387748 897250430 774212211 994498954 772845776 870220546 754922192 193053048 215022761 808180951 315725973 652320694 870093655 954690469 548998080 77729189 521346442 771701962 224728316 457103443 878381702 143298113 903500784 968311456 86322381 930380920 790376540 717220766 814916844 523999849 802901464 947669206 152163446 978631705 691192621 206020602 889331422 721019108 267432054 797048662 152447790 887967448 817174888 970145698 882374782 812456228 227602573 841913632 915873522 535376681 742396154 997655441 559766749 965999402 913459341 306667799 800438494 434300257 784974763 455331 994759839 886971514 521949649 630725626 757362086 538696471 1861991 933477513 97208756 449229076 983810440 871287190 985133341 890347829 993865476 980231518 584727418 676930090 916995637 289852061 511718254 720381554 886653862 554193845 743863364 255240353 195739612 643541292 175752829 879253366 414824627 750251570 941413620 777698073 933029996 908451865 992286462 637680433 912076887 516055344 431726469 150200002 795421763 353828973 782134512 230927407 730200177 446660148 754959312 775939632 942977129 934365448 934841325 802105257 844895096 777189335 934818060 198932718 874761830 946840761 323097208 960823984 266985312 433144053 189085583 6213854 973381743 268741983 31992116 971368231 165747543 445093345 948516448 895999699 328677365 970410814 529348862 842075642 969832555 320850781 676807563 747863803 775812016 54864971 473433372 860856694 257286043 851652508 783802441 559623157 842556043 778483104 858475451 824326506 842125148 137960557 520691235 531662190 72302592 925051765 385288366 538071909 940323776 672440495 107466487 737020247 527702916 490115706 557876649 865094882 828579903 458174053 748389111 880353662 827186903 808762415 334481150 869936486 988497996 882712252 611054287 370658376 989995228 132488793 795912123 845458273 947405284 958190220 745573585 44072611 148573285 268348766 732807891 813077049 23099427 3610585 98035757 866718653 657129616 809471866 678987182 945476304 754435689 399312704 805822135 892830850 447528954 873613529 940726833 212236617 710118560 358381539 940815238 118845113 970414195 781324264 961215476 870974050 175035342 229660159 503417275 650508732 542479848 192671303 826019028 342557857 356988361 970576663 361227472 30083883 440565607 728149062 983946223 995650163 513943090 913096260 857764796 652524550 579172184 280663590 8239415 968529868 6480979 863219746 356606991 951025000 19206793 922955768 769490955 963240281 957534742 615255125 721224483 102865719 799487231 260881613 895412059 725460430 759773665 744883728 923500752 996660915 194453046 764201973 18295533 756812237 928045644 206893610 439418187 989175458 110034209 143355529 230092692 640965107 787059456 256754134 254542129 350487563 224182612 754897974 559934876 466422751 793679573 901619863 180088272 95600105 985504870 75300939 451934719 451504496 505207628 985586866 656352917 631719936 923048081 459251317 674884840 856493033 918369389 750068932 36911627 248477191 753443652 12560117 244808526 619312283 828251254 762583102 954167897 473946016 758049339 659200745 280764362 835910430 450549473 919768953 820601814 737020247 834873754 914431769 842681235 891661836 674664096 922090927 364850091 240242070 303638921 382515073 622105282 841071656 762525398 205219341 473898409 755645284 910815603 986840784 422345884 103023017 932290195 238428035 423014139 994311961 439496900 618806921 965418701 945895701 851529294 849681417 774534391 9785050 777403799 824494425 536593093 977922662 807156980 960448713 526894363 810008144 956756314 732306965 375880436 915969871 335661279 739865676 744736403 68101468 993648248 78037081 952484552 247877442 65391869 780902196 460410128 462834682 763835957 852351420 531494517 323390722 998915481 90331385 561075798 955236699 726674561 219575341 167115880 182752221 530778879 756352152 894948333 175454594 393976555 318077943 764305170 999578306 452312414 427852545 756531380 481756157 836418507 339710780 918469384 661730151 537022107 445979834 835072134 791121928 251751612 933811811 604739454 874846061 886295034 922504814 854006625 940871032 960694381 859784770 103583278 91191116 968636927 865361079 13914750 971900996 273958305 888102143 525436640 977075006 984530321 201100744 257740630 995265072 844119931 568273238 858623958 120015709 625479881 967959274 393537608 769017917 104492326 976440267 765773579 708181300 643330941 413871571 933086885 337775177 845145664 581365657 57153751 738989082 776529160 311226225 950528509 244958060 913722604 160564943 750051184 951760347 845664741 714482311 655317869 583103894 982738027 862808948 903026133 387947140 657741047 827281956 987131138 146421161 24441999 166340184 830098110 809257659 985579716 816410171 962755072 853555907 168273070 160821080 875050071 882319816 884252181 197363963 558135094 862885629 974195839 244777217 941687030 877758393 408984305 745726247 645196544 793500027 565091317 866547217 676715989 994865127 361084706 986972364 750857842 957402702 952983757 871601598 970684818 25843231 98179626 121570225 869169455 538946010 740590631 949474633 694726252 109863332 902290022 961876887 266299281 758853380 564236176 943646805 971303023 521870698 53307842 452544072 618050840 583430196 812897093 847346631 913227639 114373043 292016583 969019580 834675918 829098699 467416871 417893923 961318076 123561382 37610386 754843948 878802708 880319885 872283307 948289287 756696118 870659930 100092004 19096953 77599718 26236798 630629599 553308735 758989161 413176620 998466048 805711312 904228415 317967039 976326216 92435868 53490094 835969159 833152955 899349356 239683752 778240743 513300569 934763790 277320889 793907095 938157990 581669277 841141035 807279532 564445385 903632133 914042007 904900328 911938423 891565890 158153261 499636190 506036141 306730430 975164207 8290293 572160380 875205677 545807536 889105234 261285191 842776540 543829147 898445582 328516832 665877681 708435183 918690593 696639058 677434349 922700872 820235442 984682730 433511158 834226120 866944199 397506126 329846327 123159124 487240361 536305754 490299664 421764545 225261721 907650142 706703311 306913158 167952561 260437624 646732423 740004648 276423871 754831129 562404198 862632015 893476096 457143805 801931193 266997532 804465861 474435056 922963572 646258900 455551199 310386858 841457529 887728551 763661022 968502399 832786805 838129099 865112565 115831523 991022078 149400950 623880477 326833854 671376284 298887170 935923261 799858561 958202758 846175306 325531386 375870026 732941056 441627525 589203267 56948341 917471097 86319637 906068463 658499542 255615623 489832709 226992599 22284155 661211499 401783417 785892979 36735971 929060417 849159473 6945899 833648814 881156804 861020609 948217468 823777717 551541146 224979088 161079720 672912586 905891505 650939033 826972330 785648586 951036576 391157265 153519141 593805467 970720228 344635866 881368476 817709583 392800090 839126715 259014186 285702048 784744875 873951121 612553931 445903033 905626747 621241429 713419593 890289923 869402791 266859650 408764247 421961163 844397472 58864434 46944377 766917407 220693411 839690724 789590695 967816715 859310941 374883367 994836345 138815210 911601729 851081940 713923280 553107365 390516799 747174546 387844691 889646647 846310480 245341394 139948983 371216906 699431666 375438102 747306094 536513543 650517050 789532379 758119960 750103346 46025645 956922680 858807208 896180280 760176217 876958642 851272221 137088685 581855778 598816597 801493483 365411035 740391595 600239373 911645387 752226159 739455095 802132704 938263813 792629286 744504388 837951314 357923597 868384693 324267075 913023985 202878345 112458311 756921176 856854263 852652443 609001601 57404271 818515795 483089524 285097111 927729940 785218963 897131538 905503023 114869437 76376192 826172613 81835850 200847093 218857952 862477021 739808027 746310130 868321295 842921854 728807977 975377106 993110523 783571221 811080933 162965674 252410864 251372348 516201419 809655169 85655928 372777624 759983764 344259539 120192043 939745943 790936884 630635604 654493637 739664269 834232764 963797825 112054521 683520122 789044478 260304197 993305825 360091363 965412144 784966233 976043478 883802362 971577584 257848563 749830499 770280555 435489064 787047616 994852144 445830800 271249800 636890693 190595299 795302182 970144553 202301431 287303759 738515843 777243744 841767384 990179341 741338984 551731843 152667570 964690615 980055004 741005456 282567296 825689536 100372537 769873624 257957075 659813849 510603377 8989546 15668202 848225892 264241536 944023484 199402231 940181766 981618056 461384746 984312815 780397763 105633135 224542713 525756209 714342998 414335931 130846866 477296254 869465938 569279178 814724848 324519444 23463494 933176255 32133001 777828834 639190051 88620624 365597752 535091407 455940814 639316984 648457708 779015514 977232087 952120830 221720139 850144996 884590816 953363112 887183935 770519067 84180826 748341226 652027930 473061702 108384303 952836596 884706608 838400541 944684531 95032725 248288199 797420281 830829904 907317586 869597615 342969871 232780864 926452954 874467621 848325320 824291012 45042184 763588630 753270988 425983388 94132297 942920208 977476343 25888342 780204123 171701178 575746655 819173840 513963708 875396193 37353295 798647771 873166936 183790353 572988990 164430791 846457258 801837295 792319667 906382643 687765498 767732251 933365119 163415461 747298796 512551803 810554998 424379634 828841422 623820676 972793129 85498881 770344345 854766233 165304672 894147502 334568523 926477994 809868374 940227104 188564165 914183983 862113553 64979877 252219485 90470461 991553545 425318432 897869157 843597970 952914697 923583900 248917724 94840356 710000696 260190514 868542541 600768769 818473147 269507136 269919542 408326905 255115147 561674135 645936346 393064918 423237211 885553596 192440521 584870892 370623892 708791501 84825417 459146949 880256129 755243571 96635739 632705482 372570762 778802194 818497633 748066541 182120489 818151623 961915114 848201696 950452623 978469585 437532237 881720370 41353952 775214133 354017927 387029645 90418258 49795370 802668597 924459889 807636329 578902392 507517132 505834854 174423940 51540776 35743982 333245032 26726044 595120465 585400513 880273004 881311780 445300594 99867584 762871544 433922282 361036892 757948336 986043401 841448896 563648520 345370945 269512106 793454399 969166103 444117787 768695773 738478489 438917907 778950377 232364513 307204057 847347137 290052066 410708868 550622106 828891155 276519879 664502592 359515578 695471885 116131411 957634714 928359703 167168986 887043970 347326707 552649146 767180720 317764026 977133886 962655903 718221612 989396331 701837374 713507059 653340538 80819038 899764059 834259127 958528162 930275058 450684108 553528094 906353096 64699472 968672046 946959198 929719411 533340158 19252271 238243481 854217209 369276058 751364740 190610210 828883284 882845699 603536334 949829748 431068092 800027754 304994013 757765206 547735696 870114965 397540598 198461549 750482368 993498917 995177050 802259537 348835122 989435743 317782657 773297130 780211391 460202375 647683023 480893653 627784976 915738076 761053139 325640092 689023680 974402517 467888735 346002145 204861072 755553567 567431953 538364889 998200557 889028023 347563315 281020325 802841075 453536763 793762549 888821542 709237338 556342423 731047479 935914456 168268367 413784773 751849992 404526677 926005822 475665325 399087296 233373203 751274934 73382198 540686059 30432284 822766016 919342374 991680876 644683764 773716695 856799839 139701485 742217026 985434030 645059788 716242426 395823568 738265263 854305968 312918061 748314584 270432403 880760441 933849706 249465464 361097653 888358915 555281188 382781456 552607531 828201678 867453178 788082698 690521165 760135442 625337798 192931598 373051680 427581167 748550652 808898783 860637926 412736484 512502629 837519175 803813100 724189900 831258409 745282233 322295489 739345856 898825690 699220838 909277637 663974478 81302686 498228119 749935064 917170683 623050408 754669274 962974406 369298374 975784108 871251457 182470084 203646520 686404260 575446546 877424718 977475920 989497112 3109704 800781864 460560623 651095880 116170831 416304780 423637283 168889275 216093556 995907619 103017306 887583713 390436893 123541731 774771546 214373819 857217076 807284016 300149434 127854884 992868958 787509360 134208090 231502364 884988794 861422962 415956637 624830771 34331040 929322689 950164788 892054071 300310767 81761741 877382314 767521194 384631267 517937662 614885167 779429620 648975744 128807252 42243388 929338230 874795988 769835362 21132706 466469392 899261328 272410253 795804604 956718785 761097865 102542698 963409196 867394577 727391457 96819459 500285708 927198019 570361280 754392149 961072625 235088560 449208055 174638191 171761984 161975197 870200482 912928315 737020247 944468766 601832255 104561370 438460717 952211591 868699238 709283399 956443423 695863999 765930225 793975242 783104975 751496574 884250942 865081592 909366327 188480536 592449018 75232272 822462642 256820424 132411286 187228200 164821929 252334205 252356919 77409106 326928108 290464377 337738116 731849413 503906899 433668766 242606160 175634088 522427795 989858817 361070047 783310694 207221331 809401430 843916904 822767958 951479283 24034925 32750119 790934210 488528759 309685070 807926559 638678242 956294676 738222753 342190089 93904241 664143300 852103030 974938360 477102607 621950537 184844738 278551601 892584770 468246714 930810655 831061088 865758829 837571791 762935287 917077991 128174385 207654693 499472950 963318570 595036375 780948121 84835031 278002351 557777189 949439199 707685526 800700960 763421072 963474521 949652140 916540754 376161178 663967237 488156503 756544189 527450720 473446110 690482885 741387878 753356573 988433282 583986553 103814590 816835664 947155707 785773645 791017968 446730888 772802572 791980368 639038355 730473492 917087914 864025092 374688987 999592073 166892173 839253659 936633765 109212080 132539565 917231776 822273358 143106199 866537544 855785602 785081511 753583066 25427412 466782724 610382680 851801812 752423101 815043134 447580063 270509454 108652554 796193789 726360645 100799132 692234837 827851147 875081722 360938808 159667262 934555868 46879079 881247298 110207836 988006467 847084518 883471247 769955842 826854450 312707024 890081354 228094386 447288923 547121450 993563687 262165605 240308095 277624149 786375038 40885963 782395162 449754205 223798169 937451132 66394652 810443770 704835450 578538444 939279469 229328858 663765588 945772753 528168403 748817945 951294040 805504454 640958131 334137275 328789153 869596312 955378948 965543359 534096908 749875821 759432147 888721653 558226850 355693758 750984625 933921657 98649646 857362282 951586297 953361441 829095152 695958218 947911420 246342405 838536202 51720540 801926531 130504701 724053225 870691858 961217025 2023690 819729273 547511361 396892072 639447456 591416413 988282339 327194215 884355587 166066327 919894714 808209583 853372585 741922046 421053803 305913708 810293421 508470960 306407996 22547146 110583483 661690858 252580383 901873603 741810908 828444009 176179300 916105374 581907635 103213256 43108938 683545680 546567065 865771296 697844711 465079176 852025674 946291806 819559173 66183232 467612609 896079405 415621559 845446217 950702597 830232421 804262490 972135307 791335353 998133754 874492742 246232364 16790966 528196625 598473746 755912433 906603852 954691664 97184282 949216339 367950280 862217376 300504576 95804794 296872803 973456565 961850694 419170209 943168719 321748433 528676203 620790601 127129155 771904894 421084249 693537461 892557127 926926030 806524275 69741870 224176005 572264881 657942062 716211318 889403289 733829468 218400045 834880881 749070401 776693822 983541103 789742388 842061522 763842421 956636249 305172305 784869323 967074874 767301148 279969850 780567016 919581636 118387689 629964028 662369628 962096578 499252415 662302825 993045841 817044466 737641758 766697912 948808475 630967320 733658093 513375354 884212621 477059377 202999143 975228133 822266027 346208785 941069103 136960381 112482556 19053061 131860947 899971599 740377221 259181298 740263592 844313911 755025033 170969098 56768554 485314900 436826881 467205205 892731800 737020247 786165782 907460332 777797927 256255446 991232738 661342442 996366771 502466775 895995381 792051429 409775442 740611593 210009434 988581712 476828644 749919286 864591492 462450589 923741940 774494540 403327928 452252486 792256428 856004716 441374447 470195784 193155192 717880255 748766131 494370978 405066487 768709447 88300556 845862437 863352191 880352983 519315548 733247498 634853251 609505791 941086104 233161140 637641741 8391381 833843233 586060245 121991796 832645285 627723 673565387 925292288 828668863 749218083 966712032 797311263 907281025 644914674 52205573 752749236 563337380 935422622 163398704 804213170 757175631 688473946 874582323 850266065 402246095 524517070 732868698 737817008 785243076 656594651 198935415 865784763 53337611 498669617 394823819 547260054 940797433 761667788 178464492 173901501 324190141 477150349 810350608 382673356 239271223 802245495 889593207 46147269 962242428 286336599 788783791 946629477 815082790 507645263 879227870 961099999 865985117 765870474 317979892 297868739 861201040 897219302 303474726 415909018 99147907 965922709 778119542 839310903 932332395 293402673 866497400 390853806 991967384 490854644 863254041 985155168 788991635 10142596 497870807 422257203 34703366 579001946 929302848 785124051 899386990 882886382 319706519 200614587 242880675 211314088 548595064 308798231 646825367 782225267 909876230 932736698 254247820 422990707 765284026 989305855 754778038 775037140 13708093 594023371 66387836 649299012 924392240 943345230 390447164 991126826 224728601 925799798 514443061 567515825 786776285 569723394 885749704 773937210 333760107 246389061 858566286 819450366 232626201 893844793 156487347 993817925 234295502 381616552 912637599 906150072 529648886 342123986 279088266 547789115 797913874 501511186 981647213 664182662 86354239 849324072 434317960 697784448 899619709 771092871 999685259 810281772 101348238 947034033 922249900 915146238 769198044 270924401 790882802 961394618 183979748 787843129 906199562 990889987 746747599 429403060 47472283 18752846 291064905 926169052 652043505 980129363 954500569 470361827 15574225 745512566 988155480 145475376 991303362 852613480 826515679 82040156 428194753 978401508 131173385 76303838 729176838 948434680 605363635 862678760 958546640 403951648 666711290 947449358 569231886 968338503 93137070 885983931 968353543 193354248 920686943 352278716 846051196 954406490 763748359 394181448 864246101 402794018 294625365 915267227 812990484 756342234 731480739 900741231 165632132 815927255 383035388 916042648 223551703 118179325 305982188 225617657 804374194 562915825 722517627 379698952 902623405 48657093 792718354 972171834 548259290 239398562 719108125 850077644 896388747 445463510 320714616 892268157 816032161 765585132 98110551 377696835 525976389 726110332 913751266 835537043 948762630 604942971 594526871 123505806 678358407 772820078 243384634 860247378 818446813 521348091 131675633 384771836 988156675 188851455 922942967 433274879 211254061 793160834 713745168 330465527 186119918 798496632 737020247 904883453 842607180 927606329 885587305 874288283 131765061 946521523 877770492 191869433 915274421 685861612 772706749 914006725 806062849 785474583 718903283 350732758 398227607 742355226 855599134 401443454 955590286 12782655 161597851 461271813 372718302 977793463 686059336 241367156 745032934 650624886 294668430 971568834 369706149 571501151 814450374 897071881 609444824 942652360 938570834 866171300 975689627 803706458 544242814 805696287 758443025 874446665 965617465 830514467 977052630 953765878 377269045 882275507 748111721 896789210 332203172 278279129 196900343 651833756 93032891 7934658 815843241 874657872 795086916 750382950 965011553 812135000 38916650 764059466 179735065 151393593 939936506 3658634 860463419 992624098 803820399 586544783 401434670 812179518 528580527 306785542 809677969 113916260 747594060 771723672 486008454 190522535 930253696 791293201 221625800 815679932 795989258 976766946 408557435 443829975 866611328 341551152 800968631 915855225 962872191 243647507 728715918 812540876 591403288 830492484 765982460 205007536 219128121 887170450 47461656 157796102 10554698 819036806 663046631 626299279 835768469 915268289 832000133 498043456 973690206 998038229 490611257 788977596 209133392 704274323 175266723 818180310 269097673 955747020 711640553 690208818 921604020 803408513 931775510 798500177 754696256 923360686 752956991 785791383 333862734 789691899 369727047 830690895 599172568 478478877 891792353 770749277 705974049 619582443 969413640 314967302 957309471 798863994 796280800 359750182 649933142 837515492 911821249 973800238 878532431 820991337 907296004 590086316 843508045 677643464 698701687 232406784 847156415 868527929 775750491 389718936 779040803 426302628 867684215 418152085 359283897 710286737 971893551 4547349 569576881 849547545 882580225 834225010 579097979 671589265 892278476 638762532 259140945 938791379 899740415 176436598 856545152 871474607 851855249 912678538 911332566 839244114 772156874 812503698 693158164 847185001 952916252 836445922 811331670 474756334 291766272 448384156 912582770 463542537 906289802 976481540 780917604 268985583 961017062 865221487 458686208 636666510 522728437 827486930 899101326 475572481 792425419 943755069 899194627 756180932 91005559 699830644 84371446 727312679 588040953 796757664 227199524 911524401 851439033 526980457 557200773 814519581 508636673 859760967 741236905 736584768 82147710 766920252 552313240 256052800 699622754 952399751 864091760 782935622 762263347 485819392 178956098 745522256 813578898 593252917 833021389 851828302 669273076 551831499 159522447 789288475 997759258 195135660 392531631 539431845 372464223 875571763 688234719 388257793 885168135 972992764 598556241 756596801 819095063 831754504 264539143 914693910 230811532 861228346 306319563 615461963 309184178 954895963 17274160 291867302 388425484 60997468 524953304 986034587 740435631 405518612 797009393 760755273 388270308 791023854 871459467 866512409 779731151 837150943 544414446 254890892 920381774 819122035 914174520 353838708 745712466 895063959 507461565 936268579 886784224 637915941 376188938 373381448 738741207 723152974 1251002 928608445 560823474 73581665 63096403 257667387 844466841 943426933 599413830 508900106 837578979 394555723 340907353 773087024 904415193 950842207 630722892 917366770 944108674 650580690 787357431 165610072 44523716 974569819 808316458 937969096 955384629 843629844 417601023 838004640 560541506 968371199 781716167 18053251 343818492 709206999 230052136 199552025 113603395 746684198 929525479 960051633 910560482 842033614 975845886 991999039 213461534 869007089 197458078 859161741 534147846 773350619 699172737 98092836 294983840 303251186 310243992 507600764 599050294 833071400 495177641 913183829 451450485 787709297 799025197 609346413 441291776 691569024 540838130 868035642 832368630 920577017 893995661 386006235 754746192 10589807 44932128 740834814 778638278 172494431 797648586 892961306 407270474 465014456 761255314 190022464 102314553 620230391 898680998 773422869 47474452 255387751 741618380 817983591 427966099 934800715 631903297 909821476 767687138 937508663 738988614 267089515 949838883 903449149 949188574 755231977 864068454 936415906 66331143 999771307 555348249 568504923 834381593 929549113 813198649 734731399 948817231 799085191 149473857 896001320 741094832 320228300 900379461 892031066 888550491 649563349 204031900 959048615 480541945 614308127 555063128 889313914 768481405 414892044 703396711 843543103 164643909 210887841 952603035 977230874 81695940 437691010 759331518 977207002 128528571 792761674 991938293 814709404 174774790 408474902 617329839 796085977 634539750 867891314 935486730 593417526 465716735 732872114 808883873 997651364 882648807 78301919 527908113 966748148 613977797 844339057 983129588 609103189 914274001 862332005 542486929 876309302 908158189 770833506 827033602 962070397 878153622 631538008 474024731 555261795 937642356 838436330 918766485 858285013 980516536 44384494 922473278 341466167 845691618 433847183 174494098 882186474 396409919 559693225 312426957 197794326 968669716 694201525 716727474 873732025 477590617 622733360 911395936 981101441 942427755 453620938 872833079 920756266 853791100 353715911 998753849 901299020 20615761 737020247 777113251 85964197 990546620 797983741 876255092 829903651 964014050 705935704 285405025 776060981 674377726 964533783 969087545 898068853 657440203 22030186 344283863 483011144 408766511 824508979 888014307 827991318 263365252 904597979 149519280 893335528 870081723 573148076 921409875 532351470 174326076 944042961 564071357 276462705 893766455 873304307 463686138 893618954 861152860 523171080 317480916 708926002 236192735 342682390 399241875 524713869 670667805 933617737 808204102 605186407 67039161 909587867 876630296 504960984 759773378 864440188 357394579 128491964 827774920 316204632 954898746 750187646 879895932 478034717 444009342 701074705 90698874 922027254 943955364 809199725 891324990 916592972 779493852 715537830 171708901 386217834 148688011 97230510 924732089 981974745 270328778 196931558 832536368 786131561 791570608 83117708 863446724 347332861 450881540 230378191 737020247 773782950 679615807 937216810 223581971 97661843 479816973 927735303 557311191 569560430 455165157 668053540 484229922 47573249 363267907 876328267 977040553 223184894 773389541 383743788 385346670 123549773 839580632 706182856 800082154 755260678 295300824 319542504 824961446 127463380 60473765 997188572 34150654 366957183 353892587 915230605 817467084 960745783 649228602 954421794 794962750 484471731 837488762 188912531 652055935 215409713 739906425 595305809 349834026 165896296 548370097 825528368 861501988 867382191 886572066 385408614 168792091 769417575 973169952 907872059 729437606 991446248 431468976 109671242 808890039 847693083 789808632 976328210 389783478 775629905 368721293 503901003 434622725 836674679 904318642 175402298 548263524 427947335 959901080 90179927 91154433 998450281 775268491 791829500 970990796 855182897 348288013 220065082 898201877 692941363 781054291 893351559 764728279 805025931 936997767 202284615 504215719 859659082 991469295 938433576 790566678 925203110 828102854 5259401 900416085 538456405 961621888 859014423 190509608 924820746 911124695 349221093 823163567 793614309 396993960 448380214 707581644 178617865 959273505 498724246 957410525 73990761 651505714 682487910 782291306 902093718 839921438 989258285 862548570 143068449 371848639 801109910 148201147 902968357 447725203 817509350 975650663 794969787 876496886 896063677 982475990 919068611 692104991 899502493 702351259 763202519 43288694 988653134 982464992 826349577 189396213 890548735 788029681 157526369 406448475 975914577 107213074 339727878 797484672 980923615 833714543 909559452 881330860 959577899 264479301 783317678 598998453 835594163 682964238 986846325 935709965 948658743 820284887 167762036 113218409 630358335 824198634 760586479 859921849 92885713 78350454 886134632 293842189 915034017 204220062 956520388 741450832 621382314 237680487 593986246 329130095 217348276 668910666 700653465 966945522 89212119 996517725 939705338 50092439 542334906 999004072 959948160 968704168 309292239 584734810 929935477 999227044 797275783 70434616 464640802 842574132 992490877 941093275 177149819 912962497 887455494 720356378 234314662 754730379 865611536 901128633 470721388 754405871 810720195 618979022 284826424 247501801 698242303 485513515 943749587 773113526 940447148 884575561 60599424 453770062 977027963 322756694 787574632 986457356 612879789 113160921 103922116 889825985 301369700 778353217 122913622 761157125 76834412 852084582 532718407 400271300 900775693 680947179 250384355 696601043 573765093 514501227 23016258 911242464 693652425 878893027 670921419 755100064 824021999 184394868 266759699 320011078 475007535 590717750 858747141 654065445 881885183 590841147 152348543 684465505 476982686 740889086 136523746 997128750 982178120 609158075 836446682 515767358 270925773 844121765 883856702 609890884 790769572 479785341 698736646 407332591 932533876 773555282 470273036 280782032 77439442 782136204 800169932 851702166 760344731 923552526 781696012 188862471 899953330 532553439 748999984 68009291 511136697 481401966 639276272 549866549 851978111 893374539 912979005 289414553 76810092 64049703 280385307 909636372 412287914 27550469 791260056 995824492 873695511 891837474 41859349 456579959 828790659 973135600 353564759 748312122 644006285 976145813 817212648 15018594 61208100 471531481 993185890 755780233 533853808 522920590 637321585 937203483 409448284 934034620 834818857 888396644 559002019 984181137 765784390 815502733 961604049 970954844 564202791 686604067 888681419 592728066 601957839 530790256 413086297 997516573 932268017 43924340 319905136 657283055 880241898 991693964 901060420 525620573 518977893 910632106 48955236 840627257 941338145 799405776 770877329 734737293 934283854 920374709 945350137 517500035 813730591 793962358 994294135 862076210 751796319 932867962 371739111 663898923 848509064 525884658 41815205 953216614 895065761 390045761 44969284 765522162 745861896 896513358 513646037 685304614 754404372 517348168 924080658 968626017 460451404 883716968 594692355 678272188 956898395 142282226 970917340 914497838 532331463 345503535 233924732 833574659 116392990 760945631 177832890 801884827 76601355 125548235 950389739 993920577 888231095 952377714 839348381 910250804 790807936 985662031 941517036 587528937 760278279 15504936 950757718 752450627 24512511 27533596 935229933 662492686 278798228 731928648 891634754 846095998 402082899 596474069 115264778 848640164 836093895 527121140 119737499 740211958 651890881 920585830 222660191 306677761 702694771 543664178 984293020 756206082 337789636 909128798 967656913 882253730 869111979 985908055 119242095 758549808 754717931 936547997 508766590 267590241 629417344 288968631 995134290 744632024 695507425 65731508 198832076 448428654 752853804 886219458 264725431 849651387 948480340 405421499 218453322 124697742 994091020 496444223 508182700 461774191 882665084 819350257 544876565 873193103 948409660 868780545 918915384 124397947 973179517 55007018 330843341 263448092 11587762 272424453 132842639 921630895 80459538 955536564 964928425 202775536 902399935 763884480 970432895 978312748 820740673 944101115 765111298 796633812 229219308 552104369 138493502 11660233 381584995 971396334 347820159 637171157 312814395 967181098 113721213 24224456 155769488 58354891 724771134 167264037 765500877 112941602 119722585 600768071 304247171 896613201 990559968 414685300 364614199 886831348 741304691 261046010 402912073 528729654 890327212 965314657 93556573 229875163 259401194 884679216 866491429 42634040 205810537 197159509 747401989 507889920 700925050 413808244 193953279 975029943 924444954 907890834 584682622 681233055 860322256 226441253 692267033 764576606 854456563 33390152 889492361 161160730 229424230 28808604 831792756 906357978 499422007 826934810 33169006 929045177 408344586 760003639 419768253 677051994 914350827 471456010 704913902 874637747 296568768 141614439 781675336 277722771 104065849 157551674 861584998 97536797 947368292 796202068 423115255 233800380 973070291 746086346 451771439 800904973 139986701 909391957 917889812 18534733 899095668 753818587 614865308 927232147 491474329 947799556 354823995 238142243 287022568 876381620 476685237 619047920 942205757 494559418 680147786 243364277 791535756 924929436 575632612 889675297 783603912 991962582 983860987 429670796 762421174 877991660 425260935 846402687 331720051 971552451 986289705 558420568 799635780 813142169 57814978 948154255 786523536 464638758 767413936 197983360 804756978 41756161 768339078 903724211 90815467 634961688 967846023 562124986 835934283 874809701 842478412 279016370 443707364 874357181 391112690 813273796 803260009 912836316 762276423 822386957 930710628 524089611 772537375 749444751 960698708 210463950 326608379 459829813 837317169 936208106 411722401 796207533 597367098 65962836 463969239 944516504 893659416 276027650 924393635 776296334 303895415 386386509 882431263 699048601 329451285 634834507 819598165 938209209 380123242 920895877 970042830 873631257 968274864 142004939 468423826 362072112 104351589 947355965 379544758 367531680 972259090 734572549 890254658 808740351 525805249 782946582 448405425 785462936 896527414 852170245 435743675 964077448 740614967 958756724 978000101 812741816 715192591 751809467 663738953 334237040 954084809 755412566 284622692 202408401 273676268 976656115 589946230 15312036 988738546 800407985 264041008 817576771 991906351 844821727 282141117 263739040 410234333 944837171 439749796 921995663 265127535 933503281 341129083 796170653 785078054 875713896 716039766 720058952 700333720 807548838 696828255 543085927 802197701 760198732 921057464 484547199 958274032 861029152 111515631 745412449 566773759 153252749 343230183 434757643 496447338 739500977 431566576 561297897 980653133 474317711 26280721 902218341 816698880 619138450 805474683 274965222 903049165 849692288 876579575 703472619 264034999 745521484 966933875 196345946 945521608 912044778 653653741 963156650 639089496 924138178 384191917 814929999 12660460 218308425 885439050 228516950 846633179 260918532 449088370 595287449 966938546 800207545 184248834 811513185 68102703 845625434 591403178 657533835 795955787 552896908 280329103 576409371 842549079 950322741 675335733 831254738 492882323 811911287 858961545 549292254 836683899 956168364 397760914 587339699 879179355 966690469 837287149 278805056 802517599 955128213 915834574 308310636 443604958 115840744 999851438 809193506 247969534 796839897 865799765 7836291 759863929 953391847 847759043 578692261 843193867 822630435 456936892 171797568 671430867 831405508 42851064 435290626 794964105 47600989 102862602 389535665 992309924 321241671 503949269 788422227 829662900 384065262 924096542 822618276 488941898 182264228 869519148 838873025 849005419 3282938 762376745 81660134 850020055 863355025 72929153 343232627 944946207 998564268 752840819 817993705 279921259 738034719 361313698 485188625 29966364 771335710 28129817 109352803 88056537 48601655 988301679 934003365 356719769 372743705 870372578 745263543 568118594 275809593 775416207 958337772 213414815 516611175 987343579 229711689 749618176 31640146 150837490 454099534 247636078 861510658 776830416 996566022 961465244 719110831 577828108 471135367 742711240 306450990 514973580 258624496 258794066 178387628 74220059 969014218 881725459 906423170 113550194 899224393 411362557 988974923 9977072 993202892 453064394 730893121 818691786 988794549 777334923 536167777 900488165 1635796 988357614 285876991 943710792 762398327 376177017 377407454 531075722 976556161 889817802 424228926 986105174 47030396 968885353 496337095 937465216 866205016 327842480 987356092 269194443 503978380 632915086 655606282 804709429 190086527 15072615 85730117 175977066 467932971 786618081 463992195 21157592 998579680 926230830 940480303 937963427 586142565 220917291 79765324 859774747 175835832 932543928 947260088 125909459 843041086 974778097 668168157 85489255 616011480 769593904 758415437 867882422 423462644 756183208 670210050 682815411 107612919 863895532 234251283 753786796 800287769 693632810 736075851 960091572 279523483 454161212 215767882 663281636 897378433 759277122 845392415 837631914 657502946 291614122 994616291 337026509 763217791 755061425 825732470 712747849 600453100 746827927 828523944 956441331 519064625 91375337 954337711 879696734 938620924 160348223 930282211 509819072 393522542 806851914 756862206 153831557 666248108 733242330 390677653 586854017 880114590 937700716 34780149 513562301 278176393 744786421 417973394 908152947 953574176 853445218 757403476 292060046 698082098 293912351 959164457 474917782 923261279 909499950 449198376 854083586 967018197 794326491 855749770 633248220 644302674 493358923 154618937 144143952 275711796 829807740 748589392 295084306 230489439 739045954 934809534 755785247 925950213 810895961 650044320 564624721 194254932 57884955 585002673 914186787 822429583 117757571 142194062 835996192 713954653 635701459 258697901 302322940 813240090 31435474 90986610 946129952 302673647 811177725 161704825 745389105 819425458 317935286 911067354 445310032 746048132 106628401 440394346 175848915 662543563 290962921 943322704 817039473 866317003 831258573 760321287 881217667 611854979 789390561 167910542 424004844 360023959 88866474 942695413 923357290 734541620 186406040 896098125 789762738 142882303 851434680 304773626 14804025 807808211 906978673 743427502 802766216 817146146 925832355 33616476 841529506 846985189 139464449 341589763 458619958 974737216 950408326 964567530 763707148 105108520 885176889 180361113 991324325 640763012 945602330 738774494 401515366 462071853 522811920 777495465 959976033 28959190 841121214 892125504 860623352 221103525 117648086 333571005 947621969 837916623 8555178 646537062 815555487 802580905 236184814 514109990 860552497 182934884 739077819 5637295 902122151 730845559 505327153 960752124 947593932 920377570 569617297 564015009 981076308 922020155 915410112 883810852 957430882 784364654 737523410 781757907 940088365 258086345 763385795 150744868 907620531 827669413 312258388 919263330 212447501 773603226 329134975 800580902 956377449 824727910 959307322 327152707 552658786 799694427 910869766 959951992 161753072 784774293 226042949 934446093 892407566 87941007 819154252 83438869 37538606 989275160 954956427 260719495 120456772 277136887 997489648 218723692 660895135 609206905 824072480 541291639 878082719 262814409 488181445 428542932 677926120 205884878 849242249 92033901 454547369 782324519 104866405 938744519 386514843 390123927 175417731 940110907 959670362 828122138 941703263 855463802 808868335 508804690 947924840 916535501 966417522 835895998 969322999 26051674 738411403 51736502 805613029 324693405 973108699 624113366 582648258 785213947 555319224 944571088 7538598 849980485 964278665 407627873 828644537 366815858 824595872 801912567 940634391 851394971 60057290 982779653 216082354 743648019 966266045 582402774 842083236 697137148 932907355 343474158 580877116 52775745 273073123 791002278 857974720 716012802 910132637 565435918 982288196 780059811 669334192 625361813 853360255 756598295 508416892 759955218 954350717 94374104 905625742 39750740 222718264 669136897 953911419 85977973 894610572 111351581 11887870 986136783 501446029 881294539 421348519 851900809 663481277 870397517 641775192 964215041 961208005 957783749 733781250 989043507 481420504 832887743 335709602 885353800 958125873 928975162 880840513 146748213 988399904 765656701 355686873 225657710 134439478 722458762 348417512 989074762 906899481 917753641 434418609 891954390 837020825 893983610 165239748 659674581 987521917 607689180 209975969 589778818 918005609 809617784 133297701 184320932 34362225 455992566 6176875 394502766 460086430 198248199 37681484 590763582 292518887 897676504 866324423 918841156 949417499 634190531 331033223 510467637 921125963 936062544 810600475 789582937 900082100 792066187 196627937 559458815 343889040 239828678 928229759 470455857 496714304 737273595 921154609 748072701 694583697 806857333 414202888 375346108 845168952 10432473 252208214 20900176 933834642 958121048 917597047 732876319 901379311 745362140 982853215 945553559 713012799 640407325 737020247 808748489 951315449 456414680 222606457 414318606 580296357 769771495 889734265 106257824 398658697 623754010 818638896 964486368 896208323 469887967 305124121 771214396 987890959 676103401 424674972 317490067 847461561 713320463 980103478 136482745 626456389 916172994 358194621 228833768 480654342 265282090 782904001 756002515 241849175 879071564 708445144 166353650 799908264 197096700 965066556 923679076 804472983 234499327 865915383 946687996 791034202 816888447 486859000 952016760 991761807 358765223 962536457 101513721 174182326 35405464 249714453 823818525 105458156 498449851 180884104 373946241 685723716 982350437 521949976 820749075 841879050 447039388 55832151 773696231 774439017 424787394 936485173 344468758 23138378 872262928 739837799 430714167 891301810 994515970 663283647 933385479 769780182 763446161 893090447 797957814 365658294 771424294 988891421 946700684 714607522 185670728 379145626 198369745 417823383 808869209 799551392 680427810 891696942 816509759 89819830 913506866 140156433 754558037 726420644 177609216 173796286 906034803 665928376 105372610 790289046 987979738 951233605 573809733 869289693 772847068 183765385 880370120 980436353 593703667 83401506 178132104 925603018 775687549 755282515 372947626 408654978 108713776 754210917 821194468 843240833 578421483 889780216 283490054 507271619 449844530 541595709 418789827 989702127 264954047 751072149 870751956 891331803 662611687 737800271 925625192 951491258 896580602 844575059 741446238 750658973 397247465 636501088 14026957 858671997 107026189 822333359 685692151 878980670 213303799 921458803 79792502 50937854 747207833 177157821 865592192 239544623 832419059 990117076 990375298 823980762 977383748 463810737 737020247 660986475 445196287 765059401 542637413 724705841 911035235 699937217 114229040 835891839 985357102 922786409 521182839 758872270 501097262 122673999 938518787 144917209 729417867 771306135 643872024 998302039 523313196 189909481 990573783 966911411 978625329 814903762 109387450 966762337 428854364 855492455 975936032 845352151 759773907 890532254 737020247 935787991 882205258 93813019 763007970 464778926 225618303 868182991 673665971 393701147 724567646 825592477 830029167 759092589 995792468 760820180 469366658 845947083 802998711 590113300 260068648 533269021 812304847 473697860 833022121 408924798 767435789 768006411 520217559 349857088 294517177 927823106 981892 948784854 549317226 734387197 839180390 266090764 820807753 348094241 503110107 822563089 796860694 915508078 680265553 823106954 45534791 417374196 607412796 812486690 879454782 240945043 365826623 515149174 869186510 264107103 981867810 791616476 753862346 40940715 661019535 828800919 483555387 424597659 665175692 197473902 321349001 201307628 811291519 567807021 826994565 689186073 964874069 923177548 741945455 772420575 876427387 671710897 945555077 913264599 723467507 420264215 145599810 868557934 971290503 128703476 743257047 61734956 986699485 792118121 394465519 947536413 252626736 380968240 847775869 346165440 919143232 578936607 33388088 871861711 748990422 27037538 824476021 798701219 63185855 895487785 524674350 910075621 863932924 994317031 231945518 559423664 817423244 258509152 635665357 999772863 560689177 893689034 779705207 717315454 62257810 668075430 72888846 993266646 863239554 240006320 814677020 541098030 59840496 764375408 759032768 736170842 51894021 174523632 950216331 714044847 808404436 426190528 891218349 912605850 68528883 868271438 809150756 562100873 763486399 639328787 212002749 947187865 208760210 551044487 398892682 753360327 270477493 929875037 957391394 363950566 759045572 437626769 750838691 929273630 28045736 928896348 979055333 71866641 87473332 837175719 959888140 859811615 220026901 777690024 844230316 938784986 396259326 744668601 88241212 539088177 930787606 928395048 326280056 206094808 872948744 785444671 847359865 820485747 829704260 422459717 964828236 575360752 806344723 968304853 318304168 767178685 589512233 812165855 819004978 253660291 510059530 323966349 185072145 931600668 521167451 922654902 28643886 541794689 364247258 231233295 958447942 869318818 48996040 920867555 552487065 361691350 936166789 612218883 837055468 265476732 103969058 840225746 161278216 909136687 885217965 858774617 799467299 66618308 316613679 783723078 386657330 429574306 146343276 768638512 348137516 740156715 86940146 624814611 523742348 459680201 490174603 742167335 738090444 784848898 814383760 937628951 645876808 5378939 306660111 50031224 783052354 406183442 726643544 358663313 831669199 828122982 826901898 348881985 733450120 904452546 112434825 971203886 797745340 852890726 826006724 720354068 485554351 950143229 608269046 855468839 100797814 902224339 292688107 763929271 978253821 786609372 836610741 758540461 432429448 933365681 198488903 822872773 933447666 106855128 839529319 834978328 382095353 591823691 970450558 259603233 640895488 310606404 968867217 330605946 783925272 881188831 744097588 92698335 802788784 986318521 898132435 722279240 814379456 596743825 932514679 6878849 944242786 111130805 684173489 329905823 508734743 500004186 889841039 165069774 325602358 886382696 749105730 374881056 824889373 688623847 223026460 298705592 878207264 457719415 283184463 464141168 605577895 741377725 956284573 773172554 842186657 104422546 674080337 848095047 612123866 883496566 854801313 865053810 694912342 889705387 643389083 844221544 696155100 864116415 641314199 999702654 466081654 855419444 735596666 825551802 902784334 766833451 230783815 975566508 129256913 260355255 820557249 458445393 838958200 848234343 43985466 859815460 771960389 593843956 436946523 783627755 424709143 108100779 702122278 731383114 429526478 793547652 141850348 144110394 531236892 951824026 368966729 77982188 628296466 722783377 816767886 774501381 841489903 772865622 581358592 985004108 972723052 264662861 448590698 946385031 791352919 758185174 808005990 829593063 950175601 930726473 851739197 425447990 495640154 367962293 76461335 503501332 724485947 745492089 762049102 761186774 770819438 749393602 760213202 908195225 187589634 762203455 991294805 11669209 162199456 974988337 667999149 280684962 490925519 932204913 14067625 681195128 961256140 981384974 896722291 930209155 657276885 266930506 896186090 486373450 943085729 868883136 852093839 749853748 209637008 979945586 983964332 918470078 985885801 795199546 336939092 279681125 976285506 58643062 145866088 890938513 26149574 931376770 830775896 934723157 976548082 229589111 445371823 954847727 999158841 231058179 492150413 511281448 945170444 107459161 508452758 990362012 800454637 559152552 664959349 818441114 96161912 886908964 934777290 795780784 739404224 748428057 458516884 24686764 204732947 768668654 865212858 953914353 794278194 611393845 641691081 65370659 811247748 801479275 482170210 978699437 672897447 264266974 28446650 716819260 977807551 83426922 811955374 802975047 793661517 185716763 966174493 835909330 289612494 58907924 916642777 49055418 896763420 864063694 810737645 743164278 554812213 642683089 679232791 708435658 331381018 518267877 841847465 693354207 896563447 790157666 894244741 908480219 270821910 394893425 985061052 402996305 869888850 52117415 870263487 781776466 420868312 926222052 894355216 644192210 975441312 932035565 204518910 855819556 751208513 895486635 799479568 194276944 298097109 50474621 940449768 837464592 33403555 90975969 636304184 883708769 807057619 518025317 953295886 790524867 852758005 582332353 127133099 372740504 347106013 559266520 983225880 951127655 853074976 915250924 795581456 827917374 137666755 670838652 347225206 58025273 392728390 206234036 137215915 656406142 754542826 753004713 441064013 167962475 228926393 547876023 977342960 774539568 661617527 341333935 197213970 942236297 575622338 332693536 252301958 217563323 922058747 977999671 613430340 172829209 294802493 636376068 178094926 912913661 213010240 905517607 817665159 48190502 452085699 189585897 128450553 872042969 329995782 611719486 226569859 473709555 848935277 876796729 632082771 977675893 828298208 809394333 817234679 994667650 768348998 424015377 718190061 647795858 752939780 849518012 916856830 938539446 702357272 897239050 318206770 810221626 397237175 893497294 964103737 941254748 369812419 935814707 400673823 177313245 937895215 836960997 979671753 708423597 605298229 999586860 917050972 106488705 758257095 749846725 923943959 126628528 371683024 781162279 187050620 970138754 976084301 560462418 383911379 168148061 789866125 146115032 680255124 833928525 697450053 856471335 810452739 759602428 473750477 808513176 899512926 276058196 783841954 921041414 822607708 124345856 270678792 884826532 18715712 823280355 319415540 245926160 51077422 27155674 854059900 190875399 958413202 254096811 936043376 356063984 61672212 779769098 445200960 569722701 354112655 925411677 779630492 186407947 644913308 794729977 205963725 644438452 515739052 534978230 916406819 892102365 303647222 301216859 981255221 902173066 867541443 639956482 867336017 924776699 755742695 987810854 937754606 752625495 944203778 423492608 201987629 699196135 745681078 197324528 629915264 915912164 174680196 800717503 749281534 68794049 254713011 278309143 998471071 526581727 118920715 973110711 998805423 741541307 271132131 847351423 960085705 802462938 397276105 57033421 874807854 863471609 117921559 784676089 784516738 408064259 272055762 147640811 498058598 190428508 535971101 48010261 925289035 588043480 353129981 693476923 794333680 9865794 357761136 291283359 939837440 890048246 497778902 970865654 710787582 681852784 909069403 329086724 327627826 155298538 950397812 743986512 879919165 616901240 834409137 793167739 313113513 679442787 913017180 838356435 559511371 919319592 840047528 668400675 743622265 908846559 426139398 334336962 313757499 434572426 567698000 87747232 435538502 978473400 942872638 746190059 739425240 981837223 586213777 58413913 944491545 893537620 660954481 64341502 900747587 110051967 563697876 809722617 930359074 988673257 903005587 345402016 224996739 470302658 439042112 898218109 209040860 238506867 921345640 893192605 779232855 599161102 902920061 709191287 358250059 518485272 932515803 320460901 572890744 23294580 632716475 889613107 136542425 245442869 168620816 153406478 893156169 920938687 780603781 666303343 924052369 912566922 836609986 873823068 307247708 956265728 127573468 793961797 992588318 840745882 778461009 195070815 580396593 961010316 441168729 987953279 13328213 992056415 974721966 559797980 610454312 16143791 896142600 173144373 531396173 875576384 534563267 504479457 350114182 944683205 263554509 350797427 874792623 742112110 878960384 953326710 849127135 626654995 711049839 119841452 41341267 451756798 96095715 958991880 696438788 266148165 993063813 748778854 442846431 152432655 62391413 961214844 298751298 929497492 720615205 247710776 926582754 94142408 143869408 382200157 808582208 651301089 965516553 886303156 417052467 867580636 304070037 763141946 914172297 452192229 916327159 22567726 713097515 848949505 970846534 698030310 953600665 908847415 644460253 519365820 184780473 693000308 917626572 307043613 532350175 880356092 972144653 818947875 995695500 639715864 883174584 834471107 882536053 971223154 975478176 848215411 937411735 946798948 679692892 45220040 747566876 950646892 995620507 933394699 794613143 778434798 417658779 44537154 134078514 331356596 903049075 794427923 738394115 765325449 697698152 779126097 365233502 841625172 837151441 887476307 168843509 476591387 56520587 919401451 194446377 96554481 652869855 842887043 597630843 967200995 992006176 767924532 603257923 128590897 741191654 23803092 529740598 921289334 735786892 54538775 881883046 739942584 369934427 834064324 923907283 704129169 101141603 913345749 801347761 598348174 978746970 100400453 798881496 822815479 230002598 762816142 426919207 822827526 541004320 876057944 338765386 445566390 855182140 901578680 917494316 822895156 497222681 105978980 928181285 328650115 416687696 714845782 882221333 972792744 141654883 28414480 199658895 952901663 917935992 910969447 385948446 855321563 998658885 204266272 170748519 588455441 14881448 997968308 158107703 751739123 399612720 903248848 687181498 927771607 723506870 80244339 41527655 190268289 314421424 655476326 394849399 415699222 27052452 937874140 569063480 911871293 974080362 552246342 800227417 581695085 117571238 879611812 936244175 641921696 27270036 669861313 114252623 436065088 821558607 868108678 127785139 510747704 998009950 741716966 284077601 188987063 779730200 672020112 496788008 984913197 227833652 513595019 52312599 613655306 350750821 748352408 754133690 796556071 661979856 774832729 869212563 142085340 332804284 352718155 383493004 767811327 701813532 839121932 194323301 592183123 853193145 743071520 621225495 800955784 763768671 961842268 747800998 755426100 468286198 329124040 986092664 891792653 677700153 867572822 524776667 870561550 801530085 363380258 888166805 829999497 991439188 926266238 372421910 42761765 330025139 843833279 477423021 934258044 917997338 525963088 202753782 966617672 921034717 212204485 978854950 31983017 60214351 249803567 187371921 943628306 913051138 365523703 596253214 283402847 871752677 88987243 810502895 980812044 799453373 37437559 31812904 84526395 815208519 951686434 926111030 611104914 799012703 966954996 415848582 942345028 984087956 571831580 163419072 845785391 951335171 657552060 958909443 655230782 814317598 54784962 867788488 898552808 755610657 898932303 784581057 965832470 799398766 421430108 200758514 794523662 956841878 842675364 894939095 752197350 680493604 245148689 291819211 787640206 878547548 859578558 634753594 876293475 251624589 628946741 35640795 581154269 168422620 20812821 777411202 748285767 930195375 97217250 312127915 825268443 659108053 103596681 954415500 851808148 750873486 718331801 205757545 869458935 834733001 256196672 896102927 509023810 826153069 744591555 358106160 163526726 661079860 581484044 156414950 958932232 664546880 911149460 749585447 533332301 293750371 439200668 162075602 906455827 349437984 965972933 661799662 237930667 842839621 757009878 248529964 281122910 855527787 891234941 21890747 579322219 966472946 947967854 58628445 781857453 673555731 741552910 174552260 759973960 888968995 667912645 857478731 745566444 764659216 661655273 37602053 889364776 86707601 401722116 920105310 324606252 710018890 924220322 787998235 105542274 858663102 916021603 818874758 949173476 476287579 60362600 174452359 131135329 981644185 937342533 126547295 767007156 882139703 911345018 103352996 737020247 765593412 773468478 774462148 818682296 14593569 238765007 89694978 312721792 152671521 167935706 365084113 754895066 964690249 142650178 790806566 20888102 292059908 938941601 816806175 100333229 824710436 789803576 826168815 940298251 910584853 433415409 958667283 870844910 187066341 763694586 762631152 845652241 437898099 108149299 276155490 651891557 814620613 924717529 655346028 808839684 967599104 598787043 782400501 393490465 612076265 837518060 947381597 738433617 551660640 536030041 446248827 878934347 996834795 303615043 604272800 928930894 467332462 449820485 863234144 349233536 979550140 980708243 132946719 122415547 154941279 895509939 678703960 779404879 926088587 663244943 758578565 356430562 174685070 620355248 878647731 333500988 717045210 215228006 819387079 791919264 322110348 446751325 326419560 562201708 167911076 828611329 777743347 13141800 739479088 744881139 268327023 913264688 878231106 764001745 680624362 660257386 144270987 405568408 172036580 767115442 494216617 762067315 618277161 47669311 729607187 509687777 822866868 655037818 676353009 351822336 249657232 787004021 15574389 475837383 452738808 954268665 512273514 272409562 67689683 272962095 907434865 336524534 22383822 975821445 883601055 897415472 710272885 977924674 670575648 542621527 303138102 973461996 168541542 494824469 999130722 21545249 992758667 88449722 822387511 945619270 827915458 579498697 125409076 970070784 201485083 900216538 408442159 851411609 651127165 803555843 886728054 501936991 837124588 923978188 642674894 803149967 109015902 971310209 914944920 330285268 511892222 807228392 578107356 273919806 792709103 77800924 712719678 923484931 309032416 796896074 191443527 494056710 5183438 811769298 928055837 384229279 524604231 917849858 989244205 936029522 799795396 974985327 699303083 596544700 483133836 384225324 760671876 991709823 122976996 802837559 111915158 223965903 103320468 979971268 427427341 532917386 792856470 889316763 750903369 793587599 408510796 173297389 109885749 392334713 913527527 475411001 276313696 985750535 274993559 659522224 844537232 296875387 767204705 925514345 15215949 36892363 937130348 884220778 331764640 824013043 55760371 810123265 963371544 816206199 923237095 764160060 824973414 430593266 534289617 696570697 558495381 875026742 887431431 506623575 744336683 508724243 657948586 877645105 465808589 316833306 640916512 878342769 763451333 984723803 572836585 151252758 123733413 98112176 640107506 6939063 979247041 357682305 863534482 969137177 867610243 995766351 561964971 901372306 623505468 18504181 953226486 813992189 385728355 567481963 109968071 598349222 780179309 650997393 850941984 668193542 934160502 501293960 999341176 138607627 805079314 981922634 546974230 941143496 575502771 905950259 129938395 87453600 827651948 927485774 954261062 511779500 70089646 384461401 863513927 926732480 282879669 101178935 768815703 526376646 828284794 317302047 208348436 918066739 928222541 57263641 85313971 943461933 916839989 973425547 145762571 742147329 778689665 840235861 86769684 744120840 609375497 342799307 756628734 227959209 725260773 177384985 632469372 512106081 872201516 959740395 215640310 287087404 882244470 909439274 89420472 428310875 124948458 240487464 956193881 185759448 368375753 234457746 762284875 860322742 143751006 746826493 307070401 364792881 919556442 437274529 266497419 337766138 759251580 915880098 384374353 966688923 833064902 168201953 830116666 839291829 697280106 737020247 767131893 834090335 180512290 720502819 34431767 854010315 889977674 145048412 360219134 771067529 378629792 530114351 780910393 373261734 44809888 212117008 606940077 479317920 485829833 995084784 411048094 786587025 408086485 370820477 861859517 948783326 270944268 760428560 872429964 328636299 886975997 509791175 466083042 52694275 778196205 923468515 804747712 961134302 722134474 783450341 828864252 542934601 104021265 366035377 743915449 824290327 751402206 911282869 698854184 930138115 157252588 694548960 174111704 985169122 984459077 986070759 873878486 889619215 587787440 426966219 889625601 757346485 56819975 615294338 624258097 726725792 119113873 827036482 972316716 860295994 804686992 924172496 131751887 876328825 874328964 974740152 209644120 792078392 682316713 742572852 563685944 624257981 865743484 699825011 696529056 699054528 685797688 17628274 982956206 862262427 609567290 768464250 759613112 942432476 23872907 770482409 955829753 848076689 918695967 952178770 805176823 585588600 967048098 735672414 502408337 766442360 710712231 501853722 339636795 96477824 996223841 214235054 537222134 129165508 319681181 421242446 550403376 863043312 803126688 944447475 239960912 50878549 176085472 822548126 132753802 931530084 103450243 201836591 950154117 746852567 759586484 481896513 739800910 905537569 909750833 712648302 696410424 374271307 797849629 687793526 863343718 366389855 785443570 306193007 931124649 88197124 2885232 73033854 724366445 991763970 885747981 105173454 873340098 421299481 946180470 591793652 459193054 872933886 414676668 25540799 963530008 865581058 884430340 973328228 787107475 243796419 879324398 179347824 116331330 205622326 290267171 262156331 151370034 930902360 767199989 860467996 868785260 102966573 810271371 834363263 564267503 250081703 937763047 98915021 914089708 599667283 9709756 798156305 739761987 715988422 951446216 184467158 814477701 921300816 913246139 982607101 861898673 912755842 978979250 785534968 220930118 99015464 468394285 106188279 659156888 572388046 69075786 43373732 8840790 980422593 936015904 426505643 892691421 698591381 82264618 738379515 648276505 291702673 763310675 370884383 841184667 847222552 904088775 790973207 386732036 898392074 347968985 147732764 301589218 17073408 515839626 905196704 944546067 966651919 735274061 185923195 999413179 266159489 639631446 742531391 72572015 670418036 30125262 779836447 404335077 196440631 995586439 805070495 642790881 829843887 798209151 708856807 317631374 678686451 201859437 35919369 965101365 788539997 261119818 618154953 151050719 179798595 744927618 618899984 769717413 477619907 379898841 956505437 818385202 946755878 756176181 233681129 757206073 346881852 863726059 220837591 851848850 789561084 194609150 302194370 949455833 403017159 834514721 98745020 311876705 242329973 545622673 908089107 908337100 873632207 899184676 17418161 23763176 981863965 89716932 856230234 631889439 832001945 475896633 835552542 813543659 154969442 805584160 406446737 755251839 770142525 245522994 691701114 686585007 956394217 222910525 996043048 835809327 846874163 852277752 388807968 819909896 569738663 791615366 125147940 637596683 745480854 854426316 317707128 172002060 567241559 836126267 788243980 669609010 982888619 449781165 854577994 170771641 460574420 968599712 606923515 15260683 622285097 945395798 394185887 389062140 769286891 984656807 841338465 893722977 200666056 328717241 478466226 637238246 360586306 895979665 911766679 198847896 158001594 941171529 171478914 833313317 301793210 40651702 206166511 735234031 365830398 813847847 547428290 952955463 266258721 623830934 19380375 935897746 476375266 892099551 215596820 41733264 817396639 921556901 822831341 193158011 508766454 627157750 824252951 766023337 966300738 924611599 582772749 814941987 969075404 969489726 744723625 835574699 613507160 946154399 55731690 835470540 943171277 608868507 496315644 908410029 881288950 303634197 935258194 768112737 917565615 977360498 715872998 771532686 891431245 657271996 125408816 595496610 22790618 827901257 862480491 823173485 107274317 255691420 78217549 853061617 846125902 362473865 927653260 839370516 800872665 152619378 981812928 471077652 42460915 890892027 571198047 170604096 218908475 962321739 236562727 838950814 931672647 776009450 386744475 132146211 657020531 839560114 601822800 187310999 956975488 926437723 352492255 833683370 867990377 15410640 796938908 45949317 451169655 736282041 168003682 648377543 940814075 310168177 102977518 578681141 317880193 881967918 368854764 926597064 935253922 592586353 870591985 877004891 945895641 188165147 558903727 842052731 837701299 819742325 749608456 338311533 774092171 533191623 772388991 911757365 501493864 860740906 856676439 992933876 755344674 38358412 917006840 905095461 751273177 609801900 202172947 1671966 731389338 621837696 848979528 767645831 939099504 243517376 773683955 239699541 934912724 933185883 464242969 969174563 302021522 700877615 771934470 68185521 943844284 907341288 927556621 561297238 847272931 684814733 530251111 941250865 345141632 889059558 315829826 216054772 957386210 326788761 210444713 118748826 185228881 232997566 552095801 506598436 757208304 740058336 853366010 86595995 744461664 774782800 905012006 307700140 961562817 367107169 550591257 862320497 801833495 778051215 848075130 365276153 889707335 228061351 796674401 277237200 56331727 978960949 498553942 793012718 249998350 347734797 958930259 830691996 430174314 858726973 406416993 962497482 235762653 869429575 741152541 849430005 63149390 231858444 918405421 828282111 986475321 515671215 776548061 792659590 599145605 892757052 951012095 205124347 855175716 333143726 661101715 675119698 877282782 670774991 979867693 181101595 739499185 793690909 398157456 922759034 922673144 187613942 829011574 807659294 934761374 236145084 398225799 924320015 846367494 874278972 762504886 722148931 677968465 830180547 749138964 944429511 682682084 594247808 577028837 215707569 434338306 127351241 823744736 959244564 725177889 988681396 781269682 480859166 195687186 478503007 522669666 102572592 833812129 866981383 679234344 639431003 939210665 417213505 596769522 528790824 606887166 913350321 329858861 899920936 837718227 182396765 972304397 545030672 425169798 47762891 206530709 929621101 996330154 933605074 829912595 251859835 894073168 782136272 701139448 489347583 929378189 765427499 943740809 910439609 667468224 942246497 849241698 803996432 125220336 872017051 387837673 161097774 674836918 449865067 752910399 753133898 158830965 34922282 787373680 979253372 270079194 640781235 959814368 238071796 987059180 631589095 614425759 883614285 760341786 461454048 967273463 916166477 641116473 792808723 615458075 885313664 58490987 468090597 965083774 556039506 590861563 232423032 997748731 429974479 39057619 88815521 970625104 412117887 915536415 96956055 183346555 60414367 700264532 572642429 914723124 211246455 937958179 423773549 479008472 918925611 960162423 124187833 895939769 243686477 373843091 975320579 559162524 458027249 688108623 923749320 817869199 853690843 784489235 354570168 787143401 980837059 873475135 899169560 185403624 403368058 252223334 130159160 66908472 936016717 157551326 689136032 795678315 78778516 903171805 612521263 338838305 599012744 819171526 660486680 469045808 835054895 504637027 588185027 883213926 538315230 762723525 406148401 226521211 108943783 943101538 963116422 738348109 544208331 831470831 412010497 300821139 926161389 514101277 238785167 835990015 904755165 999863326 871204172 935540458 881103479 801823728 894870044 624836915 793799776 974891657 536406047 213666891 673916641 956734626 168662931 519893954 883507979 456067081 739682688 78339100 925687110 927596585 866603703 943873387 973446170 874685085 472677502 741266393 755800847 914960838 859554180 759620766 926625573 935330848 831565879 225414676 954469342 941665301 150593580 180773632 882737914 541626929 841302828 322235643 771590407 651073077 832688029 757504910 247099136 868718783 719478854 785572131 963241977 397937655 182839069 913266941 808602547 576696160 90640464 900109138 118348492 988402331 917685610 507347833 813286368 970436834 976495047 484690017 661109690 582439036 250123965 650096120 778232476 465837391 940085461 440698540 786172497 270006756 481823260 71715736 619160372 645116696 825765361 793337378 335064016 758385949 594646015 213228909 476511008 985702102 942525462 648455541 915530491 44358632 859848622 737020247 798394143 980418762 649321965 347374987 895673266 572227590 972449206 770353723 879196678 975765626 220290610 283507936 436892068 248948849 163643234 835622618 840833470 430488924 901577536 981082954 70472609 899801026 459929039 959131327 962973576 654095766 167621633 608504318 77293529 534559512 219060632 811304277 887644521 638166951 248161846 775158756 936701268 906121560 234885007 853390244 832400304 968072879 949175345 896207283 963967552 173027861 263291328 972134078 744019577 827762782 919543943 831978549 800965120 806625720 791514411 838703354 213017766 638632584 813775200 787527214 888331766 220913492 774092633 887968249 231229217 246531599 816081225 698683269 595319205 63829758 836920132 156701038 1160098 373881877 959026610 34964017 967315272 892876288 776929851 356424242 341655096 746132551 830223303 270754352 400332912 92085107 255069288 761984997 883018930 753547723 747690594 356398796 117218557 806705723 139855248 468137767 971064458 207331843 980534936 908491181 792788741 915205798 164383281 652794627 781759423 872396313 847274492 886552903 907609615 618478739 3827485 874591338 92908141 97439269 791344674 794537896 809748087 211470427 161078557 801494063 465791374 902962437 533881768 895937080 808292874 443997607 455152744 875167140 3211327 196895081 206538119 943458029 764050514 869027074 703065214 929141000 713314306 92573245 191657002 666432664 942212980 41283689 608375077 862470757 206114229 882032801 351302556 790063040 417444965 497970363 42850733 842103304 846646994 518114255 797490355 71961260 248851191 840310467 589819290 999192739 933872201 123833648 746049222 210544377 849861161 907324840 864154017 916387874 980239714 909251819 415213978 636261053 420851002 834802757 871564963 456652478 917124843 982433075 940141888 52432801 430683173 856350062 605359853 862525521 830145332 952736328 994993325 589983021 551185858 402285381 785438487 763861460 488683354 672037701 476131379 798206143 628206233 676098420 342017185 559200735 388502143 704250420 409837603 931751873 690872355 727285473 12289536 472708309 607868266 429455022 744495278 818430696 771142580 635368530 903088665 918440783 21005897 900815110 705569627 828612697 127352774 508064581 967034716 336392639 207948193 923038029 914289514 953336707 203350064 437718649 790573765 849303528 830391414 170292986 916464696 971258686 657080427 30403760 613377318 187302990 832548626 981480196 788426632 990243897 379557797 885169584 258941104 118067727 906250040 202479307 917521287 938505423 910876927 357715793 912417436 454434965 260849438 987445059 367895670 270283623 46355908 754561634 927589332 837509640 824669589 549454565 781854940 852434967 625782027 282744784 4065021 842721678 801088854 643454238 33561384 849103264 223292572 894076820 987705004 958815559 712170043 978035340 882781054 952947153 253219137 998947006 597338126 854533734 15686909 271976661 409522028 883120027 422177611 931756004 876385063 92692704 993907774 601801978 959341693 784892441 384551423 845807406 225104881 277666306 692041445 718094780 977683592 487764268 819013855 660473764 439733235 316832194 178703450 902669784 503249782 558005412 615479049 218145879 861040297 808757365 80936165 698628661 909898711 857863516 926039220 436203208 167004874 943336601 824993491 194426913 934716964 575546146 718616683 917720672 254119060 157458902 913057090 777279288 458512950 837278620 178656240 112365281 988734034 859785261 626680225 188319960 341721299 895776931 977647743 840777128 977153098 554656294 670424990 923404911 754485434 303123418 736788633 553174617 631819332 24698508 801661170 816643069 906855627 741875210 39591024 51036702 311177719 612270601 177926501 768505144 737020247 148561783 913465763 897072824 446485767 83937513 185723012 759441978 918537557 210398549 510542566 895001387 848841207 574301063 862764384 251098681 225954095 754048141 82482684 933494027 684447558 797547830 451838724 263926419 952928264 272722764 448767226 254090197 918387905 595898112 614955826 814158650 762922731 989667445 828904287 392219759 644079141 956386018 343052268 150675147 841358111 817254628 101186071 787497425 662440723 89798263 965197025 818018999 820087294 756758395 878719739 1171659 372374051 598578854 354226444 275268406 881986894 766479185 791541320 724807010 6673454 313140388 76629643 752826978 937701668 482076475 392775408 982848143 736001444 697308682 951602893 857414465 959176446 849108520 399968202 936222419 99960910 471785954 861338772 753387664 856199649 544930763 95892407 582472790 709381175 777546338 378249195 804579398 836425747 741340618 373332991 986071224 558896529 614599207 807025249 669862237 605128897 677203656 894968123 968365218 328673379 231095703 507538464 438996322 714583214 128938213 999447414 786156367 503158511 439141418 879056088 916625739 145708237 484739056 853523392 817027302 619924547 971320261 984448984 849091817 993161301 209482261 863138409 764945678 904808558 292655284 269915590 268462791 797685357 614795838 351913808 974444616 360227428 563208164 625464610 105048589 347252227 926346729 51067177 701880256 822395098 972023158 535885500 405955001 291370806 922573925 340237131 871280692 833589603 971689657 788302836 612344852 413600806 781159474 979961148 385207307 543408198 668200497 133278287 814601313 791783687 261750449 850137817 574681928 899789598 797515622 929895485 851641442 882209823 843312543 934851546 798939148 862524117 742563667 193161460 878849860 562082926 303831243 829996487 786461612 7093372 633961919 766642176 854779266 954226113 931286728 873124420 211615988 345553074 662376233 757753748 605220955 469285117 846034900 192289654 914461220 962928720 392633957 147062082 456705179 680806937 910534162 750643818 166518155 848444130 497097400 604051099 813579972 63725813 398474775 738803890 329897182 82884713 277085933 82211392 795007495 993751300 863979419 6696453 675712408 369744068 219230883 562705377 148439905 180760081 753763759 441041567 779858410 217447652 827235778 921232201 905414233 924780138 229970145 14193014 778793478 967552181 755741343 196926859 14891504 546669425 939469586 272432296 65450598 849742878 659718891 765970321 744411035 759511417 430161719 941147851 672497697 980807356 872716225 328912603 817408104 8403947 450583127 742557442 833207473 160728844 499294195 737020247 984665470 787051773 690552477 950530262 835176788 219593727 625725341 874265202 769312496 770455994 933566949 583656755 994954985 785685058 666796773 951683487 713149049 764804578 884029639 804666794 164911802 862552342 264420877 876451063 197226472 445072648 304334416 177955809 349347134 269646424 844931994 877696422 864122490 211516911 996376682 949821010 842700728 259138716 61956396 567318587 814192647 778564756 373169002 487224689 383069479 750086577 962283600 986972104 894632699 947863602 416496221 837677786 862378112 28832224 822969308 355972542 817705304 991263135 240254492 831889379 730891563 676978442 858210218 402103770 886683418 154247770 658437991 849714053 312856191 784660332 312196605 750518776 630844918 459720511 840948611 703474646 323608459 903911063 211201874 97561525 893008270 988735238 254080958 62943179 278416738 10436246 448847219 858229638 942521322 784596433 794221342 393003029 811356757 504850685 895674510 994840375 394421228 802748257 880419816 354572357 799148827 374531920 860973450 585349673 138461871 748729081 105110807 473126239 850452641 712413277 532575067 77754613 7089781 959366047 891319380 394546112 823564728 261886589 615478529 214685081 381443105 840558759 384937207 503267458 945197917 957454395 876425858 35830235 328683297 947546562 805256896 743036427 878941408 888630525 980951333 968729622 324277673 765564732 378105649 210364119 901000270 542725731 491877557 958111864 741276602 610104226 794918276 561658005 819818599 497576153 974647035 399144562 776143043 717550107 837862333 337286187 421218269 663109376 195473286 962625031 326716095 667740692 743122287 340559115 346423250 436753374 591856593 692087350 366353460 746218750 140739188 525949221 461086178 204525164 695952665 351731029 844668705 857134550 456220622 44198954 692183120 757229160 831691957 866489414 772266364 281426217 769791116 961743036 798155975 969083176 632616711 632418945 340079356 907570204 867008103 440574025 872904307 915455733 872817694 987769308 905283149 729290768 710898123 170837160 771623389 530937178 738541324 737020247 834263856 771278647 800624296 871441170 460940217 57269055 741133303 771519183 7896160 305297097 606972849 273372847 19040602 737020247 570367118 933375275 417127315 435848139 925656123 113481375 17972338 106484559 831305667 991292091 842598207 927430004 905966873 855865060 770754436 515100655 882592409 367072828 971099834 869678091 864747410 227096236 789155504 442786343 889322678 309283925 914899841 412257903 315987528 670690272 976661001 208949819 628338152 890884132 95491754 913603533 565530496 986799452 967987996 482698867 347706812 921102618 939606950 950582526 314755664 156892544 494465079 626030018 815592479 272895805 844409549 892459062 826861303 16395318 978299624 99488453 885832840 872210114 839411364 818640207 50121551 845521001 26583290 219050219 577414040 957552393 877026185 809724986 626468155 926173122 933404934 387883323 974713012 831018169 925281278 955934867 6966701 175255006 457065101 940580754 143929100 707856775 841931324 642887658 253821916 829484426 440853038 964116734 111787750 97521310 310845074 622346898 878769045 400284203 46522089 643547508 583420060 941722658 128800817 671034230 643571328 183674105 960022021 97705028 476406326 959439085 64080255 395762816 740483357 216700567 590138870 692706432 29627259 744767393 984458257 639542159 636478188 812746650 63741361 743901181 161529513 399076069 783459174 903516774 748086108 849526602 225872770 148824537 749103161 718096086 175981527 969109681 769545244 906387211 783213636 824099417 593338203 165399079 447549476 966246661 837161130 929533925 715673383 776790379 863709701 584195592 693259694 481454334 115664732 901936550 959363212 765885492 910099026 886715544 967839381 896958782 415935472 748024773 470072614 346267302 892127895 833976920 686215380 910956202 282543454 484785558 935455135 62282823 748607595 939666243 716574373 562397399 814916841 679229760 735731962 919583080 996638669 774630374 481255821 694843474 728765016 199023668 986989803 18875740 47312601 908563044 932119892 242184872 950843831 796905792 471715602 937464973 142261200 961274367 141928146 515131490 707959100 938793096 581542323 755602190 282059504 961758384 156115222 651252610 857445115 864995963 85704783 992949749 328681833 806815174 642014906 936369384 270489132 116030617 851409307 893717273 633350965 808179602 956185405 912167748 853918149 859581290 811848665 394674765 76068195 596417496 674827881 839743725 467931996 103827759 916817844 989105852 509309745 836227773 944443445 856919122 863251012 726503372 579445862 254957199 493338632 51164781 31288012 49092393 930885606 116761939 112011344 807394901 697689567 125261725 918692671 762563573 944597161 781795366 812956163 333358080 944584925 757257199 941788506 750387588 460388798 767455082 767240350 195720497 181629093 776989759 125818938 696274501 609388239 545290832 990901547 895019717 778417188 538958174 631334126 897628020 506993730 432565460 63042125 342593238 120498328 403057117 270579052 843594850 307656942 376866232 743683356 590864265 897479499 466713932 296097860 800362643 722099949 777900158 951917587 801533271 459344178 702274655 388221602 596541768 848782315 900262023 653616140 998851365 352438587 579656163 48810477 807586173 852263871 925076496 692676818 755782175 841353693 8298777 466142483 902487241 268042584 857933404 978570630 928478115 577981152 729797489 146290352 570063931 977401136 977887444 919909591 248164987 211171340 324036048 930595220 923516323 250842641 38062452 203176548 997697812 958826442 915923689 511684350 464232132 218942068 563807025 822834878 712278909 987470230 509494406 863878907 783600481 773451588 126529458 289012256 810725601 921648778 53535214 785845864 822784533 189176031 759978070 993706835 306647569 993418646 216928674 124840188 902422332 989820384 279641566 817778032 900419489 897954927 366012259 34356198 579708638 872602776 634288675 845628772 836050077 92160140 908611529 542404546 386154004 887491215 598841694 937751424 771824850 514578375 996691204 349524442 285015942 923654727 275885164 773795892 863293498 999577778 814949603 163566641 767450531 174470664 801326226 658980795 966727528 959723278 234871596 907408624 892697181 899163126 712045634 913110488 917092649 616349626 657648053 182976981 436627125 797231523 851869417 808599333 873002148 729034351 280410287 911187331 361837523 995047054 764577466 954877364 844698572 459160361 86809431 271302473 900067302 792437361 187934688 218835732 987637819 203580467 808504970 990206674 379424549 521699555 434457255 752243321 854633685 978455659 50011189 785698903 91885265 457229349 919884945 733729039 565373528 847794591 952621662 810618302 107413454 372159739 465623623 424383400 991458974 588928011 910506840 887895317 443004423 634066294 346148975 778558945 445102234 804499022 814791516 791215341 890583409 907372467 83499668 711207126 966111370 772436934 41002982 342313056 418938105 622335070 915838478 869364393 414204316 472247470 917729104 447072626 966990587 979157105 617316349 854078838 806402630 599564472 934897034 510533112 339915545 947449344 125022323 806929327 687331264 439423862 755450356 760003522 788287755 374255473 166645317 448752520 537409922 823360952 907030166 268361553 842504985 857113534 910169707 18956003 839978150 358166152 877344148 323215262 862264665 917965544 788917987 861493400 955665580 892068324 542858840 808908508 952622875 698951493 272566236 910030504 843330229 514858949 727052277 106661843 587777410 492261191 188690522 52867950 64549009 819074811 766284854 957929560 153076035 65398507 165310441 971791938 192979122 815561408 312766582 800908431 995069461 932066109 587169676 967783946 574767575 816284830 732342194 919410142 364184414 823280186 51679170 568335633 838803681 994450187 44011419 524283003 970146519 314409447 737901990 890705264 24442504 516570303 499083019 961516649 351657916 868498811 689244478 957966057 546032240 969024047 817576241 821788110 478024942 209259070 570873022 631223096 783940129 268743658 827324070 599123731 648312733 591438267 873098652 368654641 852556028 222041643 862457346 775732040 900004029 931837504 861985756 818885583 911169957 102163335 939181937 238208808 977910084 833871595 613247693 805037393 125311422 967304617 966756061 442841103 795017334 750262261 470280858 164228893 657370717 15147812 991348576 875504117 739060664 863678161 235756634 410252720 827564887 877632481 355442414 993367923 933814601 425780362 770156188 878681736 512850061 803760664 536245634 747816087 26836090 987698815 871983055 451962641 774626197 531706736 893579591 834809805 174301808 938544611 101409764 33564777 235175619 613308430 398015204 937878354 591426183 588595206 753098474 254135803 374881129 934095024 977186093 770464642 638972572 749345485 794113133 961545105 357588567 693739199 206741688 941523870 373843590 918136814 770598167 557827288 751035741 333316429 521991538 42424650 829449325 547581614 503292202 786044305 98299788 641040413 978849939 769384131 786205510 921499315 400204022 997959252 673071935 940353312 86154814 996040291 844651129 938779435 786791966 516551413 927371963 477987735 841725702 663812141 964075813 900178516 614532971 479587743 417342561 898701542 522275731 503006014 630321873 315196562 980819245 272447653 113410645 899104951 127472862 926795464 993386316 946937520 941095306 190855455 658468333 643204273 966914423 453027466 846898095 375833422 726970849 635980964 844555627 159118025 803618812 827239940 677940944 740594935 401853086 326879128 534484629 308234271 758807598 941552502 677110252 363331291 616007556 12501564 473479290 551811234 919971691 613546153 898013088 304191577 65120316 757750684 922744166 661896041 508260431 965292546 883937248 318746721 740171719 793761143 215087085 713898125 400782334 718224690 415828734 745456167 349373666 797036927 568315328 778239504 844830202 739731742 847268197 694353781 994644435 99084998 753782517 998156775 786639617 238082019 421470506 668919236 548224606 279691912 927612950 948237510 383348049 705075506 768921372 823093613 885749291 446153964 519516743 171143743 974271800 388734395 5830522 274962876 815151602 644716156 289947003 114650028 849552872 131321238 871430707 178912230 833992034 74753204 109363036 273439118 987968092 757538362 286098666 814203792 967106224 838359955 163148064 850032909 200686722 983141177 580259419 788823696 511135976 977119032 452759584 643652767 739490705 187553867 818429107 830219113 788182182 327316988 4475518 505267464 808696208 363569563 626918016 852367084 750427359 31497082 791853919 954291363 749250456 757167032 884297371 99462573 608467745 709447934 381385210 968444869 793106320 986378933 785934600 907423168 912872905 45613546 769019363 389399106 919395758 983545668 398201146 933854086 854646714 15884826 663628656 927837556 432489505 72806406 906470120 401779895 872477463 234060098 935971241 862737850 852002795 768356689 990634404 142737897 983857083 379652604 755700844 476756801 681231254 892163782 475225306 927697718 737020247 886600527 143860351 739424006 957713991 794487537 618168278 569006322 655114993 283105685 529783326 516973185 837801084 318387506 525576793 689366790 786657856 326985761 787566253 502914682 608968643 7550351 602823666 319820822 843606028 917678901 626147488 77967312 931126249 888879550 702312466 775160686 849350684 990391157 747381226 837503381 938673535 808165729 749061058 47530679 975391084 772147795 138454931 6495313 988746425 738187628 333419954 722171296 779216674 867197451 234267773 540939676 876289699 124662452 569166703 967765101 335904278 444885688 997451224 897255574 498567405 604435011 957430662 690002065 204214170 851792155 87211584 787304350 488586406 966341185 933960045 640341982 66176096 53867859 497148912 538122817 306357252 573857402 59525402 192508691 128605990 822327208 323500969 263845204 633589920 978031825 745229765 538722378 677172154 387201102 895069060 676003736 756660836 246375740 608799948 883654963 23585488 806373999 264061638 690203537 488179165 854667844 637951783 445797614 250203291 36165894 735073779 270800007 151271962 581950830 783060879 589746676 742588934 879693895 2344079 211510180 807083622 626688842 931143487 94292060 600725502 327148176 869361962 68398353 160580213 691937794 175200942 584228188 141215677 777929123 950174780 219442502 304706301 435444754 54134985 647080857 521696262 743319384 834546085 764631236 862723931 417321229 956386897 862935522 330785278 989774238 202332614 664186780 304977615 980629030 893896148 954235764 674346803 756735081 111979778 925750837 743352821 511210714 352081863 998033456 716408036 885937310 693737261 272754369 319812929 889324399 839845756 787661346 724263505 268287221 82809 90803709 875891607 935043743 876403998 782158140 291362863 700937879 784115142 937264321 814364746 136981574 32581802 488595473 744605259 547049546 921675532 782714489 809803460 195198369 962484427 828776209 20475558 290121979 161616419 808205274 793134617 967931976 491261401 306644025 770404347 291685616 364020759 583454572 979959321 810017905 846818882 411722138 803322276 744630902 986396911 881551670 73140406 352767693 863884681 435957108 402047716 777618803 419300622 309106251 94327778 269301275 768318449 915280426 447543474 131277389 445775415 142203242 83145509 829579165 930221737 947805777 743887322 874450786 990584329 878135186 237811957 993383527 198978421 786734651 83936791 568928787 153014063 924009503 862312862 91267071 767560531 968034839 817739532 503152140 209150386 752044543 807594481 424401079 866047188 529094352 985041397 4989545 762951972 849694420 684615505 530905866 863536801 956630574 300335546 892117991 612132534 674792355 199189737 658297945 39828638 955739489 972217852 552760446 138893438 976565198 137045983 674120184 641273075 782406906 481145697 765105710 429985097 492922838 817187153 969066012 306632647 911575953 253986078 564256868 835574831 624989435 71090141 975194564 713039054 866717456 983115934 963246926 423076184 973243834 674508795 878603813 823034856 154763897 372337528 676334094 194999394 668547096 235604602 860293332 59028769 143545330 411294486 583809360 198311526 702201019 303494575 295301412 860074437 14572501 572115469 866574145 522967378 927650364 938915907 819179328 656705256 539950731 912915763 618015042 430002669 871178063 293427768 950040023 123083874 678858632 901589369 38806909 165712068 903960392 469509902 872165282 677256167 773676435 139294916 963035911 742541929 779922447 321479869 961961795 912770504 528845116 617317843 816413094 386605423 932705997 920940858 57641041 492820324 811064464 914727773 375622555 923413750 848692139 763496892 964685686 905669506 900806984 182986663 895321952 948174630 954787211 316473624 169406108 879619663 747070093 90644971 853961558 512019134 40558888 203905692 904531227 788236772 743921902 816739895 769054380 891446886 567794354 912174788 773370523 793281246 928435916 574909836 121768009 523373170 551411073 957030352 80350129 619999163 962686042 312865296 324634010 969296508 336449160 782027335 824740614 765120916 798459705 819938449 948218128 535917970 508142893 897301506 262441140 851174038 912866900 946777701 726462137 765374622 308985939 825951116 611051728 425264524 914904664 743586448 386826349 610630621 868768980 952692072 821118850 781096258 869281289 547856684 826946630 971978736 515362183 618679564 232437883 894634152 351955001 808366551 436191474 182145450 96206996 977470805 376887735 779014534 749300767 94037711 694872452 748932647 443524434 870957845 317250836 252220715 789230042 270337841 837788467 608802816 868431075 682533034 852693289 314679578 598279179 58594426 772892996 715840533 675999373 715580100 766617044 821426300 850714981 588772643 878128172 1671753 999655615 843849773 10636085 62369726 839919317 74547183 992310303 917487525 628025107 952773466 742489488 754859608 330305844 338765479 307792868 659504173 649878352 328323627 952290031 662241414 484862698 425197581 496352977 957502837 842444306 842649913 836120036 517669437 821221213 884114941 604699226 743340407 301959490 787385399 995301512 870892504 753794027 943230160 125169570 81669725 346708882 392648030 897968197 438072334 950906990 458816864 546214932 14787460 245042865 841460078 399600250 947073339 210240918 516551054 745196839 315010153 685618158 916560967 926908646 831510398 877197656 226472965 357379764 865090077 516345549 841255343 728695184 601766118 682262256 946358227 52947639 861717759 945685133 38949557 737544430 921833583 761550458 29789099 810346111 833259852 989187531 123998920 998134987 473036869 891380953 589798350 147870703 880152615 293328668 975107320 959784935 92439515 807610298 943647157 939988673 486069859 942651802 536610960 241116892 328933357 55717661 981559000 849684203 972785844 855786578 850138806 724464957 871155225 455992201 749933328 866329167 257701249 643832914 699093811 978365962 917971297 664115959 925658630 289190256 342296049 991260798 970581958 86843997 105364182 925258693 873695668 214484167 749584970 624148063 951989533 875267529 767146252 1158524 30151880 786706304 954364263 812374408 714117986 934645850 909923987 792176084 909622897 196431490 695430242 239487060 767246434 461318706 143659330 138153862 158725077 72729767 592361743 320818965 780461382 771992530 66163937 15114383 546439575 579412524 315207817 504074841 649886418 33347299 541578341 225125274 952433139 23519308 433834625 767610256 963205870 345149839 56880946 611574362 204865684 415366777 21068656 942566592 105983049 443121047 495620765 785470760 285126235 998337456 799527801 156140941 601003135 273571959 75903057 859356415 368434442 810026895 228175711 507924052 889756219 541446576 853778312 966210524 55289914 178014815 782543813 200784602 991020307 343429293 488137573 358859372 765090274 994105195 792159711 125783350 291531881 161662656 968477668 914872350 896227539 624341602 832670232 312940082 873646427 760367751 913912452 851439480 964783530 865361474 513958514 60562864 61923205 927041897 939573440 824785464 265847475 902553429 716679611 828633446 598895433 908707943 950338837 78477712 780963085 161330405 888515772 612208355 412697298 750074170 749932906 940981443 593411312 920337934 362357670 739455638 82974175 780120428 570439089 29232264 907739848 854143295 765111039 243236481 321034261 594434871 737259822 59144865 348158042 803353055 569421930 801472618 811934965 677177537 798766186 936491100 997725373 363623585 994823965 848618989 788181608 902607631 962586954 851791194 207854792 695788731 553262745 416481202 46398412 987772005 952347029 826435635 866669400 145214871 651320264 881960504 307882819 994370106 767885096 249617427 603795706 917491232 711260573 615135602 233170061 728687264 744753992 954491001 891399386 893975119 117467837 868284167 379872459 775195607 467511554 293839725 397444701 908030925 159645108 254623950 170132956 912395630 787096157 947708111 327879807 943633820 965076777 469307403 533858361 977799271 962075355 6909096 810735909 882929853 465571304 270592883 109572944 941023924 786926781 798056223 887735782 737020247 341819097 517186824 21104401 585076462 91020622 985037996 736626390 622573374 916048198 617709364 148424246 762285110 41738662 747425818 932167431 801792057 815083462 81064787 96475583 803762563 435201778 701736526 576777525 392322981 606612522 761261666 771928220 913410777 304367212 919868698 951130381 439967444 757148921 318586670 976403979 400820370 157051057 324548373 535440984 123917152 622187538 275993791 390951623 493642988 795096239 155821433 737020247 893944368 129711748 480229864 869611307 897371443 611293781 364892438 296480390 941780018 412330161 673956014 953711113 779864619 739427041 663132259 868047047 961641880 220454708 864898106 121854415 994736135 862719282 93136561 466616675 679693629 805667315 868288288 635431628 915258229 761860455 276650906 825406798 219072016 775543508 837592056 794255225 370908351 850630529 182630263 354157343 660244433 817344343 494649086 634231988 521038696 991710994 796689997 724329129 748666733 952927191 699142831 278587658 917553403 651108857 301614474 125059645 733559984 817511253 969405912 947651901 984699132 145024892 769953496 448042814 469216063 743251133 829479543 877882122 356995172 896231049 818002535 149291591 11778427 983882931 214468672 5606168 892676164 864859531 809895096 853966954 157165493 951956113 169731521 660317602 358681709 613389136 746914832 171691995 855313480 690739365 970740326 812182562 972792897 303903947 556384958 381267761 104623202 937463390 633216881 880931187 744545035 648716004 837340252 156513065 46538753 754188998 470195339 906154406 575642706 271598636 856947666 892619723 425890422 672798434 25323175 613855554 573938554 443918846 427107645 817661874 213927815 351363675 853369381 756881469 906968760 998382945 928805666 586990460 387564732 234558053 472295488 240147004 26151275 96219004 273589568 483949660 901712655 23548845 13950875 296763145 625619388 835303318 646677732 964552562 828543075 865981030 431143716 626391266 382064291 659693364 782502529 60364066 959395308 416914885 710643048 741378375 314288731 750610610 211225440 866766006 830298808 242126992 125712622 674156718 383896458 40402937 360881420 893072305 433405481 664384928 509097509 577483459 953777447 964684874 874088270 354266047 647400434 188375739 325471991 115379003 911980718 517970332 887604769 850897693 787374628 863589870 802604466 98836957 111592092 833715684 281378206 298565624 834898631 188915073 185273530 38963754 760010088 858892089 803045519 669541316 669114836 143403265 842474830 97606870 33145864 766587691 814591824 789685097 663721622 960503178 780020996 780386461 756547943 745244343 741407024 733625869 910872615 962985639 174299975 766724991 37305505 500875966 934097101 810477674 902726349 182401292 825445395 20732757 882772937 998817699 854370550 660856273 174439308 523174145 699776001 908816916 788520998 217573247 843695866 767742657 740451658 860442889 520414280 986094033 291471521 524063225 833898506 804313435 24186026 692037540 108452412 948084917 315339151 820351296 328818470 916822065 287489668 653112924 725295189 190453816 918565175 865186690 210027542 681772943 82443060 415609771 439278762 934090730 652649639 282696939 479080161 860224699 798476750 811592731 911432546 778039286 849050968 244024934 85144323 666733352 908623560 86299673 254903915 857749346 658635732 738718610 986271462 609271379 289316855 839028357 902235794 440978031 829722117 156475909 1643781 770470426 580836580 619459556 207358386 897179559 661985418 905229729 984284565 939177190 5968644 813400265 937996584 4358890 760825122 787090458 976958884 940119156 991843919 223493254 795231376 845293581 927333823 467722410 75022252 418179335 443458657 853341758 938116909 879815066 109920537 348894976 362965397 178342162 26227837 904888727 755173514 950895031 722943553 906171742 409585432 309173895 953522769 959652658 959328246 953773908 889873230 692667410 527884939 850726223 562886072 880224692 608129532 781653651 626556108 145904110 737020247 802875505 866781385 243751709 836707642 486395271 355255962 795690768 752919002 873898727 83808611 19612545 891313973 145776790 589737969 650170423 194120529 600311204 931650547 180876335 161541479 460494071 148838165 243692784 552630803 760907814 335181701 921249197 879730357 964988020 754864985 798583985 393248778 879409773 901096490 939202612 925302776 262540251 895357443 713353815 357651951 782367456 703817948 767794555 3637557 792920454 965077153 923583473 18773855 970279611 541696379 741916746 356320417 846972066 820335842 296489192 951207742 936821561 493763527 993854169 984105501 311721064 801114371 798352030 288246261 441043159 999438493 132301728 837920121 990157184 797118782 366649435 611155926 807125493 815700399 872878285 679394732 933797738 899040440 865776008 675611853 882867654 993686969 835514389 866107927 505067803 741465773 124972228 846165669 784713003 115155580 966553426 554249433 989006602 854018760 373288284 808134711 884607296 441769590 350480056 993124866 791309891 339738841 867374368 356542733 624438459 744638845 994515381 132595721 902889801 504342424 931979074 201766907 670049125 585441703 516457084 965993201 921294750 945595078 801431394 878161868 813214107 728097322 855666078 714111935 991636552 11962005 766617363 899840001 845007558 327882713 757749769 847854361 886406621 852791706 903170144 18037055 734849302 25983438 742053342 498812445 292502319 914718239 837373575 68506539 708723567 812174622 866289907 985713853 864007502 932714766 988497887 619103736 944472213 209023556 331092260 726703388 758299837 32741628 289979342 232000205 100386810 235368182 988960983 628404902 602662965 924547763 935246087 888567199 511782518 234289187 346324972 829396772 869697088 801101332 888146971 807352070 710536468 747671466 155181303 775285034 505598083 75580938 19292184 265648071 904932273 278167784 448088517 840670156 903275409 823539937 395320451 10599024 547213325 775011843 416143358 954881018 864655822 892670579 219837969 777482336 493063586 120568737 968757393 739300649 672103581 667325352 147639947 957558739 761267630 605225881 806255591 921658339 8100981 996131182 883349264 745059603 986282440 105467266 715362904 14109481 954841121 106757003 127726736 493843885 78431517 245739310 999417432 812917904 507600448 516277591 141477248 114897168 379436177 504021741 331898524 110271987 205771889 187176669 871991620 849326771 859904977 628496325 808071196 788317203 668021379 522794030 948656577 966159501 883999172 653725369 790070834 61699737 808797058 983178168 836983334 261635801 239135614 783366534 54699789 186926698 772557341 284547610 333331906 941244797 524656317 736989170 786158724 202061812 40218566 251545787 411833041 815477747 692590015 750493365 544539733 562963993 923100048 936238078 347358453 986943564 875987052 471991176 46847776 378259770 771918591 201971261 979131199 980411461 500679238 905971971 13157217 322864106 700582987 934934062 938471639 284019496 129973071 623059102 363112142 487481967 434699413 922848278 92582494 755577341 244413781 769065677 873301428 914274297 465035983 790549592 409595506 855474801 369083021 790416935 952289649 848467518 218386387 357930727 662166473 934294174 814511828 550256698 406230569 874723645 609828639 819030651 20557043 508196473 965281706 865099334 968388666 492976040 598295144 678034595 506400886 780697872 506065198 300721243 590355956 794950775 999434021 456877750 556872869 168053121 518172496 894204041 999154822 488701297 229787520 189550174 854293685 22526879 835921584 957537485 726839148 855249399 976512566 443820183 988820425 726159603 916707485 148228908 211572315 981562667 891655606 929702089 372898266 288970440 786130391 708422914 602311940 623395851 737020247 703476183 172233236 678320246 167973391 130440569 825271108 345380929 543845209 334699535 904456063 280819508 966643987 922829246 352909561 934507433 940809198 673177814 826993877 737020247 961431005 825314223 409469147 194195417 867108926 198107457 726637214 973576542 858103675 432281507 753709528 905914471 464821799 992807685 1211587 961125809 339028501 645050427 892695539 758700014 355007581 439350848 329204151 869966285 982039560 476777428 91719611 785502462 972340030 744277150 606211673 961858598 392636340 756431701 192548131 642348000 800266255 208439281 503202557 264764082 278633828 861958896 672223127 741895151 374746062 163488411 198422753 139796203 195650777 169204604 910358288 91215518 863797040 754422074 887757963 814362308 780031728 835143457 891743673 187185862 361142648 995544520 627488147 839006689 48708884 440467646 790222117 731184164 754484057 840341441 915138032 468333655 807371766 762237505 737106776 15146695 182605655 809151031 428659380 73720271 784017094 164745459 26419535 11962996 842277293 849528442 406868196 648160503 807307815 570857818 181013732 615236169 694466126 837992106 548675683 800409697 669035512 819595776 996644231 333802587 862346803 793664596 878212780 61053676 807366622 978467112 693051375 816785117 936631668 840582258 867514360 526079338 956560619 447029297 532387829 785657000 768546970 227550249 596249126 446525991 398772968 241845777 600625326 793049099 279038275 822298978 405969781 988783696 241354601 259235605 821268032 952702145 149913960 793177166 899882410 533785398 746130458 572698128 398896760 537856862 92195968 912066587 799414368 380796461 797828581 528231290 945680710 840335857 688559580 3575528 758424585 588500254 199404312 847396453 973576217 375161051 462658211 968765761 642627961 190026701 978377701 699705521 731020139 957329608 196186480 752954411 766258694 962625710 999941947 886886876 291334889 769455752 326104764 918781438 998319199 940367422 786754143 764253890 798845459 461805704 491968258 51266859 637085022 527397359 498621995 86448303 103667290 255058454 303019633 11346724 445060333 894065602 416219366 947116475 129194328 722782794 882083304 905154505 967327782 555925471 759996832 297897634 753260919 191405618 927185865 821688533 924678169 448793060 901460508 982894210 578728603 443429140 766945842 905960389 381569746 571615736 986804160 962012637 834635128 751006259 849384620 65069194 138765162 320411046 854064003 562080889 872459261 964995440 829073467 173200874 857892448 716073247 943811112 931957569 909400255 832472218 594379289 179643405 342542918 249329331 584161861 589199463 210185953 956922972 417533721 780373029 897992302 98122279 760793043 800489161 839946669 555014470 785566359 968773559 866919131 715482123 935422246 506333752 692762498 961492779 767741201 808568163 195548377 365486041 984128157 837018922 798393190 425040439 785981975 907186973 239980847 980312401 843177054 987041660 925516854 63588683 390093406 813599667 750121743 399336929 131321526 685132474 906760233 909695853 878098905 814663264 737020247 616091819 357259141 929917193 938470492 285017367 146364816 753539634 732025324 833082122 631840015 940557814 133789451 740571920 958376459 784983850 61610664 933835143 868628228 428594347 171409876 936841066 576762751 724566663 375077478 837011522 914045898 733796174 769482843 733761254 949788264 172797620 801078632 511466273 573971875 20626766 781747244 490544312 400207326 750940130 871272110 667493194 236189718 937616980 783015846 97520369 804617965 853326205 746067077 902472686 881574789 83855206 245377747 874990183 289360202 985351022 502839622 777345783 397274928 304157726 589845001 464530818 959602630 726426705 70752082 276820335 809236701 951788375 829348029 862705362 831851640 752516153 769296542 842645809 590481630 516626392 698706675 506688522 124551462 671946681 749116892 800130041 355256215 109235916 120131282 177181018 781956747 63220419 802482959 880906754 137844536 663629409 939755202 283658067 895573929 845478871 824978399 955842858 994616905 965443975 64432595 150996043 412420497 339983424 627287703 572445054 801243413 679338057 940448399 214336062 934957777 981273306 123961509 594347145 731888116 427717914 773982211 890344828 974249197 937882941 730747602 848538820 330303953 932854711 488223798 895988728 782586835 523237199 936731009 821576780 926491776 871348461 517259203 780325897 988448955 191761180 750308491 490406720 60999621 547776460 885223795 219871930 760697233 723019121 545740366 292322843 834044713 49895387 745423504 880826563 191555641 196300082 494104670 972871563 343482897 939350924 804508218 859429035 328103347 710357518 989662818 375079531 931131789 785135679 996178166 849819668 207504134 256931373 94984721 401402571 206516367 807767654 308375287 67289736 581114413 869110884 864583052 880807311 986792363 957687328 779226517 984305836 577618913 757558040 971829514 682913421 391557256 316382245 189816837 324086836 714598352 16405314 400890006 738989377 840587481 974920947 78673811 822891451 62051385 785537119 715782025 971521826 266022188 763982117 765760205 351455371 91690867 923946947 605113921 52753771 895797234 160867472 865722332 931267751 864823123 226055542 941336044 365036968 400338225 42454443 983902305 12547104 516825291 759093703 519005065 980184370 978324308 858560061 737020247 870502974 865176460 760665374 914860390 531459318 852600707 371404779 571313075 198108541 210130543 121299074 822195488 953557414 938587918 567157721 604574493 551710840 50106391 953153737 751379432 171335430 465412479 880636434 100893783 533246910 864430438 358938341 267110756 568069347 741408488 353918894 14865644 835789050 929480755 527810003 849597893 575321302 993981756 54982479 806171441 691502821 590424609 280885264 694198496 215710798 879885801 921446020 607219470 987609584 894206637 284647223 786806754 571909179 637705212 812920910 668746821 958994068 858273193 420016247 870364168 890590516 630720285 905425876 38981413 951290327 567499384 549404912 918376361 254120401 874861770 768260099 680039287 58846352 814687298 978950304 504690880 865331324 621961394 401999657 152131088 604620172 831943680 617027561 520852968 967544157 509625582 992683570 836555658 283268469 252076798 119038194 901356983 806044339 996893973 850459130 55065362 983769353 309656187 389721320 691815394 487968190 750485451 130686950 834532781 819530804 388354904 772355856 912123077 824364398 269205686 959141122 587317227 877698651 418948131 609459891 156542835 463681190 962574360 345468334 820995206 963718563 964378405 903900531 441668765 910074078 867396814 869078557 252556523 810461319 219943428 334262879 770469847 884343939 343153300 385004382 818679503 923508654 746751989 504055309 801844899 881869050 268172123 863227861 840538748 152453559 315270033 610772661 457272411 380981829 748357145 40510989 792739423 403498240 396190305 572463807 153907585 102171620 230803491 740110212 304035624 400511265 235603819 949366491 902021373 837513417 365947242 45885913 494029579 972705456 471063087 217293539 672182061 936735277 801973333 702675760 116809792 775108698 771544171 949664460 711276691 214308594 946182813 858665238 451024860 743662874 692011183 376420388 948301898 463182879 448882336 68980582 46950531 775858930 889558569 409368590 957419017 735834918 259126970 488560644 750471887 208062883 983932064 857590697 898746640 465351246 877141643 807250375 299459233 492240339 747900263 982890618 325917619 867959696 710933626 467105234 774680069 335506004 76268698 179496966 967999054 907195440 988525860 934443382 2264029 795816697 913867575 561615285 839593965 787203025 771410785 175369872 977093300 880899549 868065427 480834890 604764738 978680970 63388083 329186480 292916628 498564507 342252556 138127552 794935392 958254139 974938128 257671234 857391374 586432607 151561587 868028796 867181254 951963519 815722775 877279130 949183363 990204025 775561507 265552760 816223533 321610959 707819685 895946805 835589593 849670471 781537924 261011842 781194614 367284814 902727135 249193068 995927540 927389582 887040800 896045048 774654512 906006177 668327394 92303248 334876746 552784094 892420641 299543755 753722317 851376002 370139013 804846581 901305124 828142321 796226562 310262414 951310793 740091173 107337509 575456256 770732830 168847594 486811107 393758651 921633031 591113013 777478028 762661263 693875249 481159378 785008595 757601702 782464443 887004666 8088690 533627770 852583632 745874317 947959027 905192895 44336549 193788782 640567579 780733935 211687876 632349600 799559290 648189571 926628513 421471060 971110100 925889157 36263995 219698283 923504786 874898130 390278878 556803562 813133874 233931852 770330027 126313121 876821114 767768402 72117186 812588724 687683850 899000730 638556745 264892104 699352359 766795928 853980434 747244369 566485529 828697431 889822170 296960215 14996195 890900926 39977775 761305525 114205517 644357642 979302676 998280896 19446316 277583339 854941646 940740740 966137742 18750106 831087353 944963801 629572073 844157087 738598659 886730611 767405873 975057309 27083778 765124847 419778600 821617809 381163664 228834732 978011724 133095064 771523222 976611291 934997401 402474240 253653642 11566456 117830031 893935852 597305823 851872970 525900693 880706539 297032859 191275535 852420134 869865878 587348127 172936354 150535887 771800910 472315654 122018007 991905125 470617570 536457327 293065184 149181418 963675376 495645929 827125175 938386584 829053185 312448469 174002499 96361585 605711599 870392341 730839761 10046714 813217458 177914172 941760863 985246125 836426284 298564316 465998603 876296410 292992545 613113435 970806975 574576079 79368790 318953345 891619574 844509456 964963938 689607182 883109878 482120844 916203238 595619074 688368252 585219093 965423178 782732415 706470918 117770830 931978663 611954413 144405084 690556068 452509255 707798906 750029773 620769767 877744648 992481858 504808415 320425703 974883054 582089191 109034993 884170843 797411915 451392302 747496373 871388130 264252093 951067257 301697535 920066482 136080905 835354780 877745964 754986962 783528563 639216349 811364638 953923937 57178212 952288705 265935 984944347 259349475 300410032 15321778 203809888 239811405 565591369 703415561 283033177 324548245 790931333 328783479 788087655 184120548 967773009 760487125 218471939 699229415 981089156 66928666 531176677 954514108 532767033 394849466 708672868 565092798 790053411 872559731 921564355 901746395 197649872 212212834 747092987 290914198 859362065 137029260 798648467 905208640 998207621 869236085 840660714 917007679 967393154 829365158 797069980 918197442 826264727 652014610 863517960 816092912 931354259 281380885 827253495 825174116 120603792 294350886 151472157 347487203 714894358 547595986 961819612 271346253 772667174 881597163 802658400 2065961 878553625 508871991 975927082 861532910 936057902 773119025 116550257 975348216 664621519 375432559 377755839 428863114 934147153 633444748 643974935 200401756 730638113 784613770 854454818 857121363 297269015 101138365 350341791 941804949 462458566 6086962 896486872 753500141 788450910 361401966 347500596 408058756 428731373 426774591 218805461 491027123 857010278 326971041 822748024 295810432 106319984 407831695 850057741 327070356 439803610 756531515 896114042 869422860 489896241 396727666 939948211 852794528 680150372 927069311 188869765 739115687 817205245 66229111 981998222 915429155 267078029 324393202 645723786 945051751 589114409 752420326 852793535 55267510 372690195 108216399 781539868 726416437 53799543 472695047 802355385 376245213 791134090 991930323 524515770 637287710 87818873 149279818 980811900 56402413 368482827 504118348 936659929 874330884 119123493 989550453 586669343 511458398 613662930 144385008 934854406 531630676 596907002 743984994 766506367 871355050 932685670 707586441 134379392 912816723 97315156 907965410 298561367 946957413 359207903 777365402 937874534 922515341 123851690 513706490 931815164 674399145 902458069 436179248 124898826 15364190 967733508 156090653 805165987 546519221 608344308 787625757 750248578 618724134 973468188 52849093 803052191 431148003 714288160 851881345 269054825 751839331 968537879 946580238 980716832 503935653 908127661 983588917 510372451 238987458 713729964 214758221 731196538 514725001 892233471 485196046 268899488 70965883 234922152 805878318 709485200 813368031 269719909 200535263 563343240 772951204 800795630 798120979 340109611 321351631 849383046 706889795 410317461 886542226 296157001 826185718 248264513 985306939 963694456 426583555 221757373 431326187 939254444 913624984 39829542 219199784 390697258 615624914 765237413 856152533 983066585 396258000 805189546 925535317 866274916 829030058 834901193 400926441 526457405 846649426 182889879 348024595 894335221 885707373 292145261 34950081 700397358 764976507 785267940 979938122 973532618 672139185 309900011 762061072 940711467 711877740 926937425 200825745 769284126 670605789 809302191 634397922 737955855 361985935 893279096 779195455 899033280 449951731 960249041 887459337 75238040 99855612 441031580 333366298 951945561 936298892 817634258 330842102 751853335 274006843 735559379 22305180 753052490 798958474 284473893 253332611 797822069 839892333 847754194 886975089 853926210 885834354 720873582 445480781 774649765 930899628 520118990 793253267 908693844 319168880 834903582 411262723 998402386 909101118 631425260 603393507 855490847 947165153 662002850 62152712 936729671 684613708 490146278 966492436 237026141 739019613 909970548 768482799 130975300 540704467 781478793 180801002 899599493 68080294 61855835 633573451 978318695 741367385 914289318 927277726 443433719 115129113 634081703 857231696 46282788 919765122 198499267 746363417 749319895 926135447 827287908 755076277 752897146 166067301 256177297 933594486 917482731 853032388 779249917 931220959 952803419 825007229 943402383 996741430 771152397 141222144 27103980 545108269 266292238 788381305 157762406 951717988 696656838 869517056 855470736 698855900 110715434 851448834 960667301 335787065 801804270 566463439 899606920 958591751 141820216 921702471 758438787 852564588 950637849 767849262 122336400 983136691 227854211 385001700 311628244 442568562 424934708 333892833 978306762 168349635 111241141 789614055 906726928 815449077 243997274 283219965 765859050 181644854 316823586 952559924 744740137 637580243 997706250 822944378 317194 939722111 210524996 623744628 866531028 847857069 283761254 538885294 983224104 242380124 968402697 897454815 823114511 868335268 949812825 930865942 834717921 721852776 986142225 958934186 993692834 145732259 901685489 974579876 110099197 827083685 668330444 130021486 33893513 186788358 905290105 234946323 907169630 887797091 897845931 932154155 902620883 150991716 129431130 497592297 296788202 384343650 152021 969090717 857585156 399486038 714194764 60738414 962849400 222101603 439545467 758292015 777519412 291641161 763406253 714212022 832785890 975929279 169957816 767200257 987538908 148403441 850874932 790274074 546302354 11955876 178614149 192715048 676667862 876586874 987584746 363622816 843637483 876752778 596404369 68421566 764312313 6554726 700565847 737020247 372289122 894415872 24054343 742592182 718750730 837669295 597608344 981025235 463302986 972620133 345426720 123470996 499507815 930516900 605145258 927067982 803973989 612846107 925748257 240857202 737020247 620583414 850142728 788044341 860347594 883017085 905745667 47014336 117602116 906413014 721937137 62536993 568751563 380582117 971542406 433602279 498754859 213087602 185989036 443303595 614551218 969285754 245775232 832371485 325236517 603678852 341254433 423840428 967561278 925136881 859075355 288784114 927006261 545573587 898447627 737020247 266982466 779861532 945352229 980316272 897670693 767983896 33523819 417807147 871093703 982241978 971426425 97653124 892555803 863889473 256312570 525771049 984098268 641349496 692588954 816460549 510871219 899718809 909428333 830966444 232653721 54372134 706951559 858057719 584706411 52444173 960336174 807132749 306848601 787832194 192166281 207231140 223664596 615581447 852510494 951644341 907177589 649473842 745886841 890474488 172169959 242808300 98891116 259177786 758121101 972818772 711522111 749298460 961199078 728568871 418356296 418069718 935671977 749603667 172625134 871477800 104383508 612441821 211786 755521197 800152683 348164372 710534417 856383676 741713998 984063461 849170238 469409664 27040258 996081266 755447198 442539854 806226544 486322560 818405200 610792242 962395850 994426505 412860730 33592282 828001418 682075349 259980588 797809069 978368028 220731684 649861048 531454618 527402548 171256764 757963883 541095872 901776940 873770053 698520379 800069581 739599106 461399636 344212821 518229479 417394440 239323801 437486643 910458700 313052329 173547375 948770449 966323178 585120295 955275541 451157431 89713489 871195767 913937400 438450989 180449154 137582342 654793372 955246579 988767336 956363452 25118201 467696830 466538062 894738122 911606939 55928616 943030151 994006396 842129992 558184959 334236493 910821750 855747243 460123614 273289955 888661546 486743317 864217263 200311952 674620132 313980651 870060151 911922436 271762904 717889228 934389863 522200646 758987891 856009310 830078212 296135828 756696793 895969818 722407136 38143864 898190264 437271560 805055911 759251627 607237406 833797950 926410679 399574738 974965133 428362801 701013312 802893893 825147707 319083439 907262103 307235452 922183335 534815584 872834353 890405023 785031203 230659871 776130869 310701867 152561359 911109569 330749278 331596383 998850075 760126118 173101124 783379594 748650088 487177188 118915339 662617505 920050232 871372603 435792746 158110600 800885167 112151346 799645160 919228511 385704448 311148088 470887885 769777998 984460318 78952304 400320191 530743793 948707313 967671810 667823152 251002701 817302145 724003767 715010765 550844861 225875752 85683824 759406603 912525829 880160156 762712532 939356367 136913808 868090520 182173739 519298437 781649356 882630182 962636766 124266359 975908099 781585919 96603676 940541477 923298787 893637233 562909661 918973178 579073597 795530733 141155703 764670004 52553012 849153838 249836751 34541839 21683692 885276766 230678264 761214641 872604954 570391897 837032862 998841041 772019563 711071329 12815482 8052139 983476031 786179426 205280608 849928088 735748353 450062013 376742349 981136621 708334598 490054639 193840526 192077493 546115864 466416467 942329329 65175572 890819721 955363754 129193370 346003073 940005054 188357504 791190619 201074662 773876771 972755536 869379968 832641941 89567957 817749671 66102635 30941494 787776245 160850677 643342718 416518070 948486417 825683466 603913133 472839691 699085828 67066904 900728263 536519674 709798693 867327802 611110889 860941410 746754668 878982397 476984077 318887146 876528596 922815767 858948839 49425577 869136102 864812311 828205873 790928305 996213919 999777922 789851850 882240095 122353068 65291629 737224464 692332533 365280252 424900992 886881369 579416022 745053880 831700673 148574719 369161521 765705526 129041304 284609096 565633631 743994758 824673684 404217860 977638405 996362312 789696936 279768172 414419458 745294673 830535038 291169702 759087802 882056316 435511735 268270057 947439519 204103023 796516889 898306002 727613731 907826631 877194766 229198887 128067115 661933513 63183737 501148637 751840090 923998465 816891361 128837866 897905997 750404647 21915634 964294933 925946625 739667666 749763246 231483833 795168900 944379364 901459006 873736554 468212621 983444947 755680380 944274787 5536556 217897482 306111680 809004673 819727474 234712483 899489768 936541641 968086373 903319316 780709410 966213440 871094581 79083179 758108803 761886012 851976119 209460513 667104899 887355553 576097272 762365764 975389153 970368696 44308775 958593616 552797045 409808456 853947164 770574732 170836548 819640046 989219554 922853685 250766549 751033159 632192653 413882621 878340557 305989966 971415898 786443079 785921385 233122886 651028481 886400634 756862986 697940227 747924792 5441665 519820631 667695229 562570 919914462 680368327 876921199 664333920 633647700 133686965 920538382 345485467 994264398 888349116 965209198 215793589 537306222 276656834 106930911 899015985 183776443 933136582 341053675 639742931 600802554 135417628 924844981 468618347 344878427 588713516 552885128 845650892 898441484 49201060 807750950 717464527 812990672 925048892 443932062 816488926 874660931 746484253 262934579 908138309 971913024 30611558 865885906 433081267 939579163 632329062 670036692 812273957 795190968 347084910 40091381 800753770 882809903 521433213 52750687 12181517 383213501 880326651 456482468 114973111 308383846 240387617 237851423 491803924 869002279 793738059 908416969 190992211 417280656 591819383 983615523 570387024 269686098 463237369 49545233 537711784 174178494 95921479 379951400 987746175 188094207 834929970 920847613 909043656 777187507 284515313 858878896 880838787 145120017 71522255 525621398 955368926 873198657 477011383 988571136 812084599 766720989 859338673 554573851 743342881 780659429 864445563 311660743 826415864 795824690 865086899 755240853 933810969 742658779 811742259 240278689 112628731 161850304 557740765 621143166 479179888 64084431 753542301 874144260 835857162 949202727 569990585 608501245 911037880 515493372 359415021 344889142 450528774 189055787 636256782 877983126 370072958 917804700 904325320 149093087 722384190 903413238 27206870 893159786 912778880 124504152 564631981 238732095 196451062 773773423 227807910 589993420 759471663 801791095 720304222 474609344 993093674 194190532 782665398 452538030 662793948 183916569 66840613 776719682 759782831 849435065 390892846 535030256 453082435 845803856 986484629 57634874 790528660 989549804 851898932 918042453 958124074 560766569 855496773 946218168 426076241 875929715 394075467 944320964 873700294 776935910 603946350 364740099 815052865 953479614 791795246 977964173 41244211 879512363 995550101 744295070 141940057 891965343 849719413 848302632 807599547 717185499 89045702 912599720 825589258 376214541 640949138 654751097 911297067 30471222 899185994 177627648 234253229 633436671 610809339 606083021 740830732 317647816 313335193 911467303 271413660 987809689 792721182 679685665 744315122 924165730 745983086 167758925 347697191 694719748 734297698 940999612 871531429 448113907 88116550 759915579 283059258 802731760 665491566 282081234 942766014 738748041 375143650 362849956 917161129 752741413 860405378 118932363 502890861 575867591 874484775 276136794 973794229 724509932 239759745 499185622 747894684 781701806 940811869 433805008 768252320 917214154 497379286 397124218 816139195 175992523 979737204 98787084 810083980 862313339 943864501 989014916 245434922 287962713 893559843 806570559 991647782 476898887 18983662 710121606 773527083 455574297 756898123 874558911 781383801 293989643 789036159 956277832 113550471 906495395 604311515 886698048 773919147 539220736 955727713 435518730 108769703 872197829 940446611 944061345 981838707 801235775 738173421 965414763 993624666 229583868 850204393 42266396 719207180 788103957 934719698 305512300 965881224 679365075 231254315 412087475 784108509 998982878 883706167 493128287 973076437 967724713 887127799 404392010 318890777 88001256 856989959 954353266 836810047 132800374 836907157 798135012 918236206 776627467 764724636 985133119 963869908 760557503 772030422 141908668 257835217 860359680 820377451 709272289 149298953 945488525 775409154 844687597 486368205 751254552 652084528 872173221 883120101 906036592 277781454 942963529 656388324 235703027 836525371 955364590 620828237 855740989 755534797 753424943 869865975 931592807 883551710 336122625 838950238 980371076 837104800 10315431 963700150 558399044 428384673 897597557 724869201 200379980 856098829 831146796 737700944 508849805 350193038 983651311 322358900 907681812 609194498 953928861 248895301 23449659 458929689 35685889 792691791 766463777 913274748 938447190 888889581 906792251 860429378 830519007 479056375 760095174 900256576 132960053 160527319 180153485 516362555 65675153 960848363 9457792 274821936 811060351 890777634 841203240 847832102 173977242 868301356 949297153 902845335 579096669 917361245 605362856 85137722 135465364 188061902 456563884 630558307 807477820 999236157 797132296 780259757 331271539 228594039 266064891 728365631 200205650 480333326 411917198 369292190 604933994 926870118 766686424 729176144 654715904 802389338 853855737 954470278 829965561 349617021 953321949 676397672 331857496 416940963 640022960 915491780 760563137 573294711 775680860 424295439 337102149 999747973 984415097 358899336 915862226 904232113 654357948 797669883 884789705 844252591 809868175 171461830 119983867 862736595 882703817 108107683 221814821 330686609 911821372 472276708 139139660 495221148 925178524 475304039 164585124 619000897 808587617 453105252 792214284 896646737 897950117 306643726 923009724 952223738 968610399 828771991 875130517 781831762 987920873 117993621 878202691 987023018 130079653 915331289 951255921 995929500 929956921 889367164 495468597 493608906 636093396 648349293 358696413 757827559 894011033 984919028 765066371 919684539 975136609 793728486 810959253 701558197 581292735 159698196 304992803 940881676 196874936 775683177 674630734 610432448 832138790 628836719 790678022 973067716 823542873 821912542 808056238 764418386 981444879 977809602 9614528 87535973 147406899 857232837 896986547 748198940 904089871 761437295 639930564 684050526 687744340 833927727 764870551 946621386 306544837 749845708 993355058 773831410 936148157 739263168 473496584 327582181 588247815 71464868 759136428 918880547 909416510 786292199 547045606 272271770 551404381 602993759 740988281 822316393 432690614 834488044 864737212 225622281 168493459 904411186 768958562 663771906 780904981 865343294 722338231 886427046 852719914 883966685 829100605 249067130 356454318 392264988 325518226 844878513 800637450 625820048 32675785 777597713 976000266 945016976 776641636 61278323 803996129 398813906 877423822 108318100 880401911 931360795 862074813 673653035 831613508 407890893 386273027 910624738 980974949 877715928 786908945 460100954 928720775 100807540 859746306 945107437 791258110 788792620 264051004 280515583 231360551 138537870 721573819 35960448 285898935 639655541 711654797 800087221 565827746 152795921 723566654 785508657 961057540 802623588 994174831 401568 776027178 526678779 781795024 833347148 258393308 864143503 291706313 848110850 42980309 396122655 812168341 743675919 882655345 940343393 847389359 621891479 317756422 934547615 978915780 83181854 452877414 336447171 519393238 960323105 995706412 451026239 360990610 461770177 775452036 313002245 71363076 806630199 204371024 955057067 33868502 133998686 390431013 646245446 280915899 692595786 576693026 737538713 781732348 67306095 360906809 882828887 394634643 344772923 779053815 600839783 849031201 973289018 935611453 101602365 785744818 992063931 862847821 669837500 432617832 274606958 158788974 992863298 931147800 445436520 914378772 902158963 807826564 654049254 415306726 351577772 902656049 863200334 846165801 949178957 683121427 970066394 749817732 736414457 975098191 341323433 902037364 321094883 366236196 912145168 784828186 795822833 408304493 995508370 415718659 913503457 848121952 411337639 998738418 263442633 458253394 785991632 968515766 822278756 401627927 68040889 939201356 495959368 810566924 594587466 805374597 136445103 388461132 878614599 519766560 42553360 521423416 248932377 304937603 951979891 580672988 159213137 461344858 65503651 217359420 878217565 984838756 868175559 652257244 647146661 961310386 631056339 510900972 717209871 554186456 24002734 856907486 588427997 387002040 887638140 944369942 820424334 605195694 934795468 563412771 957008806 147208480 938958908 898467697 907008130 743814202 677858 109716482 460173797 813951525 845429094 57403164 767466701 68328633 357884516 356036427 865551751 44114334 826422559 433336959 328772418 965418152 873974590 795810173 954573998 973268936 660038937 849412823 813587615 464090925 292992279 516470777 678827456 182404593 433937102 992747996 977915545 232800263 291258448 447279725 918082440 156187641 928786683 154225812 119031786 659711416 989791214 136851095 57007983 2665681 490648499 131312711 795192104 799439226 998578738 40827745 129742805 955676215 642291419 256717880 240386178 781054035 930546252 884470471 911342438 968556555 98603143 285281358 925373359 505012800 997712116 134587959 745740518 974319726 669324812 784995627 317684649 849683873 884724898 831663023 944477018 131325734 892472178 834433328 888586739 134165766 271102142 199131174 156643913 285920891 388637395 60724262 785059698 970763671 964062801 626618065 952206452 976960399 631028247 346507334 876574277 692779209 335847109 805296406 875582667 782621753 417514011 486866815 255111889 878090917 944637848 984435734 30692865 969021811 685105733 789948284 710589070 935812045 837764700 744592784 795680349 932570607 991736548 724858946 286308148 780416749 430226447 176856585 296793232 663633194 655083401 270706156 579101218 981056790 66231130 848290974 129181450 744868344 641435494 855855613 852475067 735615334 548077685 920239481 995629388 304238948 788480544 64307268 139098278 198463962 538280200 465344937 564414354 755463494 345353572 78716178 197230124 90307728 838010681 984212412 238858553 550277892 885824883 811089424 122505032 748478417 46153203 819107340 387971427 650279682 456146627 420954687 426381953 421157685 63864956 683185206 917500464 199486638 778678706 436291796 369817688 480144493 799740487 606961473 913413241 890623871 710416555 240186342 354329537 986807508 769184480 272260849 500775848 203883520 772190265 781283975 636018761 442916331 392584451 286031133 977574870 923180860 737454428 948385305 70837811 384519275 887569414 823426820 348905427 45715084 984204533 953193068 799934653 60409637 747597592 448117006 573547274 857283448 986056529 815898795 849432319 224491504 707733393 676073867 223454486 154004386 194039088 952113371 432766078 684844568 847548946 777059229 750065963 874110206 983940203 864778268 960248271 761424916 298890003 974062952 745361860 938943917 862543648 964355939 154343808 917766315 136020060 549731128 798790455 713135310 757882832 757710897 752312678 711682902 870348642 376624733 884599909 438061502 46724245 990882136 745548108 737020247 18982095 18830112 270454892 828626744 909873654 820291090 644227531 296766147 804530497 795564662 817803566 326513960 50551124 381121798 882554977 253230593 871928303 384148954 791096868 776135583 878310521 933957342 576040818 752293858 864997614 572240785 138055024 854593271 802828837 260336830 446935484 162993860 968839144 714656137 433799608 794022837 498417008 605224312 801971569 456014362 21096147 793535613 948918942 999122130 815759347 891433462 372809784 428621996 562654678 912233304 819104081 762766626 937901731 918181491 61223426 543641907 171657664 729228139 387583263 844730770 885602636 677768634 277640521 897367610 832877306 990877072 212099734 124159938 822732170 424002124 819759316 974923269 504029551 189539785 882871237 853626997 643001249 786808979 951156778 225449286 108426572 276887667 967835242 975348181 829863071 980494447 275487306 35597246 741384616 542031129 553694377 235752696 310360102 723279458 70041385 818786322 662863951 44185135 273784019 871074080 495354938 784500810 842500231 893171252 985077613 326339356 992845782 396991096 777842591 532000926 62612932 503847407 831301764 853029745 869179721 392516737 517100183 752071878 159306136 426326128 894168679 933560014 100988964 136506400 956710656 626115245 796216802 37778228 407824609 244721584 110082882 482856430 733015469 994262719 858905403 273864436 707678807 311990358 853902278 855181636 445383240 544433314 983513795 957766696 991527352 511234349 77649981 984398937 765565147 342368154 792802222 755002850 971445364 996753316 236630575 427969185 8236024 574549408 43334367 818020548 921143982 288434724 527966813 69857811 146501783 481125016 771742828 915369548 76742586 738930267 295344040 64066842 754916516 243421890 866312168 789805217 512798985 476126959 482553863 882331336 1529946 696761684 969273152 405110997 90709616 842438742 116111665 783457401 54409354 952213213 976890530 392241883 272617826 810067852 521990508 772650279 123425641 388355564 549930886 304684311 199055121 789346997 777375116 107902915 550649551 867510539 761771724 227416413 979714999 710469139 114618355 456642526 655218478 447902856 246880866 954581862 413392362 981787384 863625595 751371483 756724603 793556305 835709434 832402738 988152326 845356409 694095068 92084498 684955217 69722909 288411786 881296417 529921036 976139687 281137823 797174026 937152668 787898140 205024506 804875384 898046930 880454303 776554380 947968983 768051927 844163156 998808125 590639985 886461063 116575335 744816274 766814797 808164380 887218749 377166975 848817351 897135792 639678000 358519890 991277575 920751985 932940076 987801159 785199635 324393170 796780865 454663563 966987339 914105415 6762533 809187544 341507395 203146470 804794760 339274650 291457236 490844601 783255189 189882379 774831631 839330320 769507951 737020247 484898298 152635146 775788673 25202216 629603517 661751333 755028820 247108030 976383899 460681216 465782453 710779430 881957881 247026220 737020247 875746727 950559953 516986234 568662841 342102033 909908837 734834076 666566086 765337068 377384620 868429916 121500519 120143836 579536956 317565760 737471508 144949879 595209212 67209629 454908053 879037934 121345266 455324780 777577985 437415078 229453768 909018929 662688007 721393925 990042704 301769418 595802964 336813687 465788380 738020567 825718496 206182708 247762973 962939367 921134851 491620491 794592607 928456158 874754726 844587966 800028080 835767515 986655832 878574546 587041630 195204716 763536424 948083421 924310749 541420852 331870213 740799962 818011156 672845503 343057749 192842034 749059474 772373906 649358637 136327918 975475811 217325451 963691515 800809595 557474834 716235318 988979435 955688955 746447060 940444062 986849570 865591491 299370012 922222157 905624284 943424772 24945210 519459129 113870830 848387243 661131082 57248443 420165766 687122066 121923732 276084521 921380167 666498994 159565264 869560277 58417698 913826301 975772005 817633052 242803361 907714204 874085967 910589565 762789895 783352299 981555687 975683961 670895268 776921473 572743939 755582972 775229461 504158740 794197061 438895551 197569142 201177353 681806129 248831992 994422322 846061329 4468805 861299097 246546439 158519294 528350177 847821038 965808176 185526511 580598409 588541230 284382291 831805035 216979958 607650225 964128895 156434058 533555962 66227005 861058847 446390400 990476093 775242900 578968493 764244543 823002505 171982929 679812648 147359584 825221253 908634626 20915638 278380057 442858569 962388694 578256 710100569 920182644 988691658 360557887 170418001 952796860 484437013 561090015 781120349 796156062 479596908 545417589 371390665 47995657 827608320 517661629 890624846 584072926 983917977 903115946 836904152 251930480 93549874 1220537 855789598 772721650 974715908 152523095 562358097 691722168 884916094 905832595 374991045 800977629 203139928 933629824 280060087 529164912 664925727 446304695 663101182 771389141 992653576 912962327 653673329 513308019 830884735 982174103 574253325 765486580 856370783 863530553 475131940 212769145 822269276 186243378 616050572 735935215 812578511 31960014 375855883 735305250 110659677 146334943 741012055 738064219 840277140 919312313 861346297 22063439 857478898 507020762 210159253 910609965 335443858 953294144 860416322 872660456 363780564 348885719 347687262 7529606 258718745 330255040 45861095 998686690 899064842 982253808 919342723 208599991 698572516 861030180 248547121 961636889 436994803 395581047 704987488 33161396 621645695 7795563 498054776 403627188 872526088 430918593 203126084 769683735 424586017 560882107 867017765 256003363 713903035 796170917 910700131 719191782 838024335 914962008 929608669 198446758 353730357 385695336 198081421 334665612 801064144 406209070 521117967 535950865 928926484 294900691 867945138 419893380 853124043 897058819 936657746 593212021 608355066 676260137 682843658 792286214 751843232 3451438 762573345 920831381 523305339 160705691 915351266 840341716 237072106 355875512 863839660 988720569 444008709 54293129 850292106 776026525 483176698 754194523 532535960 23492929 832862356 192742500 105727661 788841472 713492408 435291768 396485258 904104195 536663652 493218594 837659098 857702603 926917185 788017751 854723275 788833838 517043755 776352043 495874960 644157622 798882469 934767488 868899749 381970128 836398286 49469925 139309640 805630900 783814250 970246985 521277028 213670622 739033288 989937828 2703284 743589817 459714515 337214303 537672319 519823652 962933385 868723699 198204816 110109964 934167331 64652481 967160373 924883832 749304329 659850017 613945681 77925214 778421519 890418028 558521911 772349132 895296870 922499864 531653245 345068809 878833982 729652717 612980102 759098874 952700643 666742970 220924026 118200155 871124442 968672334 816419985 338588802 442364348 640248824 934180066 259578671 683970302 895723944 346867230 692686069 834467754 888530365 837952097 926842005 232994810 899548276 968598079 81387289 35544843 797882268 762764983 505876997 753488453 994258358 796719431 106931603 888157283 811681836 88915010 858055689 705187803 834664090 264801178 166184201 172239655 442113790 43947312 833684708 891431014 342642197 399366281 389210528 817990441 855700254 976943044 858413097 246915144 486221911 924799135 897861199 111065791 153132780 356589038 436631150 104592076 758834459 906831058 33616017 719389163 358220643 299486833 481818028 816288588 35679850 344376059 840203271 157309983 714168944 677021694 750673897 453715595 892076786 861516593 862667157 726040679 842264798 985256615 626759938 856636841 780553373 652603219 213404614 850833623 786567285 522228760 777674144 757502709 787617582 404184013 706892152 648728676 84807423 237552327 89215438 661738597 122026603 49018943 790781334 763065234 336013731 818544732 934072938 117925223 221198710 155486852 936461586 542856821 742420736 123434238 607363971 784933036 494354017 939339145 951513336 851495708 852859196 307504073 561068365 196862223 884861605 118771248 807040968 835363965 813107900 49529519 871442609 308346142 737020247 904887233 708320605 757806699 745108263 744196179 985073425 506906039 664332675 671297379 510925086 289057366 868113574 994894542 64093781 834193783 324600770 889101081 561970575 740405838 295161590 594280890 779573805 981596411 155649568 838649168 40506194 991546658 882862415 750908575 778614040 993190486 458608561 740185729 842646207 784568875 778422675 484768313 857259930 244007507 960154269 947670697 761445839 919463691 739033798 743813949 984898830 475797605 731220028 161737170 490174042 696807821 833644561 874469530 914266831 447140727 821517257 145571198 424741566 769064717 711439979 723913051 839178149 9121741 828824708 768277375 420893899 510131615 962645372 987057152 983179852 935533266 805657637 926720832 40604294 16530877 918080963 553522847 761233081 255019109 957612233 567692982 81833279 722062966 762202548 101317168 64572843 903926554 81913659 866252200 835402237 244808985 501378439 776318259 828635543 203148368 786128763 101049077 699703182 815180720 560791976 910675308 920228718 567547568 614805011 680607083 313135212 780925247 260877814 753175589 969115961 975144501 842761063 697600232 857941049 365144171 930510569 805571085 812474321 556945788 181154651 894469700 991242236 216058458 424649311 880651018 241236888 338659960 856978143 828033550 35212390 938157738 153121834 983510692 232373775 947147405 771254144 665244054 844793534 167370095 897095741 521764142 187391603 873033580 926076260 627694429 8881854 800617884 711005592 858246740 21216019 965049264 990649995 374521645 712719524 766972320 686909900 54832794 984936361 969338608 760980222 41068544 346659275 572741325 811895584 918855745 337671431 474023748 294061039 20846585 988164489 801007282 885212443 620391023 241280029 299547456 522447867 338736072 828914527 915974286 532987432 741018666 272144323 770530775 791613222 170921921 666574658 847385443 911163321 136266720 846589066 130736357 889160508 457538185 148206496 29064537 786496865 790704030 912150472 737047349 245266546 81222482 762278399 352211941 711597680 829563909 69496224 650648731 719378807 801341465 956830049 872229070 825400159 457333547 415302964 761349797 978869590 999023229 936705178 757231032 366855727 133924690 458510587 829739766 264479558 410905101 951209532 843249889 482895449 845169185 808629815 684720545 893600942 757073890 851746820 539224585 230597783 937014499 784799707 811648610 715458640 429317370 767091795 885165844 525836801 221989791 175614343 815561334 9512665 478279860 854577064 913327028 955113269 82737504 876723045 995550410 906967465 906753816 792439561 47121641 170162837 813756567 188206106 951166624 221256844 375748595 888119059 760419953 55742776 770776814 470519286 19842777 412564361 863387114 865924038 881352424 260013669 923226076 758666355 704877353 519392700 864238667 901535703 44282408 955119330 834734973 355732543 973618391 749610882 504732710 336207036 59861073 655953464 287274939 965593075 463881811 804445637 977730015 932258720 539818422 975924078 184463382 748969660 768153140 795929638 944909228 814851559 893995665 928095902 762042282 876738868 166181296 792694971 821355919 985824911 132156543 951134864 109391890 747102273 583544253 790024874 847921634 473577222 803696245 805802233 951292670 605831018 302962670 767161723 65226120 652536587 994304966 963089379 896455390 811320758 855343053 324306980 247893508 779901231 853864471 899075821 893478337 91780620 636102144 991961083 833867231 130473132 737282118 840746995 844256451 868282342 381915676 513007248 388704621 945865143 849826155 961066795 178888604 792019000 82454012 764059699 277096998 931526052 758685266 991532052 462567802 464500362 895912503 156875600 979885103 608739350 811790852 370418405 895075709 257109894 4125121 753444140 183770648 840207612 334956546 93513880 318107691 356646979 997510015 187729888 44482585 398295434 787989270 807843852 945454156 757235196 784644978 857031754 938000657 966911408 344753792 824470601 558830851 845972941 906439504 177256838 303659250 864366231 883102699 807178392 164835444 468076157 721557770 483182602 869108908 747218686 768813873 52232011 536947346 914762520 940936857 761864145 808428363 730110788 968537663 449916552 476072518 749298702 799682347 971491398 689509658 789839382 426383828 443831639 811448858 68593229 965478330 249296843 754009478 957278249 9158013 902994369 442462439 798515987 893844308 479682638 297433205 741297650 817702834 583471610 111287011 349037440 885505719 273764598 384077740 856668591 999873891 107206503 696730242 718901866 878087528 571264009 360071785 400574347 884925342 344341612 866962906 958671163 956008024 749116748 938739578 96126962 753700868 954328204 208800672 258522906 737127200 250572839 440767835 533200161 811493484 601770757 671487607 642348320 300696307 679224956 981217453 965827499 476895431 632544868 396559215 829896535 967932081 532147025 197363711 837236798 232537363 908448024 174068405 230380964 759655628 912356809 577740065 460666261 29207302 401756634 697444893 940133019 862440228 994609306 254775576 980707432 93516187 224418639 655994243 488113956 656620052 822385988 900142215 722684589 160719599 845386648 360201957 918059273 542018797 981369873 987445297 507205704 898596088 68412192 480602128 875327028 599646315 797606129 7699521 242184940 467889924 512866597 183018816 363902068 172112171 763997776 663312266 406189918 948617916 769867047 623309903 905743491 781567351 900875256 879029599 894449606 975918659 986985548 126297740 952468267 378616804 325725584 956583627 974850578 786233298 601443664 748149632 901547654 14979533 868265682 207735712 432418443 855990905 964024909 946467570 73631088 130670958 854490633 600582071 636741406 993578738 72380023 642397733 919384143 18036280 657974902 782508298 159088576 753467200 414750821 330939678 85612347 903854894 125511418 785528573 655622207 989133264 882444641 813691383 260027066 947897755 802445041 146849130 225607090 995567274 548666057 855694017 781488157 904317497 697053588 678332131 869686884 631944783 232385630 438900757 509466058 55898034 937097749 405666083 554035271 663029248 185309540 34150835 811257372 703874493 882623080 116909739 652944298 984680742 641660237 570619254 114959287 782287153 630307257 148090341 773788252 970111391 892122007 492671850 919614879 187073787 347399558 750793533 732394855 737020247 687024044 821859074 907625519 398227677 434709096 753631242 742085292 755207862 769239397 823495918 740297820 857580597 661735983 877432317 552516755 945989435 895263562 501544884 613170051 888156214 876597312 4767499 553486300 836997768 660022921 993664741 997445335 28462809 211628416 794538371 476666856 934808926 974516062 573767156 802067438 918475506 482789603 870154946 634995179 313089991 91382661 916768831 711799275 663538370 36528639 457474657 257896992 745992428 828474429 972463687 426121549 537516459 785290606 925338654 901668858 957549141 974741986 948402531 111003265 933258125 930349827 920219271 976220835 645987177 777892096 484636401 944954710 377395897 753675727 619882826 670788476 22656072 819555769 951898804 436906781 898660630 187998831 785594639 223867307 959811485 573836185 570864794 775853532 879358575 980276349 284543489 912301462 755910491 733576062 802564778 884853092 294373348 634296641 675579562 917675487 75693889 299636208 741641989 277212747 572662942 444735686 469832263 887862439 390001657 914866055 534949745 879098881 477119099 423341817 987230404 824318729 285761743 129215294 899501933 331558723 971018023 819445647 982726634 720631894 756647100 135545611 763546794 871419330 623316566 546454767 169652176 773297896 956404600 323243601 967757421 957766086 706685580 249468997 625294339 826814150 166960134 579130369 189786906 207828918 160255220 931697624 671010225 914653990 785222557 773985402 522274438 731502420 999161766 225181160 839462902 558786518 318190344 984690056 865969122 530999054 625625299 917908301 950959855 157713431 998252057 232147771 805820993 203778804 264703432 454722743 344965922 318939818 996088683 843590317 166639026 795140590 837694733 334599674 697076725 988725412 946348645 798491967 28897605 758484163 488510328 176251775 798633427 50850993 842498522 790848213 286326904 921182419 973102334 981988190 559095658 830723136 462321489 685339846 786039765 340046955 94274267 870459226 281026024 976646622 997307842 973581995 429813736 439106583 939405604 834632753 410548881 69488465 765336338 933616643 153975748 104085418 886180144 737020247 848289727 983823289 917384357 996304831 945972833 487190922 948083468 889654939 559833914 980019230 510511452 930337498 779169419 860620287 307567571 893754494 26430550 914482894 804921584 349906916 756434453 534242140 851719165 946179182 807446104 53872414 681926745 833770722 288831664 993556334 750800629 331952961 152989940 429562651 924388504 864697614 199998428 853271142 815478138 937484563 675547547 786871606 962690753 64100831 47130488 245237041 147942591 553156381 564643432 919391958 311510234 701189958 877398277 978852753 36566951 742135767 911548305 30574910 843362451 825495943 957162554 836564353 51440162 701629631 963649800 354892241 739834213 475969530 936332434 940048088 994080925 253919192 67523940 118831302 796283964 963977548 858482820 164299325 187027224 204567396 810765648 143149823 418692499 912287808 329638955 873484769 999808999 874747613 306896231 751443133 771086342 586564710 495878195 932511673 957676468 704069370 82811471 875009333 758557172 850107484 19811387 923927467 266213074 353406270 390643454 515360205 286004620 434716976 839854679 211356365 619022379 873364150 509831339 333260037 757996381 68355676 754042649 825646410 544545080 163928695 153192126 964372550 368483597 962744848 800828142 898997999 791959076 831994616 301474802 823980397 264287335 70501800 831246577 943238059 751630035 741597915 428439343 412513518 776146146 655510074 702467904 843858437 209125365 893493878 835904407 791452309 754111352 857282915 308341041 174973126 917722199 976093779 797275515 780729932 139355181 914267921 888502863 276151016 916408539 920724447 423130234 838717023 829780764 912091095 832760568 816042601 957433563 431015306 965436798 211513869 974205756 312006322 829669460 343417381 876584635 453012623 33079361 862767915 143699529 957839698 958868866 590773063 817820104 908046071 937682134 628781391 987802549 132507659 649274120 746648407 682749554 875404347 466725423 494084106 754969579 957341224 775094577 817633053 647079235 862870195 862086659 189160931 867887029 314860178 190540123 375737100 574956211 792752579 597315592 867284566 962145702 295483301 166994540 740035571 555521366 276896922 799897137 825169399 590198900 582056474 183137603 956710252 20967434 835526981 96888561 298662116 626530633 964218060 630875345 811055510 314105018 787975499 435488067 759203477 695773663 147087976 965095848 806345441 779713159 742230763 963477957 803906842 611421297 249560636 442080785 709832778 88377717 957593936 908957871 393604251 979248781 782074891 27521357 179125106 387101493 694989031 914199769 968537701 742753722 526545430 789235601 374451660 961771654 975805174 742426822 171713405 495913736 934999443 842680200 770701725 561534711 20368538 742017571 900919610 923703818 482314006 574660256 996128927 895628998 533666149 978272884 221044639 191823441 732341894 946956657 118000916 791932356 948482371 136797312 876318245 798654221 458318730 397265302 93789356 392076819 224631291 584313770 942434446 985718610 564429067 974737971 876203591 962244947 310347793 94077361 338534137 310581179 207437249 181410311 146459764 798587318 982603364 850057001 791290413 721275759 387403581 740005839 287351806 884715854 968578315 886274263 388984799 115961492 611784958 857111247 536907553 770104497 250348379 816987730 830140249 511782310 983257719 651962047 189638210 758435867 122725574 925963774 570071779 756000276 118734344 457644663 533475883 818897449 954533083 241233876 663708417 748487559 835707948 743106798 126402809 897787567 743762512 594390020 848908077 915246975 862701425 981048713 526396367 206620706 23795193 195035074 168043230 863812949 402540103 269037046 416785325 881367279 740359491 629244582 476513523 72155681 779252519 426432234 945987159 65412730 156646696 974243415 930155143 831712103 793971743 202498475 943776216 63649490 372524662 790117319 886060522 967328412 988924503 660614694 827762154 738982556 410537362 298102941 772674822 970955883 242176229 487287411 58549508 780897255 389714011 907043431 803516429 23017694 405333619 533343020 530379962 224890202 843160571 669517588 392421943 780956317 831864231 994537457 170146220 815336092 905991647 941814671 942547997 129184724 805035646 514764667 992315239 806263317 160903565 403160090 652320692 11731350 961237595 113915626 802766874 737260940 778470625 874755166 882644280 993421621 230285482 182760656 43070642 228908090 878751877 943150031 96898384 808794447 453547925 253343964 811671067 432552606 218714891 643736552 845686974 820366615 398891277 817139342 324986629 138838586 148682611 563683008 968458846 716636944 943313434 788253741 858523466 417790386 875624155 83216870 747736700 883450311 641329962 857066479 759222510 869274197 680502447 695155875 940025301 659192502 802908751 699459247 885213732 820027487 21304148 659919106 279192145 807436578 868280289 614937999 406802239 266463461 869890263 496168414 30865317 985679534 356158138 927397504 970616052 178739893 901020501 74939273 694330787 959799508 987941101 326910887 941201556 490512399 834192810 416724873 737020247 397578881 962044044 738775693 800299576 676344732 872815432 540009678 802874134 824033873 28550969 891601158 852803842 694480865 977073273 932328890 947711605 624943629 221193825 341946789 452502701 977229066 127460078 788691921 790588277 807064433 404310092 56793666 779634609 718234171 858791380 723383282 823604397 770302490 40627633 419556877 459032006 630652526 861059538 979524162 554934118 304756216 969526091 149488425 45641153 860517678 648906112 777416067 727492324 527317146 950100119 740017739 191625390 491096046 789880303 738003320 32596402 511956776 558709216 791052094 720092111 150369913 385594910 753181572 756205331 851000302 377736732 209303869 437581333 751414610 246849192 967968465 887420236 862797799 817834750 509541089 378885672 655080585 40194821 341609083 10431713 819729647 832648950 975128358 354018579 809287162 867380237 280260817 436050644 428188033 260334233 222806606 299432758 816521959 353191569 863196336 939526044 996072765 907004557 920031047 721470137 92479202 65246420 452316716 811687062 541824617 265788174 524136283 801983564 856137096 853095465 67792142 823992124 298456482 932808339 994787170 954605323 935767608 847777464 29938278 607583070 140451252 955942681 405524246 763340807 872049558 562018091 890268667 839347549 408915152 977740592 790934123 930051805 880956637 451490012 898862858 913629320 99030515 814496551 163032969 253079364 845282355 254616933 100096056 417509592 423907830 986216345 983937253 975289322 343294922 984987088 865170803 853477460 796000303 341691541 476124804 712492490 986862320 176082345 837436777 271545324 430664522 748909816 402294887 763530117 855007939 942425911 690479967 962974828 625715245 600968044 904995999 91554375 971372490 845497347 880559213 120916310 937843322 263168096 774135412 719862960 376695215 40363590 901858352 695356971 924405401 884448038 570925532 674434577 582415170 940277381 510162450 772915113 746646939 14119138 572846106 942904061 472894827 848634584 416580998 976373605 623151026 966100967 780049366 816653423 795853759 360612640 71238862 767427312 312105975 784000592 338249625 951623378 733825375 825098454 557717124 592843331 826673770 894019334 410508109 784375307 869708144 867374995 251269894 381704967 745580822 901285000 928946888 865903818 844154847 857845077 898703921 316529560 262204503 410382975 702329319 793950097 927784783 658427178 305282337 804176984 204412164 431980661 504105950 489062640 820536361 536522907 840702331 982797841 845948717 891759871 992038103 691392930 165739163 910575727 678244961 849078277 926066074 58402065 636551656 999998177 499547160 663367253 965077177 799254874 657993308 983277886 705519063 376109472 554601111 550763699 784719631 563490866 984298395 761831414 912517271 905378900 528390134 916115606 342128378 421861812 598365456 263303889 948113380 760068870 863097327 811939046 796633313 811620133 195810032 927829056 94290881 581097723 874900092 177460366 822111363 59176148 277391330 924944792 690107302 772260787 311086611 899961198 906504141 953817883 976715918 798508574 499617212 722532355 364657257 526777624 261853795 916635125 953657004 800095824 13900764 328260506 937507761 495522033 958354053 338711772 788638609 809141978 344130989 72953698 803691112 898466939 716750650 496786126 519371980 868511371 968625084 803248179 690735166 916298840 827504081 120754912 889493386 791328512 987263824 785581754 21089862 805942040 752709324 558080115 777682868 778670511 877855028 82181007 795547994 25498149 115045071 877765730 901602097 756520101 863228380 480076705 941319645 748485232 782334127 653266056 980341605 103393303 843593713 808655981 929975760 17860493 961835351 743667233 537394978 170303122 738288811 425721244 746244464 622156450 994750088 762357083 474107724 415920239 839568571 575300923 505566201 500705520 738784994 743521405 831154251 932829660 828404348 604597099 737381117 567146576 771171963 632697141 483957520 504078255 331862228 207931862 923879327 146671189 950883367 921234453 810749105 311354184 917461504 667093502 806576257 98957937 322965219 979793348 950071477 195063192 943901608 949582682 840929247 504636918 832455242 855136145 756033585 528965482 902729439 59729624 963383109 490081126 349096068 948584151 936174030 909657284 671311125 614908862 839142688 847771010 435333529 843460511 753690986 657116365 767980821 917452064 435130829 809808397 466703477 970158756 825666552 156448617 758352362 967881809 633467092 38259147 784630199 406627856 771682501 948140585 621602882 437848097 358071206 120261295 955134875 691885978 83981947 89035013 3396235 479115807 644192010 522163785 309617446 481058890 221048902 812136841 308191962 808727831 996942253 255127836 218312663 60485072 868253564 107328181 925830867 569061477 558007445 975380914 549324192 865523696 37155720 876734583 142940432 365704262 945544678 27489667 866424620 719946270 963978038 171543975 212118421 316491025 643786650 791647445 785953092 927528037 889815605 427337637 918646110 108863625 502144027 983523180 538479181 693972432 974339238 950113919 453879086 474840725 825025454 937302507 908961720 862287214 779374321 961262527 458561997 902986428 917648964 927437978 409245078 837361347 524651788 845782805 862023057 776740668 990416090 787669742 964195812 831195443 529089862 79603750 282305438 817615788 214449328 202731539 952239310 649454484 862530278 378213904 165497794 229283931 465414613 79401203 977855300 944021621 873452335 604679536 990830687 980113843 281106466 145512288 832118791 52822913 747710282 744546620 999282746 822307230 932087820 765119616 113544802 351618854 835116547 799878581 508772223 811962296 762223311 590600879 424450336 838885008 478166441 232853312 791440495 424593348 757830976 858707290 861137002 758331715 163151987 247430510 946665167 18157249 348477878 801048089 895441960 839065014 411098974 946347912 798285543 858131918 617324901 873336162 760350749 483928111 814665707 844000823 366446119 37946322 705352361 676368136 455349288 837126265 458685588 373274175 732567035 407446703 738537607 751264248 11425567 905555528 865401716 235443030 772814909 814252871 490847059 713936410 422074155 735223531 990619442 567466430 81820359 841944230 41583398 126733972 471248101 887887023 762788833 901645531 414538811 163833890 599063141 138953659 125239531 63487560 868861235 600155758 741930611 922414435 561415693 666372811 906090909 777050196 509320419 932770424 276187959 678464445 130029939 593755219 780444184 858855868 604911800 68264902 839966700 810676498 820568990 672435225 925963301 323770949 584330949 927665862 371782809 619069240 894686599 887356742 912420781 822324462 254739049 793146978 902177004 117195665 211586670 951433044 43267319 246697302 16842243 677994739 453654869 850655096 787291555 820736372 209476707 53337619 157190220 769291162 933870705 570660481 950326882 937760553 839422762 25416288 749412172 772243098 136874941 375921089 984710677 472121297 164946278 34167883 281843659 675135964 367888886 911530508 849356793 976041722 945788367 797114172 915517686 406031603 281651290 5453915 758591019 199658366 922127717 38905551 255083672 750390313 47314865 632513172 531952077 916337742 805409141 216528658 34852723 46502022 126919036 836650137 356326588 894057612 902665298 791428164 310373226 769374496 932884560 142228857 594989104 272491325 776522927 729044008 525861011 516942156 752931911 6752828 816916418 356334446 407849955 301870859 838228731 844997247 521056591 558582473 976384458 955923737 799769832 663706438 839501124 518116542 859982909 368776990 28522951 957651269 623602919 856798163 743363072 875911515 913133360 989470153 845155838 153782359 609318949 755391397 464168857 814181586 128814846 108586725 923478022 456535841 178326495 444604142 966643141 918822318 353646627 758043643 768740221 781443691 615527099 711136860 996196804 926250449 863074178 968704803 936145985 483157371 664421474 506982647 518505855 152161203 971543623 847791722 989425654 897922307 127951492 949844951 36341236 906160162 779083122 984632206 903919098 967029469 725720437 557071676 961722765 32244389 860532271 981434962 288662284 940983719 833906293 547501292 231950702 220986546 689301600 154057845 301195410 846482851 228820846 168076778 868654639 26359183 635863900 769314635 455176825 249375601 772068473 524733220 168442128 89519461 243019015 929976835 165986654 888953686 923451662 220731579 859666056 831342380 778075136 194503324 372881832 862755067 742863168 60315025 702642796 997789 437874972 512427383 553445685 466109933 987469031 271125040 899921627 749844985 112848720 799011067 817392903 148025206 856676664 787843246 786410625 232732410 935077908 853770930 985006514 113554555 87314643 170353012 360308043 872370246 351550033 813505674 353696772 818175976 787239000 944984951 638140414 29496633 806524141 793500703 507763064 810115286 234585505 35606068 866781133 225451697 176592269 872352342 930185634 744046608 272153535 460604172 891416246 117329558 944146125 335300411 695154990 856493244 578388073 964043797 144827689 597632188 870187129 751733567 982198360 804467420 997767792 503217648 423697691 882158891 586499374 969401971 669718071 817662924 931096659 812651853 643829478 853398876 867814692 456815342 353794024 767882750 60814837 895660654 47454022 844698013 663605527 71273045 535306152 932285920 94216422 915113248 837671280 689775666 773175741 212062806 444932080 620677782 100522606 367718689 508993815 820095895 563808956 794681009 631440609 462222575 962075928 461631963 55060191 71044333 830159085 957027726 523952755 389415391 135350992 388122750 980293027 511493133 900394925 675488066 813555821 835272060 857240338 867179087 473311619 650211822 802790365 703827286 759807799 912694104 322646909 938786948 652128576 833879042 598352844 568068420 900067734 878919880 832155448 818466534 69149707 200808817 141051545 976186036 262987023 831293238 743574309 457908878 918648939 786829799 663076768 862062643 611807202 590901787 981807772 810369115 313413549 919130477 773787252 113354373 672321136 734994912 986096981 964663698 385725443 407110768 694282792 130453111 316196187 977087011 911942431 410480364 778721213 880865392 980194804 134148281 538771118 370610267 801573734 51361622 978540519 169632245 748886913 917100665 360952418 243556947 723960148 755377015 152885749 974985898 946950312 65889036 265766749 824331497 957849672 505967827 183848597 251869781 775392388 927405386 866785094 109663002 953536411 693342787 781705623 485549099 307540162 612283570 984403887 139369736 754033284 858734212 125853759 441766483 601888682 937889783 6911947 979578983 287913274 717169490 737270029 805778437 964291563 767271667 594960713 404042078 742024787 871237350 834543918 224932089 355379528 834965007 793923229 83031211 802538499 947130728 125947067 667461131 127566729 818361176 583722408 548629959 265579440 810166628 962109238 526148362 915091025 194394165 623844187 93888907 987656605 935315756 491683981 965906276 15191354 392401651 943789757 624795535 729582208 847006530 196790104 469837265 113065292 906906704 595911321 445095869 895806909 864028877 197118924 615628706 766029953 710845724 525651900 294758943 425727283 404376115 779725495 980097253 267972295 940196088 394146269 955592544 971747033 127105440 854450601 448362014 902407694 844081614 803449992 28581491 847912052 825785564 793207002 24942100 224789536 453052130 848460030 239546641 250806811 739983883 990294448 818075070 786176090 249639184 800946889 682950909 696856732 848509086 673197577 752904011 70638864 672459927 647163576 335765193 885478381 961878322 744880777 43165933 827551008 800638529 16112572 256025664 921933640 741718856 406295955 539571058 886944320 103143639 648774559 609431321 313518941 145138705 800848169 886517875 946836282 966800653 985993396 826381648 818593877 48581948 245443548 979922229 981548508 247049852 953604052 158358596 272013394 50846448 874519419 976051962 187210349 93272344 578715077 638784195 927315729 278400023 94967597 333413574 780498929 821590306 712984884 783433168 290588218 819173598 787803433 289974390 210607414 756127842 954513327 749676660 336430150 747675881 761320834 762673078 547594663 589061024 142113418 843472690 73926184 702804086 839727157 127770560 788194705 911307412 146092391 260304545 204241666 615650773 884928304 384941348 367701670 946089365 825685814 647606399 463595661 318325491 790556415 279274675 961428277 718854557 669171960 378205756 875162901 724554180 930906701 775423936 107879196 352035700 432362128 325714162 428797144 811157964 351502033 69440346 890902233 688945063 940218749 797251193 969142117 317125542 771169611 883448581 583181238 95877543 588483236 217905957 969542349 847202587 915186041 270254692 419403721 5721381 793241541 585719939 142908483 865104003 847334142 855705873 739367754 498629977 29059550 176514965 956322626 250841968 946114830 769130268 749920104 337649711 935875205 100655691 976259068 771800724 877476277 770483644 883623162 662383559 100065 524461597 4700673 774403388 832637302 94744873 147806463 18953807 978598765 419311599 895504730 709477709 616104426 983644262 896863924 846447091 240340614 263903865 771706013 835686954 792349403 681990743 756541123 763053628 886646733 915171723 324040380 796167245 359199183 706945325 959397516 905834740 791066638 970896802 996381826 243404126 544820894 751591740 975758159 689409900 397004056 81950592 858558851 285262077 637930324 351206786 865223553 886443407 968908890 435347005 718210615 92318925 209866595 914014086 232296166 750700166 429193558 873927416 856499143 75776408 241201049 739928359 909489495 446068887 739874948 915776242 782437764 902159484 470240085 984009798 952859700 879963023 482165698 62328038 738365282 806909823 639475560 879283575 357237958 384678218 863096079 379362712 577847858 974552954 941075574 16499014 705138256 992004884 766991338 794973761 546563080 3281134 743560084 583644454 857789370 167577294 903256431 725329603 1356889 970926509 666342923 350708090 871279693 965433016 130890797 350715793 94231398 52346145 692374046 688233986 539410534 749871837 682718772 305078801 992933803 535547394 979870333 85941273 509004032 12122115 249346194 771330640 959682793 798242720 568695517 941844519 633256160 935881025 867737688 267221982 890187948 397378340 803034263 751331591 361089679 550889472 662039743 595137458 716821280 866194771 737020247 813486112 710925246 785446586 201199069 813880371 229335917 841562242 174433429 546365426 883692350 950940216 586623232 680286844 919736878 787316585 699171333 255407557 821018479 939612076 808333971 251216062 813405218 657848635 790659407 82395126 870848118 749821450 756600767 850690109 801316431 574988434 739948139 828091999 392278767 858075840 959865682 943953374 763200943 133181986 139530456 757394822 4369997 740727916 913449148 754960628 973813237 302823007 641861517 989167382 561762484 531295356 983919 292790922 968482871 954011845 750260185 768690054 921842193 764734273 117529050 777412889 854355016 435517891 521397689 198620805 988106657 897564126 334264062 903911393 932261692 967268844 747015153 538310221 944178244 288950956 494232684 49281893 745771117 712755670 416634231 895678000 59106559 118354764 371734149 995509620 865300882 622578585 283491491 584800940 945245861 815566347 873851859 837743176 820284124 384358091 239073487 12149969 457862185 868369162 637187633 679388485 789972045 914150019 115228768 111384014 469056386 961859459 152070504 857587487 961925587 63726629 772265120 597425333 140068586 535324008 390108712 953823668 300460449 189662906 93664452 851212282 337879057 397503192 724698862 163765953 240243893 980458788 23290387 344607238 406675088 368149231 418584293 818145226 192710485 972483468 976410482 488272798 744403997 567779242 991555989 48381757 113975150 549868909 963689249 415865371 744430512 453141217 985437287 193837279 837978551 568259084 360138141 82114334 254371820 135470419 2017563 937592273 931585661 251567972 822969490 979651362 995218268 519768449 750818962 156189047 946076309 985468061 877081152 418202008 179623041 896657296 534105380 26301195 338292365 182562605 812288329 932742103 566544621 336555936 629121700 58195350 730128563 841198663 857668006 850881290 780267282 850087615 431158029 358980890 949543662 793248882 918212540 558693937 891852945 936445552 581088368 750860199 299030811 474437000 819788247 803814566 882437212 83282 855196017 760776955 326310188 874713624 606261654 821050570 797615700 836456787 961261032 886030579 813775174 839787555 143472269 915914308 408896912 975054211 845231185 833939723 66448990 813140727 62495807 802273411 823382922 943322723 635496119 877512490 885974087 963745087 999181714 832915565 973946051 790393042 668807203 787668370 903402061 563519974 663389053 189629143 17991593 977046015 73213815 562356870 959391804 865468857 560250756 626602285 876628460 194369056 643411723 443638737 939176610 944687134 168400974 28362409 984009582 932814758 971515724 824651411 791406676 927438268 769682349 352359878 918416479 663723560 741994518 532054652 432888042 800462542 117074819 173743060 706210501 881359645 130091808 950446299 416222659 855120424 20811523 888841104 996451685 132583338 889208291 797421712 844162044 181335052 721614458 475594855 851340227 993608472 984516360 373034964 119990101 434803373 747111063 764833631 62066986 764090310 310594016 821656258 161501747 817656464 123743524 683967212 115895443 768623643 624042917 398401302 361901872 795215623 38944537 292528181 874234078 304707957 835993590 858612057 445930070 962731050 561264127 858488915 917091802 776191629 807047619 670903744 839792576 32557802 322307801 259787128 606603059 935165943 872392383 118264571 820209957 952606155 347821273 782472655 305252760 812169708 14609409 970326391 773183425 64969641 981045213 481694611 885592140 607885220 439786127 771619346 816864443 834317598 458878740 345517621 995389998 573390029 661338739 348954418 760166377 979027348 859559657 85143979 894425843 655974275 1791728 84036818 817431078 885348925 843428884 655411733 933224515 762033372 790234608 40839941 417829518 385419175 965344240 970332457 979730010 139749956 66348916 937140171 803684215 145203186 140895051 199376180 15216387 340474687 729835497 993830903 568194685 80962755 704320514 720138361 33020512 735863465 401337901 972747508 87061438 405165430 617414380 459447205 374955898 664846180 882986678 31751920 326887734 869151054 626618931 808089528 529794133 608454614 989361154 774088578 970855448 392112639 961621441 810197402 432948056 990639195 600523355 202789155 833185332 430737492 1149733 595508866 524370341 871716722 445073545 342471137 384508685 827818603 180117521 606603249 824147269 748539637 350929911 918302342 394635087 745271487 798745193 908331698 784145329 168585169 685299283 464366389 967449857 967619993 385205047 957238455 875334094 655446001 739378133 813489007 955708721 824919840 807287429 710073269 744239077 345742088 977671886 887717659 956589157 877690287 980465165 908488704 248375826 768771564 589204688 110923961 543499048 929187650 992556084 633785858 481396958 274003831 920914806 981064960 822204188 809739157 310832214 312032741 238690554 838041032 921785560 743750222 948608969 532996526 531738778 806400792 953370059 955974547 936898645 931892791 926052241 308874999 290734615 666176774 562885202 71405544 416122699 572602562 939084835 792892523 551203519 770015719 892895042 135446641 111517659 677412830 619003629 930109441 365422935 429489448 60924654 540139850 432675546 510055253 21208573 745466130 28155410 19211655 153212128 806223219 392843973 420026022 835606721 342505389 958213203 796415260 186588642 771824387 31933239 99132161 835063974 739127010 887050684 885126811 476472908 931121264 819684417 911643084 669992740 847068415 357172401 130338331 886099017 458909753 4843400 157348809 985286092 418345116 954371210 826948492 80874794 873365151 866515986 630489385 381889839 614325929 909047685 781140082 17783878 283214522 943390107 990584608 373937950 121458168 230973555 237385909 835947618 822626024 746290071 657844269 707475277 786842460 166189854 4068602 539732441 619952544 817475080 856764061 512665232 962619587 172321893 567328394 392212526 295059525 385283652 900306156 820000449 967852094 966699412 184899881 197361491 892016915 897694617 6006522 986023936 580075039 246926703 622543464 802821587 935163339 426661265 946373336 769582281 73900375 807301724 961507623 788011701 939266351 421690633 796683804 548270519 914162091 834373526 835333308 874485008 603802078 801839614 245718678 957944256 456957589 256545066 738479394 273069109 775075385 861314859 912739297 515898855 255932810 895184484 733494142 551258051 407567108 125560105 447741314 68688735 189308868 536652684 213675981 671416011 623325905 984624391 932744575 30770621 817677924 927868879 294655201 986406666 860280313 901487483 927206560 754392402 796760788 468454717 523915590 875468186 206863140 776030991 397945968 494014874 521067419 631062348 337535930 355593624 84533301 285928884 853772043 976232639 110934981 879859317 58979969 860967354 991238345 553918553 757147647 930875240 472187639 950809053 986163184 536344442 742114898 966688339 24162817 985073648 886348485 406648012 960729054 716641980 446125289 293194554 157308359 272983901 869518460 177666780 792863227 514286485 449447411 993638945 986059733 571219838 108568144 314710582 203443144 233203131 578436255 912149953 94892930 746977211 922269591 73566480 30119321 901211861 164973799 803853685 3274916 646121087 818210383 959533365 207668331 335235398 900366764 345098917 177521943 69212244 61636089 770903096 875737496 400030998 783549964 818966966 467017777 694140120 838721347 70171238 978586006 304460218 436749366 192497654 406982928 941937516 940762168 972595285 548530598 831611144 738301362 888213302 604066819 827983141 811249893 488232847 432770402 574998972 394740795 836653072 897620376 875814975 927154809 852613035 237568662 261341108 913360366 561100812 119061103 842033085 882151610 993994261 86498681 786299324 881479656 898146616 623317023 426906106 951662425 34680039 830180608 805635942 141824175 24305935 750996552 669618936 788415310 967779091 644780312 694412307 230783817 857073685 849375484 747981956 966833305 465132835 272632807 146595408 644377408 120798665 303954209 961142216 885949823 346833988 826865496 971383394 821135243 921522889 672402564 964360023 76483388 974150226 259650286 723489506 584691189 857480645 544454032 691919490 767192020 792512826 717451311 986667294 881093347 113400344 717140814 118510050 112069732 899930414 451147738 388750738 771386541 213605725 888263053 907579035 169115070 797735573 746800750 830001478 794912261 64723790 995203111 919094717 756297477 156703414 856795141 890235391 278215759 513161809 976008303 375395635 785993901 879248782 375196129 788348361 377269680 817241445 925039222 745744116 603598986 729139153 413928760 615235564 899088873 559631576 407507224 418455451 711133206 961985752 165369292 961413405 947989059 404787020 996149009 812860844 628001947 710817725 828077909 751825310 519025592 448235957 814027780 232235396 839775470 745435783 404163292 539581015 963892433 413761519 906017925 752732311 756129822 107613287 417283572 844271624 782538156 929575361 71520546 982664312 651362743 533609415 122684544 906547392 896174041 822470038 866820430 291235727 310957319 683334004 959644916 623423402 907659251 142240974 827359011 250923392 818385540 863062573 812531550 92671268 66937782 526167558 453818617 901024746 776500368 642357727 943375233 923813462 875423234 431783681 116457044 822815339 908117704 638311849 926267555 414289770 816001468 350323973 948614930 712018534 879302084 484005231 604628930 938908257 448676381 144189438 208299302 679002306 753377008 352118818 782110883 974817410 741503576 833027952 855117336 494377533 618345748 928217123 164924632 779199638 738328252 866718710 894776760 579416604 504533861 979139513 787919240 313551615 99632470 770044652 960379864 909867302 895068045 278679664 173332000 105377173 924708621 675437897 2225062 758712763 825674236 364967632 910380847 749992626 762821966 702371955 863862552 451357358 363667430 745886575 356862222 969249775 399988055 385829751 631665291 59799968 515155604 815672253 276187156 849439464 762393751 214003985 477901371 683258040 823946721 737020247 828829161 313501495 784930543 835120762 930467958 818129738 598654492 822971769 200305 804592730 818383916 857934013 684662189 514342996 137539956 681052082 858860280 775094726 909619703 95283815 749580456 986443988 597113981 923904937 508646873 151182642 952446516 773905533 643626033 893756153 755506087 991977674 5569464 810983189 397124571 915050791 916149357 1602591 776505922 292604221 964876018 930795537 987846980 781785659 535259668 316290258 739857565 453711241 489237704 88726280 163893651 751927689 276945660 909951630 775732450 764319493 635344336 867031510 793030119 816730902 285275280 787700333 931714168 184597773 978365870 850559143 15559010 863397098 945499585 928575565 430159493 968049149 980718951 916680891 853585974 122864694 47892089 887720202 749477155 294658965 999061152 366455958 505833051 227764041 602388603 703102141 902781609 786945221 17510661 819353681 974609747 926055169 903718282 773563964 754484362 819781254 966221654 398071015 505914967 947524523 617949822 99654711 48267893 768783203 343989166 520454240 497031228 50522633 832400458 550976796 120944055 751487854 337472557 286281652 143635680 819103522 408793800 12941850 295526076 922991331 21923599 718572745 313160942 782159813 586327904 550930843 657130590 928616617 732647706 937481615 576855730 599516874 736617905 69680382 423031675 530732819 148782187 817569100 879702449 573967113 736232744 986820768 787637939 180122407 307589704 764615339 665761721 669888381 975240392 979788362 741184189 533588504 742525735 905812587 929611680 688104146 816574114 590198559 723334300 517663977 441497870 327189959 614538830 826715167 753061814 764083948 887583763 993797195 930638813 311795771 56433148 55894781 617545711 958755845 788172689 335675708 960124165 995653992 541864226 776207881 998102497 944294587 29305728 704910382 92520431 806887688 965687470 897518898 883404219 825960511 518257010 436806800 319046729 213680183 349633224 906067541 853931741 914942832 746999026 779989359 843646131 597769785 982036653 722034875 324337258 732066826 996287583 254235630 869062384 630112601 390929780 81967430 767265309 768960241 972657997 781835915 702835542 741052486 836679506 140185773 621477353 944455694 78015231 950712974 253570606 290669160 570902128 788664024 291780661 753699755 424282743 816496509 758566698 479634876 268964557 907448565 887937405 14749131 658903315 836235711 185308933 216611682 880975979 732946090 67358242 33542607 766405483 539185688 883962164 793699071 822794273 151654430 674306946 273709301 378741782 556519718 664389983 904154350 970464691 652004261 655594858 185463049 790140291 303662512 916724908 737618156 94240089 664462311 688275944 733924736 287587230 948253192 801838485 23765787 275751283 832726545 473328487 81476997 795699503 674281823 890961922 639247394 283995742 268108883 584914985 943309488 834620366 747763601 808346379 763542501 947183248 992711570 276602071 87390617 962011581 755126710 982303526 914067568 927172648 940986869 740962774 807503205 932660709 185891607 812571647 727916153 894472361 68482925 826747347 104823323 815465375 996489113 139596166 755014550 394961716 861439499 653579825 600399635 859557010 968788798 758774861 784393784 705723520 238027061 823192911 744051060 615434699 844959061 876905865 741889331 806671269 629447774 823837739 149262643 374368549 47047047 995478561 398450503 724807865 666006493 925536459 419999566 502174900 950931284 407219455 847948056 31640155 750009183 750927839 369544970 84853525 894069254 193337250 871811697 836762746 908033525 844860690 989853011 976362290 216903144 457182254 812865043 711228049 552517058 601216707 962179531 885540341 286181996 352446747 971235439 766356622 973747228 796437212 319066844 742122955 309810045 214835933 917681873 496895378 566314401 921742342 726893890 926119192 468311137 235772433 849276575 813016059 954019046 202584639 799972075 917377198 864868601 430480583 350307234 919688580 973776734 999619298 670035308 617174658 112913930 677054898 940062629 426802965 425646991 206908428 795051993 917402891 823210557 768220212 652136259 953109048 931697283 883120392 418944160 949885290 965515087 764488102 943377548 135593677 136697586 83024955 663442135 901594404 988941675 749294423 759834479 954009481 764895755 879875965 974235127 781337378 589805661 873648487 762237483 274461899 224247475 261066491 27382602 826855953 725515440 597249338 724065828 620897195 757122871 920304474 844137039 987171433 887254085 588788053 793304016 879325550 139371263 752402900 887957242 93840127 15886809 868744409 74917035 874448135 772308981 344422122 329544928 222078279 822690381 875249805 903261294 412138520 67839297 152947462 720524463 429634 839663269 794887341 325011551 64631911 418622422 625714002 77570613 856604969 858482519 708004031 836418097 979453703 748387478 798873904 938450459 774104903 927034569 536360798 938616481 802106365 315626246 515936257 427071016 724529337 639948889 291715844 96978573 93011365 898373245 615471639 625638192 896161844 128124499 379385018 863335783 41384629 556046962 170127105 969695258 218476085 564338706 801227597 912046050 759595902 352997618 988840703 802202024 819138699 213090061 648242274 650994109 24240579 916016192 807666323 778852257 797631549 552724219 733777659 788475580 890071526 190923991 834076008 878187070 891833193 546809069 871556894 914145792 811600283 812243816 244277881 669061616 53602937 386343796 483604303 773081006 29197305 879813474 7086994 959180683 497470501 842483160 108336857 182551369 921191181 910247181 156921417 818284631 85728309 430846914 6876510 924589787 103431759 803498183 737588143 43965497 443529072 841226514 796004226 200962477 939760651 852694827 193208024 927523785 212737757 814095945 347579826 402002156 712964502 953789116 791494949 369487611 523715929 595784942 501898859 705856313 482793646 809912624 311617545 765833629 208737845 293851927 787803103 142906773 394969457 794730087 50465630 244349464 957576297 996397201 807591387 615831266 753454017 382617400 923346834 945898078 169428946 523490898 773901941 705027020 71164954 291542987 343440250 166456469 825006222 650805641 496684999 905776094 425153008 887179402 590741495 766876846 957903421 772875619 530926081 372179662 543774851 191412816 899307547 972405334 338912105 264808675 478430039 438399174 820855467 91416010 451608212 776948497 812565014 877569845 89597636 446839084 730784408 865269042 553959793 789502853 99464677 792554439 924699811 617435355 471768746 737020247 749879404 267137598 140962284 348869912 493287964 305189127 906024217 806615143 739732909 777302393 543346627 838186255 622768592 256641437 841235578 858562644 786883392 690614628 853399654 979230949 450232382 839270313 345878685 766537564 794265524 326857846 31334912 750780903 129099508 141659534 767904780 664842604 792241214 765390381 784099678 896687368 839884456 784104730 700008020 361680327 311670734 490048440 879768785 326735663 909721409 924982270 980914313 644867869 924763864 924230837 220010910 919209376 881354868 955964234 250072454 761624794 311032385 875533948 802034028 7678467 327690538 512980949 9209757 739088512 465044684 743182500 670233373 855231426 138670829 319589901 331731501 907474275 897771490 303351153 386392823 831513965 897689936 897793795 903162667 744134063 854123578 472234723 979668295 910668318 324023724 415561513 271503929 597528614 811341163 952887879 740010333 14470488 152302197 734606216 448840044 989627583 900938297 872128908 953518493 978256686 774074001 498850248 846980232 877122087 101739894 819094115 209996311 888531214 974248556 342594632 999442423 876663267 16971367 433655239 816525045 239129097 655945372 391382052 463171672 775993809 397165626 325881843 997099804 877232696 915805299 289408996 355511894 177278665 514769983 905272694 406547472 193478307 413606752 960003371 471501000 119157193 957487749 291921655 817461768 818083778 920498682 455592472 662760195 879948128 121811158 582883467 959084658 816542789 533504163 718907480 523902679 423663152 758760697 112741003 546240255 938079566 145402081 553846987 488084305 745277544 909235789 651327902 854146072 993806696 726087500 744318703 786483546 748250046 932956267 917230583 778369915 945074861 515057193 902359321 751822926 920013606 728208810 953844835 737020247 910831421 534849578 937993685 518716643 245981802 938044481 398753721 812366861 831158155 934381919 342820141 536535273 69462688 984688696 209099357 839725889 820057181 948867394 476614097 799297744 671950999 792773481 932847221 498325419 938957601 594689073 488147425 956175105 760930744 379961474 372531866 597237824 139035299 827335447 83129642 926134629 754930333 607546658 648249380 909122320 808632375 879049554 427097038 935030265 767379546 819922489 814804104 741916112 132765665 783247962 304834239 774691056 435887632 172522642 815726432 100755413 56154747 927879032 719523646 51135166 832657772 832703460 927703928 513217018 879098452 465890982 599549252 793028397 135822345 335269453 813701795 497332210 380272930 919065543 770633059 199996983 735659391 130235905 764753853 583895532 790272556 455120336 459221163 813563711 305451742 313006620 565775213 227423328 952020361 193801269 797057170 789521158 32744052 306014456 489639997 899363811 728446031 760408536 122067180 625484738 773024374 678818633 60601480 947773264 886263277 90600979 473458530 182314044 955777599 867013477 685877074 484984267 294338055 272434780 188310226 821688902 135913924 828131738 26331620 984303634 541393 703545564 992409210 161366624 195326652 62435236 468824253 826961531 809736240 85518243 831381932 801015880 249379569 445101607 995494326 801579215 838374076 496345753 628752877 433781617 417617051 750967504 869532814 779344653 943219334 636788932 128620819 638053252 779714881 888329602 912894781 263137108 926365161 893529947 817185819 931421921 793436578 575667186 753525408 23702310 434961871 885236617 117229120 450834024 373312398 443663463 430249650 343445277 567958700 489275609 772129160 853482682 264461159 908500770 416489119 30861529 563351763 305076390 879458332 798679047 737020247 968167518 841819811 178618494 326171117 779756866 21592198 795667835 949587611 181907009 565361504 937109634 467030844 881240615 763488858 616187902 658780821 922518898 846423058 975131042 905452791 903345718 879689246 934105044 914576091 958197944 799752995 548468919 658867174 971808709 189178930 629316415 786099607 733200345 942209036 594868201 910483120 768436716 636716838 314123320 354383804 947381890 809868412 694132420 595352147 889078435 716240625 791252159 955813522 84185580 26763839 187209838 927836775 840677273 825919753 805540806 410109898 660208275 945115034 397288497 679633294 570257885 290671249 85974959 72348888 578040972 343039996 754601021 655319842 297932714 763366761 938144957 442507173 910912373 851022953 795845310 616245443 887887388 962583959 874840906 211549570 767528653 884069169 927146267 346429894 832709420 574781865 850624334 893835152 858444222 867614362 78189910 136356113 23871455 131375584 17834044 238638893 965545142 838426931 660744393 671654857 460926013 547707256 910441870 312682787 836062457 763781208 583591986 876396576 949077037 357527300 76059655 785256907 253437647 851409454 870555988 593804171 902105668 788067717 419481053 719158040 374765765 757409611 446044476 104066651 982431175 975091543 901533984 322206486 33236148 89401824 977655965 981802737 106566342 900480212 938741637 285913224 692816487 410228496 946396771 370909963 875082055 800827533 610651224 396691185 645248274 847504297 642745677 258583303 839400016 910615704 795459235 792423458 149447237 219413196 542576990 977567816 895622305 863347284 463781577 597728989 836682790 220942574 813154448 64948546 270966418 301397036 825421970 751287961 755500829 941943869 471261213 818081002 960687936 968748486 504231626 741273323 997405421 799612523 874640462 573838655 751434027 309832414 314608958 288262047 646436326 261222213 980915924 793485954 548137258 395499108 777717468 887323599 463128110 258506504 798167730 942339060 203767991 939233824 844387704 485655178 997075571 676803497 917648187 121559996 910627247 259942459 702160956 819030396 930004507 878449392 364123081 92024490 661382079 244575922 73003097 918990021 809213647 634184470 68059064 832455951 958940072 959248515 888828219 681081772 936415218 931963409 289658288 702962332 784624057 116994914 507675059 830187920 895578429 130155635 198483762 928114002 933418878 294115966 67818525 973464898 974553797 855584847 956305536 737020247 902034714 454636965 773333536 177787356 392497693 7711830 805619221 863180050 782866783 645623600 571706550 311737353 944865867 751260927 230096617 860242564 546753262 885514593 803486297 935765602 354542716 933865408 593546541 813124825 766352067 855859072 90880262 136600781 980736192 115872356 21255822 659574279 966071888 870397434 959163000 446704602 19728717 688199018 989932217 965964300 771053360 44644043 948442800 863416990 481082862 372012286 34652255 574716706 137237196 299004038 981709897 553965776 619947915 258494754 960235756 619673241 100562816 888083223 158727774 762661575 778369954 274399203 737430401 701167613 720682984 99267283 305525162 536773709 549932542 212108216 244479039 388769731 430598614 256431359 394125769 881627001 864026314 229336603 6108843 782208029 476119780 831386478 283292311 981824364 538481284 869496924 411219892 89074710 79909231 912300085 948250770 874281724 935654538 99589734 962380257 758888566 995781073 74366040 693402641 875623904 42814859 698153326 674122187 263855914 931935866 157475845 938698638 453267689 782474317 11206754 337653072 860888198 867580779 701771734 452024557 863138982 690671958 758339857 151199929 844404027 91254844 464394443 295197638 139061324 748160827 898696683 772356672 766224635 965363411 42479501 97634815 966354642 753767357 957106519 686077286 912087528 820575514 90768606 986188813 871143540 314703508 493663640 311449398 808795103 997660628 794131675 941022894 941942463 906077757 507534627 761093540 112212982 605912136 568128248 921914463 910848543 947074975 761806037 455446990 942317514 171250419 879854441 869627729 995345828 170670987 831051909 780745800 848667748 984579238 559953011 614536356 634080451 283022309 138260682 686119761 540866201 936967459 979202850 376864178 85839135 449556871 114085762 783247829 838035579 736143349 741225208 576423812 90807786 848302355 498401106 762595258 949437885 955318303 199608645 845430864 739073285 238730709 835699882 913372876 980361020 387408469 699996968 266837834 955245441 918905709 359496949 797309474 164056357 15083469 962791599 991231568 944698151 576190362 818980916 321615074 812787039 61123812 995247632 590351988 806091919 402183684 900572783 780303080 656753404 482425203 868378275 720799563 270624315 986840386 959457838 862838507 52693757 964463833 765915868 790640810 861130174 494440110 942272818 194770864 260804847 619911382 943953277 431416831 708716869 148598827 877311696 201393800 571524451 872175312 840267081 989304363 837791752 898412903 883201889 659436652 752294653 209238716 504130716 733996688 449694904 752548703 873680433 964175253 917469820 882077444 542136277 83594470 109681722 842433181 898419656 497022802 216722012 359066950 737161630 69930374 169139898 80972089 489405697 368888938 240237758 629256747 393718609 773783369 545036789 806934477 920535864 829941538 772592645 770563320 382414142 910854244 907652084 362244795 541883488 758852335 575672671 821045851 898164132 758754257 324081001 491197162 884287144 757101930 757007257 890682400 661132224 308682674 813118446 853313103 867418436 966801075 883987696 918506999 497704575 832286309 581843320 409028495 447560267 963832197 800084918 5606450 871118507 134926224 879295239 649370825 839744305 957398712 839607280 487020412 922898676 438361849 86927709 331321513 834443830 136553721 769728914 813829059 877683387 919905058 879111768 266431238 481518964 669383430 958630595 739788562 325617751 897558914 24341191 915299243 827849534 966187214 843135752 985827412 952192572 849043043 869989055 453934895 278411992 664889991 175644746 307580416 994910766 76781857 955444618 125251790 843347067 715586865 411536444 848955403 16024274 125538442 115821569 298349151 850522045 10910998 962126255 472436409 916318559 185180409 827808579 742052369 375050020 467381075 351560859 878399163 161892961 861466163 352955021 497153756 740013984 883602740 816328738 739722931 963076411 405197151 711745539 408709960 200079909 362673186 821637098 636979568 909531080 220840608 854390431 699500853 65187798 563228455 420315108 70946468 973565748 37338512 772288724 785692848 871857935 86427412 985425718 715294684 270686804 928881161 984671263 804330944 992007706 846382156 315001550 922320882 951963379 917859725 771188509 286144792 926142529 899646036 309014980 882821403 840079246 784682752 89426370 551716504 749435368 420711891 224223806 183094100 500722000 727801637 324425459 575140988 448457484 904396888 652485829 227254819 821767929 171392193 236884052 922444401 494943685 764848405 977231666 642678029 300558940 63488429 285431174 231112750 992657507 513291878 910704755 838835352 885333713 516591089 924433220 726898219 55980313 941491885 865230601 273033163 298201664 814495854 588210648 41464698 723643548 929023496 367494854 769230543 786714085 647698859 22437836 976549896 774602099 759978788 868205161 567408612 971293545 757363395 810948617 944745131 889480238 861001294 732765175 51123600 857014003 155306197 448955825 686841315 145257112 827488423 804099448 363683375 810796377 708097649 771174162 243080622 125214353 260925818 276448412 834440393 566307262 904060866 507131718 812207855 982595694 36408044 406070535 374349752 253768831 713635046 565703350 90184311 926206297 790785704 251335581 354639306 262887402 764951397 942382380 380362023 114513986 836610121 650128308 772099447 815827298 806432886 797459941 994513229 125934952 794517594 818905556 230251916 880790270 954695570 811168796 646507288 652006745 287324462 811271162 959826317 506790759 876307750 406744559 881973530 942052458 847675230 818116235 308859162 37271101 952667247 385316720 951453453 124392967 760340150 836519373 766856365 129342839 801950586 253887570 243911972 759959589 511180399 917423973 779407784 220194973 19368075 996046942 953351717 360630835 877331726 796992342 930625448 758552194 870988366 335152026 881192504 901761922 738807515 618233672 117870937 993170873 332774034 237226133 844346067 162943039 995675846 894256284 920612040 784294650 882006426 187413944 527163130 536578762 70620399 950287616 344830108 803139364 985177348 378119489 585496296 589436442 805202327 423414185 792391205 213293427 446330027 484690425 872967102 800022555 942170305 863833094 953198340 688722687 936446866 912008339 649535906 553945165 548526660 591726033 796598227 803617776 968190704 996974171 910509009 161811075 638067318 312083557 870882504 722486431 933605066 933518382 576223886 913261811 971606325 867155331 895202045 219353460 691881804 568134744 389291846 848542315 898035829 694644859 785374630 147322837 934002574 984197323 305240995 431546561 824902072 811295069 134132024 551688649 510390614 291516506 338329966 750750611 762453625 978237145 571385250 243945432 210741759 290681769 745517671 977375898 893213109 305636119 927551810 828514574 878758426 956488700 125050070 822580738 875786030 104221786 450060774 864582860 243531076 973051176 196051129 890575647 321673360 982244519 304161610 594771443 838947513 792502522 675116719 921106555 992759329 468259519 746731137 109475127 977901776 256919598 73508596 906572573 324052457 9229242 37732480 283642019 735032998 57043349 385050207 341672076 604845894 862824770 361524191 994113089 883864815 797198329 806573499 791586668 762251955 678865157 34722127 703551245 339691191 837882994 997347265 460253552 883058993 769865239 823820370 939797771 255471584 856403304 899568268 18990563 759453211 415681282 801174593 491021458 963791615 143221847 904613496 437381925 495500104 336177879 974226434 856208481 935006735 871287613 784017926 736235130 554265307 198978655 876180013 508735530 906188254 399696835 988683303 348853232 822665818 882628297 973463308 636726430 69544898 690024996 8267685 330588691 969586085 446730683 580631882 860419160 671652591 47238173 64862895 469595141 936315611 970034678 696190839 449999238 835256052 962133927 751646035 782801692 766984484 950071159 308185995 916634932 737211678 425739957 743203883 810021665 966113389 198235122 392582120 917030906 245071431 813591562 924646215 762301057 731399499 277096007 999067152 586903504 24248724 841560676 811114881 492451167 205968647 930131704 937151232 948878389 960847512 965646827 592926737 162757614 323877063 85507033 385775907 614640376 97294184 881566588 621653239 830712501 976204541 861877046 934884822 755324513 957807205 634795417 878863142 117764409 940259945 976778610 644569632 495636351 815719966 42308441 724945511 787574588 574695228 787148794 748434118 953860972 46314121 82865664 419365647 255821207 821502106 810501174 255692823 743294460 845973883 747868034 282395796 239338194 854859995 818011862 883315908 903248810 874706555 221762160 402265770 630959689 252790025 184751490 853956285 366263217 631100477 470866654 155005910 461526825 378698793 442841832 974188014 198821626 119755293 969807434 836927573 904159318 834194116 973916767 887150944 608995799 940445095 437147573 944522501 776227546 882047058 931634135 565132337 177300093 92972653 839766030 426954432 745720477 999791217 92678750 470431410 821434109 21504069 58512446 746410548 619832037 461910709 994980786 972549101 442869003 883863332 683525363 914840861 419000763 675702875 701089561 135901769 965561092 114650797 527795421 848189936 465435006 846069254 586220903 631825374 910894776 812614222 835784698 988263481 415054095 725954268 794473410 742008110 768742909 98382502 970882484 136120992 982844406 404576139 738748661 806300536 53582824 988729192 374342580 206104831 912345833 121209651 320694804 121636455 272179309 892672031 661319646 382077415 182625288 584143814 883661526 800237348 810577661 358335622 286549879 407718705 901841554 995122703 392561644 363941582 851724619 536512613 811932055 989094355 648558668 530892796 744983360 996384972 42771005 263393011 966730434 882727272 389706872 19760557 263434933 889795678 740602027 19689369 793766322 838908060 564665668 270687137 788699960 323668227 644805343 435602626 790482925 248178762 601102881 114224283 980614766 906072447 875041331 817487564 240579771 737020247 913349228 758147980 457077923 790487976 966651509 482906049 649476862 910919076 795594922 686689364 99808146 832816964 533065628 364453530 775338952 338733239 155162780 896688414 867234022 883300202 773718356 149714746 826601333 299732235 20380701 896089450 863143760 761331835 461829564 515281206 738276822 657981106 698834733 878455006 448218870 390341204 374855925 131323078 976776133 582185562 820441779 749926022 610655106 269644168 183420035 850969316 261993388 10890382 859925336 528224457 340057542 911183919 737020247 111650807 861032266 415755965 991898092 326098890 829457208 267864108 413069108 409268359 687985227 29545998 152169258 884775255 115801621 966241244 989414706 49966869 589321917 659245402 252685086 821330565 858850044 564192170 59175930 894154542 516255760 929114739 182082972 286886766 779173207 782407732 719046524 698727245 941761348 67270834 196479264 683153323 241878135 936443120 874259288 677270692 710384185 800211535 340208211 807791761 309023317 848522236 83195890 939208508 143342631 811606519 25016704 884680403 968810798 41299774 324682820 964742700 171116960 756438833 629635827 193650706 370779482 103600993 891565076 571181092 820950983 794808761 818449566 617937044 778873714 798741418 140387860 821876944 166478174 773173874 856008632 706076836 789216468 789583164 757824598 906033689 641882161 772243557 949411136 104475071 979883305 65581208 75398856 707668382 308503843 4365369 950874152 878777472 767264548 601084480 914874873 812206027 844167402 636344114 297280012 907053304 413696087 967860741 830317234 964365705 928947432 906722275 19841475 377915172 283745127 97645579 809423883 739285618 759975395 60277274 429446276 397049783 281452465 33168812 293313799 563864747 193282970 611454992 798518926 195300870 637142121 827838907 599188689 785393843 831075960 229200545 890998809 987704984 849348767 740085297 983567660 974779927 734075476 147757969 530768758 278406464 851222648 472578228 290085115 922160138 597596371 518956920 607615462 274887240 806126215 944737891 542140049 980451747 524022327 224053555 916555200 906416109 418840596 722274898 893387143 573301473 494172248 936580560 180449792 60993749 552954461 874127993 423371868 854359243 619283841 654639315 554894888 138501036 990198209 909137219 856890140 832206511 949501551 114868924 779507596 999413045 379156511 933289922 128372733 851764266 799347255 591622359 502260937 960322929 744559706 904277627 337874440 435572010 937889350 556617507 147989371 36176853 986898143 634243006 776990343 379315523 312646702 980569859 838505364 982032125 873837909 613332170 313871340 54343392 913747984 139679241 103316747 691562743 945611941 663283540 749537212 332222111 989862472 832035451 187395062 942748509 684748794 920108639 30063779 664176435 909404898 215081985 182634642 919172730 163046546 977928564 921880678 759155996 706508653 274666570 380642021 212958801 815885287 737020247 951701387 18171210 692257145 916934659 450688921 377542355 903292714 525374755 315695529 148035326 883727791 805445541 660035315 195096414 994214505 704846040 945856110 980283651 976446173 663484823 679367917 875312844 4178342 820631957 430739973 993048025 574098881 385689064 280274152 236105278 742492996 197221874 850125518 979655312 805899049 850945250 886979845 946339106 219954358 961346502 486841452 925150327 360304097 488100521 839276556 964444525 824503795 457485993 664930698 432574979 984848399 515593614 697407915 112587860 971179439 920928092 896109381 878988102 905536635 15811902 789980854 751927473 44000408 404661057 996626372 613080360 546502706 638440003 112013972 832258439 980906826 791810916 560627745 790598776 374791299 215828379 777102104 728976245 818105793 836443462 624879266 449319758 605491275 977201987 79968720 21488376 984603167 941594937 507794567 939133989 748780567 999794644 467732587 621082850 490147158 66717259 948952696 839852648 192797852 160297524 197661248 981274296 801054831 229283137 822145454 61277609 997468018 88925108 302893845 777943035 82881008 438299290 737020247 948622124 407889768 568757174 509788942 643065658 679356808 144606223 652191252 306103506 890172594 854955758 178073695 759232624 952280088 935890638 604405468 996698956 877880059 41713592 935391813 676614457 326879839 299147027 962326830 205476690 145534183 855013848 977905697 843484484 799314377 439354002 843950772 896105769 243709753 165485879 421264793 674075493 672777602 914147257 387257310 234809339 750161268 449887134 731595719 531986612 959464704 890049749 232048856 963147448 769141914 331764401 191733220 821200194 190805074 550133960 106716974 564038663 834865365 450569074 927247447 760854151 742446583 498711171 839215550 892561870 980482112 761199770 953114295 170109585 812328033 369928387 899644605 32255061 967130228 831919222 871512060 934471225 567467739 807747215 663013489 865135332 878283665 886282733 352723918 987018652 779736887 804992244 217380759 484624497 936868214 93942298 419490542 261463772 672431608 894332034 419526734 87444507 824791560 862489370 862224684 963730381 985373450 71030021 868582203 745646918 847111877 217245441 688329588 848755780 923161969 155854935 898598558 293581782 796875705 857225351 517991338 411511664 958353958 883880221 983603094 958259413 147986978 729556938 114330487 130637036 648568569 633959185 876540916 142398494 213488787 357365116 828541982 921489701 868275907 785688040 856234731 102838878 561517798 386222179 966506646 955430674 296332109 388896437 998163325 974207522 652854563 872300575 716920741 921094984 901373338 556456607 972390516 305150860 878723702 895137843 326457753 987446405 126429746 512432578 554530180 482632549 766760455 858433728 270789433 589591419 904958606 190241543 456201730 767838727 214053184 982886738 976877109 303597206 969820711 450462487 911647450 125130177 374499554 142301197 812842756 407699898 349401383 661074274 901793853 125740842 8344541 562248370 1914621 869261279 707433028 200820194 773618109 916932600 458679029 215093642 793403775 861826104 440299028 915583400 560421845 838820938 966695753 618088210 782137766 242575246 404403428 495989830 562990104 809133661 337095561 962027065 436235975 529226920 815744037 486360269 782925797 935868672 895636989 3148227 117246549 975277978 792376721 845004087 955526229 936400221 793114963 398987749 238015159 608484021 907033845 881980654 975544231 914766655 751872426 906938833 905137964 762577324 845385209 189932603 287987151 433236018 712976567 505188213 786107774 960749255 360094295 464850248 321387775 976787029 856909032 243013897 755220887 65803500 373339360 746148176 887957792 119709613 950592460 236731366 54015578 140834314 804194860 908811221 254018740 960645182 748953990 172881932 96478144 982824797 224145670 97441457 744096437 210950458 436214076 878463005 762379496 566572479 734146128 990625040 26193145 810545641 956553335 835653310 515385600 987318740 848536299 913671451 139423865 238772019 523877081 89613319 769200767 750037650 505794593 108877966 783303647 88729845 609600287 62342287 239136597 337322950 815193576 892521040 896373376 835816833 173319027 892134164 825381276 193400099 943088375 936430438 718419079 727045760 442032142 524616799 889544847 964050453 735653240 772985032 150258811 466821771 609488965 836116270 491199804 801694346 633404494 807372062 306274704 56497458 757998853 342669855 737020247 433788263 34416180 768322499 804763260 762127062 777624813 826600067 673481519 821680226 935033064 864948375 983145627 998540187 878456282 47979886 712775878 958383357 779573288 938467521 640743877 113427750 989401757 898556905 653445360 807246631 817281120 288136807 96531255 809358019 788672268 624294884 565964857 873219898 770096132 281616691 327929889 813263064 264844623 345012215 602180119 511134255 357786011 522359689 624125999 831762630 753916124 412625817 526925138 781500532 213205150 351629536 559928360 603479075 154255494 720924113 761011015 996297238 226425806 930790482 789966825 981821209 816865531 625292554 922343761 316958425 343237241 662559106 528068182 783786429 618678310 212518141 924175906 109624901 524312844 5670557 676642442 840317343 893521573 70739123 371593263 844133258 664310321 860456576 16176252 390681864 762419699 507446390 803921098 845020 820873221 860241733 144100305 905428300 377857857 671937871 604860198 739400013 155134385 937952207 826865296 394494242 779979211 351586002 878255803 983697347 121246054 416123222 874451543 646123516 173771764 383985371 830006206 877815664 918074666 185604144 861631560 193917838 125859629 638226250 712704563 827384665 817882225 856354237 182473918 122841171 995034012 457884925 504003174 826847129 283872862 872244083 316285808 285526425 113849645 781811104 813922685 882540111 542555498 344901969 821404917 805119669 570221055 608450664 107116810 50990253 677070920 943061310 676530184 475305558 820611069 301366878 775666001 329239136 868178024 354506231 953030058 750882737 47947657 799366972 711603168 372843348 988445608 539765173 104245198 976352015 723998688 57187713 490016221 785904066 411006397 569214372 627150936 42680192 991354176 837006067 201302420 516702865 963526010 878469700 234960101 935176379 969740740 574074288 476549721 365855570 198684588 973709367 790677390 989540580 984477431 846571297 756660176 841959395 89712892 693456451 977714922 751443563 670557821 147254733 687290796 753860921 795435502 89681578 938559524 217808565 715981890 807561420 754185995 836299761 133153659 793743610 737994158 822205339 590201327 949521468 471092240 366843838 765003152 262508149 625623796 750318322 950115713 167619393 842817621 893153263 243773625 117608559 368511909 785532336 510569891 373628934 768081623 390739259 293684546 608787551 876020934 660427269 808846787 477741297 332402105 771640479 889737314 849193590 689070846 745377263 428013280 914845440 20087939 485055593 466372693 908409012 470870969 903053878 736062983 217009973 249303995 310520360 793281819 148174718 355531902 130404223 772468075 609965999 921928530 730837774 635685912 18799934 840770207 168053465 897474062 905866816 822623875 834482203 155007254 558319528 383857170 647952868 101868317 867313373 856485281 364048433 873211997 805502174 1654285 930125668 718759420 340055363 941534999 779734251 796988691 900579963 844561216 881869066 766519973 878917091 164956518 899662205 772177936 785528256 400487703 564047461 829152999 227081060 892194818 478798847 487384736 998452581 754392789 940601258 829400520 500648677 991013679 727519244 948811794 463427285 367291022 82966538 948415628 918256750 217949224 996619083 808545342 466064434 409484195 461157985 757292955 807189165 192775619 685864908 814913656 962413855 842936659 786077843 495705069 838600427 332590858 132710334 967801597 731029126 471552643 829563427 381147203 684818049 336033948 779015420 792531618 100843209 796160576 820215536 959947513 928263359 883739233 125195671 803129982 987169253 502950247 426256816 946367739 409564845 874212124 500735782 869068858 466379325 889994459 901116805 944989723 499042230 937844195 936100760 703645678 208246395 627601673 998551289 976851696 854583060 11546548 800099060 46820312 898330608 818759975 55574282 754948865 566579881 872159905 138339530 219650800 242314249 831437036 890665706 871789951 430354753 865413750 559742639 616405946 790890251 315417400 786163614 349404556 170323730 297238850 942955879 535334291 894085944 958857458 343643399 734376533 507617614 784458983 364527568 572183287 841005475 129399409 827082595 158945203 778658652 503890812 152761662 955242210 832437684 793080702 795725367 749364941 984625691 693606599 531957703 841442435 36081032 921777928 360092647 762836040 50086460 541555369 441540610 713642281 542350814 964584848 983101261 772504270 931372422 780691747 806003751 941613053 862268122 918056310 900730876 25654649 977268363 158150111 87574488 909291259 753300547 230151354 932524730 58143854 987246779 897759316 161437917 475456203 723129587 913662354 953435375 963629669 822522886 581410537 693726923 473105164 428020516 621471117 331250888 253402829 995129839 931208482 47001117 841994939 213690325 782424148 25844249 876885701 872546453 161773669 769682878 988166420 120612456 799692837 756412219 194526749 743922818 755116137 153651463 265779053 941305839 962670544 889809363 974008906 767585499 813835853 788099837 630620006 768821396 956358732 719242370 902749534 919333435 402689069 909728618 373360931 839081863 942330541 901352217 422946846 779974439 867950960 864467493 676409176 547100500 825057921 141757491 821036132 948241016 834623088 783849698 721376717 961129172 352068943 219211863 882717249 835103424 669962763 741521592 629348300 942716718 899988155 141902873 837272965 802872707 84003278 392758319 908334220 424663081 166276321 660395617 873316843 402893152 949563958 744475427 926401801 964862418 410132153 606149106 869649558 366779693 990671464 230117367 892158140 248823700 868928260 281853294 288023477 949455387 404505174 841868960 978548399 354217632 913408486 949880137 519713735 852588481 758872315 388358935 885720113 984181432 818608380 742224795 829300139 553127405 627164311 159284409 434707910 397033212 250555086 295509264 306863658 562154865 129350173 459970707 56151225 439128729 938133976 794007221 965203629 948962650 933855678 211935114 852050948 788648507 974926782 509727190 945355177 823078022 188420922 853471557 801195872 825975037 280464584 360450293 995078312 823416161 510333500 985328397 502200660 757227369 207789651 85332298 966475560 754650645 772503720 771859516 618682866 49415497 42105778 224498117 795176280 887288694 963404704 103514887 260673548 970610328 983776471 168628564 852959707 855220110 793100279 777412260 794590610 889675202 955098104 813117094 349578211 948697074 429606426 614653752 217852114 370092742 79178528 804419581 883746281 904816301 989088167 955668182 866888305 893090517 520753741 883507364 829178977 95738837 955528856 830037733 917697097 871213141 870125951 114490577 902450610 26063 418421452 772418994 977682760 691282566 942095226 666507612 531728281 345059333 210479026 570016716 937287714 881351338 165897531 929710043 810921751 609751297 217660304 327905861 507122788 145404016 855154482 943714986 786098366 172361569 711911979 995850157 678483011 624906202 957320590 766625854 769907879 996131893 992024818 573145252 888777123 871109820 383747175 937143306 248685486 828433991 551003843 99729505 628789941 748115546 708695831 981954750 768441737 992340005 920623711 438025298 842993554 791571071 874127299 449790423 914532238 78331510 140665489 357852645 748304382 699182116 919474540 287255356 775169569 882457854 875758374 771966277 869033379 796468550 954708103 671128495 37354139 923750908 908408784 532216894 919210623 867640216 208321496 956940434 834847753 304670595 806456141 619505395 981605220 750728173 205707019 784871903 812465066 306735060 870275738 803337598 845445453 824531133 255205856 584239080 774531582 849815558 938262286 749274734 998757691 973734349 853470872 842775175 876668179 806352683 198046646 331124102 770257572 963735010 867855429 468420872 796948620 125725605 704902118 56344069 952652416 663414631 218250523 968898261 411023468 174176108 757603255 328245998 828053378 446089170 797734946 725722444 840630745 342481040 864635575 876886819 132893744 688808829 514029436 303493493 93027181 417518642 318646177 677373666 832623882 657778307 780673446 807110985 494100250 640607003 957592117 763050336 950051818 892067105 888787958 94328012 160556366 502839371 570191326 678357156 834524801 763603168 238192786 752064335 523355171 914137903 920374814 772027380 506687539 995154133 130270576 994260837 288712001 260400628 247997361 165000390 747462094 609565904 465001880 924465501 195417156 707828319 104027214 981320993 857784567 617997626 958558019 860862897 948886879 511808743 793403169 652033599 428492238 617982328 702518412 282640811 930164348 24925965 951397763 780734590 983106091 244795994 929351660 242114200 396234099 476217957 282043748 759166301 713156864 711645968 809899917 101316378 886932747 961408059 188758024 893679075 571962889 878191246 769997149 865295680 305042271 393169547 334003084 724012712 833700799 758630906 43646511 837620673 269856614 987079392 492306812 595176985 631284104 292171022 160175179 912058532 768030597 962165221 765032857 248728920 751451319 876336849 875850214 815375699 378155523 423459111 492697889 527198820 170707742 671466116 977409018 870874402 724766222 118861908 904393946 895449652 879792187 821633742 228987448 905063157 836104951 914779522 977039886 188678672 908699991 35025687 386245010 837459860 776005979 191896434 296720573 757266908 793343839 528501475 405965009 423694249 444268104 796629931 941624375 467449272 926913102 996562034 741547461 960322424 361112107 43115996 545138964 850266110 808480877 375934991 725242100 775907487 833867350 852218104 788202907 863526683 774715894 895844179 175029957 815015118 806474661 146919489 520101033 971336116 901814237 623096053 923529456 322780695 245383321 836511282 30318528 36163225 863163629 885230645 379712318 777931184 607128857 285390564 777184353 482727745 451153353 737020247 831324426 287401858 325039096 863396934 370212657 860752103 866458133 737020247 996864176 67646654 738367638 957679507 419757786 778256296 375273347 631709653 897696229 351653796 690472339 887186905 183815494 538192754 261844540 881966825 327705359 210838143 287522739 594321314 642889253 895149810 204078303 673150378 615903633 358787128 939789942 784502043 877950524 131371759 834505730 962381725 765289017 947335774 328978720 873814455 123870187 570530741 976817374 489232488 951507168 544077848 116447637 915845855 790738488 808451761 390769955 853171425 468551183 639004247 750658811 688375867 373561143 938057437 960576889 804134328 999113653 291181091 980726907 47514733 865358381 830248819 920152060 89406290 908000787 905155821 528464207 149393352 27628477 972856094 807447755 946311222 925919752 796501763 878887495 995822239 766238439 921586334 756544706 559281915 45887683 881911651 346043843 795165244 545339192 971226669 713019169 990998123 464296422 566312331 88016324 605787652 111585904 947380309 986114141 866552101 595687524 561001350 399876875 568398325 977804954 805638827 844303607 988629522 151042838 282838739 808366206 27813860 997889877 906928517 315396876 753585131 750833803 79281681 634985593 24216554 745073855 863990065 979468128 785151320 112646623 958992313 679458251 488842653 733495948 78261212 947713432 971074673 982030932 800152528 756949372 105027416 962295480 111495034 981924818 442675975 518426179 259657740 600962288 47230751 912293264 658621890 446089297 273025351 121373927 537924924 876772602 770213570 880895423 612393988 22740831 923607693 600900834 468971208 875489859 956070750 987227608 630213591 34426105 820103011 886638554 790742291 864122356 772246015 142878303 932777699 624908621 891753533 772690935 300597922 327678653 907428661 939239364 779859060 513778014 805952923 900041723 945074854 853829072 799806440 408140384 565434074 170752768 556461709 465521930 422535489 540408243 990260186 753309176 4328789 804499475 714932144 997453667 340153638 401057227 899439760 807209885 817394972 882364754 263635294 764824648 118370037 218281068 744196534 696542683 939906212 959382549 483834641 379292422 570854971 604768676 744106472 915017103 995452371 565636767 855714547 770642471 534949133 879502292 971734520 949414012 916456074 813703266 712289747 289951401 922662673 853618455 669076502 793571182 92631848 652739169 813883049 741168340 583789647 709557100 959388021 773332794 191874913 999856035 946468388 998432922 944375608 949962565 815075847 624975064 85476466 887906958 143669505 923545459 918209278 299995710 860648725 734760152 865335189 118350701 437347352 763647191 890381465 28479056 5837924 245137435 833297393 332699609 740037123 662492400 41594608 196433074 226813813 686812843 819530324 84474740 54246875 861729630 839426985 85057278 939427772 460717294 109068831 702147722 450987307 194117827 619644269 911474149 391111415 665753605 860390111 937270284 771342819 787990740 541951572 413661813 360965207 401516097 757990505 925414598 703185844 488299855 421959623 786991935 253865538 961523127 908752772 720685737 528802483 676866077 451267866 867063827 781786159 636757329 661677436 706190498 895602221 576341738 924614962 106229170 907843514 339346214 207076672 862255681 959578258 969061442 849769365 967299938 422311151 64580336 907288559 848546991 333316343 200882314 961138413 810902226 771402939 63462964 190460651 618738230 460688003 95500910 846986283 87650259 917481758 811971675 846055155 764526210 182274471 909524595 218692245 156015125 253948332 913352325 547936879 319172619 430048954 808885996 140984506 524034529 972991294 340855962 887743901 878908927 854064608 306316791 918702884 911072531 899440940 391418632 974360756 111470241 863366590 801286255 676553155 476530627 748250869 116950481 68709302 756489402 182534109 408217701 335416401 416597021 967772775 749087050 671091110 900459446 992950576 790454898 948481984 762335966 808748376 837915433 683363062 798112019 857219940 998559058 819742290 611840468 223391952 977848549 670969492 988811937 779194037 375788672 907141494 753920327 916001344 974057029 670559121 958820163 132214199 388194789 781917410 981420386 290833567 761807207 831801582 904815688 986091294 777052292 777278501 582994205 740150351 879739970 988753597 819752407 872863837 261843284 583979259 830244687 683802030 671823559 739858173 480498163 981424592 332204897 232106947 203655427 194610434 801907576 99876704 898080145 676687699 17187898 671599306 569310577 819457616 99362527 304129363 380507908 918582454 793837227 716311057 573647797 777440764 937898799 991680687 848925764 916585908 139714396 753554560 600584866 301406873 288861830 354701518 77317390 785604824 881090368 849196013 543028467 359948449 780663035 28941451 730828371 261436922 291962031 742562610 756973802 293118176 883192089 359160952 498775211 567607758 48503777 802873709 702475136 992095672 664832435 995099025 726598413 785050668 732909724 516090324 671132382 315837150 283170242 886599068 16003416 924788084 897018696 237947292 798844854 809332495 456554254 969576178 757918659 809886067 296156749 859562750 311285208 748226566 783511358 552748779 921485170 525656864 904563074 660451208 898581313 979101376 282205429 516581851 244762595 922479858 570963110 934167238 745959527 466677172 148599797 211205249 936226437 951659533 566230310 679227229 725535563 212798840 617711582 662713007 785192504 446472873 820094604 306753105 904561041 951258864 957524477 995773033 297174017 521898813 817707931 13786355 381262331 267089727 920671221 157735377 877803786 756051549 996687638 682187690 581010079 820542110 982704026 763571431 232093415 72918322 990218728 132939981 917119329 649858466 54359826 807422478 919223576 842930113 107577222 171217285 788807742 363305196 459327919 981152312 777399023 802190060 330055058 987819893 362478920 160925221 551867428 263097031 80446507 741210042 716290914 588128144 195295812 807929443 789419359 930566833 733248122 897667545 852443360 569548818 395765645 786813807 556911905 771603566 231862037 850577036 271799878 127646639 578586828 973111726 492965842 364725822 810675334 661138359 987164939 274366663 437257829 378720731 813737826 905253830 950839415 304546014 136290722 642326567 807076230 974370486 424217106 380148133 852539762 753408007 761737905 193720854 844449625 887469562 28798844 843141398 833375552 277313013 348703294 422727287 826671167 349582726 885021566 826039040 957853839 911705409 983876659 385391641 757085558 454570654 459466687 565326365 601436559 634697024 822237856 40913606 315840067 820473339 17335116 963971031 468910405 853107655 367670918 977707716 959726271 765185404 625355272 815597643 305172401 228481372 445053878 639106982 155433388 846184122 296306314 145288310 736382922 82545219 451818059 945976026 100311792 909114709 655071884 791928018 968774120 335617103 802491113 425241470 611235817 857197779 947452892 204360594 37154167 295832437 556091293 658820024 847927553 973713944 792673791 77301141 22343948 958602885 428735857 932811299 230894699 403354495 737257584 701162856 949637294 852805263 265142160 912520720 77150364 483785503 858744438 517794643 916232456 498182098 29720056 776167340 289013189 913032573 798790657 891786197 833655217 142801015 395581435 187244648 254759714 940508972 783772953 936714119 393701096 336644723 784246601 582813568 811736325 375309671 868167245 980982334 143818321 755334938 476984257 483808287 602466055 954664416 378067997 374770052 906776445 551872321 747852999 95772030 832392569 813274498 913426745 906116547 624244612 893294391 533314766 569467498 959040936 970202774 346189788 163261519 280337592 37555511 110122742 570980285 854852840 563997478 735694909 899901894 961776837 536947096 307324235 70350214 949284654 596941745 567516619 273362387 938834145 919310728 402416737 523568687 847896054 836040173 802640449 823665944 250525461 684407347 380313453 509263640 918259717 878317919 11490550 857318037 976188949 140067053 206062399 850338789 15961403 243834475 177399458 469504096 106315167 554716301 823512890 113740976 835763563 967990374 943204644 288501360 868101176 665247707 861485672 759208266 871235258 579439127 321304800 358633923 748051125 914114177 35852234 806618859 862199595 975165651 360027563 743451438 859482324 934785857 45655221 513119052 887008425 458609725 536311613 812908523 288363389 990732035 527329038 234274623 32780121 479745232 909700113 177681428 122993900 543981486 14709718 295467263 805910738 945663331 780344484 792144423 849444867 419481955 404877656 43041848 909252708 809493439 743884112 798386327 993507633 809354613 796602723 475125010 742301885 740253489 121618597 426433963 313355156 55701924 748860928 585585054 877239888 210323999 49975310 97990857 998949010 266850147 985256400 880629571 570113547 749178003 772200098 38371276 638045171 816442789 771326920 974622827 270703437 834674252 293544191 890017430 315561731 133074943 904321862 187777815 285934200 488464263 781115653 529437423 913682427 232538294 447996317 531959426 813827870 619754337 989456464 649976162 632773038 772853029 893469397 34805243 883239474 867867498 178799785 843607733 623037849 586559438 737020247 976672111 501219936 958477921 761349525 617798309 239222939 141559367 783687477 193996460 906465269 91121060 759936417 773502896 888455239 630216321 854422816 627542219 867884762 479545464 912714867 64114950 882394737 18072158 880993883 800001540 860851330 362462554 46712701 686575885 841495752 756516229 424529824 898237178 330671217 161149499 901868668 852941958 271653466 641354010 187919382 820186108 840681071 943076345 958863479 338715206 935274993 327846957 59583629 842348679 796523034 824396550 659648185 992850416 722473612 821084514 968020065 885107249 236717141 1188256 834275063 795672871 219590086 590447882 316115995 77038466 899265620 815578591 795059569 289552708 234418702 948828970 414729559 158526764 850827594 255052744 340279224 276464676 320320423 895542064 922389486 306694290 488217320 507224582 800242999 196873068 935278621 564660976 772203086 969574653 231550806 924207172 825702901 663843875 809723061 52025674 382752902 968877459 362523651 893309537 273906438 756679678 124406538 994855624 260361583 623041324 854042017 926579391 94108857 44693828 922990238 933633013 894526964 965868601 598985755 544909865 591165710 778949815 151340273 222053840 12581538 763287727 550671046 786612879 791248476 958327464 998301829 523988667 781176536 789331881 250059148 802924280 832279956 471849317 222471585 991339193 828198428 947082025 977174125 323031759 878378148 121506315 158752396 959758329 470691111 854044043 794265587 821450415 326577009 936758077 687598694 100667869 691923013 788552688 233582088 776967034 245806196 554979494 190141097 951217187 981651201 487682747 944443074 777561680 556613666 657138735 103550765 337923121 568963966 502806699 240713085 739947263 993077543 933573779 656796015 776846491 417196033 702011971 206964613 915158526 936596010 618758353 958454382 996361714 247152045 827630183 469234948 579852640 775165483 715550600 808321070 859676782 872973999 515803548 823418925 802796880 647652588 548769623 694306568 912200699 278284747 202168821 993570241 495662829 892551399 778909260 844712442 408698917 942377938 532172759 724591584 84201815 918887879 804467480 369632498 949056790 838250541 160198987 475401770 635848418 894165246 947118524 721772124 789651927 408545113 511965099 766155732 785746054 997718143 741192666 621489903 983718343 789531553 84882060 272072627 807370520 887501565 79623452 762323466 939884897 945459705 963115635 896541649 748544224 873818919 801255801 614014071 255492762 109237513 981143459 505027200 377779147 622148509 835846038 915198370 964777404 942364172 152092510 858805147 743894349 449046115 981810994 902978695 410564047 608621006 889181355 577996702 923555247 994848276 140662038 471932840 959122810 246878030 872140625 988617204 951529047 868474971 779945157 902631535 449242755 214015476 793549467 752475035 904831815 944850377 513218617 684595676 888445800 737364750 579221125 967230489 299776153 637641093 925289011 514485775 705086932 904307018 825247768 797743266 895616188 967975888 765607585 722462184 905535092 297117425 923471346 975222843 622256301 299180308 178422197 651014348 832024252 188670364 927084382 468269056 271458720 163251882 925699492 847730329 393396546 53053568 337032004 18307241 27081473 275734213 954608252 967489169 24911177 806009285 444423945 706030015 48672712 927290759 266760556 708642430 551334892 453437739 814799966 593080128 627671407 986860800 470293206 685725847 257413667 120200891 993049632 146910464 775777315 573240995 805521172 184335871 791126730 900003768 52673168 851224343 953057624 568355819 791189895 777958461 155473174 777162558 759645700 943157280 937981162 540055394 337347252 876894967 477734897 367483068 835060831 709250605 775180089 491465465 903687141 799746946 336140015 960270022 984356900 70155915 725602815 345060573 933591973 589224109 352216318 850960505 385673203 426578853 17960083 914469024 20159563 286534822 341957746 818829441 183934504 874759809 992599515 844538126 923931431 930575241 899071077 538090924 790893791 200212230 728498100 749216179 218754476 987483861 914547109 811422980 783906577 938753415 188599468 329329746 758000729 895485909 971185500 681842179 855665765 934027805 466513439 162368596 190258898 905333648 757923360 817018897 352567264 70303877 100797858 914971552 40271037 824535354 735866254 737020247 973695680 918510558 52856449 626523051 811074923 817861965 860582393 718949232 762427440 969676844 770793645 149536044 693732779 604900310 776006088 20801733 740761210 879668080 558308480 820651972 177805803 908145243 756551650 851893235 72336127 411031611 657001810 964052791 792717137 461399751 785016424 218076543 679631907 7939112 284779089 804925308 762013712 680488456 732157448 979169906 850635066 152802762 970773941 82216204 890612980 828701551 774448325 684584479 340271725 382350053 325790912 807438574 20780943 212689158 750508024 405667337 852271136 225706912 902025789 564551484 88552538 565691582 970415938 867040833 805603363 291685720 35527807 424954027 900365082 165705312 857850902 737499280 672522380 41778460 142896468 899768102 998667496 513891325 316407595 50565889 280133954 868219244 32785005 990100051 159128957 978508849 997293884 973962610 275553005 857609371 843580980 663089788 360927841 476216009 459259909 807314067 767355017 992603405 676964880 781359532 503611356 105493862 532743804 913856576 762286512 908440799 72765031 368044066 175211984 927690347 75058920 799210136 167437290 780584491 792915540 509999673 651467713 148085240 104509584 549030651 450777794 288204047 317234886 949691145 167423487 811024211 95590643 874721454 820882702 971319519 433351967 556682203 542294185 506257279 96037710 566758152 923537888 805762732 839256182 504783100 823819631 122296262 970816175 846634223 175294457 236730353 129054139 769902347 807588621 873612040 108296740 299704689 340065494 878933928 39845726 73321960 941238644 943235741 800233514 213110703 35186452 592859953 789355051 540074787 125455138 588309016 960292017 877059224 820638302 960771976 89099679 942073783 83587677 307970258 319921660 556316915 972220894 606339196 37553145 129488567 977887366 885767150 939685366 75512901 81732050 302636924 91559587 648720689 399223610 921012933 766803821 40416590 870149850 880906828 375403753 841585921 788240628 919158341 564912431 465994850 371848803 552825423 795211332 881192032 730622541 804703455 866506584 829120826 833232819 849922571 780518734 753570336 807010673 164126844 967350489 267451161 242989581 624998861 777378845 386934007 761231525 767049120 300048744 980883944 960293602 77672945 649911206 809342421 864460911 532821886 754101762 988920009 897392309 802310617 893550255 357163438 969952711 676462393 927504608 856026233 853099148 744281130 832197829 782253402 430580950 313713742 691503522 801632933 147203830 810758911 503012633 374598581 221785490 833565545 801961205 191684420 947651544 814213912 115515486 558910762 954875993 654506450 216474777 415840415 791214445 766764183 819312575 812179783 616858873 937460015 259788069 724968869 952018453 809447694 32840460 949925867 891338364 879999600 296020452 367688984 449760682 19906012 116813271 936911033 442079865 268391505 364978300 382722152 653409458 953063434 37850558 661586031 426666353 68627549 411268468 590656384 647583299 933684939 358655302 790670762 643506176 147940800 992561375 798972801 952035337 934572876 927199862 735216053 969554435 834695508 715795536 634705607 982448825 972056116 518616872 809776622 996604573 699167271 844938377 147109563 195115920 754567139 368971682 804081466 587129695 406061731 889396632 3509459 958511583 939061708 974985139 460371804 24657891 147032995 645709866 872402660 464629623 543502124 854260250 829623393 64389409 597135023 136563019 925110791 307936496 39772013 114835574 787169325 223644056 369140226 334200779 831070454 740414607 807130319 801595205 915752318 897624251 26606474 890348759 849933101 593050120 194733167 920950608 601674665 653011388 79799334 340826666 988524523 654527237 766365572 921632588 2012184 271723929 358407629 989490937 496894167 937777590 296092185 191450323 834407831 883392043 538342791 841119703 374999033 805040129 992282834 922306360 252926302 968263637 150901442 351806285 924110880 613498009 955425658 960059538 20567519 856312004 246607051 749275333 343170429 477122564 80273199 450624878 980728048 84753242 824809008 263599586 924741510 940282337 989191547 905291980 207368770 982494884 995298486 996285682 941620907 329037045 576193867 919000113 336163328 148363656 765665434 747918334 9367042 347364874 738681682 661636125 845611319 797177789 22910193 774582597 687467057 863378002 661626192 219892331 495741929 36092518 173133040 403581204 275614117 909658711 541256127 846518197 890952644 736230345 807235982 756279958 864691699 777410240 270404726 835715114 30149725 632644957 238470882 511266598 418703764 636310924 788791454 416015605 905985533 171255906 911934431 857274067 215790067 815021369 759931401 752187037 859877348 874410500 786651351 827006928 9762131 830116070 908507641 715814757 814990856 854104662 879209271 804243918 592723838 655978487 924752283 641333327 573167133 885614688 731128238 16641348 71925902 234538761 274043986 104959702 55534231 347776284 519673322 907552333 851588305 366372017 441186811 578104317 851850202 773316173 835722152 887109796 869887357 758791110 894823826 559677595 784349748 511054194 888032686 43547686 166103030 795900148 353895720 142131298 897422585 784083249 779470501 850192890 199717726 748136193 147373302 857064927 842842941 154858791 968766492 536290379 9883224 772541913 996710959 843035957 824633471 939247844 798391722 231752284 2355607 735326433 286166816 195679862 349407102 628097664 753126363 209249543 953681956 652942120 977465668 903587383 808807951 748567230 688930027 699973454 339200900 353313828 881840268 737727990 527475311 1449838 311615680 811038839 805106220 776309846 84150946 251945245 960697739 752901391 771658852 892429344 825238651 835026032 53006447 982868436 105262705 898511848 411315561 816052955 62464775 997591823 848480354 983532748 564005354 789456908 434893422 414449613 211212712 880962275 577741611 761449453 719238697 933250339 822331324 849231388 319747094 568833326 576669468 374417838 917286887 417343239 745337598 233500839 588711019 371890425 894246344 595361257 935167735 787769614 737089998 509646364 525524923 787109804 924374066 878114398 747808400 308081218 337996013 861591421 784531537 2818510 750270698 992046399 97887976 302394845 977433038 97012501 14592401 974749173 831272777 882906382 593841152 422522495 437688186 999974307 832326224 664097101 436613012 832870825 715297410 891207907 625561638 450015183 775087918 474661031 618618855 758490814 882003978 987427633 942094204 412519537 415894338 976748109 992281519 309657468 799076698 843053944 206498935 942871278 868755829 841408067 412237443 494015078 634414288 560933484 445187206 396178836 910167199 716263347 837995236 685648173 927550436 116614236 592013239 872715174 36340309 806204712 686600427 849343247 105504445 809044214 442986838 91864369 210782424 472260375 590242124 848132165 228461936 520499243 266416023 984514299 738795702 809958861 762897194 967643483 762848951 793264864 987309123 814389405 527503803 807243934 364631438 920374931 535576248 892149895 899400409 867560634 808896991 344094564 958051203 772561825 83449041 798639554 909634347 938568681 891913172 761491708 677807136 329152399 264329939 800466385 97244410 756723518 656612208 120201788 915467387 696374142 191342457 27933237 691648358 801716352 773320248 984999540 965917427 385406270 276813430 326565995 867373181 861250280 462324111 950667734 434910063 841573453 673711896 923640380 663925708 810162663 743192937 330153768 470388102 859614027 855371648 959392570 86510322 875579965 921021858 62962563 963269100 974551156 754408534 362690986 157285108 991901628 800248496 372033084 980786274 826095239 593808390 944659982 151518576 90367785 865118262 741209293 912552022 811044727 602849395 771293858 897893758 645538305 496675843 885455514 960018668 743464040 751007016 315364744 22070000 904772656 435617014 671593544 824952122 456789483 779692505 987321994 940107729 668333989 791222131 361064439 320094041 964635554 616658552 443355752 264170804 678257271 969379577 481037112 829017412 974528567 837884352 856478024 928988586 853739009 803392357 457599443 938187523 317944588 954592669 980538370 735609969 904689949 492217858 859518631 932736153 264201581 761315070 315099424 271003897 98211609 819367526 216535559 942918985 945965316 271023957 773046104 934054954 883786426 105227983 916903540 756075164 871558434 294398559 556314424 832267019 824484625 897715057 987676126 939152261 993392919 472801473 22651362 278119836 118454248 837321923 930880710 448448288 897345258 577460606 278117219 348961784 941828926 380577612 668222858 107958090 844148323 431778961 35431181 987669017 342538953 732814132 888242787 507496456 978441365 46754686 829043996 231277290 782090453 301831781 296658872 484483052 747271411 843798826 867884513 729064292 562235008 660436781 870278190 504500105 805363363 487692279 922415071 93294918 933967781 402559752 55602426 206695908 829840085 911463193 622870520 737815857 803200502 344640136 932320833 910302466 560986156 916863555 773202452 845395149 361756806 604773712 962182639 996222002 906506724 536197252 400143422 255564230 746004940 592083551 783730678 122917429 829646227 493981722 10119349 779358474 420202039 666014691 844131063 876050837 800686033 227069459 527105542 413008704 747825297 792799408 572830457 747015831 774880965 968374403 74742622 939356414 806052591 178470419 758214912 381226251 794928495 318178357 849558073 652607701 645823653 822989600 612760229 878837877 874608780 502215163 895287839 996891399 743642638 887731994 117788598 749754452 941482919 169011173 525833438 789856654 667000003 841250173 894808882 800758436 365946553 15943356 828499266 507349029 377183208 762862678 929986714 239684367 509297778 717675286 346648185 962571061 959286106 494012354 636141438 747161348 836003179 918248852 754429084 986632205 357770072 947070323 389099691 712383 645420862 874959221 791181103 238380824 400988853 39516784 759465204 942916849 95800339 785585997 92409269 543026491 299432510 950135276 670875611 757046376 134099939 925595760 219971362 925475092 304057362 894103745 9613836 401981845 776129629 879315690 452972056 346375389 174491231 326586143 955831906 207361615 127302220 483701613 470379154 290629642 222052171 62698905 799332309 230826530 909157748 638647028 964818743 635652039 970557417 817695120 442233060 950564587 57137692 803120626 902708130 892004177 789152090 861784588 626959302 801087446 239189304 776066578 508995547 82025550 858363874 957420633 38298240 355764847 905316890 810414369 872262008 374937011 667729113 190400588 457882718 31809415 741871541 929338473 524021762 785483167 938661814 814745679 746070933 830231644 737020247 815720775 740972727 121657175 933261769 55099844 751258507 902159165 991478616 316038418 95859732 217604158 159455125 278541216 769946989 961227171 933233020 985572170 865723255 907458694 690025572 974400216 875659690 123517825 214211729 995451038 910467429 799000637 265120037 748521968 338649102 613745674 116589900 683223327 425439789 767166801 339348468 194172880 125280245 790370931 782579858 741757226 869311871 704249074 179545522 24063063 773733401 789240099 284690483 50737039 16369897 205792827 240186500 890877866 978008020 931569631 827325453 767073896 818410708 369269051 623137123 10595324 397114413 281952431 758458022 996754835 308067108 612955921 953886354 883571020 869614254 345310255 850186167 867777856 163942917 711101148 818981710 943698013 257786564 971935664 901485199 400241295 612703306 547953644 806397801 494952404 704708730 333572030 742287485 912245332 912459893 280993166 986113534 67126355 677340756 390719386 635532842 361757882 999134621 286523676 214336422 960242478 861009219 336444676 475452598 610152628 915976962 46460142 512148988 15327341 772004240 718110483 767352838 810256366 843544638 956912132 285846823 404984000 693657730 490883339 363908839 757620027 976541987 915503563 812018305 948066306 743164908 935607182 273701041 82501257 223142231 881977164 338459833 712093146 755205162 211959158 847924946 847220410 435346746 388739646 436704977 840286682 542633422 466560404 385359748 636647077 772061546 551391741 509646688 542275109 951350766 913683650 930211544 739690061 666581326 293337522 920423822 783190199 766305080 979523011 321671290 166630635 891113663 287060953 201258844 325149990 484472565 903920089 239447684 110651511 433692473 739372931 984112438 96820989 196090877 825572162 269788690 146282177 871551071 448261094 998154667 903497578 148923583 832635979 368071613 521561449 835049355 997254478 838736114 953505152 643768158 43541239 510528907 784625886 697717774 575049498 296911115 759475027 571879671 775286959 661095081 787425289 760148416 324294277 322118601 916750876 336349790 254727265 309249754 596156053 835243986 263654396 802299052 893554148 298793743 983839202 979372588 188246070 314691100 810831319 190393139 288349956 237915248 911895713 729479458 574596789 354309426 849364375 599083434 415007137 890921093 853384783 703703019 761465583 956927952 236321735 655770182 374192500 650283693 527985047 817271522 908545982 971203923 849112693 935560914 980581464 339925245 672652287 658358445 780954068 163616145 840699689 858253382 839955329 867134482 933717166 552676200 403369590 293754628 778655677 659920766 969059034 319710832 585198807 888848339 951547618 461142515 55423949 626162133 272142201 778730713 226828107 624962802 23255606 661795533 766063924 141693770 590655790 653474348 762124705 902765364 245630803 916734353 607576826 737020247 862981822 143567076 795734588 469480950 974563645 240902791 44216268 795157226 115365396 748913622 357913577 85486004 687860493 171273321 43978147 924979499 92287739 755706194 783192297 23462160 981738083 912088479 769764835 965759367 99678993 999166029 890605790 3746821 967841798 737020247 542703498 553359735 356333064 750444844 555063940 637779528 747992509 894778581 804696072 11318489 799794019 764241111 349392455 323140454 925052254 918694749 749029417 121773531 830129531 608605451 697575897 426111741 811558325 551073750 596438191 478177984 427806682 360512295 267790796 815954684 692486867 548859710 882739471 992705762 845033999 510345748 912990423 952248845 311107335 990007222 751822333 254758236 779274133 771789257 392589235 412300119 112134581 882650382 909798271 868700826 137453842 742254152 100595432 955100720 562372068 916613949 641421364 832414448 977337080 970238597 156812710 870944200 780594863 347787898 574198273 776613580 996522340 397291061 787816349 510686618 821417885 503255200 294797511 435319611 313085060 844802347 752166721 977332361 707373032 177290892 230994406 872199684 850835284 93634397 875963057 416379521 784060445 159561225 919263081 916791170 390863496 791678366 737020247 157442420 397294590 200125511 119033034 537305785 319476372 777501157 669781725 652253435 943995893 506838768 677079307 911642602 427159278 768565386 631815766 804674813 20210038 802256238 451612482 291806176 810892549 193795600 848206346 749625775 999090428 520812030 945288930 771096683 925327778 741076364 940839699 856407320 13479451 988020493 474323170 737020247 205157199 980752557 824711296 155995188 875384273 890299221 871375919 138000218 12228288 954291764 939672112 741664847 454948522 798450228 751244403 372340308 411529290 575139515 279932458 758824468 834885163 85656247 811789151 929366139 792792666 500573374 844905691 800451183 66259422 791582319 796133283 532862877 791260087 459680203 105569751 508819374 841282290 897805906 540574049 725479073 360923809 735467500 291770613 486719800 896192902 364523803 592608301 892662773 743251021 190258655 767615645 810085602 27078928 433847082 20860260 239203072 562372226 876460469 941010135 334818524 814543208 982719282 46694024 39914951 753541164 822521452 699486554 921449685 946496976 609693053 900868176 9477520 350978520 247686853 320641399 13713490 997593114 322824005 738337531 935453009 729274333 125802117 422791882 217775272 179977827 502615381 988536517 853694359 636867156 939470434 680672232 770372364 936706950 447740686 952331772 635924546 562988854 986824094 527275594 265106083 115817182 3142709 301656551 915027035 209846481 759861792 417806543 852780295 975213812 983479420 453475742 651452427 800889351 6888064 121348850 744776911 879918504 752005068 23616086 265680021 895180378 923724153 88613383 706137596 925310163 737363865 262851030 935565434 905136544 399117100 3442039 586962384 686361357 259412445 926987927 583402514 926766124 870574799 171862282 208023104 958296565 786251580 671053186 806123912 386930973 777275858 22159406 917412334 770967662 615305192 298986705 374101734 358273148 312270149 836073928 821249834 811273842 944749185 824251692 768852089 951454959 196818915 612909791 234621581 798194570 941518380 770058591 874504033 369197748 363096629 172533076 740229245 579061004 948890243 996194451 799553214 948603981 215670791 842997427 648734502 629187434 818308984 468466123 420650465 660883000 647889345 562422116 905801432 364555498 605391120 424752136 919751190 230072828 2593119 975366935 844405626 259324518 548421447 902546628 880536536 215712496 822699166 595413679 384237621 34516144 197897697 572172699 350827659 296419280 986357926 122608232 782058177 301265921 961856921 931443503 927782162 118759048 702492844 858579367 423671465 621895321 934502018 868086823 740729948 902376965 885492243 982882562 872772616 922373144 808472210 329235081 801125604 910957250 259083655 847987924 983134271 786712709 428098555 956497643 865317181 833280885 337785698 60415854 938754529 152369902 750830692 934738573 979328659 737020247 865974388 327010354 167230776 570102600 951277580 904095422 382325591 968893642 969737505 526529465 671436720 629833629 926605682 340811793 898376540 950002630 891342602 878090949 423925917 976304783 394820597 361364068 976327602 923414735 999472067 126792561 776615287 22914345 859754916 842023828 226305337 441125515 302917747 880910215 759039468 495832614 850140125 940628202 894841798 757088938 635304181 775740475 133022542 941809292 82799580 850078230 353365849 87299825 28288740 408161118 903896013 430402220 987471937 536562197 142282859 687561908 995155534 502638632 917403073 163640598 107098628 988043534 794066751 654760318 967408517 688237918 909455851 798837421 227081778 63816951 740523084 47443041 815260613 991324830 817420890 526116888 801756767 905079347 910368671 929988047 970405374 484238199 903865344 910416055 955906504 159908807 774121825 353211886 118032384 748174096 444912992 686062158 557217728 929906305 379502143 690896596 881511028 901817022 993075368 905475418 415708217 145204473 988746113 660842757 860359250 197880442 192482290 896213292 995243828 41510293 654184596 695533127 736860186 954886899 110581757 434747648 821254019 737020247 669651766 645257012 991522267 777281414 754007368 887801957 391502175 863602302 246659441 38614211 876699799 978752604 748132365 943707287 353393805 870023904 201557800 579131430 293217087 757795512 857087709 291014911 934778639 768757643 374435127 358464071 724550275 784871389 907913776 518655172 913187020 923770039 909471540 794842221 849202612 744644345 649123653 280016275 789155570 677165497 66622551 75005763 706912898 522847342 866850323 857750463 119813061 842385678 33915983 869989877 978644116 858952249 18549220 937242122 996472702 98989189 738206538 42541322 755231798 903869330 139070185 398688352 988051615 416454726 778058458 930957369 935354093 19151818 254108560 740323154 867790563 893901181 717015358 869231946 134152829 921443795 525895153 679774644 301016630 839699300 928850309 200376048 342447428 908772166 207066932 89775843 938197810 617934920 517428880 141025341 893320559 797106746 786164698 914689278 816197731 406407404 939414617 933084299 934919492 985053628 790027013 371696031 356598261 915323536 172543850 590103507 888594091 806440802 844349118 886970670 361693602 710393439 921647604 873543282 15691856 238645055 57536194 816069791 750968044 830845111 935979424 410475880 32988327 994794088 956822494 203811465 882971407 860069320 609931373 435239384 885012045 944861963 789432903 945954353 912103511 717425685 790177214 418228545 836184616 282277868 620402694 832950897 764947764 997127105 859239111 792631456 213987744 448013310 839989009 321519037 137267547 944837016 993607418 105367814 344779508 132917648 509460599 285055434 40064658 132676575 458694606 368081110 957181938 129427957 229640720 401765883 516199690 471624574 794124381 29212917 788509816 632246738 950453483 919682403 865258035 994264607 240794415 50473121 906155900 240162750 502640472 856028536 921466061 985754236 913010011 863973824 586994062 60380087 693451246 57581946 836589620 761724719 767312495 296161161 833094629 913114313 928702521 314320067 452767057 788238926 101685575 539759412 803762263 498435813 357301634 954007232 318885574 787949756 298847801 525500677 876728838 218069715 793351031 593666338 912419338 373741938 78593159 935694112 697185283 6782281 979939006 845299777 833743596 268858428 852308813 675878539 797606882 4909648 29159366 904328045 189180923 528271419 906241697 942127220 757742675 937170409 5362938 61202785 973991084 83290948 749216753 885462570 74499441 111926126 903767022 895473311 982232291 19494981 171826548 921306762 129601536 265478006 146341165 765553387 843151092 2877897 281996512 191306434 988572875 726307097 15864318 51408226 827999308 55494030 102773019 558312764 576510923 957262687 834663028 423156342 403948521 757819379 470505490 680403201 973007339 732164318 862947967 991566132 983719487 780869606 398332213 896624770 408962218 841308988 530671594 924787198 970001789 986592092 238895435 849731193 900949145 816961814 964009725 769685538 823958569 847270868 924028212 928474871 984847124 263972521 926174868 766987264 853296949 529985018 711226502 977740415 523792771 628945240 872175249 779570069 777487941 639956023 707028084 111075904 693377174 468291293 109137213 254864394 99839987 399138711 948318798 881753199 75881488 637069871 44460584 183744623 948763304 738952728 590213552 76433713 881044790 752129969 876831044 617569762 89535712 185475666 574032605 753411333 99079699 219017655 864057838 302269778 639679715 337830147 770158648 852011091 273243122 741226092 232542363 602927515 239389759 597803316 916571457 296355543 691865502 806654498 437389022 942591836 391261298 864158263 31880057 482133112 59439557 863971004 498354022 868024857 836299323 928526770 882733887 826001040 951827853 646253434 294207332 988969030 112784556 252076977 595627857 811037191 414943866 49627719 830535248 881145662 771307837 395261040 18799017 837163248 350254744 862907107 115639785 947993264 801555156 845971281 969915018 804184026 954752473 702450527 688411214 292402920 913656023 161379135 753633396 755041396 126439530 923948652 871928052 948546444 510036982 53073865 955551508 140086355 833009070 49588690 235153171 786088980 466532295 825029276 946675854 74834071 119099661 3086962 531549076 924435556 23042005 604222508 583598625 724152832 944433550 508550467 938985517 594095050 521773939 983790101 317071365 958111729 955660702 405907265 864474064 893233087 140835606 952715709 934872645 2241823 211986893 895933283 802601912 47777281 209737540 776691516 210983051 411778601 932142895 118142106 905264593 772563870 971608699 412560729 140681036 614231406 964938340 848038776 881231615 494885664 629102657 784919980 296657707 784727794 992429816 158790067 745356050 304056717 899025922 762624757 753415211 151043108 318586455 999990917 985423582 990898223 684403929 779251860 476918641 540749225 587152144 508541158 278388657 754005173 871795985 967618970 170521210 329660681 150329292 386444128 527842648 336718717 521427682 27719165 52996221 322114631 443405821 961497401 751245671 568777659 945129131 332558136 958589794 31412737 986317869 264545430 954620447 958137765 992139946 862868163 777262219 948913255 372721946 745407751 911070688 238603593 944346711 848293607 404688227 749127560 444021875 416899108 897570231 419977452 295523982 778392923 586695119 758319731 303581108 758059043 270271777 803775452 540567434 946281518 969498981 824525597 839429520 183003339 651949729 959040936 990836458 588721393 122944914 967879818 866199451 728362501 323980342 170948487 812502218 843706510 63150744 672885627 994810495 544392475 940880579 918602016 818252451 272381760 855161010 557928659 683380440 969396506 917367895 648851239 935900541 434210472 715763193 35765315 913307151 688308985 833500262 929155139 456844572 479977721 780188076 234693572 599857323 953365598 222632558 405536746 647636451 774660356 947574539 567451893 938853551 649509244 772606682 826378819 839145331 926466790 153984401 688758390 943686531 972019985 878720918 37256423 908117840 786913764 215109728 777249257 937631238 856931505 668068419 125961364 803752360 247359050 928303879 138573306 985594916 515185168 852706077 596698783 190534774 940695703 392664551 481864504 739461047 171401563 237974651 753999084 116370216 38502218 493611482 764869328 20096648 321995462 216144616 101102331 860518932 910656598 173607502 731903101 828007565 542931753 202211725 801039349 100207628 378831635 988020188 27001448 763235422 875950020 824047503 712742887 220282807 961561022 948770485 991526078 620853754 503764736 231477807 785821908 715200530 953104731 902038352 167051991 895689926 807622764 18827725 743086334 963670825 717771318 340211427 896998868 887324276 904867912 896530413 97173545 928117811 561698120 244803866 696598133 686022141 685829726 780847611 38231824 747498301 178502099 427696862 913400715 840744979 974816768 389480548 653190854 787487820 722978495 241391571 884753190 912182104 302133260 978009905 993654288 834928073 962095622 980282336 468817132 814501131 368416885 193190961 110359051 83967937 676816591 978808848 527268152 717055616 778767440 742151923 859102046 607544165 841666441 779928387 658168390 860387350 922631693 933881784 560918933 379631263 567349038 285269059 768043407 889358779 211334563 820925971 981811950 222186467 927246656 42710752 380713555 452366470 343123663 532222164 610945292 821687859 786471988 216860014 913466823 553546723 816227293 838988424 505078036 939526662 276235643 441925160 829797869 983848742 545836440 255999704 737020247 170758978 749495703 744121882 744104128 70873090 953817638 753474036 703023288 950821647 858796765 237417409 779852373 597778940 611552357 243952726 525626559 577727051 990718442 223088198 835416480 473458166 413564223 884729359 150169201 904263043 153966195 826472695 746011173 655133433 632426740 939856423 752544351 3616646 117120766 728144813 252676978 835177781 837441739 306923029 943337473 849855780 893831480 976332839 908532818 104761372 465839276 603366920 877373370 925217301 921154699 613513326 975587668 849579632 842120506 882124616 953607131 793045480 596503163 120719976 853161247 944499717 192136955 963590132 770020083 687506057 898773382 131181375 995625924 875194628 799208650 720647785 764216399 816935127 455113701 834486144 885547753 966470601 135497226 648776433 21016094 919981750 910842080 966643004 129159069 937261277 398492209 819173284 731564382 911278757 214523922 894986372 225046496 927616154 439887162 771179643 772287467 908268124 850347858 763232060 732461205 903478394 153851624 356860225 450852438 570594293 164905199 98729552 941374626 685037794 874896746 950719879 956798792 877378314 168304647 882112898 608783679 499112229 30115360 91255983 361327145 367815450 733359767 16333524 586267300 51768491 860094000 337795449 943461508 794155461 506572749 939649367 810070566 943233836 613505051 271716838 760828890 649430678 262359734 618682943 883318253 547764672 828501326 701581136 549601929 873273137 145592073 853758298 149912918 322738500 596005462 452370541 422844082 893821176 584611194 805952739 927673298 159111587 958170898 692647290 801086473 707169462 654334151 899145920 909811183 796246811 969929205 281764072 587056371 862728828 993707008 389465487 876772835 114106220 809344572 762370463 475676939 903399540 864046887 875793085 605728110 967441340 96248756 646336448 189043069 792593527 961647072 172207886 171696113 26223252 976611405 447571994 976141728 596880803 704219078 877778021 473753768 725247879 870971971 705737574 833834435 707658305 216697963 387270947 321149639 843419334 295869945 415219362 395025307 306669624 812242202 844245561 329994542 964568950 949367743 984662842 403612452 996687651 852105323 680600183 299749454 853722758 965919063 887056275 153760623 906177963 653913802 609666357 573209994 236072675 566635343 763725433 888791601 623879620 216048017 796955522 816790211 540214297 910699333 949917609 987519600 744530417 718078162 941725542 817006212 851455695 793730451 119979883 407021943 362823201 930315281 972813717 48946296 303240046 437893283 971232875 711093395 806094174 699563593 886366491 300215701 883119217 265672177 568956014 332078201 210611920 184518601 456069222 959950482 868371704 166799845 942791353 754242568 813510372 749214120 649071347 840212397 106048487 618984958 731069736 891521946 87145785 958261715 534199570 34607103 555021351 58047109 441505375 494361329 365220155 869826120 94570674 962928173 337082371 820811753 905621306 13953373 30981106 294779418 956672695 809318125 793197621 765221546 762256673 322154137 887633416 978862840 337258744 993057318 994321082 620611885 834155859 870670934 467087261 645538615 890625906 906274305 945852878 892890593 544936535 425293124 477803815 148163451 930590461 737020247 795598572 745130457 772256703 515374802 910328690 860773104 843089401 882389906 993933392 822568746 30285710 641643889 535472667 972748361 611952581 667590695 157338942 999159847 931870621 931630152 802794360 820294689 293261547 23429336 994469713 895324039 967221388 28324177 449788829 763441494 553230113 809511770 888188029 78557504 762171595 164449884 435344779 518645097 909108377 534486854 805288014 19798582 997905002 836771859 792564548 941949858 389517985 786109586 346618935 780977339 989273312 180449391 380637882 357478176 175563692 14059565 729129077 739087034 473030791 443765290 866733465 646181620 819475620 420987779 40821938 989089929 651657276 157285216 823078086 103516298 987959740 843317366 626787677 969762712 760275866 841927614 930590312 445830347 684030402 853117598 186099899 761283545 889264887 446900769 882937185 919213676 124436291 851755680 273845773 906037897 177924319 542749349 973521774 905947003 745319881 983495581 261929373 957916560 911591275 841502534 688644333 904367720 713036821 778585228 766098725 551656795 900133891 206837183 892991971 590920658 715929638 943242069 472605756 766961957 737509253 48703427 918140427 910027595 113502236 768551592 624268725 763748194 306743185 821491257 468516320 956914922 135669709 152942466 974061978 593607573 420532468 214794654 551129066 132460051 742717825 421729470 344690984 255575667 400147933 905100880 523219676 782252267 942394623 505498074 784971477 110375176 8460781 931309758 225066175 220030340 991958580 443700541 230754706 6741571 619620640 79414406 604109075 933117659 953572223 209914224 237750513 881675078 617200095 884021588 712970782 907597490 344443261 768893410 446782910 981486023 928130168 832617987 206957601 860018566 83522537 487957954 941569724 465808402 493064826 672852143 956400790 877049451 643289104 392942095 746549067 191192855 994803789 553644207 844460378 701786931 636215284 814445203 897459328 92785027 477565230 851602871 717174143 576445156 503438668 537376818 760477418 953222455 778656702 751629116 524599661 219604429 477267483 967640928 764551692 269628822 327188859 255777397 832571723 873801188 89599582 332568259 629229066 963352861 893990545 761458327 190978218 914240598 788892793 213044141 882171939 890916427 592770307 277915512 861776185 434013944 701550536 298099772 173287059 964332682 996015038 269546462 904691175 988729612 620218843 961300389 816139382 667051286 546974262 92174119 625828504 893455487 829544267 957314906 393221129 801054028 528175601 740491906 432098359 797598832 895438682 847633864 203012078 783849639 44686431 838806526 499532841 971929040 788187178 823641587 757308488 739424058 614303166 879751079 461986539 948738956 176328785 829227687 489556132 975457523 900943065 300683369 897122672 79983669 243835099 333237192 26349634 519058669 976693746 845510460 121705125 588917976 792386926 539057569 520424193 583439832 734252540 453713975 955440927 442794671 159733929 538406335 996253760 866099795 805405350 553287227 675363476 914077682 971696666 775095885 184503820 5207030 733095087 13543900 748104030 371850977 983838814 22048799 763559723 604380506 551312864 886755970 976005393 840600780 555603048 577584066 916898694 827727724 138653608 811761784 251994690 954956314 757857743 705941033 839298773 618141376 52909445 656379725 364453714 545748798 880723401 604158815 783011523 959256342 739063656 99570213 984673098 962863682 408291894 905645091 885191975 843327140 193657821 327072586 715534497 777864743 294669737 998679818 390454855 342780729 111027184 935515834 636406972 658112607 779258488 859785480 744304341 997491879 113768760 433551302 968413729 415590998 988173502 852210328 686008199 975707587 4058249 776866850 782136782 873376836 614704339 983058309 110999888 352334802 237975825 950030367 12351430 934126065 264886024 446550001 523942718 833012399 545906641 280211142 371431718 688281397 993417680 978664767 361840143 983281403 62029731 475457035 300862430 637019058 609610990 667188473 139469522 702691035 348819675 933877036 679630953 850583458 855820615 67171221 70141982 751864510 907736022 460923104 522434221 855351551 949155366 426608103 563975482 852809503 240641087 847176813 919383060 397799592 736372194 896874246 630884963 805190708 754868208 868609489 790669815 449963384 648847075 895191550 987559108 886740032 833943629 959798382 245509211 71627878 5556434 213203129 351640011 739534228 522894988 756734434 525565329 302864667 978411457 753964463 7339363 865089189 378436419 940299923 971825202 329139066 674432828 844858162 209533502 720553155 469746466 343919335 841313499 410830680 696062632 891696381 739925187 319571944 870438199 385983242 570143453 807962496 556113703 370392211 885507488 984272891 791677801 582174500 851716814 845337915 191560073 683799580 456733354 506215689 443861617 887110126 427560888 338847390 971464696 235396227 24919095 978338619 895860726 607197266 848560418 935423124 931347095 3797319 794126707 368417372 43553279 97832591 942065602 954023592 746957186 584513673 944167636 488871111 661406901 842862524 891087908 697011977 848130588 743175576 892067867 486703510 898353930 795921472 377566314 449294965 978962150 766025190 977494047 924146044 873956784 937049960 929901917 825705462 697253944 710205772 287212669 866317023 929339981 742774543 985884599 372354907 188776380 42908884 478133757 942152198 311709768 260754989 531984881 846208886 129443690 891111342 947097769 359167939 279590510 977597248 724308316 314938610 51668055 880020394 422893642 993998057 66655445 600560995 300409861 114730831 233310830 751633693 939990739 352961460 303175487 472614051 832062237 107256357 64183572 337242869 925673754 122085406 841915749 579783912 644781198 622333216 950880474 434179879 923610295 917341251 53813825 219063216 740302943 55804029 89529335 966623609 361605309 848083081 9777573 922558287 100962426 869545314 349500470 662110121 222759973 61051128 218534629 539333044 992055279 934107076 235967263 433297313 356937505 232217645 950307523 748369619 981655443 865903759 754845677 382056848 773072350 476811897 132553060 854200501 111649368 39233682 746362182 348222200 14627085 387237126 934291613 523723248 350107831 370768023 338493621 838969250 182001064 780812515 799555612 91496265 454842782 884859866 467016757 145522811 470265335 753786486 98248950 42632411 766570456 759914088 693827290 563406996 12294204 48758642 826945293 877777711 984894406 898509918 121776523 296249840 844818550 179060404 73738600 802082629 254502159 961392278 140082703 36735411 828584192 825521011 2631412 848277859 534025065 977920400 828317934 535789795 486100758 702814097 796611771 705371291 979704616 79300701 349068161 881284978 756354869 350976735 816637265 793458608 721128101 947769010 268005583 769653286 654768159 752534932 951661329 195224963 355106555 737020247 595595469 822124018 250706388 895825283 793464052 341015958 420638335 992068354 800631315 472494895 504517151 32057274 866805541 852657975 989322388 540981255 182876534 901589253 965234828 305715015 904574750 85161530 746949419 925890242 524345815 648630934 179813320 80143892 959947724 844704392 979660571 849752634 924874966 949242659 760415266 165683463 882961934 177933701 237655118 252611916 257402942 874855526 742918962 477040926 915336863 98319215 374795905 394278217 874262182 645183067 844078983 454378776 767775484 755927774 857786993 976700139 825077052 265155761 955231518 723183996 768636467 885787118 835520755 914221501 768224893 817517523 845783867 909616305 929047504 715213141 499772136 365792260 195923248 224246294 750990026 964721807 376309221 482457607 800469431 548579673 921108197 391115812 916036490 933246326 331400382 556807711 808752358 127351571 887677049 869387756 100278994 702041911 951531770 921005994 934440088 997340061 574399099 774820454 529903564 315764615 767306405 988060014 3770445 890909142 896901437 576834825 328918851 889391068 747328764 52677353 753389527 427163513 506066087 768295045 336959898 750470202 909951078 370449648 510180874 976156291 45854276 934292573 987405461 919700996 368016615 696137508 313300951 813992145 468372397 374977206 596778525 221880231 210677274 841956069 911144868 895912773 829189914 906870862 722896794 990394019 975032775 858558320 929333967 865101774 66065541 850340683 799165488 31761823 734751067 923594555 972613977 858827782 776081643 295952053 174464409 836913534 533073495 971161239 963076190 787095922 899188070 91221802 918355615 822665926 553311247 81453212 866287716 885723448 842972378 746297989 53068833 222767380 967554650 895263528 350062581 603581008 319354264 843505227 958806889 934133789 293539193 483911673 176289421 862027550 448610486 866966582 944112741 954719284 791303408 955589686 639299767 13049813 289040416 882440255 939165589 366665911 229071586 568988175 778568207 450642585 708750026 954391780 642298295 905419028 859326304 900297499 787635699 626005636 840312065 704040961 767725781 667330058 750651435 991627094 525245202 506008189 264137484 846333104 965345021 946723418 883420997 864559440 956180194 990904178 993173989 834755645 830368448 387061205 987528524 450050303 966825782 465485239 918763340 573892872 972241748 624288390 896421394 124043641 402494141 262333411 922248164 778592711 181285425 988695604 50788371 883276504 759483516 565225476 201806383 764500186 237740044 897875187 359543582 775348204 838000077 909777768 153013958 846411895 160475145 150269344 617768762 812369647 914729707 860720771 481619635 296462105 971605460 933792564 685157683 66986307 517934724 975833577 891039412 269100668 612113582 59543747 847033428 890771994 795030418 646088647 221171081 692998711 81234176 811100125 946496178 217291919 760428384 861627072 827600575 180186885 914936033 781551331 23588114 74895473 781994030 893610969 871241788 34051388 816183743 301655380 944755347 944805652 806066217 278359884 955702489 825448860 806629352 539029924 306186705 817331461 786766537 900993822 201601333 70734990 763746835 881659725 865097537 283667173 551733730 215607056 313521567 245788312 948259069 768235830 42622496 958448922 852533941 714836154 440988573 378918051 827603634 869780218 898246094 322337733 127971516 281301259 300874779 970112756 151498978 944802502 887047590 183671629 335300076 997880476 440963494 820467163 907079611 984687570 857039328 15482370 990526880 367067720 126023568 929331081 753947703 818078592 938012438 729355688 165549192 901502836 949017032 23494204 525753829 159271404 962793657 910609666 901135265 456657446 275509002 495891772 646156736 629308046 790406161 507591127 285260304 878090229 965798092 231191738 890463332 483824515 187122971 959291645 757691732 959162444 995827565 355069542 801930667 912295875 969466107 807589529 559355448 208164693 875764110 373659871 511788015 1404898 912621310 604315728 870477507 844512998 868704156 756909748 944089494 646579675 294058994 981978545 768685889 188764745 481316083 755198747 804216156 974643438 822610016 672550374 825963308 876918890 839375275 503718668 328530333 874406718 962035543 878649632 63935540 322357224 898869481 905880514 383970013 457958713 142650241 738812355 800047052 353923565 389691152 802847803 977235824 87299700 848092545 799100387 569972164 863864314 937495366 855320095 967613445 38936646 936406924 856901315 641982598 780018908 962500477 168021460 608247462 872693152 918370271 477661639 286766221 840637988 938386186 672591660 781885922 924836143 891765717 305397229 267915144 157763740 854864433 340822030 737819589 994574040 162292790 266443971 17907745 910858467 992491037 939013485 351812325 793930575 129944889 528419234 970071344 528907048 844805144 588287203 947657314 848394266 476678171 893405459 803280247 988511552 927853761 625973245 24539727 656615361 756435221 990861403 444550379 737020247 775009541 141425077 921721525 934388859 920816143 643033743 682912964 927452381 261722521 919522039 888653158 16502717 359823810 554111488 710123128 356104788 903905578 473119496 55351203 392925574 70298939 543384366 53747427 312790333 47319576 832435216 289293832 297317778 314123692 33055917 646687905 232691041 724157851 984283058 519551312 883903910 831817724 949885949 799399123 546055544 855970460 266797851 181839084 236841600 279270326 983366519 769837240 52606265 821485222 272514832 510531775 766703855 509868625 26023298 889459976 772399862 809722115 672533362 987073390 982278417 371267556 876042799 876367937 850666171 749801081 964563853 92552360 739423671 761851411 854292472 302244219 782222826 950427822 169275870 791030982 602302420 698502961 786452857 848101506 748372723 770412759 868860759 370225019 178606392 608197261 946008258 43240651 829410715 503910990 737020247 743859556 150734448 976128629 589190394 979627676 971905343 484561848 31725361 864211025 829350616 677301166 868180187 713508477 537428292 395728201 508441429 909326908 880848799 837960262 807912005 756323004 796969555 241574076 246924841 803756502 223409939 996306467 200477555 830798096 941440750 928600149 775032431 879563985 620990663 892657104 800617773 881459384 235198053 250276000 837133184 905529885 488682800 355160582 926394563 879804095 807708445 976467688 823018383 794055403 826099100 231219901 970082957 70386502 814623722 686431730 746151270 796853030 955651452 959015864 251088207 860034724 509352127 884180909 792162057 287253698 906428426 826878137 182196592 922465493 426289152 269949098 978419744 589831674 294700318 830618929 184298548 942320619 32013013 880688622 844232335 438649342 742179450 262221459 911376045 928095925 804815045 68165405 628961360 969209922 740275207 618846234 907586698 368856212 201787206 958730425 253707482 816315341 335052544 196803236 745617934 880589329 521601684 79440492 539967631 490324717 927252986 708572033 759612057 846866100 745098801 812409174 866508850 998206208 617071934 760718780 840564380 91638016 786729374 710971350 276471617 795119193 685187954 608630944 863881080 908715578 56826602 764977728 806342711 940363963 534275285 418856300 116108829 772807367 88919724 962784947 961552093 745346031 524038725 849695956 714699721 929087208 464941297 515273355 896093446 145722963 508121280 798311946 394434541 583706417 460297454 606071805 859646719 740095048 650216913 848023804 764695058 897549414 973302843 623709941 47924881 878966670 685085859 233035196 178303599 192902167 509784784 943418460 964995529 994939947 322214461 843020256 834360676 99662093 5011023 49063051 579078995 928683644 242148953 804314389 677620325 850288328 943697937 802152546 893602615 335587118 782058250 268938734 477266759 919301215 65813642 343225320 772827121 424433208 717603337 981994214 839253770 851280041 980893139 115950413 727883227 486138427 288088028 112041276 771670893 787725524 641442136 835559001 134134950 998628679 316847146 853671010 735436555 916766725 812381673 215330900 977517692 347630868 920833321 879428576 781672442 374075596 817047168 551493137 960779762 419598320 888749802 858078988 890527818 681834906 122847124 306430209 668779468 451826675 974559478 376741013 284527359 298115602 89459778 194143998 775046819 719445057 532582617 300779223 645908912 844317598 857165401 832269682 107826695 994600345 976338832 912169905 683738142 87033379 317758390 918617661 894899121 641784667 783905524 878346985 774092235 831079810 543532166 544245891 7966814 966609635 909655698 785699295 542306552 819898084 892055256 82969018 908576963 664202986 817034452 810747200 747408303 959121050 322499528 168827973 851725186 788097705 190175152 295994278 939181913 616208408 977302112 665789910 525032948 492503585 943168194 74130506 861253526 606097178 496652785 826564166 867800725 577063992 872523166 880086634 866179280 256448575 970936525 911660680 487924517 51699667 799416431 162193191 110926521 940879634 181351475 594877700 875723315 914012284 478217051 862637897 547721526 513361222 874820768 798414040 891316619 924961046 368205440 970477982 795228547 622652159 555713208 493618918 785425866 763017128 994514066 840200177 257320056 398357091 396266804 542748053 781700607 845492476 455243849 804121509 259683457 843468634 814242091 931322603 37693221 751245880 745844939 516278714 937239406 952423841 51342216 815094655 825212479 782708619 944895956 308271706 278477500 988040372 113110760 174301061 939817805 813802276 249686800 413128107 235170527 403253757 356567552 784904441 373154113 835586427 998538852 710654256 376894006 748034928 548427592 978358237 939161968 818915513 988539123 267220751 885034423 610206446 138326417 854925363 705783676 412563352 314485407 786755020 860847857 413574208 57852537 867151445 202558733 690823544 315681935 772346512 994651450 897875562 251203594 896411943 384318718 959516178 738284285 937631572 885797391 886162141 747382266 973431936 917717213 712516112 748262123 29368870 598494613 257369794 428208894 776564780 748369006 674272032 998164961 908412440 317872104 823680670 895529177 517047875 859670192 648086079 909499265 885191275 902298024 789453517 846087613 401055128 744855748 981324734 959226264 779978581 933465008 513923606 857705719 938653034 915563867 904006161 885523002 189107849 938455787 262641278 13274908 610582678 215397409 555064065 26563076 927886199 969985739 355186161 788383766 341270185 416733054 797079607 798930441 224934199 259573768 926319374 596183639 856961598 195398657 147538633 811482454 542286268 803467879 229603850 735135685 54149079 510728930 176528452 151307332 707701762 947874387 554845995 756832714 837213361 888222754 870702796 819513335 121035365 466411070 980764055 537998965 849996344 243805436 921080712 982641186 114462948 937911297 276213819 127634656 99145981 841643950 750926434 734749585 311483296 957891618 858831277 750016567 989802418 457192486 775601399 462283023 945081219 757847651 9482012 740927691 527279715 615319096 751437504 750060431 777038270 961491830 848475655 943379467 345085640 753061569 738114946 931639973 233412028 324740194 571846084 881025914 912019761 285495112 138122806 971694257 788262601 657983002 802598040 842516201 720800297 301040381 532478558 947600267 760184556 478322679 319604813 624653665 853765433 981170025 936057389 933974650 766240914 613558039 855654421 867673504 349630460 838598713 846168015 855026835 968240956 577535063 880507701 918944156 836027096 931277643 855441424 514873894 249614347 938085725 955166459 499042392 672804591 805221272 478239563 466305608 986593878 943760126 994808299 855786430 670501079 915386817 340207081 899647706 795047242 68470331 939727291 918631467 784491027 479772695 559547205 821115809 842269329 58125339 279428146 931919399 779226119 925098084 552143716 378111264 797828043 649375991 744187318 526755507 458165729 985583379 631601412 912446742 405256957 375254708 143190876 238790244 357815138 376261062 88607171 788244957 977663799 785991828 990711384 942023237 870742521 71636051 935912654 596310535 777662036 700833584 844645534 819337180 176353524 390692343 883074791 915982020 893371316 948392411 878459203 742285005 284734843 56846104 839192286 111344491 748388481 771268456 3715589 788981489 906326698 108733821 661918894 957759231 115426361 665207555 582228677 933781356 218328392 911258765 773117349 356494474 836727207 818988907 705548373 981099543 943444433 141843966 864258192 779206291 226302625 401315539 742052136 256786874 643802224 624462582 769937848 233430033 745833511 293310690 769815886 399737274 371663304 970580389 635646696 772680403 97986415 389765404 793086923 573608213 303183777 968406383 910986343 900447453 60491715 816446746 620473396 684186249 939008638 825612308 298054686 517916342 4267329 863606306 923875776 720896305 875307627 815068988 31174839 230380132 99094276 775603951 404572555 765149741 675215102 891972348 687897665 705033068 33145866 201065548 943577636 891894305 911891423 821554412 10183385 188321094 815006960 764117753 822822151 143174753 293761538 869876911 660585372 662247373 829313773 847881868 768124208 80943382 753906682 802598355 9627603 309450524 740835148 874966132 17284758 589190254 746890955 48339911 440696729 745952935 298531969 453467297 147109828 856067177 263694169 944626817 96645360 280650814 46174509 698524629 313515165 816261802 749756754 58690903 919010237 98260547 795963913 174245341 424486735 738226972 982839603 929060323 167498525 542382630 918589182 569206143 966820236 984639124 810619106 364160748 754346722 835995129 982970497 241648632 139673285 97120848 977788379 797492193 196293443 861648632 694181637 907696559 605767462 862410562 474465704 827736334 495485919 876178113 950854406 926868844 816981849 239615806 215948578 301779052 774311530 769508546 839121850 771736032 844666544 538449433 773771270 868216096 301375468 914795663 610200155 891187506 954010844 987272858 947519395 953087042 773238767 883980549 606394767 798780108 869531446 966441816 982441066 267930872 373504266 687820516 821304040 229058857 426161431 957472848 633833003 936710605 896190702 955897693 783353106 231606625 706359575 248206816 205781797 641101404 221009959 742383498 832082697 839535736 697870229 747187505 810098122 96204617 297798524 848078601 714645336 168035437 863443997 987221399 306336956 536810922 762144204 538410392 339746250 52147892 900175227 853218191 932748207 521362047 648553532 855053925 173659732 879152803 774699569 952317472 752605874 648965807 867583425 854695283 382351819 669256549 161876966 969342523 814464765 97995899 688421878 904121576 7876167 340898358 579041463 561254847 873469500 97427816 298648904 445187778 879921747 932760495 975627697 816409869 932337508 790728029 853058084 977128691 160111679 40203504 310728520 331015766 168136927 851371723 754786700 756934853 909272633 526339967 108931348 635711038 399153183 892264669 949695312 853200241 995281893 316685492 528097837 831780163 869357793 924530176 842333133 744737581 791205304 830800661 78600862 709876554 925022807 674030675 971300151 908749106 556030211 999465031 959166373 43429015 778379791 807580308 100737218 673088837 490257029 881880223 774535879 11008761 553381441 885829233 957365188 215444083 825826848 971037503 281995495 681779058 887900521 788498630 830460427 602848373 851107727 934550977 849011166 944558734 44295198 788693706 898086919 246659913 40648552 667621506 789389109 825390620 609536123 22296453 124259072 770815789 529372770 524221092 35689178 333822235 980301095 760216380 261861472 44251250 782449816 487057888 773806459 407843246 134494284 754115265 99288291 219458150 106972343 777526023 925590667 535175050 644043606 349075471 864729136 368397809 974366699 583519834 853384746 933114350 864147734 619412479 935383015 120338736 772025350 7018857 812165528 181737212 809369897 964959395 362912585 921312046 872935656 636650341 738936876 29519140 230911418 47011502 308476321 850100684 408136120 959189767 637458776 450248918 902382714 828342062 911311406 798391118 617445107 769991843 803663875 746688374 595059231 528695242 844425835 848066826 446620265 855420809 97966928 930217849 994296848 57684783 425741561 995064423 804935911 161860097 320408788 109218596 937090609 751906596 350924242 613708571 840948936 811362792 974856426 788017071 562073155 298616642 506980344 218933480 602781518 450499389 51379463 829439367 851143891 889138954 764214277 446099847 571555332 765948995 476072533 913148639 669375488 837230090 484249784 844305433 909726437 817469079 90854374 608491538 299585620 779616218 936671295 840291129 858431368 832373253 450259115 916205570 883571792 826400554 339391201 174556193 305703458 186286740 836444238 790408752 406687888 901220419 71124312 868713539 521158814 963587159 518803729 845925805 795645317 737020247 664787597 922934110 644287439 838272373 168237595 989173711 969361873 572523001 384073046 807985581 64256253 834552163 821936427 6975609 942502650 688406775 469374205 810957007 920290870 739243393 123540243 695825002 623150702 715763393 914460935 648271129 463265858 793340086 764108809 480902545 44272320 436240419 967366672 902965235 805610248 916507508 941913423 963144627 47238025 932632477 983942898 857129786 131830939 710028328 975675394 74685790 720233822 952023498 882131997 161216351 185799567 627590205 865434837 157300003 769910500 915330440 870275944 703727368 963426856 934739592 754388316 160840856 864038387 833402634 789661011 885984003 419304049 386709132 326421583 889163353 481316891 262611610 584247443 266068439 289386966 246177939 7949621 334504296 865507742 468741129 903164982 672518169 881129247 943006241 31371309 828735528 775390610 296517500 850009276 601891162 381664673 675909074 29264149 342274078 966289188 762925362 984476231 271375909 686285385 973244123 539955741 623595989 259913485 887956190 48951624 873777252 555431362 283113986 683928565 944343890 554255073 851387402 781296062 814557801 963153266 983710291 166873887 130655833 899193971 898582996 339532244 809980296 478377593 833945454 886789448 143760803 67598268 967891226 741200291 262346062 744325590 589310523 471025693 855955918 371557651 239828079 866995666 65375339 955656989 414401399 829407143 498111938 678264928 906479443 458676546 899333029 841525209 757520395 227048735 805197003 883074934 190054898 867512512 813826228 843200102 344976547 928037465 900229952 923311156 585152828 870094831 757084411 640801267 269659539 979209636 943170690 190066974 811160350 61239352 814358642 875090150 631494614 263660301 756461407 786284004 992439796 244273608 897266696 820914664 904555481 290184371 999357389 540683757 899655799 698683146 869250087 78244883 908353478 952777875 427724704 779978355 970834321 347254346 942316660 902493495 566736177 625024439 792416342 128106027 924837378 820429472 480063016 933962805 220461124 333319687 38546866 373501324 240607354 916477789 800666086 256397072 233844828 755823424 599114782 478348194 315257998 983136186 884487785 176802276 302057058 841157402 574513490 800136784 48027616 48870561 173275843 311832324 853216640 813376786 970706841 710214528 216900426 213106983 281996868 897950348 891327732 588428023 111251528 525902679 347994186 490832329 48747117 728459925 853303216 331858497 746566330 754336295 956703067 867302005 931082137 860844963 82453653 114548065 617177023 859745923 898307888 880814764 4647694 728918736 867972391 936873864 679379869 911505431 857569658 885283758 926973229 855075161 710050530 553173503 792708073 788459544 807966391 825375277 147598372 897020694 937089432 113996464 882598785 742789912 158416338 688885009 981663121 664197830 493691744 899365095 956764906 746464900 751077507 256589713 655581045 375491566 647775032 649570653 173354432 902803197 206619036 972144916 636556939 916142939 776873259 978007512 273768918 152721816 272682443 868222038 673339636 225776456 972240185 876248072 59145535 512987712 308788640 185427995 109243585 777251258 463930291 591386535 827234736 899265698 784298154 708599838 999828805 845822393 828082142 659083099 563235864 737020247 674725621 933041390 895481090 843565777 787047241 823475233 944788229 788662985 829269796 636125087 579384126 832037086 467643268 86543060 937399802 928586040 968720355 691725443 673992388 444602267 312342177 974910449 335687473 250869719 944435636 803120106 926301681 652990065 974925293 828371309 152637513 607823470 934062009 748107212 963062240 501917500 537143190 596970176 794642690 263097813 933047945 928334210 802016993 242547762 908215476 755731353 931785636 448151986 961893009 239107639 531688908 848462654 918897720 946915372 983352780 815871814 661091750 126786783 724088591 868495548 941392622 328659812 974300087 47374026 905085567 506579687 924962390 798591090 825760590 69939674 841025549 754779578 660188003 628593571 788880653 266184736 695707848 118238618 93318888 993021603 901406099 145241538 287221491 405610465 502893973 257791056 737822114 769835122 195743546 760862642 67970060 846280466 913446729 555658708 105890025 942452476 546675213 430689547 631636798 634480183 767560282 756443287 818577102 808543865 832137327 942422900 522712202 212088768 768857520 345227428 747865281 52642529 975013751 425333833 610374962 142787537 865668360 916730153 807544803 710817896 321634794 642317935 322758675 863283313 76183374 974704830 114791231 961004358 868360897 275305819 766528037 718770644 732468385 829257779 591843091 405037943 164651500 376353247 276573631 963824649 348668877 390906284 300487551 994269628 886493887 789670517 807784988 630245125 812189227 373801660 278557982 171074652 94897385 726500160 905838308 880230044 798976243 922351538 430006786 742548376 764236209 104347071 361007477 964802870 285817259 974107129 740199665 751780648 756418589 890149438 533205165 991752917 933266963 794818865 834448916 52885413 708605024 930450862 891041396 608674319 337651101 872394309 234833316 479077462 914471714 970289616 889379348 338539437 790376512 727711010 178732398 606039088 819221804 957714404 562561107 314111737 949999267 976755115 214706811 941759267 562708285 254611962 369645425 748497917 969453965 264648883 949893810 685734414 933679935 87175005 812716954 792922226 615235532 533639118 233114592 66481125 849245330 491958154 900434870 765692480 13976206 187804456 436628106 132297351 983839490 39821873 747269298 975170920 999443208 988615861 611076086 841824940 903167777 146185088 304290236 925250912 763395819 772756102 858844913 436363795 891559439 991347476 834544957 749837168 306442416 939512167 220359869 308177055 396904128 137517535 978578510 928842817 863033101 163318400 805592319 984935031 23529375 711215372 582567471 107119825 686483751 905442968 44687974 807522668 66216603 103933540 423919301 240958724 922641459 515166058 195751238 140767513 979903571 757136669 880307200 923761425 585104799 907199409 964609657 879925801 874636589 933518250 337717721 609025309 62796489 828291571 533282865 208990024 668812573 953787689 787081316 982239727 960120070 838013368 211080573 740699228 750155515 992499962 381034138 821902345 5972147 69167125 830021218 817193160 41058306 957079882 775331978 800983563 806113095 355183250 250081754 334792653 94700784 358109470 124881451 961968878 973963599 735583725 796544397 55869458 959601024 358955902 726342030 804290601 981604337 592176723 249652709 322103969 998974653 866362541 777840284 255110038 883286736 917682204 748410145 763766544 755898198 594350302 987844719 51875896 144263888 822702437 784852974 844585011 333927357 783309370 892587308 726918085 462552793 758005289 926991247 803747803 758679605 877490420 378991671 494418960 987936620 336010388 579435305 954111812 968377286 929658308 961467298 836387658 797613952 755668507 931900376 778902862 905283832 749391139 162715752 453932703 823524121 35339153 581296169 807394254 131547919 787806587 684313165 819246389 160026365 761126979 988604625 238854220 688185219 882407150 954761402 222375535 756113312 459828447 983452161 689890704 375616326 904847335 773390077 882182808 107777299 735499383 870838580 849390177 971900249 678585810 572995429 873330742 778409952 767467890 784492251 328810678 88892546 990141942 686068434 824109885 565053733 816793803 678321765 7934841 895634295 247522452 639323945 606017987 810365756 803034480 464486165 422506058 562021356 989062472 472366919 800020378 563987405 109102376 813930113 63608108 611652428 744493130 448918213 420107097 763588002 537273202 997222525 479823843 981259059 30033044 988470156 310935357 283013716 118155157 805323130 416935373 516992069 814145954 812348338 849184200 135317431 256741601 798583199 627108329 863677974 984076154 147215512 687309489 810339686 925728376 854264287 673906193 51231389 131583918 696871657 598155006 96035762 997079284 763512045 903388727 522232957 792574485 904381900 972230660 903174411 755878138 779288618 987588591 764490676 969805870 222625660 48990076 854795125 820494656 756243623 195937385 778748009 520888234 748068703 198057569 190526343 889077898 911213572 260027809 933063568 919936401 219270613 633757400 900162226 824497745 553742489 410730483 859702262 812290290 112344176 129463289 262427340 652737758 996178605 640990185 893999143 349898935 426864901 545441378 884295270 389360787 874244978 96717020 205627089 257234948 879889307 966821081 842365383 63960239 849772977 317278167 546362505 473789246 646306039 367751523 153340478 744965384 609896022 103339360 996574669 983966087 554466286 250837429 589109961 908728726 996793928 774510313 737147215 914288657 112061932 261556063 958167772 56538639 855638024 453801856 586306283 296749981 877068648 340737845 929769226 796069211 984324324 873498409 935123706 210530820 432870787 447743046 144136120 851632344 829271292 760602724 827961019 98610340 797216626 352121741 805168830 982075713 860170555 746549966 867050808 766609251 953276640 50949683 245030829 235145184 329318489 962421369 508702924 805210753 754180864 915639707 998486468 459188676 233117781 875166617 683029052 95847492 183411083 217949986 923880510 724571800 955661821 159377184 882618316 160004107 918387466 607691155 701407474 859392310 233635244 124513479 319914439 234939621 802821463 11846609 814839724 811915450 761116445 70818249 882277759 192427326 934577959 803431354 712062530 754119491 162404504 747246271 487404106 597185246 419409251 876532400 990583787 291208795 473643436 912670511 922502330 690175177 949996475 536166790 933918297 601280906 941302182 770624922 187152418 449953898 890648583 532700875 124720680 840755716 956411843 747320823 826087140 412476217 971371382 914803614 737657891 74617997 972067221 744620801 489115497 822982382 536330009 979721601 733360225 787358175 376716208 182757974 954953582 948925662 690493629 625019406 663512744 935600015 927768351 882201314 765032975 165561454 817914594 16021708 769472108 100540756 6576393 602692272 696740886 939864927 824502913 104988638 854410071 606355003 822579774 707130700 54419292 623185282 854860287 783221900 495616730 591615892 816763725 750166263 873587914 929538203 451658533 895065467 291414472 774440370 699092432 474901290 366396798 930848857 273328523 662986267 291631733 590213729 447459001 661547288 752349540 895297354 252406224 329226817 853631095 224663838 724802707 564729419 907429267 371716822 745489056 798565931 264645901 329064280 435275229 992458592 941614079 627205720 910858995 35937596 854172393 969387586 759692424 688539299 377922472 779782009 330387468 953094136 938747367 895160397 839495920 852240351 763037470 888469876 833130102 946502005 624641252 880583638 708022701 622957957 980390082 948540649 980908320 998812874 754567802 332700548 678862835 922991093 976225835 398674494 28490705 772378509 734685381 831994567 568890860 650065630 388496223 918007830 974855820 953137524 640646883 988311459 145689305 715070757 735122699 496924555 746049946 934422261 960022066 441648527 784141402 348509603 79267120 973587276 921152510 521802426 196009910 267700356 673468291 203386268 357587267 877236105 878456627 98627288 389349380 826966903 238440950 945919355 854638756 720784021 952235760 780497326 785436349 839430779 769328215 767664522 924201254 613748118 127548177 551144771 921449152 941002727 741867391 849226330 968712237 838138658 897595547 688105557 770388912 289508237 958312319 395513145 861855237 880300806 965993439 882988092 895682035 218278682 601381169 982746209 963299627 874518083 95321125 934278514 789505650 981978182 834985592 606130296 882274470 497330372 473674335 716599955 562459311 691420283 981426904 131822273 929890538 906917884 210376937 564467938 199723709 982856385 490508687 865146515 941412768 981090305 326189555 636433852 316546794 30983601 19396920 810179643 895486413 142852651 343543631 570196619 188345975 782451467 388134294 611789447 885776373 45981941 511533734 930695313 540743685 330180991 280139502 332070780 831746000 739317934 873129949 893478402 480796895 270686221 921446029 99743843 340240042 215492596 833580721 831005534 931907459 572867453 781601676 910325408 951114245 214884462 758346465 553676681 737020247 487866475 923830172 746064805 800804494 57140714 543843697 846913727 831641223 904874485 375190002 441207656 170396823 676657933 922396813 523282 176247255 945504809 960712923 943277568 777512820 352459124 742105448 844379117 430589124 246581734 505119720 853406076 793232144 823091649 895130890 169745415 464363214 190705907 746738754 659590331 8907870 162702119 629443978 791341705 633093927 949095691 117506899 817032328 761798599 302864430 192332311 107480687 885433945 810792615 873390298 110328530 798541132 179903155 870470210 804488371 937990357 870215345 875776221 990583699 510556269 647762891 218233140 814413869 825862833 873305994 950592003 484811463 972219875 817363238 822659399 519219099 736146835 944943684 977653841 130574838 776205749 989625916 746568760 838541371 580123403 599930666 662465603 887166503 258099243 799505704 445196132 343989703 160304110 925498073 833133696 387540263 820163165 953925404 337668221 805813070 410806887 977758092 954395659 924493701 871438014 927819085 8981725 742872115 617734627 857754096 768058248 267990719 627449803 957565298 914077270 492611765 190452375 846364355 754557790 45942496 782346070 179399116 427633814 701112158 427856913 765893217 867219896 816473900 887813058 864173251 992521671 836536390 11910908 925425571 781500689 737020247 14253310 931536093 2890539 664802503 212545395 51478480 829940852 256623286 707615870 927712558 674701880 413498452 979630137 523332450 5277607 660913379 353954336 662913081 431741108 742461244 777855253 256624671 290235545 13732867 774150829 27027164 284297656 471933199 907974569 264234233 970752190 38221212 739458083 923952543 444485821 118002141 394927176 909182770 705940354 841984449 168544568 399686861 907450005 517269943 282066686 736010840 936597171 969782004 915833902 89012300 932721081 1740629 445493031 245057788 68657242 695803415 868843451 986578077 348057158 998796277 61980253 985401875 204186528 601216024 846317798 199155515 1084187 276119998 477677119 697181187 945962576 923955414 391782040 815464773 463370341 386952494 911772359 205738542 958426509 844538039 810561842 111614472 101081083 957365068 406666686 917125924 934927589 737020247 158357186 650907402 596366350 358363612 463974609 462135627 199871527 123449541 787755692 200499958 994546490 271851195 295260671 939723211 196655050 827483024 452241062 911907546 864361694 933667406 655921492 345789025 130369419 821979205 744665309 932303223 934683633 819159649 153211812 733923642 602796735 911541047 838851530 20270410 917407568 394319062 853664725 544070586 970937818 165600019 867767939 330514702 98467779 925859159 771324905 913159806 814125542 312180227 439236085 108939267 918154733 854569330 43064756 760438634 245765570 893606828 503306184 5330261 858152338 553718112 420282809 730822676 193281689 857696197 190873723 749257868 614118216 607530312 740476820 939944087 579723735 353206558 993718401 803044954 356494944 845107406 832016380 747542049 793885092 716764580 934215122 865471444 890425836 310927460 752659600 519221996 5852482 740577938 108469468 735945054 697638354 849299771 194113565 45022809 795248315 721847232 1857222 996088485 121911247 816401243 48755388 857491559 580964991 964219915 786222890 717825968 41588141 958853860 728000174 187953218 559050078 539223307 888915183 868329935 795070855 872821105 823121580 796213506 951277004 533391171 464097697 407480390 231963971 277274553 938904468 401814333 778872042 717117016 344364816 457698586 980090642 769599638 157186388 9524598 928456706 557393417 145222301 496065248 879439659 990932020 673466398 710882106 950075039 300987251 389823044 595572885 618985317 277280188 766553573 154346270 144166239 274807072 330430614 845446249 346950022 122954257 221636048 763826526 683146747 632914200 911244591 248149588 91159098 234403134 898172409 463488573 786801703 516096400 806913195 311037547 450303007 986987967 819826929 46978123 748082659 260804091 788923457 778655588 624976259 738377663 718432197 515942667 142237321 737020247 533010480 788746086 858769096 42227185 541957470 902143092 196079186 442973796 981413745 579404323 787143525 862915670 835236289 646257477 953135951 814444180 998963086 394276731 444674730 208198345 542045333 749794146 990220762 902128489 376714813 711885274 710647512 493508777 347412501 768018243 581167401 387236426 892570415 823140932 561041304 136742112 159212940 365559934 549291366 514966489 919410538 67305713 227169867 629693521 345948190 966454224 937241940 773899807 780284520 967581918 754564795 959313483 521825649 141671028 737646079 477401635 844669553 810772510 900616703 427397443 234351694 855376047 177253400 913768924 256723694 951351605 815574654 800660069 43579346 747452446 67022911 655538462 748041481 215159626 263070788 966564101 399676475 995326554 74155619 829921663 94165596 528919803 909718879 252869136 865431598 813562867 880508349 270116600 158644376 78682835 773622173 786892238 515886338 436140347 513491076 740999624 977113316 119230999 268222880 814307220 314484142 575156856 754265313 634514138 738939990 752690585 490343696 362267394 888091033 316116039 436373523 712947084 228822970 65891664 781998726 962424752 980258190 174383939 276131446 901577821 884551601 791090738 24204573 744783271 749048696 262946934 810189391 254668270 763250540 566801888 173395608 993396754 886163488 952386885 903255050 965618836 821545893 756842516 875132752 57024748 231789445 865441345 697115625 34089294 896407635 863718264 760416750 959151271 942595559 103514413 936472717 774602419 508435932 326638594 871523418 673112748 4443239 186120972 753436727 757194839 803282179 923308032 325288839 278036697 854048388 815918710 974881397 770522689 990888338 254703044 422131684 783813005 990011311 953921972 255222796 456551400 61246706 522794078 913579806 756662702 779784534 143459378 610296472 644281486 787501629 906078445 981109206 859995883 709797342 999823024 15493518 379182241 679151376 80688587 623160370 810542877 361210591 737836715 804238439 748366770 180577275 563265033 933489805 196810690 767635065 176176867 846469379 700452439 839484838 837399517 844827022 238963828 740588204 871794242 978324920 208805000 884497007 13891851 998514017 693441147 978140160 101186135 911132684 589173152 980290967 589398465 246093507 403671058 884924288 294819706 161649358 953745541 778523908 176752173 853837072 990060542 224757422 529876676 408367568 961442098 522534859 73663265 510167443 183328498 299839000 822428739 832438188 538774819 534126314 977915206 877617292 136407602 912778071 456130978 600187831 759822631 731721263 226987937 166238558 191324013 867468834 92205334 911447903 645645723 710232270 565620014 920160232 729038530 814605530 802747194 436503149 437557083 722037297 765310236 828010613 843932982 823023984 992291866 460964558 990801084 9282340 364628946 730513727 868284998 180536713 894387071 925948972 727853655 817878134 794559876 739565748 487893002 832573183 815326592 754521275 199146239 446014693 912050693 951729197 3757403 178597165 930490274 890657012 157620223 152171183 915214287 936771770 388136127 134113345 515962946 659998806 991325763 961402418 837326721 772260235 739739672 894272532 791548435 507396137 909964629 543206427 880345664 915732187 497454115 557879019 841173772 944520979 989254596 613329935 68196686 874290635 818964531 639381450 855691729 949617073 328242884 885191129 512239484 758352619 739595499 832403192 139493418 431316666 237219951 59246022 751639029 636215691 852052330 424703187 323545501 724233717 103934101 448387010 554109519 67393415 946462772 962214629 570864142 297987218 497508781 785383070 752449213 544889356 712356193 787300601 991196162 886446940 993093379 748685004 386080096 349307699 550076081 673939729 356991909 899423157 873717377 921838491 719169637 964850583 567801554 94701390 435016481 830872335 963119654 671285870 234015955 836402107 874859606 114921074 609564124 480566006 245974522 471230882 394531913 857995186 175750529 801087328 771641472 911037510 453358016 830022701 799583092 21327322 942440682 277793590 876749974 794679994 738641128 996312977 343944138 857397569 764200483 373437973 419021417 157678542 390684537 460620744 194687937 881773192 269866479 866918823 539531946 272994169 961504664 631230545 783978755 531025655 354178450 239511907 483767279 774059762 849384596 64506350 860595136 661449619 931059912 968424730 757431119 838016877 796222999 367572477 965760427 772373502 15611485 98470587 735918598 755637903 971209162 547006154 712320988 764039276 752237663 245710432 422109155 989275901 925798408 873157155 917831443 195872382 117736665 287961619 680723632 943878430 990832502 869541654 960126115 100811838 952502147 834428310 175068715 867645948 911179816 862130089 560894553 279698217 896535869 752912583 829194353 122446405 762575890 789135367 417385401 529023242 316134835 98117978 809211745 55760848 793853683 954731876 151101989 281921859 6950967 94551447 35391053 776289464 834160663 721571466 336502184 984558220 904305324 843308700 290659316 598434611 784865588 968569209 828629383 572028587 91613776 553674407 624071584 714713194 942660519 4292553 913890915 353664358 152293745 856595396 811288270 932842120 660070565 902272683 987444355 838231757 823980022 141672839 914150603 494051688 917661210 89999738 825430610 382781573 128161625 32928417 138569594 646763930 752604632 808592434 704573667 940664831 594778846 375986684 855417760 951124912 277493039 932959880 104778253 956464766 837786467 496311863 985935954 670731907 559257091 410869731 481125797 123902151 98221744 905127433 812435158 492628241 824043057 814918505 562764151 876839482 681812341 611866652 287732191 746306544 980650338 767844158 567137554 797804541 796335351 920696998 821714080 897939943 775961718 23893610 247075647 752634043 570556430 928871622 60183628 710798191 904863390 970664458 45498658 977053229 775259454 216383881 394769561 775642603 949333067 717399220 226824392 455147682 121630354 761035410 350695248 773972173 892076576 782684187 351325879 931719278 594699969 287106233 977759011 776793247 969267227 765860470 250942454 153782097 931092693 298700088 353345863 32763680 165733112 598363492 856241026 707815137 952189773 155309134 474497594 878799167 826894737 755655898 241400663 876475839 248482738 285765170 768472243 798756936 990223171 863778809 806012913 935163337 856584301 963602314 193454662 146041948 411245268 742514855 305050966 330101355 40117918 71314748 101547970 432234174 106926647 841851100 110192064 982741936 208470322 757094929 575453784 968632639 579716978 780200566 296651747 958581094 848477284 331696219 831774507 785528582 788261472 900107982 912555600 321706958 149701203 349873525 816157382 882982141 549590403 767599090 904692782 407905497 918813409 529779521 959825891 840911525 540116281 793651093 288087963 286171462 496978199 740486016 896341551 181680775 786614069 477859495 877457080 42262361 462174819 308150384 808185696 696434027 198654506 514919995 568290175 854781459 172797479 363393113 599490264 187065260 171510551 219495670 470280788 869189616 195786072 743872141 992073733 935839574 775726980 419557359 920523046 739433878 43951758 638423769 993762108 18480874 386431012 827336092 849182173 855186002 789123200 657390801 185083308 976150899 754997730 853873101 881229760 179706064 201181186 956028535 775904400 380072522 85239322 82406910 367197270 956369022 804333760 883840698 147527148 854919724 836055097 717282893 652896115 533267800 738001131 482127866 856462927 268269694 178574330 885914232 971166223 439621013 971126223 912465186 325115299 880893038 738672384 865977352 334786909 320939535 911928711 350189270 740500901 610306397 876342503 840750173 910713626 852602387 114784049 517812279 955180208 468274797 147971744 936122039 219907054 771072833 940333142 980030484 889431372 340883474 274928619 232344527 815701072 572372880 637763713 956815076 813440391 914544516 742113485 820196846 826183507 600733682 376699401 163182478 807169299 345163351 956196049 840723424 889344945 494460191 56798033 128573823 740886413 621076330 989840217 123014153 516677 355950722 791914747 794618280 973665056 542776085 510763211 63707182 59592150 291025432 29984799 915289889 895363449 955787236 611209293 947172094 919420370 892750762 885093745 463037947 591712345 175299721 160377763 257575252 18494915 727995535 153669265 823657577 303034677 489760166 983276328 599919304 588544162 710071735 958068917 884405843 970086740 479894297 516150751 568806776 15542819 889333796 817674225 843402949 492598045 672106376 154411013 550894784 301505554 161259502 882533203 809409183 656385744 751492662 773175579 802794941 854222963 862261161 857635732 359498009 642168018 758237819 286547894 962305039 14160837 905078467 951448343 397493939 488165969 574523705 219792515 845176434 885162591 375910710 902644614 85823226 867063395 340053019 182780889 226953880 652041869 935288158 862652181 979747881 253125032 815462691 912745070 850813722 249568002 882207886 741953211 504636308 928883776 886639203 844216739 171409112 325498549 593824982 704871483 862321523 924693245 208029124 16162174 65446689 541893175 154625232 68954375 249043637 617518966 616247564 266432682 858559802 963285667 270309849 839816972 447965820 853617623 967336426 789296766 609595776 552003239 545592135 965283403 341785469 816992738 982904858 165878906 455043643 838836491 763859031 923185489 48742639 893625526 766905222 999139362 633507823 134927956 731750217 775103202 923902961 901326035 970784667 982931364 785274459 15411794 637977477 714020714 84718798 633054188 830097428 659216964 447494589 853460723 776334169 881109039 916420920 850255874 311992928 985986808 98921259 409540539 901045631 930627832 950141123 7181819 14841660 948033072 232203649 691159078 956853465 822506103 195110087 951766671 187209594 856242725 932147363 816067525 363633959 903611757 960735933 765170788 951960187 714357631 430393750 512689894 823964976 8765815 260903065 391240054 281722069 768194382 966395313 906190947 845024426 546521041 855109332 846016686 131577302 376537625 823363496 434657850 937959461 716968292 333446617 693796345 928901043 447168277 593371150 819220352 740741501 912044390 563305553 847028817 989578442 978605152 853022595 931599840 762433784 948079122 117310507 662762721 771883719 815587173 512283519 262480225 740889662 905215684 321716629 531902877 661677437 810924702 720999079 105734866 117732986 816522659 201801016 203411971 56161086 691913036 826913676 984236973 782909220 872799637 240086556 621770770 522211395 199839315 9682662 834984125 757844094 754125687 826358556 681964234 59285032 817215809 957655961 20852399 950092222 742788463 901067454 592051768 280469327 874549816 884235484 890744997 863486968 936031514 47658507 721820302 58856471 948998907 339220223 759851546 632535130 173984391 508664880 937008233 307124674 101344177 739187300 699227864 775060212 546644225 90572378 809667344 876233904 192904365 775845606 617127297 874142753 477619823 43728357 110599506 224029210 924274953 944883049 534095255 529943208 841765791 986537838 973732486 835087048 843900841 934302567 552766636 108905743 351096293 992787445 978444436 923739441 763964859 964402599 869668849 946435395 839467585 904621485 946184931 935607304 856516230 824518855 287696834 560516338 969692858 945543879 684206911 986478952 868995336 631829859 711713920 752694696 100037333 792183872 539931185 740551222 778898080 958547034 477817686 974868719 794634832 411097628 388406630 915506203 803773324 820573129 136891006 797517936 116323141 660820315 601640410 712422707 906953345 834039795 254901075 223546825 809733307 754781627 821570620 833084214 3543959 924950199 836331413 777591854 847094314 992471876 634203479 547403579 410462677 904791115 786189216 824483422 81353073 8479262 881688254 653881091 482885587 388857798 914120698 877353594 643419383 728838134 834009160 794199739 951395564 972753350 924548252 849155503 258765947 754373287 878990106 78825547 634573721 715682555 524196616 943817532 128686133 844738344 97755121 707712463 566822497 965126601 392769066 711998884 883594083 726840911 237306915 578212698 941135002 245211761 335262614 778699652 926642018 257286704 971556033 879325224 815459104 535410896 325746739 597412844 762972302 572049383 834183215 257151198 425465411 461218837 309373210 975240267 369138297 177044671 862764490 456457694 777123381 753746316 969815614 698961204 938120105 763243864 404414879 597093867 702265298 496007930 626605121 488474003 772793300 336158539 971728046 998134781 760851670 150061576 719140283 796886743 648837682 880644486 113056198 880726291 870462008 97019712 982705087 563356132 962159721 940735202 759148585 706733541 498322558 250340678 131119071 759048896 859384631 782580112 836313737 964408882 808163024 508729138 519874662 384383190 913862604 376282614 881798457 636511423 488374017 852070337 757381202 763973278 836453986 228447074 24421254 941534619 858039799 857870971 929357792 966251161 829970801 817811429 692803079 72362274 771493104 395152264 782893442 743149453 651748119 854821882 851862119 448834914 906084989 911449928 450921304 959792960 743767038 933133369 855821698 775138882 29586317 159905298 814240450 811641620 782519350 805620655 612493183 774848188 375238143 827252537 945075836 744265528 906079636 145069521 301254331 993359029 959612448 671443850 819210058 195023829 484194709 734155641 245361933 998646141 906531750 833161523 224758183 687240588 176359312 151875392 993022826 845873045 517720959 417033354 840573143 272464661 231309431 977672985 77567944 829619675 200291350 742851863 983992619 128333040 139958548 361045150 281002331 861495695 986781272 296426533 984249411 297338779 444121553 934378976 316081362 325308141 417100690 763835966 860193597 770552210 849546174 940757368 806535058 302690789 865272533 782463118 273202411 868814310 20983311 897537133 543022616 619380635 888876515 317101392 746992018 398134660 791396124 976759036 746652906 30748578 238349488 835270846 333937641 578223921 150010 768027017 737020247 313193608 709569114 332427515 787885816 817954568 365748299 65328722 503211672 693613224 970977986 407434905 834490380 750400011 224220145 957336986 619536971 652372685 398712143 677097582 572196681 883606819 935472990 750668965 802282439 362743932 864107724 985849543 220053913 688312834 903708235 777025837 302605073 840642373 885184192 789898868 648551669 738289453 934693764 360966038 596127989 751221382 649824608 728268806 487730144 230228924 738357804 219445515 880363300 275863448 922299279 719331897 858083125 736750973 902885950 377660297 993335494 291478408 984581325 873816905 827766144 632703038 272295018 11920675 896251942 748372254 4632194 17228875 805721718 941668119 334232596 929003858 22205139 972208719 61416654 13736979 984536106 894510500 885901044 243409503 885814971 438993326 768300559 752608010 836437875 877368107 596982889 920868599 313271624 684881473 23980331 849774010 661228459 864934162 273462115 235660624 843398265 212325114 92653917 753809022 996135153 89512867 229801734 759621137 487674564 160982610 635604450 111401078 420746064 843285569 767801396 713350407 800193146 617112703 984796824 820362708 621121455 756676123 907480155 513293848 193581486 778331678 921610710 744733505 802602465 440231458 110551240 321206822 53454753 788526681 795626234 754821683 956191312 364578830 581575379 11035367 185600907 365707247 868804327 854185909 961330029 544434097 834971104 963822922 181761 460378247 53770380 573153050 906876879 532601000 749388726 387548104 318300367 756676707 752830621 805665076 857244448 737799283 865608346 913276768 401066725 386837576 742458973 986887939 384188604 462594095 898034943 993531364 29473521 155000430 373617413 173098663 823385515 564997872 296474602 864369532 916081034 99938493 792662658 224334224 125587457 364372743 269013353 960548520 910185813 965538853 785270936 986912046 955659887 489450791 323423067 813001500 493620287 452925869 244384051 503730355 898482213 562721586 836635111 989793063 500975873 773618243 919461653 806061065 669361826 984165203 525799879 984815325 306526217 866823407 45051082 141917332 522554962 738971864 164001359 818861326 706155343 319412206 200022608 998806852 805402396 645506779 120715731 928228314 885784191 841974545 208515304 344404452 709326573 643555162 834094350 441974924 90551541 898448332 770537267 202048569 849087974 451283337 743754698 896675494 999628743 353383377 978672929 916359542 362868029 685737423 907820152 70073762 675049299 794969135 14464515 917107161 379727598 625819363 88696247 756084497 974661360 767633599 956967823 767270005 904844289 777409760 813871727 876934061 877639939 456141592 893834758 99558556 602449761 348695027 537688607 138958093 995789589 882250376 5182208 923297306 30914480 741621031 185160218 967194052 536914960 2618976 100114318 979069538 725561151 745604085 491817932 799801649 737020247 600578373 973297544 637577787 828911391 358797764 916055708 105285421 786547855 991925742 770907648 649218851 398576304 303077077 534391168 497591509 689649017 817153854 254376864 154121926 959965644 429858314 880245898 846783507 975338142 950291548 10105896 236138306 858570351 642371376 253774613 426113545 991728476 238032904 740772765 447557801 733989877 688762048 372106217 630786082 14632766 911821621 759399215 756124246 879936096 855547092 794389043 910124190 189837249 939757311 454053281 59794187 985307915 923118652 813472232 797695214 983651245 920477268 895915588 245011966 463192493 882495856 882180947 832627217 530272688 324364737 824272950 541507718 800788128 738535970 791112391 448575553 124613294 987172657 73569494 826684619 784541939 915736295 843985120 423661426 700102695 115017333 695870057 582451907 670367055 689408364 752553523 467030586 701142530 964185354 818082262 307601868 881582858 958190350 806955458 860973046 255879874 965243946 764654974 449599086 679276174 689256038 581202769 767068554 902672301 909553671 346367969 896917055 743843163 662572593 921538570 729401003 211274425 29892512 924024093 702956298 57931104 954383488 140300212 724636803 456521347 33305474 971766542 3435876 503676791 864601317 689830639 588929390 175989069 677292444 861366332 44432774 307017296 20020680 855907394 660226345 769204635 582832517 257131550 954528351 334738870 760711600 333048102 880226779 959463941 201917134 378475320 761787185 737020247 440995182 826297319 144445777 845282976 926913116 986622700 202151278 424796830 457049946 520088781 711365409 983604652 544793761 230101534 865918949 233354516 637124796 678176640 353954445 934416250 589898186 800651272 846082876 555876198 547536638 951702428 492135976 347169793 448601564 976220831 940291006 926379239 958515749 915430863 945608158 965355324 23709701 256738557 149242382 888315887 742690601 740967757 853415428 939094069 893639954 978195845 43457805 530506121 708288099 897073636 835858810 250650436 807075307 927383976 174391146 346819257 753653602 550060410 739029682 133746410 751089372 839784067 853461521 76822657 362803484 243408865 955854282 159401850 210035070 761500247 174080298 692729367 654581841 970627317 710162069 848013185 492523023 813859177 538416610 288204028 834540541 736061134 881933524 244576052 852404283 706771189 897069171 208444590 685686138 883889053 418443485 207302176 344010545 425877418 329936823 800247867 158679787 753595444 255604604 730676475 314047205 504423955 611019262 49216803 68406328 512406212 938091196 254682387 335346707 363952740 347981041 893219704 916381608 41765638 933152929 519649438 611626392 842328808 266025010 924274115 941053941 761706794 855942731 793537646 925523600 749455106 173889227 789645375 857145823 430410471 455154413 115255485 453610322 697603125 225204415 397908221 693435353 560234219 594884970 218535487 83047947 494617875 271749721 728834692 922108418 964141087 17495249 937940117 945384164 754073239 868626935 659967295 152117937 909231163 120282326 410988113 864305372 226349194 712372375 992654778 900993140 731579312 967433900 816711124 999737345 229205636 568606193 878689243 782541717 441006228 461417832 528889103 745334046 786664194 868160026 375580722 952429499 487781890 426727053 990728108 755249112 443136399 213580662 890654824 109102759 551234233 368952670 639272552 366420385 979039809 860294812 507438810 779265258 533825687 811283784 981830323 746188723 939545304 76730153 935541058 988237108 713301620 838632405 599664241 377631438 964840144 925572319 770865978 335533441 774735148 62362928 258006873 922430537 617718247 475311458 372809638 608054216 965635304 409172477 91137738 834330109 134936259 936475168 477222489 846095836 962201314 912059737 17816890 938582721 834722912 753820275 938112378 635384719 49021253 760340582 957610154 992685142 931118465 887940030 823917384 981849926 956379251 227513496 602702411 861573019 700826521 512893815 228095051 600497281 744829015 959225656 936852467 77128330 287920627 740600391 831401896 227393179 951712262 160858532 339562558 826216377 996347902 893247528 831341013 970629785 537126445 757913180 940079348 834571081 965939251 166414866 633409057 271008740 378295396 951903339 167576342 572708146 623091452 949757258 219274675 759221384 6098095 864639883 837089050 739928369 936720621 878334370 827414216 726829150 472356805 3752530 213649979 219053288 912640151 759544257 934319398 73605634 449809998 510316170 346160754 726816110 832275338 803383563 70476742 6299291 957451188 48681988 832044097 890463068 981643802 745826034 729446812 967377749 313075502 870844517 109709788 512142046 25949733 850173674 780996694 6942958 743657066 6538278 942533770 775581581 399932830 742776553 485468675 294737638 116968382 534380073 495321559 96079292 252700656 286044117 924501719 546798275 786934170 398768342 861695069 758673223 160545024 847868369 21515047 956181683 575392260 767207430 466942259 41502838 834172596 966318656 906212530 817587958 964407375 650323833 816791366 975047864 798518767 914859834 290471654 621952686 660640920 472056143 517850347 344218738 759988104 905005403 754189884 295150459 892427389 456434217 886188097 251052417 916114024 670778703 640203927 860189605 566525982 465372902 681847703 424028798 452489865 984296725 893794778 971456457 299885539 945586405 994444854 348744615 553071959 981814928 814220435 851781434 737563363 618654269 981682322 878072143 172811898 824042480 678030145 340922894 834590010 493725866 123765546 882277407 949608073 835219372 850732717 799116482 793904650 846906237 848497416 287928438 586757160 244637800 32545762 308433615 949325787 637598473 903431908 831134231 581300082 269669442 967838933 848832433 394258451 97242855 675185787 161268639 859300097 519600208 755461126 973571497 414041550 885008315 265830558 903196431 809085587 851360103 446380854 124220739 945164683 171499060 211947918 962220767 674639106 904168904 115921641 771226829 907255145 538828584 874112174 729285973 177367388 452524068 808993613 548355227 924544783 779002321 955828887 624639858 654193887 35523690 44197127 247581987 805868353 480434057 292211702 947094805 836746341 896053734 325311492 775672096 215304715 768952843 650264098 816426287 532310015 778510041 879547933 694728235 763920061 791842291 569851082 846764239 886550139 768756802 737020247 944667899 407077285 192747396 740701560 167695812 874379989 316036810 585079136 95081139 63863056 892651148 797329570 657509355 947838476 77506316 994121227 987710530 878269486 338090198 919844460 974288552 913854588 787706615 759711081 978412812 802181679 744531440 741271040 515882255 202254232 987078371 987574783 511741917 845887226 365070157 806107637 398475217 973966007 74986594 369953004 236263924 638443692 971642330 770066357 622976326 388959667 604095337 694771968 570194448 615541209 633063809 778871785 851393266 39553927 851890312 849300983 842309968 196233606 730255506 354632967 112580647 485149541 985091966 919928210 942444404 837104435 225707030 835987443 836244621 854664661 366367619 229471609 993046084 378248085 358515316 923583424 823840822 740416229 778143327 233039270 524017197 776677189 475327259 474884584 894728007 487611222 41282987 907791238 743046484 366924673 450627523 360874379 230211839 560277373 715780201 977591851 856099055 121068915 958631289 928398544 975452155 544947537 451907731 982110930 986721565 776233130 378279395 774819697 150507396 671499500 2424354 867193121 857240176 800696339 906663075 847453090 833485445 190876616 48173745 129247435 121967171 750390159 927925014 917292444 471904745 487150653 777226842 700329825 82307529 485271461 204506004 956466837 861461638 148264159 968835998 518864010 929140296 510810381 829865253 885686967 905337248 456002845 686371615 361801922 477839394 949795677 221297168 970415226 974116031 737020247 951987353 300664888 956167282 733774446 506654937 886803210 146265509 100744814 294493844 956027827 609401562 802719309 124114287 32770886 989658403 90300118 555786379 795478768 171067238 409825654 992754411 933016471 749586308 943915678 181631481 951812612 997461334 521996226 544427247 839365375 139899704 535990901 671267362 398361167 351636710 678616851 809908356 798799192 900472614 551196455 559488129 317134477 892808044 301572305 802298776 809530786 760155146 894556574 512224884 924230093 207427646 737688948 77918924 831565097 687571219 377965455 236254990 684870743 858563781 729103849 877774302 464250919 516587733 263751670 967231273 723892769 942937798 262939321 673640282 804753503 446505969 477893467 285696998 424945209 193735507 251234181 820765199 513728674 990196173 765562781 925740134 786168960 537791302 943206100 4672029 141509955 731576897 863788506 359146546 662688194 806102612 900040412 114352025 385610177 972191711 679668293 857954861 353236318 787031626 455594869 173786406 932161320 379013392 801352678 546562970 211030885 487257932 86085343 810470953 320665248 562897587 350102084 997642646 605041095 407129368 17129733 326514292 934946640 803667708 843866909 862214892 914944897 838711546 988345033 858168293 964360685 801681088 747616932 428290090 197881617 514269380 446085029 358462031 933913990 37312988 101849253 445758709 532367175 318242597 743356871 40197487 747263625 891701877 194031171 893991018 881702230 252506690 61577726 938558622 630478370 929159482 937717152 323342304 500992072 294029382 426643826 394385505 856761166 478576516 829548440 946061792 69931425 480586098 937178990 928126985 849686509 845544909 776038861 727024122 285665630 975514073 581213744 842984911 912102504 766372245 874872054 993280610 218261670 328274927 980733800 340975097 500621427 802476730 883999339 752897520 558981408 220107541 454095469 167239194 599626286 743460667 636309267 401456905 790445233 548386284 434243954 144980069 63728027 98717332 764429005 977973560 475319388 557433272 998332031 19673136 188320620 736301687 22327440 175726978 266870837 943248865 208795943 343685770 537715717 517267149 790512012 277540472 650852690 825149331 345980071 960006425 769001346 682718904 855458102 660303825 481422234 522765190 920899420 967857685 532682678 309349579 967726933 258957158 241438960 840849479 744716372 744868145 658268755 843054454 332404985 196141273 838927817 32971946 924216309 948992001 113058069 434850387 435898608 866785843 81055631 953348168 909819664 711409138 969977436 152446910 577691433 49324390 946569886 716754269 588258335 982895819 350792161 899503959 421441877 867276469 307002378 834008841 365107191 867496470 940036395 692538172 560498048 614773460 906109220 69423377 26670141 891899013 738350744 936728498 106882702 861718902 912317534 956209091 620750257 363087826 937000918 883070901 483703890 385914449 41899578 994493223 243825562 797648685 541291321 62035353 742422850 471394747 807224889 141218355 168834987 189826815 283069174 555568574 161100414 604483109 416236148 663036281 283063490 854320782 928073668 766956502 60241337 282779760 438480718 871467239 680438523 944236679 194777325 1413363 717003390 89266993 576174631 484098660 429329894 863963234 161736043 926137090 870285639 821923503 824789101 146488872 863501014 617162986 995009736 654889811 79298957 841463227 583721701 810904887 897968695 638710833 396570438 870894559 873645116 827712372 694916174 858668087 915531719 230275513 290721321 419569457 310864724 750505760 766916134 908097236 285186649 964909072 761938045 253158734 806437984 438535643 71814347 768998826 837469009 801221609 516309473 76682359 393684475 150881669 228081129 487272801 965989222 451490479 565834375 496482738 805746760 738678376 88786897 805460326 995225825 391809326 88542861 629232422 566361618 348043590 286364065 570926093 322373444 811134649 909875573 817155262 830121221 66223736 875477802 585130910 747737537 604479621 988816269 938745119 949362529 875867767 851126027 288620847 806132262 793251123 866340404 99781038 251709663 663412450 653605817 298195798 901954916 569486477 80524536 964873064 152044674 134748137 40311146 904521144 315268365 267634170 224058459 934937522 967766640 943663550 519700001 572232775 224248765 855443457 687188942 947435016 847707867 950633823 207175762 787808537 364932387 941473985 744300208 469583131 889099516 261272674 293055376 799525915 899573584 738220297 817741734 776680564 863002790 896738483 51942116 196134567 301896309 377324657 999414957 40650838 316673924 289321679 408422449 911131105 915665537 992474865 739135312 849754133 840706492 737315696 231682227 645250292 834875358 368348767 829525608 954558782 502167169 329671913 339192062 109931046 303730589 871329619 774411600 100926860 406787492 885784837 769064784 941393998 21883479 605295318 764909950 382004914 895652255 435102553 867627822 830554468 237878397 521494828 878478619 659526632 700973702 822970723 996903578 517904108 230340658 99364288 926122308 821959950 444197926 671723832 433097116 851520028 831699271 52270635 374251001 384392271 417134634 152370954 511841339 237240038 760866632 439447132 754876753 949833326 782215124 270941752 836377667 894251805 786697965 756975059 587512650 140528780 903005589 829769875 54469983 244278778 883344510 868333941 403215773 790755182 952778436 643616144 479964057 26406626 912244761 944941461 865487039 950636586 915487996 512835403 982763014 781869577 625328233 496155124 209215948 776236417 915065573 909748525 179838260 154962128 923114394 807768320 841060789 844941549 784529834 996373885 921199958 914486823 809568670 423455319 115120036 846665302 748511335 568771656 766041132 516768152 740724728 326099241 909582785 737020247 612638499 316008879 864029265 818671302 862116820 949955326 875156530 594927046 77919329 759546354 365341926 455148301 846040798 928243713 316187185 147008968 758423896 881767124 829608030 755075731 595366895 153408033 856781201 42482188 889521944 854871993 139309642 455537470 561825148 933246768 189470608 338176334 315443056 168372500 581598451 852159364 895895283 233426868 832980218 860830813 554060080 128546574 397901763 945956595 452335085 536899081 624166243 231762624 14434400 797320278 83447111 338997021 505190169 796688024 243042390 172537400 151523687 111024858 450813890 894641014 762618111 364799479 986967176 627119375 593610902 293680584 986374361 26355685 125812754 819438412 988830933 989306027 978426535 400199475 881608724 533358056 767900230 247449704 924286047 879720837 508459524 374023664 480482348 695867356 873521696 930717731 622903306 747654613 532830226 968420836 919428990 426395032 982702077 828749870 592090000 737020247 585777850 647024796 103591456 12489721 862403207 952638776 935465583 151160904 850773739 178696090 759124382 984693871 962709250 994952267 963237513 965361472 464400694 54355813 999718950 411640346 508552983 794898872 861861394 771283527 909733461 622708226 148377581 556174851 496142137 758353239 433886604 968435713 809048836 396523812 863960947 983215221 742018119 562654002 70350939 743080581 388779552 913007733 313760164 994689563 767471935 876122057 313204213 191213035 604745849 235849334 169164174 766952245 431552450 590062015 43022320 990614153 564459910 783057094 267673981 89083954 101701202 108391261 922295915 332672315 762681024 901154895 175931067 982215581 862454246 376043412 914909882 998577166 824333407 878817454 375305447 653984985 508056439 99308838 458041736 662589951 257844060 132207213 770921667 431102778 886773014 799339673 958479655 980851150 259751226 764366059 759862981 385946169 828139861 889670854 933582276 842632637 813615465 886880659 990452234 699050306 953910468 772407261 713849117 944828296 772281251 905131209 725570791 651641811 559039041 311303021 849250346 929396158 761754075 829490812 352722603 862617631 531426052 148900852 592084886 494617147 967255436 849449368 922516226 437840842 669619177 577147581 888464130 809293956 370091938 821572129 297012419 993182028 273900549 774411702 728376380 857011289 42645143 740412137 881894761 451858793 354646748 520522469 861508729 802328814 919558121 905412724 972821389 424294181 440746551 785176446 514663519 393708445 789403591 117823445 776763452 964263703 765298085 485233925 797523877 686496191 411343439 827514101 873465987 123907066 744454092 853119175 377023508 782430744 844187379 787400616 22501192 85715080 94790698 592359415 877724562 752118758 750318094 913133889 786975859 882230473 995722169 702883110 150000982 959568264 889950439 964066562 779667723 833656581 983729040 728040947 314478844 988865840 902162469 616497827 808471594 909745363 973667972 816419213 898789069 737692883 958379051 923432991 615722660 808818633 631592297 255050371 889747639 807853710 770279033 535930760 730084297 7691106 554701553 909383254 902342550 978737458 916942648 993055381 871503961 908467319 920337685 33438653 783905661 909919497 123275236 493894743 238956294 775920785 889551771 807345124 555875749 900164114 946467153 924051657 61534645 823807475 917932327 802087567 998028546 360993378 461584072 375818979 915748662 15122139 154384729 927998172 992698234 547918599 843132578 936208308 819437590 640319577 839935772 477142137 965873588 655013548 816509295 254900921 827951071 205831380 330872853 799009260 661861325 804881342 925945512 845031678 759430918 752938161 824969533 584281988 202133272 908107583 46126324 121214965 902383112 494508822 420245479 666749050 793221206 203335245 696490601 778211718 789327434 844684155 138814855 895417558 518115918 746382634 236964914 68005407 250879767 800121686 931637658 807119766 804354494 653016235 839692878 961216771 68655956 735883399 743012647 955924089 514823416 357693650 823960470 317544034 779392717 781194748 888147031 371383438 885465552 326306322 82176600 519199827 982520919 968158730 798305451 857107766 957608535 995847071 914249567 481070545 263827099 209128745 997051203 853292555 690586268 852570273 401883633 6573789 792193756 871251978 300454699 877392727 332667308 799034363 577571099 702199986 866100204 352484369 386607310 305189647 117731353 738876923 819579603 738958516 458206453 910532202 243671454 2791721 785578371 883917982 279526059 180086122 817173012 899752559 835626085 129821821 164763345 971572699 290083712 374289262 745233890 314815408 552670432 232858431 474047459 525093437 814900657 974896660 818527941 936693520 243870583 862796662 825575660 585758855 328583352 753005298 943237086 924230528 635138071 666757715 131723796 52956278 773451122 572079408 959680093 805224878 910935146 382571701 290093589 873122956 375163190 600881357 307063348 541059022 878530327 267032143 534659460 716289765 230864595 695180596 958212522 939070354 818450818 948331581 616299085 531448952 806073602 267866318 176650240 157161177 392145126 985980381 851807770 876205644 901067618 879453483 914531886 678164794 803919481 841575482 30215804 495210661 925953215 914936747 771854212 247870844 881925915 820961470 766385874 348184848 438703904 411204726 927087103 831172570 765278928 250959264 81687572 769666688 900485683 909658307 737020247 511616600 675276580 389714069 742522821 827006620 994462836 967223412 140639786 707746829 251594180 429350983 999935064 893890096 872973614 422672760 82880570 747701531 894223575 816388457 134158306 354745436 129370274 520784901 737421445 547184458 780030107 751772006 580724255 842000806 524728080 717331005 299711281 873523713 928644723 444484775 910605534 782151002 659949895 748942021 863317451 421230784 909540813 296149705 625154069 28384513 737020247 307530621 786588024 737208671 459062106 792972929 226972672 599327591 604597934 448717369 434694139 652092653 90197907 974867798 343392354 563006386 141511121 140636226 283425228 360331419 802523543 455497519 864742396 344303311 116827629 466501539 804018823 63604179 274803853 924737099 100259663 887873887 184196439 393784411 526130126 747119418 940455784 227989421 919410542 60693896 894295189 528323079 819799498 489382500 839369726 137705591 589192658 976544307 322516742 701762918 568114001 846173758 589601595 373931013 826069333 13592452 578584034 74930745 47773056 862886009 902892838 954688668 916099128 439237101 682695690 899565303 199131045 213344891 892211956 204515252 810160089 579521871 703688111 379134035 483937754 989026426 770949533 875320966 136707343 834549790 755060971 475716096 580683605 956968955 805688125 23884235 54604932 71689956 936037533 756611657 207917374 765588711 779269818 78897505 223211230 935401350 917407735 795907390 559199228 232545549 123638590 616940902 919250668 773861442 936548258 885044981 882701000 664939101 597274059 943865890 696203702 937994258 954869545 737574010 661986469 805217881 117617055 851770528 779251395 788462618 878871074 760896924 939233997 848106943 843771950 120544372 927711977 896147120 710027801 747826825 867390477 991349915 55558454 376987632 53062770 740359842 272241621 794464068 274437894 778272268 742512459 916887946 622039398 240293729 747280748 827679693 211413056 950989532 847618625 399666859 76167930 719055317 747429318 171037094 777501128 59724881 980075157 872949930 960227992 33491686 896638488 115540435 480706099 826892915 561394598 925616073 520178829 956749687 841323220 206703789 334157112 152479493 273821944 130444055 989296460 807579833 388706642 51728823 707062821 272671083 654352505 953604218 976624252 773362575 36038826 220771909 876650207 367763286 687230965 198436638 826446291 908753782 157535232 956607214 115762620 895093314 876869319 57303012 921823616 978958108 524172239 572899471 829963924 864178872 975222684 12828168 906172923 926382455 341547413 203448801 21840679 811532954 32284727 773431013 919402349 443779687 475063328 491916720 461205811 977518849 247346185 978541798 987233290 954293073 482088957 896174747 994189978 107247321 784142074 116920878 401239500 737020247 890353089 202050870 976977656 876729980 425701457 751246616 486954794 807417666 846320453 598999850 50930775 124161321 685243265 85587106 430019021 971716869 809518279 838918622 872240012 680184710 135061874 684927068 34767074 939542088 462325581 892823552 883371754 268658501 920549520 814191205 805584530 393762149 955074899 326774148 588406881 460567054 738066184 79117792 965944112 858451363 416609817 424748199 916272760 649428717 796744053 96038521 963081308 597915739 535870830 930848940 813379594 518337838 751711491 458650205 765564157 847979487 257539262 714974384 785662147 865437535 411379140 95368567 957554170 500415259 936992148 481259904 972471419 544299977 219179614 931941288 334834705 966676901 753666031 900457919 971945641 875566325 105829293 65415908 159292020 872064394 909596542 177588141 727091125 875482573 683244954 760570839 400580225 880486937 638833788 761740785 876861026 208518395 913942188 810334036 181751434 830574526 225248467 801418992 627150844 583350084 818164161 788586610 739482620 375113828 345546316 996865749 519762424 932387909 122836743 340432687 71310788 965983590 881039034 759865502 826737573 261693113 874200541 445977562 22474598 946445981 571706017 883283982 931064242 622094039 576489911 899118957 567370556 768216915 38301501 619388730 466757542 738183183 530328549 91266473 438721822 664336203 719584658 432583851 637088390 873612198 936984299 149061566 930742825 231189397 738156125 984596764 514207814 471032784 865722723 374558645 815931697 897409302 571893336 874120909 800466939 834894232 641110519 624261205 749221623 281674851 179592785 938506612 448318693 979780458 789676546 482930709 980312463 706376387 168179706 738434569 788397827 903600455 220936243 97797819 9538236 907335682 951134352 809218768 953628913 995910395 27174214 849911907 220139577 752384991 583695107 980828369 916156113 484232304 959799974 853608845 704677046 782738579 807008013 824354523 949163571 897243941 899313451 933058111 328357685 90059559 887339254 243014393 875396036 483659088 625625816 814188095 970535349 899424483 787981445 684975970 766427590 823424185 463097540 747528666 155853620 900791182 395228796 858018752 805492599 811260566 835528362 359696632 743265459 880735952 471322523 954207821 391764568 112953859 743496693 549650785 838766583 936809624 91719160 68234609 737020247 972631812 841014246 366194287 163909630 71482023 983475001 182337354 386285893 976539945 751992061 196525149 989158573 198700555 851083744 667920112 952492213 822266087 432108925 908513612 894310848 616777450 208659565 872593708 195572321 166374042 515778056 599589973 593381016 98874509 108805963 88735357 737538617 948143774 136840507 660145615 461548855 824140376 456738825 890544517 751733937 15764781 215475364 9564553 898038643 867058172 831189156 942818017 734723646 980788033 438275518 653796596 604294824 791358904 72697936 109791504 527580484 937588606 924353805 438913619 952951950 812940475 905327576 899912749 976043280 115426422 725722045 331401125 728206377 798504704 105004489 625187380 538982620 862620611 488610716 885652599 853479427 713785424 784512702 811533899 893608247 885133015 840280053 794722321 814307964 976553007 797377081 28539830 832185924 722323458 335541604 939071283 154606022 607362 799058163 478895947 949313057 419858447 280223303 929859189 957102730 136254643 807087019 558757406 691881531 766418132 764621346 876813839 116319856 983365792 835485940 881071295 130104512 933268922 814315435 989877945 997435759 958727455 445813300 816024061 764416152 982807046 59499092 746733361 755272240 872547370 224597837 988760671 896200867 739960498 838803202 820063903 907566616 629979409 278731487 936100645 872401088 780325478 690606471 468771555 746235194 758721259 558060889 580652142 859815766 848696872 534880535 220382889 898530299 810813703 966445482 456488797 643994916 984843756 587541224 873023280 996571249 897106660 438088415 827933492 997992564 260286427 843204154 832568119 787874412 506229373 856651105 877178617 906877491 108868146 792721464 411205987 763708481 590489861 16641904 569172353 401440228 954533504 421150962 906889655 791650963 317625991 969854957 438955953 928689201 863946097 425397516 822010959 775428930 886143275 990595783 40309760 810764373 689072309 794777624 269371296 483709487 877099838 636734208 288420280 45821183 852414181 814615187 900008629 467866869 567482642 797086933 796258294 202612341 967884444 431455510 992699643 926254665 336748936 145237328 825683615 919231293 560799620 974118362 175734866 462392164 156451556 786501068 512349583 798368707 73816890 808146997 56370602 991634269 965665726 907389756 708656243 744036655 106519134 18020083 816408887 573974442 9137878 966655198 754689984 804726839 25592098 992166564 814239214 715007412 841912160 793454815 901802159 308067972 903570583 985139893 678719138 750783848 761405006 352539912 931592571 970912689 113898241 763806346 749551897 989475269 591613797 602410502 701568636 827656459 720339969 768558940 943061682 842118659 352534267 222354434 968240997 392714094 943900031 369458954 859747530 792111633 791089234 910443972 582393772 941769910 349550098 251293418 772783225 744926459 528932890 460498458 777825338 955477145 514799253 947638176 689216606 980391082 960640295 805252007 447190332 933493021 792393188 723319055 85496735 794736371 142901582 238975119 163676316 574874305 31280883 96684252 163699223 572025213 909059393 145520097 327774395 954666353 654311163 782874157 641836056 979014923 969764081 940599369 298467286 266859275 955934574 702504656 918137404 272733071 818376212 327769552 339329848 960583067 303479039 875252757 857770771 140397309 972127823 922745776 971651053 268107124 917085738 961686062 180065748 139630548 759054067 730433857 782691178 904648586 591877483 96525474 952201352 844283561 901567980 402414399 327713496 649116480 893686334 939201655 748422095 39699137 968903102 56315725 810417877 957761905 721533537 895550575 568295601 839603619 102417049 586937661 155004172 799360755 309932915 928289147 929765528 808257250 938992852 235967363 930427374 883558521 926780562 141278622 227061561 815512909 535098919 531748283 629766802 934959883 803005839 654086378 823613287 879552964 477198887 926390561 798136327 759480335 453936040 609690382 354779608 28578423 870416055 845145608 128860864 992731648 741405007 176465576 305562238 438601368 941355361 997338467 863715440 179906286 831820080 109083363 760844047 106146059 946372850 795268648 648533969 851543528 811978584 844552858 204678790 876830106 789354859 913226968 998605922 892986113 346619638 545092929 940588457 845006627 936276636 344732938 36526808 84270593 128894115 954816485 817503255 884150005 740086090 798863541 877904902 837657776 168652165 797255063 775192627 871714596 748779785 675479647 805058416 734282280 138518210 236834144 798869129 323842068 816112078 919827069 876046767 164835235 94563738 990022746 554447911 969464196 603961071 897248085 9790421 29811357 835391521 907372874 964074570 905663706 716888766 765144403 244084361 739861262 864027296 390462590 952768698 884485108 404782505 601767386 821324948 762459249 315032525 889567043 261677956 378402339 989227011 994803520 906017435 629314057 113007939 783783961 796850951 786983796 948955956 485126532 92326455 29205530 790124049 528344033 6780631 922100255 466313830 953107213 586751664 885496324 986080618 940778162 672742890 486007671 836598671 748060528 93152478 802804375 15279425 953512134 738316579 727310562 668880925 48037770 863983081 772050918 625692438 455010225 768354343 137235995 604259054 34783669 416125927 836050498 711532504 971515634 793828073 737167194 878768616 844706473 387452525 452025951 233828292 780621286 758668577 98550692 914525149 491984214 30499141 45770987 533241159 668643582 737555987 571576773 759064504 364872888 851470344 979041577 906912397 199329444 914665532 256475381 871535882 532446259 428684134 581109083 821082076 78787510 584000843 118795832 551403888 242955908 672883964 785650026 160755150 275498553 865779107 737924926 88435136 138463320 965109381 259632507 966473099 686117149 950419289 225145582 775837857 719075672 389652442 88965283 960823947 940754059 850456447 52211145 981245757 716628402 816836552 114700114 248202376 441611364 897485925 834793260 411135474 264407942 494514362 987880028 935984928 639208160 722449656 941870612 316403544 772491339 767369780 41603790 734188365 963491283 888053280 854697305 859128196 920913374 947664582 733504919 937568590 558224939 841006119 880758765 966843096 78099069 489143445 763882645 197233359 783060925 4644572 934849478 744797647 377273672 724327442 961529481 883881665 544403890 779545158 851815216 834894696 924151652 919085889 641423480 894210654 965777971 69255167 193802135 704107840 639048608 940530059 332381384 280497178 371296066 412113289 598008279 878800811 280564399 82245027 404600588 787061793 346889201 595395357 877155074 794799403 986172263 578733384 993771948 856289965 420533820 924960822 946242939 164082668 433537762 843614708 810025701 356870943 378962239 810420884 629694324 896311295 30166 12852071 876328316 157585914 744530281 811268233 778323596 839207749 629629181 835398550 121879823 825139111 445964423 896719341 967817223 778077670 843966202 604153092 880076428 631843323 715695151 353578407 957211340 659500660 854495690 12842609 745881211 560938754 665256805 764285876 43698209 491072969 400603540 841660225 337292745 252306351 416271182 730145799 578049484 644227403 922754046 179794653 833312793 48366075 52280027 628569230 768457423 115808404 777044775 780386430 993595991 846044742 517112587 800601728 793867129 905889096 478960613 668096867 193121072 818995870 918110250 84377933 595063372 488380327 955310432 855592606 938729596 917148202 232418156 119455280 390453511 930535465 256568699 971264458 972963176 316565838 775218190 742803322 822191767 992994427 904764309 944682407 972903990 951141980 851797219 648361778 212021580 2076106 668655815 982758894 12242647 859437679 431765227 508880350 609823464 757249724 664466233 795942112 743505095 772685431 867478794 81457393 717510394 298487644 839734723 441534427 248057262 800657869 191429645 616114138 713411720 846678555 875859935 559791323 933111971 949523680 219817549 998605213 768047844 988466061 138106990 86099293 934060743 756894516 633700500 861382913 86091733 785480572 799369334 746650175 919596399 287025444 877343191 792585915 331675453 878960076 996847603 986507466 618613331 123121051 278748695 480063991 897043690 999601463 799430382 930574370 441994352 192472497 806521116 868959322 517496753 219877014 895382837 781791411 931281905 55439114 703075463 759526443 998558119 749121188 856854181 900097058 909381187 846428694 807169584 955894829 241150080 62245561 971112554 820795267 846661629 804587847 751721894 853274889 945166817 518211434 766557519 248610243 111570628 171186608 728615886 897817257 796075365 163258235 831123044 932447005 248409884 465888774 216549783 889671750 818608940 74901286 565716212 859298837 837762913 740722644 830251234 988018860 758844590 982248558 834373484 935274664 121335691 994699738 796191921 905012584 995733788 352814343 227365761 880507309 715487636 447019627 860938647 946940300 247021757 895157176 823598062 425162737 995235723 367690217 788980530 970123254 947298436 744972888 843885009 270550048 271473885 923194245 846097842 407965481 840544883 3427565 959255337 72905728 998482941 171506118 196475634 452790549 493871369 980807868 29293779 57492481 923400909 472900801 590426389 964514238 864810038 824787804 749728587 397125709 816305999 883602589 973724515 117606153 838380959 805959524 506890596 525289966 290380096 897423230 944888317 320692084 528076994 901438240 861966536 62595079 154052726 5901875 764212533 202632799 351844579 810203017 202454541 282459065 962072585 110848627 171771340 737020247 767563063 386396450 868824543 275974605 763820338 158980417 896765968 796706569 796814939 302655883 607424065 70337583 769842184 517347503 311708041 375537991 14322025 584298167 214416053 439842826 232084354 584260322 818071774 772735848 453309127 995701410 611236879 911894897 887839091 196004924 611627231 702408223 959010012 127828032 919147019 958045146 767050528 404365958 902891414 409792725 553097491 871589392 204247492 802904123 891511238 883180820 155681067 894339733 920868052 992375891 897112517 137085630 854067634 747184411 717554391 338951456 917060979 908539840 958634749 291981386 828409671 838088399 922868337 748273564 325892033 924528971 513631181 815095171 258948431 69636710 657100481 733672643 853383834 417108903 524670355 452639181 272621006 805424818 628263623 192728958 935890585 771430414 299922876 618140660 832860953 723693623 773629234 108915519 878708282 216865111 931802592 795613776 488504526 578706445 971740783 980959592 483462760 693595241 706982374 602977338 758384906 475105115 249724043 368583158 940263431 758603025 841328814 789737645 582733188 113790768 776386006 410391886 829844003 724978291 989338209 229045273 773112828 139994784 776705061 5289961 415122435 827042715 799227902 751212619 318730643 2808347 963515706 957352265 864787696 689669848 743534327 200028497 238776869 129629587 747213782 273175038 196747272 771019559 723595791 995426480 891052829 68217304 821002208 768803393 73678881 837606129 805620554 714175664 970420355 307033489 201035312 923773327 394748373 624774406 945493392 763353611 365747183 940240213 453800049 68078778 534295333 427131920 110574932 970071230 913500790 717897421 304279515 986530761 779238693 940705091 617658021 743657382 761388398 797155394 571750903 929324888 826446717 747289595 3111581 800765176 798766563 118980151 920864003 794412497 964811996 629431377 682156054 559878027 943768442 228251397 996587943 299518223 408843226 862110080 691621774 758527002 836154845 657450154 13508398 177756936 777262273 862576175 945420419 234203464 974146296 122411711 846944561 739845167 473322396 803625247 642962196 100078045 477034944 451146042 966172266 900979783 731655629 206772233 880970945 826991507 148726671 962334163 842221623 889551740 749424539 218752449 860418983 752948831 277273759 600720158 676789354 392853543 901668377 968299771 401522902 468756706 282034592 415738648 650801337 791794343 627712564 483059317 868010801 399304476 806830631 801208822 935435927 824399703 848483408 574901571 778940545 963063473 516953163 942697050 809411862 824703052 136818785 23966469 242537620 827595540 178042580 821573783 823582529 948082926 749337838 983651194 814738924 891893087 849941193 267442843 155037694 427545630 231614479 782830024 809233379 475037823 513784050 618555001 399823536 683081866 703090456 758306237 699880098 717387605 44768438 924078873 745403933 904629722 968911413 778194309 112196835 859962658 945791313 603002213 236395790 919730620 891929880 875328997 182507374 608806191 800475812 4801033 110061491 877882957 925034336 299049271 444114964 995821648 577846851 881318406 171264505 175398415 843124798 180560468 952771299 743465870 565959800 989791948 892037673 139726590 310360563 732695518 882687208 801352131 596807821 646858364 443618226 963127931 165701571 383444445 404471851 901128002 406998308 768402623 536376260 184914123 446694722 441506108 420333424 762937979 879444570 931446986 833239693 289500199 129610842 127820483 774778235 928175604 789108945 656608036 355254558 818708040 858521721 969258742 487643786 129490797 881456177 877475406 797693018 408392590 827076204 397507904 593438839 914710449 650498 852407203 371500503 971409163 672291003 884949371 872631986 504826518 822349970 262937475 852308147 299962671 994477603 412712387 886757929 838255027 621259674 524418968 884611357 868011898 275047005 534794154 954283998 286061423 388230407 884965856 994583792 910335581 351097812 659911149 280913321 372285794 769074624 612885755 747582201 235540764 849626664 999825796 72937555 944246751 770543789 166475477 843366741 973115999 243780381 821346696 981568172 702581328 475755173 733194480 805054167 918728465 65565178 843086874 941098531 997647857 585109202 657590172 912420556 354841088 168597022 301685399 810066340 893319099 818738651 916774656 33969904 749684860 943332706 857001330 511564116 119777723 772170846 797816282 981435766 580991122 86985005 850021171 457031775 921038536 782446224 755719429 225567042 926393988 496594139 163654548 213961908 2633676 376264760 438443733 38034633 841809275 729068617 326659224 272200866 951550365 976826425 924441977 927105302 322022032 742593103 660771463 6571030 260986299 739342525 803986353 929563683 953699193 497568343 968385598 920143279 896351604 874433323 4471710 899418427 999328168 220546053 135477971 856984055 872156703 933103323 891412996 749429656 286274863 849091045 241586830 933848261 630009320 347600014 17808993 390130830 130319407 841574486 817661854 991561287 159715902 541276688 962675399 387474228 839137098 442259150 284140750 801867619 509724550 865066943 742167407 484837909 711477293 219143672 79274646 913063047 712296666 107481394 849376689 868152301 847932061 860162999 989578080 897815337 751138720 697163375 737020247 745002275 980172505 983195816 55704153 984336326 423438618 515985359 667639647 908314663 518998868 255008461 924577895 424026953 754835140 369371389 469333952 956394926 642700281 928761224 151418820 619395528 533804011 886121527 744183408 870365365 598749364 264542521 349157278 743991500 223878140 816296251 743821960 892497938 826062807 224463512 595183462 457948793 905207263 915858444 262847802 892962645 936433051 833163594 922545834 307491680 185109032 863090599 513073408 521051734 86128729 816123536 93659183 677210963 529155579 994248240 258917032 577245512 505097865 63903165 749167368 166098730 248567027 269828513 638932597 506609341 947100502 932938226 439357551 888316761 752041411 296250498 591186217 675500694 872461629 581396555 779568533 838551192 961567135 773935038 577949688 839929138 792889076 204525623 995040779 388564403 908156391 392784516 959607042 371633239 714165157 666325184 190648406 558330522 598402802 991163089 379188701 32299359 852146891 282407127 830299904 451262150 679430588 860647385 82215177 424081277 240639320 982093482 643781414 356436443 898196999 644692875 980247785 802680580 812416028 180876703 65209478 763479739 228385395 412854522 87808274 943683716 632660608 425677204 774002956 787671785 173774686 856743678 755531857 773275427 648987822 985699307 383863865 654106266 5161954 715138327 746828389 578043887 364534231 518163353 87821059 160754260 512085901 800880045 893019700 763512600 589684069 618452495 797634484 637705950 981729298 902765851 172545400 166735739 426793635 744101974 228834767 530856719 972852485 766669422 978192491 595458591 743707490 256408339 677244584 996709661 791466188 114681678 902496775 991047573 352655826 440376610 676347687 816735799 396151934 592652689 586460516 942920940 929016445 584862682 844911541 817205848 92020530 415464276 271792900 678308471 936961496 345111025 884876086 686515023 979081422 694239742 488297927 889512150 804395254 622224450 49991562 905691960 337035161 650163809 336758842 869299427 974944040 782646146 916317471 814628272 886983509 876298687 718934392 961478511 603458967 158316223 509773072 998283780 123955686 758317817 505542570 896954176 256211524 11595091 363697490 641390726 448767453 523309621 230499417 483268541 292483588 370260105 539643088 225894739 230643332 283859724 949767580 871838309 174318187 938921340 809069795 592950524 78309029 1056628 455338131 924463762 5044670 782088618 157711550 880351030 934637455 498042242 653823128 593782720 498975779 322026039 997512882 446313256 797827923 211781004 865080537 807355724 761036384 298437604 882492530 867988727 599499244 350798999 860997973 281115048 583208814 68292714 195255846 648063048 733328558 334564170 46985411 846674179 874366423 220268224 468475448 671392097 514241581 265163205 901593887 811231008 689746335 608631018 960956229 956297667 920820186 933175156 805090014 985529246 165140360 924730794 549702168 400478798 894952366 358844989 79490485 989433596 874361230 831664293 431581203 554079400 784130672 479136452 989385434 63410945 636547298 193587259 748925621 886533677 427329819 958073857 852290989 335679853 785105787 646958504 333468593 916270981 892616307 964150014 866195410 529007510 940120168 115662421 474384574 341229843 333976648 870118640 741687499 474858368 655117846 819174147 355794057 771650122 777245933 827453400 811933285 3339273 982367505 203601128 868426323 413791632 367692076 977023727 16678524 678604141 863278760 431752571 195391843 794134917 229664727 702175334 701744242 497483046 390864365 788469863 110272071 715569637 712771951 232538383 831829840 811000837 288835258 799234814 280460406 923163471 8409010 521189933 959666287 717080497 861371606 319274722 708130946 317855411 885434808 846490976 284379337 403789997 166378672 68838991 3986751 291146818 91486392 873004204 584574524 577369133 606749478 929104762 478050092 847130894 833990358 868174052 576945115 773109129 753671201 333768367 284908904 741980654 615693631 585070970 864943403 558708785 928894320 592231785 853274875 988189167 860762572 67878882 992455225 8938312 373638643 743689074 765242360 959749826 500928733 859958916 761361338 744798806 929780370 862624895 765088279 106265805 4297733 190835103 979269989 907747098 525616155 852525824 945469026 921098630 728160206 368611697 474669898 972569252 232715690 752438974 773990201 384219482 954420712 101147221 454836802 282136955 194608874 708608536 917116977 956037166 792391292 744180138 542813814 108450404 920664478 927744758 290245896 82273994 267004945 863579998 901471684 552858879 803714718 848610188 908663822 448891474 967457720 982895151 96381921 576949406 368243127 370409411 895424632 123299202 762329278 513875746 229426750 786281496 973752211 916088148 807123320 804002757 530147055 474486234 771712556 933021376 150034729 999681814 851167949 777194144 759334806 665562777 822888787 225286998 331822713 850087475 561932588 804287017 900512380 350562236 556863627 95695470 895076296 773162631 391137996 820884891 850009486 424426023 796110908 742074053 816409178 993829638 994365218 948270961 618119076 694978512 753271597 672993854 911225965 660210612 850594282 938667466 781098974 944253205 196262911 291490330 713854905 797209553 839763543 958145306 270304758 461642568 882504594 893471205 743385189 882695621 35323395 130276617 279512866 890279451 421615118 991504349 241870205 656842069 504349376 346907630 679056258 131518848 273254371 900157442 563798081 579865923 428207130 241828261 87477914 874611107 283699864 902777232 851591702 929338571 877213603 845421328 309637416 524198799 899581140 895919006 890853086 909745008 260454209 357531914 917314149 763965468 902601742 974683401 765762026 830073821 748778073 169459258 918953070 989725659 531035936 883623728 449238715 291547563 832922786 275805254 342314559 801530456 326298752 458842295 986911268 792323809 580565637 137903970 804308469 320048257 842537117 7758591 46066378 55447110 925432183 45562902 814032154 745953209 569741568 971128813 816754310 919303823 896110492 820706080 858346636 832881880 150731600 953970671 565629693 955636217 766061161 325208965 820477924 202093631 671254540 770125229 937969177 911433181 511479704 619318337 945412451 966635122 774508555 915763317 942695983 779471380 676931090 985495878 333710321 996763288 778736240 581523057 823849721 251772830 69948819 997129768 48779870 849659624 811308272 118169515 562411935 867349730 787466829 323971925 45731896 627686716 993000783 241030258 159458487 873666894 775513601 536903814 369924007 240819097 598724220 815833257 797662452 987245510 834747438 969642640 745112521 825277440 383733067 426710230 785885715 884735534 227251219 751948630 865289802 97257360 803375365 468902131 621541743 700177240 937696560 759851350 4668944 686950859 975269937 384397707 224609127 488915054 106911006 267286988 504474749 42625177 376661556 109985434 747902136 801978857 693011734 554655168 780132752 991721157 442400815 968528235 920422408 595458325 555099973 911809497 832616154 436126011 433976979 140097616 940756588 940971577 911043516 831722253 851715706 947522603 646969800 186452868 620342428 301113090 942871196 477591456 747796586 623802662 390682406 805997776 870613889 760192366 999086825 49243048 510397338 851731299 777106076 572211068 864686998 820880107 967554787 813164078 671277872 614411964 908477696 405631707 123315630 961405351 878019993 902744474 874740 665447385 516802959 586632621 658652859 497020439 438577396 878569195 312681598 499232784 892128924 528177215 285485906 813915528 785632289 850240415 967646181 866758108 896369321 671542214 130518173 538478255 842284853 832840830 227768398 75245576 739722227 912931839 743746499 643197086 596968539 46414419 596986202 356810023 758121184 266227954 390371849 557850889 795364751 882140230 932453020 183666306 943154313 154327131 899015514 860538882 45781495 790709321 849464672 740153041 806773817 830255297 726164588 792577055 280250886 607637136 894189022 811680238 755362576 492747917 873342596 528103680 582224605 461036570 790301045 541189993 222049163 965221091 858868982 475422760 220684043 989056462 516432107 93071995 284775956 286086283 569622994 296631875 927806683 75496904 384518294 133535353 820867967 937744527 706035612 328876720 728912316 744380014 157899566 31775384 336229039 696887660 841955142 60773153 98915687 997050434 543830240 126907804 195275785 473568832 632382918 925757351 990462163 764246842 851608875 655237931 198105543 745329051 154363401 660900392 904954020 864142883 322527377 865490410 106220518 955272904 935693714 997724402 67495227 607036707 381034927 875137415 101322601 304167310 445283979 709329428 936121092 965870756 96850880 908384626 818644237 863364240 751807721 756260742 830086471 757552738 761427581 931420996 744323194 512194712 129065490 10741228 427155363 451068224 365346440 932140053 474180112 215727669 236493677 907299105 838672038 772326028 521367112 813832088 751254802 719520454 795447039 751973153 966214763 403769039 315138907 416965197 908996784 455239594 757321798 483551320 529622746 976042155 648631656 869976160 75007094 808959260 467352173 888445289 528112196 854054015 959539805 305530172 798610992 285851365 27735603 795482251 627576219 539083836 331951615 894004126 140846563 821148149 779457895 930372536 83211896 873429871 82382255 914354303 869816394 544871213 771350320 973767241 578605458 812570775 454651797 784417295 813779112 536198948 554036665 939830284 825834652 752831444 908501642 760787594 784272973 655447488 791576551 886369595 601380357 920382419 265977188 969187080 514009779 526767727 208095355 952906104 76667404 442656227 950272467 825434129 265118374 688906146 872175974 8788308 988230548 488468296 348389651 456775731 833660544 360757572 240275178 934782628 746941390 889459909 871614959 775376814 745276629 958119303 843893741 113866694 998517483 495024870 40068331 910874284 776961001 839781881 331215702 596524491 837125291 792456100 408629562 519357582 911955603 757956315 998630839 84896657 46530744 17674966 781491038 573667723 766632126 805437517 773082815 688169267 947197790 976818702 876087648 697133914 784385831 126591122 905682144 783529862 62810885 837943762 245786843 920712481 205503645 917077748 888605886 446733718 404845522 996899480 121554023 821706331 129002569 513179779 633840625 818239545 208561138 291605870 921703332 824124631 764702472 914606832 630369040 792152178 650471442 689860853 591981519 780675294 332921021 449344621 367672836 790547865 973664712 219403954 115435179 766387182 779457013 787521602 22231102 779493657 501790286 686757365 997727182 173770523 923220012 783602874 320946622 334396776 796226957 499747652 703370138 112005038 368364622 705410592 516173897 971150569 276315731 193687950 885764242 937549982 880716680 604302844 753891248 381830452 936891448 260032856 257688681 213940789 932680150 92345863 853902944 788648776 930829282 742713131 700942920 104760271 668539076 429683981 150276834 994373560 783524048 4292544 196907530 935878996 903793464 881683115 357899214 259669741 66501639 4268169 833610962 958311440 214194065 504385227 162342166 524724789 812173138 913773847 178410781 395626728 231667757 330534943 961831591 540659489 169081197 677947407 915100863 999326226 633663598 870977615 974794089 513445700 976717599 868722991 25374924 994507267 763988752 814060477 82061867 760966297 999794184 942016616 696296298 908159246 41670820 830302999 757144226 704816946 531905531 888767058 299302009 803090440 519995359 279388617 75884925 609932238 827156427 634031102 889826873 913962309 898600332 134810200 954360186 354237167 994619158 227667404 260653742 250062712 268400101 54836680 929466138 477514107 787380959 643235157 634018298 937437017 924283970 570211439 965165361 241873437 286298309 877082050 23252742 893522272 986665771 906309924 265250924 870157642 883010892 831184340 512255204 466388710 766853357 826927469 608223577 843453329 817975656 231018690 250171374 44282638 240889542 362259946 232111738 569000957 459422107 184429108 448345222 900735509 966021102 754243259 601313354 468066565 786484754 692791772 275535253 905397468 128691702 313540384 809405832 953487927 795037632 750516465 182783559 340841359 107489820 143511832 186020736 130087881 928816053 759487883 782990763 928794954 454947962 747364785 863037743 538134625 635670293 867058105 208114921 576388335 786150236 622773218 452122442 248056965 741246785 195930297 304437304 998574138 839296414 80670248 855080954 60013461 809463682 220069724 994155253 497388333 842086243 809846680 988242764 751010098 682660330 586302132 740539317 742982785 826227778 877894172 793266830 256135586 526672137 886524828 905705152 483783465 981735560 823668681 283002784 752499625 620183745 678493944 902864877 946840640 959983961 79759463 724327050 469405837 661900506 910466644 217437445 820108178 352357082 650126552 744782324 836214530 883615213 398460007 893188412 361006661 542193663 994437087 942897903 391609783 171713255 916287288 198677885 415676028 487641297 769634664 964982456 413031368 449811248 960850615 809772443 933793046 588114519 184028581 961725164 743244595 758152990 661832230 312290097 854253650 105788625 958347535 176513244 824667652 879945247 829880347 930019320 641226422 697356856 138557299 772547599 254203609 193491619 460349425 940061396 919657549 981328256 222218495 746588341 737752108 789035695 846207366 661615709 252137396 898644586 812906968 864043396 801776816 250701389 907845419 444437657 173506849 681284960 790719392 239814603 54203618 904224436 338118255 672218599 15378410 56116423 522424122 869062333 434540973 551513993 461260638 369304279 969899424 486317173 249678793 198250611 912220703 835759280 334899559 493901937 182492685 78834261 413040516 855988082 891550743 838123734 476298653 582805872 799310365 30233764 351120526 88548332 19624262 917750091 805464621 532972244 762191765 944938088 377560840 81580875 473931892 915334231 86919413 864169858 970914496 387313463 733067558 716623296 982621921 737226084 910866777 980667254 604866577 554349880 943799875 668576161 411538148 886842369 943553749 420213600 312409082 850812545 237828284 802564720 970251804 952240844 329858033 775545958 848927025 714142919 16211212 936226906 761086096 142505013 406724566 471801960 485620578 221655587 343661325 836074869 902028945 904947236 556383949 1020660 895519597 687133855 719849439 896772237 377148031 739560699 938841094 693803814 575280947 967386589 839102811 227835840 79690986 840398216 998054779 313963193 884622684 776939668 307146851 591867262 422227902 803334729 844977327 215032374 986231085 81152035 822682195 765820601 985210537 426920142 841820704 240196367 304198666 265765142 983966242 894877737 458106222 934147202 997242153 985596561 825518526 33272550 788672710 866588645 246632684 773580751 27566991 587892729 858541607 867477111 761525817 948743780 683257750 267388299 799211898 752629353 856294261 385758433 853161681 853708273 625983725 608680953 982422335 124204808 740123669 914767680 232568910 39610320 964871770 935145738 883430661 749346172 983343173 753056638 494422657 201462349 94215958 343742976 864416513 235019632 900030199 347412048 782604460 977382490 875257023 937745866 198128777 482900989 886619260 778196024 699789555 41375960 511796972 123127970 988091748 955786080 857667354 539262711 190763747 969381109 869700318 368851748 7721815 911390221 372317161 569808616 782749615 580358137 962178319 716342348 820155899 963524341 628388475 619150787 241884130 929405702 884183660 829772965 860136299 38999243 966917319 595710417 103409498 774481258 831454960 962905839 106773976 829295648 19857693 662762174 866906777 991930384 524577891 740222878 875948383 969899560 353534657 647190671 540590075 634470695 28386614 737020247 700792745 73197435 931134319 507219527 953611642 342359757 922302671 906612002 755155321 87921557 214003750 706652022 564288180 965053528 19781701 856772543 755255588 927644433 713475685 530135732 859834004 739421663 947807663 540970771 814015269 988716778 953631289 364251196 589639210 307260192 935406406 795570437 803874004 637752172 562965972 536048811 944043401 611364406 434310358 317448975 763627122 828702086 947792952 225741356 455493729 710265745 944955479 177140257 989108713 970428002 160090117 958957126 416681893 744906690 291693480 838401869 792154636 753192404 979279091 908116016 593532787 140455765 973713007 684557536 828364593 935597076 758298228 822386077 793816295 55173698 822267829 441511933 899953501 861487601 887634844 902029905 196596949 918844177 474876371 474550596 778001434 791093490 607986028 876090727 95421899 908719639 961001294 745386602 714465466 451658713 968012353 22289981 69974047 586830165 441165702 619517292 92081096 922404933 759865195 403735371 368976995 209803803 94477886 850378934 759254921 90116514 818341920 913049290 199505532 797456327 747817649 346390289 246784119 859005581 603502156 748316534 812123150 636316735 766726708 811734960 803255100 915560865 884598840 960048111 821312439 742958531 306985908 882342826 403056915 799457557 926449189 464363773 305071496 29340179 962152413 970624362 230918836 536981314 766452460 195698121 889544742 786706043 681122449 466627141 841540202 919000645 45604039 485330976 21472356 925331595 160880488 856696124 615169785 273168294 956055374 332991341 752100430 592691954 882561248 808893532 959923744 603193545 930308647 284662860 900047288 803822984 663626592 759781049 96247398 314563805 274457842 441107366 749455285 905974142 1004379 896098628 98729308 274323054 908092538 747673175 262794326 134823942 26311634 134720516 784433580 591287496 752650577 789725740 754048493 905005926 122954036 79647748 985419681 220300675 73916036 772929117 850027820 157951742 222302154 278529798 896924313 920278201 427604449 839376786 256196668 800412724 971553777 744946490 688102618 373886579 75553242 303170442 158286828 255596565 939006224 774342756 268843476 681282537 317601871 892916128 852835832 604975065 812885112 879091784 737020247 332955519 470664073 290544547 788272019 887535287 147533368 881575442 760434737 974606573 978974526 661725658 836932743 826574673 965967740 238770607 898367054 812699614 927992328 217557206 610242967 311105731 482694185 882331707 33176858 663012578 763124871 871027697 632658337 315792504 975846672 761961131 102604994 170448522 941785432 757412173 867265715 57133623 822885069 175826843 503451019 875391906 320555365 813245635 848520663 35989632 975357014 582227979 896680009 568443479 816025025 225453974 833913281 810114922 790817243 778990186 238659610 992028773 59220568 497891114 810462277 904982601 826685538 111688387 806759014 740561034 932328157 603420548 34892386 252832009 829713416 304609702 525536586 991933835 827432467 257119798 309698366 548824018 836510498 965517920 726302870 726142416 254239268 782030395 563684928 918139602 633876508 881192007 934829199 784762571 640214693 840715733 874700321 984366107 553598573 340109033 879720601 151775725 962833285 672853434 914993470 940525421 556440525 170782178 544367493 644736814 541777853 753085918 785804 971421715 690760160 973160658 903106872 406359427 423844218 243719631 194820562 872283703 95190460 620941502 878212448 901796342 369910369 805284121 964850154 375584654 207403381 109212817 279165498 613309979 48768509 122172466 880013825 494315868 851467285 747830509 255590229 813956287 956718029 673184801 554449746 768446436 845137527 786981144 649273195 674468600 526818113 905728128 825026874 820040689 999406098 349730262 447195352 939192073 956987545 463971254 739861287 279836788 906395859 44022018 838119786 48774008 103005690 559311498 647835406 209793623 914180163 156841106 924805880 535822127 987617213 837227484 877550952 939137429 66305130 959572088 878850011 636336520 747480788 779456827 202675567 843679046 832282021 739075076 6515014 928107747 306809744 442392045 974937972 875863137 862097949 96637819 518837678 795156262 72725089 838254427 932695213 797163272 576189489 974447055 882124088 761396106 943471889 832288347 146020317 897608114 896363701 156360034 755441840 935786643 924643190 983925656 809227437 491892887 403094880 479501539 308266883 369304300 611859404 833993614 726038877 252219825 810856000 944600242 458031038 971804580 870795382 87307099 770289430 840610388 548508258 873527402 893999688 926530157 982685902 909729405 932701616 174650013 753358810 767374378 773977338 281972678 648382029 323154811 601222170 177566648 794434086 315777945 38392912 863301162 204066376 157340826 874982159 866749940 426614021 302498566 204960862 839542712 411151651 927068897 343918946 917614447 962786194 150148369 732068892 576818283 860488583 796213564 611141049 147883790 802386958 982173495 844100068 496426939 823709894 12523163 512143393 170742733 764585018 575608637 910617672 57913366 166072627 638807376 958409415 905222594 941142172 709130024 470312327 402200163 980412422 816957524 947172453 556864378 185376790 691640421 885374876 425375248 853267302 621669152 834400185 887496439 767616719 942289383 872187964 41634869 591667486 398887023 752599603 920609980 764094584 790083200 695175682 962500662 24445022 943864890 491634581 292139656 629623485 149447284 865531225 961724200 887218642 191120986 715813411 190806416 649373536 832919782 101054334 971391286 971627874 780357910 364366551 484448176 306125860 705688339 257241814 399763932 909922853 476710316 866488742 714263651 895204304 529426259 881153783 819797092 991627141 506098119 971150040 895999481 949642504 876693522 940440212 955224826 424448015 784746111 740052216 38391356 331308493 514137457 652239614 995970347 130197267 845568264 23225491 47762000 699202573 660198969 772119675 463833022 8272275 902082541 779436742 796355602 715237644 680739189 578987443 302903346 671074803 904436503 592274020 677104981 904410214 744795454 908684096 707312528 839230978 481612462 772344765 28925988 946534067 896159361 746498576 857044947 864721415 698414440 339827664 176120235 293733633 834297010 411894476 410678395 546101482 739763865 797427103 94916229 351995877 362137465 679783826 807639305 438222097 909519026 737238355 575588409 630802365 918761550 624825122 404711321 477157241 401147077 526800226 760321996 741556386 9076865 879491214 490800935 131025014 749905268 458764846 871064940 964182147 958129580 564247840 79736839 498628233 919357417 814972951 348212156 435126376 349104370 885752022 62373046 206439872 884150606 390428076 862188840 429463141 720559975 421553790 804716061 960341851 947366942 111285345 912112751 869279825 78260095 702568781 319912297 944439382 253561669 913239302 950992916 944703781 920411860 941291437 287203916 951769324 413552340 533716329 183551634 520816242 896533912 422474570 283922283 794991215 961070018 289534469 239261493 28071883 207826462 88344062 367854067 901376746 313225594 632073451 201115090 765023804 864987385 262542923 397088001 159523866 607552460 288269946 274875362 947868075 751094653 672727581 62518606 972504790 777030776 905797349 785693303 657518501 231531452 977737272 820797204 860849379 920956021 456178493 221059067 985979298 997165401 871965631 825890011 747233215 160572182 836932393 291827232 633257808 223002057 659540964 354989051 897235287 662586875 121898329 252115310 806609632 245988433 916072580 356943908 967439577 949268117 164575571 764896756 773476688 829094183 249549171 30769551 120596037 862421384 839912450 138005164 61857277 465567454 369043488 315625420 890019723 529922454 298058602 76793519 758979765 882681805 105221431 676484952 996756256 647040026 870231002 179662388 472076725 975522599 790607496 300882316 863558146 930330907 956448491 756684327 872837893 887395562 981143448 803552475 502392420 765704001 838434036 560139652 827054574 989095792 323189263 845637851 979329646 875532306 915067381 740968625 695835115 224604697 975552069 168122113 252413933 97490005 899703569 970638249 602066686 669375155 913692203 374491771 868741579 983223103 385656613 587088807 843186683 242970188 820767670 215660519 970515353 989779450 907390301 448175082 295396339 881849289 521121456 985311304 772089606 896034670 937128321 959927788 670486645 982081011 15061575 786089529 118640033 927811850 707579421 244779678 769223687 860096619 294798889 824639073 368698324 834442841 476679108 697613917 968643419 245348419 993517255 917260511 409496820 51252973 15513928 861093647 83847548 910939586 909051907 988056851 305608532 958501705 954900089 744177376 938780930 400001985 320322245 198807432 208751815 204981571 679849718 100959415 933170183 799210248 909118263 825445483 458052415 666539718 205860063 839878152 676160663 213849283 301670626 79230464 710325608 819517991 747351634 306783775 891316245 143833014 895506134 939185154 984332537 161606290 823048480 677035399 495795304 366631436 673132436 430936057 241721594 966108658 789006504 201434133 351438407 836538786 241477188 142406346 930464982 982388480 775011407 88507170 9514940 979396222 909101043 982539845 827030504 889996519 971748045 928019118 914464237 975317540 106049820 967814117 622896345 610951586 931777566 999305117 415916874 800195072 818493024 851306186 546794121 219090577 825091195 749620257 945499220 758983932 737571690 737020247 957707191 796694086 938098592 547587619 946626381 952475152 478121840 452657921 951996511 501816559 403233365 49973087 555682999 161504293 749080226 975211055 667493023 432502379 997357261 825830656 573830977 146533828 841755349 355826953 996296564 869662928 935366583 635241351 818034829 781994226 628697665 796420408 974403760 10464240 930703931 662744259 195236011 744392925 932588557 900896715 525835397 871399235 275914283 545873297 455640729 552928409 147367526 764913235 768017673 341787608 950702570 388756942 970554618 198696086 786720498 215655313 859144658 580246959 371331130 218666968 607158980 740280351 297971077 998400720 978199963 713072048 698800600 969725954 895101824 896278156 551526100 533888309 873880715 507708804 851656076 811376373 864551253 545331694 551019303 200331699 253437214 997381423 65425725 672641713 674467501 58031728 267347792 843363695 318368705 153817535 538866489 457808646 936087179 997728322 451006263 638718786 67695174 432109343 373411338 879447328 738307660 193877870 452183289 55435672 302838931 393043387 58012118 934073338 490005089 30889416 953962150 861148372 196649984 761407645 546049843 781005227 499038196 658016454 251929443 935308127 524855455 704886609 817298679 949431454 650185579 911744820 696149661 966404304 947670025 440270624 785935677 160411865 410228929 425563578 405638909 464758342 919260710 894626371 801062850 141782235 819371838 945270922 315413961 863997102 161342194 349037435 711132262 754090880 102268291 680383476 112366775 385259122 544345651 746284158 370639135 744121002 905320110 245554925 980736438 384478490 780855047 798873213 607119446 879717939 900852018 910664744 58881214 344532496 608531877 251711402 678629093 832202398 886104494 753519545 987017432 990683260 7733371 884569192 873785787 696186663 722404602 466985609 829591097 993977961 656959338 201261150 482285577 926153527 884997335 621690685 380819308 979524276 852960460 743030614 882851987 240376978 420132014 275838527 578390028 919575045 834787087 966749878 58285344 296537275 826208775 906574708 83954987 287088906 541439079 790815681 819957533 856946049 97410167 787241924 674321282 885507477 778934581 866550077 48615063 332445019 804597744 827978705 535712503 105546700 650292311 863716853 355805058 867997101 825450099 370944680 873742742 806223527 772449478 817021874 921261379 936969792 964286541 812278951 745750115 599236673 213163185 760872938 633922912 222867202 781124733 187460307 989954284 281197176 238881351 798035331 690006608 956301054 434021621 746827356 843998187 796115109 10669779 927391364 454229147 962313694 134988386 916530344 861616040 745908397 861657624 396717875 323082282 266782180 831078755 550244872 254763535 588860361 599471384 783046407 815251424 63141240 645507442 854030950 175293863 798121807 619963025 750357252 873395882 753846184 790665186 841713760 796801807 894642487 910425935 780887603 142287095 757394841 27379094 20653399 822508180 806265592 733542827 958887382 47238117 865339230 984696821 710274419 183669974 889419304 626976411 5875164 807316397 211443619 148792983 935220890 788061660 979363227 938615205 426964915 738022441 462448763 708301393 793704996 986273289 916291030 780027116 793662484 807198465 291598448 745287770 363311015 441986316 931241909 236435518 8480200 918184297 988306839 942279287 971155791 780090365 815367295 851201834 964603866 777619472 501710459 487998584 671948207 371010811 988357949 763605060 886764530 330633085 296887715 686630727 17278742 916234097 811661843 994024012 586771032 447325332 562001577 723339925 878965030 144073733 968083600 962870385 959482145 732594188 631658738 154665537 848056178 775532902 938672734 190059568 848222644 756493612 769417439 829034401 961957216 791919111 571540935 504100762 56148971 924525729 593459464 550926027 739968492 852040885 471353071 998382734 835470376 968243007 57495024 990295917 978845164 989604233 460381806 42619367 967053717 1878838 947153895 17523383 548354024 694805554 718386491 643758056 778912883 335504462 575233586 998581964 831556005 711416066 921179583 314743555 161718215 346244237 935048301 512370163 166168737 109872750 410494355 625001416 911955092 744155728 991512627 700542910 936639960 777910982 427306967 773067408 946428586 459818306 183197325 144150221 657525057 656633389 993280961 955486857 585607327 822314067 944584045 927704430 842046011 339587706 942971265 611922385 557159213 791146518 753969608 44025553 330468585 905565135 837024718 834835105 873027330 31932465 385643569 871387871 951513972 484834372 988160549 122132880 74926857 944042336 315480985 853332743 425884403 556846192 439661905 912693626 214498308 906476549 745498240 913653453 188123017 903247663 773126326 794032297 936469541 307714174 815674670 884932889 796893909 955716750 922579081 869378148 411898179 904595497 938299665 444883038 611357819 721117798 695595111 742096338 814130965 885194759 185970965 260319102 419273211 814063524 867726987 677914051 234783690 734987901 398906733 696332429 951862330 307650010 864725584 58731200 442989102 875885195 951351445 851186591 942549760 678425938 844211737 753297462 245131390 70381049 871541212 162003697 944239959 998827153 590095129 972697668 163097423 781025183 736318637 586272097 882143451 747626993 759275205 408243292 615548033 509775633 843319840 810872708 535283274 476556278 895947010 166742523 937304242 867510889 82532631 272510233 339911149 737868421 952417112 884116531 217420748 944957388 997854753 871108373 841526386 930015091 381204412 437588880 900716192 740648949 295161427 852779205 680998269 36762873 789861202 914151131 758214775 216994029 240799402 949373951 736633340 798318207 937926696 935489950 220025085 948609647 229932440 839238637 301665892 889340595 349318988 737029410 423127839 813194465 785186080 831240818 662095215 857951450 873019265 51661512 510360030 155767288 204612885 815481870 180427571 951760374 511868878 779842901 469601230 784985335 248688381 824834792 38229019 90856129 299954778 556436472 779935160 211913312 398098560 322098376 917134566 907781422 96352855 121962063 951855727 426255471 985959100 936853905 794491328 169312495 733931389 979055965 843566348 266368638 157588304 501750795 648262979 362552970 621362634 881873751 244864733 237201801 866972075 762877636 745632745 844141098 194847111 765603191 796584738 987532669 475928698 900993296 263727399 710920139 777310136 346863979 276627584 265645651 787292305 713660456 364977350 741410906 531323230 375110042 182570904 626328268 748961593 436336084 991592208 937473228 703204989 477603700 565991618 944687485 920243011 403105618 768783854 739463080 802075772 868713336 727072023 956239071 869024942 253382467 617218610 896417291 890161228 767200909 879530643 974967427 765756211 920242636 418231195 858811896 663416302 26522783 289634424 240728408 89573338 447287039 874776187 983420144 983757008 467790520 836348829 85952854 839929550 828767905 150826585 882965481 857703355 790094336 214099376 873732052 921092611 608416921 560798624 754271966 836711920 393875273 228382169 857787075 672410823 111800663 244902000 972284299 130201562 975768668 845915062 247642406 744964076 793751436 231778939 966016021 354906374 834603128 20934176 813793014 935831978 691833895 726993362 147738718 863126566 859708518 928286323 194689634 856645598 764885777 521695636 304974783 868206882 1199321 965064309 999469180 863600074 799399845 777007504 902066093 345307176 865731180 277522100 744024988 297098360 556085386 667844016 3095136 706466998 524684280 477200885 887948610 731931396 540511846 374806713 243448763 900328114 217360555 992333433 207634279 458554462 985952909 450761497 204142921 803039092 825346554 797860216 772231943 60708377 816839273 113420296 924917270 523010116 182088857 933325331 653309785 192363361 978281159 602477381 705780672 995858203 996920671 796561645 960872812 3357183 960153784 528685219 790143530 715559393 925486513 503599315 738731940 538797463 859370007 266413787 837083952 847209773 803900779 148595614 881898474 549401363 31627403 492390497 273310365 91595450 820367098 781473770 201775761 999489888 940700776 538906761 663254356 938249668 807233020 186663862 906769026 549914676 958853764 895633029 475668968 681712607 741682609 917785631 454753266 416174062 964367942 989708440 160077167 927782494 863463667 147627289 939592665 760233827 21774409 812886454 837212589 414244071 794118165 690456806 561494656 29376243 807655119 379813844 798414208 966851710 750413318 929598036 835283607 570940373 915182170 67561489 536478586 20000895 883647731 949168656 99474919 592323635 835335447 667964608 627089170 873656542 899363841 960592583 838124086 874824273 218317499 539523732 699899508 900635604 498630963 573656654 353537351 774555462 757332942 110546966 752491681 600154594 965141678 473386004 812937953 153220034 978056488 244272273 639682075 933018050 435417338 642830904 655711166 430647784 678388963 333504150 68863781 443166181 144661291 865353850 588561492 167745002 774056063 166087370 871471029 575253884 781040108 803361098 845719815 664805035 973319940 520994880 33517636 574040066 853345576 125214568 155304045 963916163 421022032 812326001 845237077 972368334 966769294 25440181 737020247 993664135 416370481 895622085 909525915 157820448 123901266 816879158 372266640 926605656 483953341 714072027 724898186 458809236 196026771 20524728 829667684 777320381 447371018 936262461 277183752 908587061 635602471 886637156 799453978 935914697 304880899 965035552 169690700 435070051 861814028 777818451 676777320 782400314 835334602 743379575 154059377 374676675 848756109 768331897 212258872 858645183 160578294 852396672 984249079 542950645 771278542 85043827 2621589 423613729 755179344 273406543 909609835 540677191 965649377 13740183 968195567 886367167 533972444 122732162 369490222 165386477 812312398 652452245 248185847 236521455 941986561 850503140 984740601 237614551 700641224 461783208 984807134 776350769 584535464 169104595 781843713 888418407 68220241 856862618 868733767 879674777 591174077 41718419 188908713 710771555 905614134 803661316 926960171 489176884 935808321 835046451 871483123 102824651 835895027 884912440 62202313 698988530 800070107 912324756 209945982 844862183 950979139 854195475 642769617 786038857 171323732 348293600 469408960 988834191 983877603 181922901 476082837 997983903 943011559 460894302 95763894 506511604 306637521 744218667 778969487 75467560 714322528 858926452 35513492 807535590 679487794 214750818 823676030 167064263 63432655 184740493 798656917 880874253 978699764 79038753 550108349 868190974 696509999 980546808 797405047 998517277 797766742 788598579 864027396 746874052 745023835 746349139 812426683 791530918 19068572 995401754 556059580 916527928 651181084 955423397 999390206 118800425 33024250 983916236 492570742 743653812 782653572 791175273 590411792 868071035 376058569 590902319 776039167 85523942 27998527 873891959 838586567 26734213 753337981 790043302 231933388 801098809 9669351 740011364 238584432 536871987 915484711 561131327 799132746 473690751 318001512 914958567 864000086 918691569 194899922 762436976 131425601 331674501 496758123 787681408 986701435 702132332 233330964 914216388 742049617 880403497 791222422 170892814 676881734 487718861 230739296 302853218 903977675 524624956 754855770 508762995 971389634 267128885 737024513 967379842 355296107 338802360 211565072 740545126 278645021 820496017 390190783 890085457 221870369 851848517 727788051 391221708 212540393 936073262 799202872 140976909 384031180 905324558 937810356 599977733 982136092 938867880 907568919 783004725 272864160 151854152 366944914 488067348 901565658 541676416 645448121 857963667 339019232 78453943 324587699 946811165 985938302 653698989 981196380 615628211 313133697 443187807 93297715 843624510 847357448 849065880 883114033 971154981 823302086 406532256 843889331 414491540 795793836 84915109 770213872 207488678 943321651 416190282 577916504 819440617 185365491 365271902 985423173 625403820 68685271 795709423 912009752 827444588 973353502 665175924 678395447 764668883 850700174 669826114 65376745 381958262 167035323 435448547 641259169 932401108 351631586 792815764 600392191 368950329 812161872 450612134 883691480 908454317 458040622 465336947 814625992 516865487 311867690 227255766 391687807 743900468 860807323 285991391 756508436 816779273 492126795 953991282 945766154 901119487 998483001 901809543 858636746 928168781 406959188 851919442 944388074 860689686 220538158 732600380 876797825 788606201 27713399 189755786 885678412 593467353 704667843 760663260 916894036 932100394 716296314 653723658 956384195 916586134 800397314 758032277 909453825 833291411 203857254 184915456 808099891 596380746 561938401 347992238 381920369 149866298 958698315 196521460 146475320 429496884 829882020 878859715 898539274 846511619 422482441 210393069 39856276 893575004 953394915 276424853 473210614 868181277 787713293 300322765 868461314 889549672 730546810 646264845 896528305 400402872 957063536 401718296 943404903 747151172 891560007 254371658 12985300 784929600 440912235 967409527 939672183 412268691 959397812 755618889 980849740 984212542 647277948 973705423 972982208 824443705 978636172 902418840 535942706 966577574 915130231 761509153 756474952 363377930 122340313 719313652 793113136 741796002 225800301 897880185 755978126 81672011 118604276 527511067 382360986 458498159 743789456 759948165 261406708 279505475 998374955 969056535 747853401 194176933 974342277 884186431 807641216 810793640 637754895 991314587 3687539 790095225 377106502 863174367 217134409 943791209 174913516 977776961 770900038 873878189 748307002 394234317 532410545 915810621 867335134 230802058 447319108 843273495 463335547 927590128 236437289 953791801 272276643 304912941 360069446 776813193 158786790 216052682 882110625 849527477 819128714 744287993 941309196 346847077 740941983 904988533 435019610 171001411 242551327 860469443 896999816 938426949 396728091 488889575 748117784 729188967 556577696 863165779 807942317 748371647 868856568 751277888 497504127 66031950 752053720 815648601 101730196 960105052 961897481 883705666 834735194 368251939 994550426 963154217 258673972 167888567 716461736 935018218 804741459 864541485 371191084 990195012 94688003 479664445 899051211 579512849 934494705 787312447 604419164 814498083 797352492 103177988 49715708 964484664 526716415 737167467 17944626 374761993 649832518 803611891 832977305 154911185 242166249 360013778 751063098 831220684 27123429 782632168 91267450 837314446 807389070 863575564 105384337 294032732 518966904 617976947 916540834 380171832 864990257 409322047 868433293 558041263 822940645 889548102 914651881 805773876 798641607 312546944 556540113 841047827 693408005 941135666 105739805 970642591 813056990 343911681 897218818 942675628 221298278 749864660 283890443 259403828 11466729 789034995 812313675 272609484 954211399 253638597 212413359 848898189 840153399 759457355 910480523 845730071 531807516 971656534 257035083 780445745 961439160 801211387 894607542 222391584 252114489 353167999 773375753 99430950 739943414 973047285 988669683 869372436 904048987 689853174 174207919 266813235 151295702 700271371 336042675 961364106 144619114 777949907 857546177 425722579 997386632 681608094 564093273 301508745 932791840 517002925 753699565 95612557 862369120 748140530 858868836 137158632 216478265 952889694 419601145 957854453 403284278 691688952 497312429 889966106 972924863 749718712 326995876 810888324 767379680 938173056 591121037 582409131 907027587 521747620 483605325 645533459 421403042 787285002 874122582 871808954 880089410 925680406 973559277 871801408 780397489 795387311 746751137 751228495 215551067 964024769 278087328 979092216 816818357 928713085 187176309 121291174 702849580 516272136 169000132 917584318 117396350 745856781 966406935 919826808 896583135 667635850 757650658 920705489 897599643 924749498 83026735 770603547 707663251 615769673 290066384 168980895 848337568 814333241 902479772 945604440 19835585 850142776 806892273 961945868 499514256 523488672 947086509 887559596 410794133 209622841 166992824 964102095 930153706 155703191 725922313 843256031 645619180 228066230 979124085 765686060 855623010 410227046 786620129 488130452 180580477 738000276 516650878 969098457 878271241 313897529 826668387 407357428 252320957 603208444 587197548 833839898 529838859 57688060 432923415 669180800 795527751 444595242 383854213 569378050 835977981 942028356 382148230 552363936 863779319 576553587 747231175 647384965 924642439 897241844 780390095 884419621 563839255 547744149 862467808 55155298 766538223 631982332 332377611 897359024 976941818 200575506 726771532 952564937 268327629 277439577 785211842 350149635 197104339 609874256 309699746 809804387 869084925 14261806 47469335 418779486 655555175 79686520 737138239 770331451 155933132 328895161 31811720 380284426 118099511 875639951 466616778 748861486 277295285 337365275 883770287 889469751 786001325 776986842 171199495 837757915 531772318 364402971 877206279 653238470 589820642 112154942 797523266 72501426 361113349 150072681 167041272 757244725 828226202 100094765 465426295 936632445 774191408 642942460 873681936 542460614 343824948 163631637 159925838 186437482 98637448 756009327 56750257 758704747 770301850 199335676 522785110 264828658 997617153 757873883 543220679 203984797 778943192 385696891 163500904 618471391 377152100 141991097 527912511 307097266 349530487 979936055 978599442 830869195 905368472 938166896 472164148 308938533 867652477 828599304 867700894 631139460 975821101 834680261 990423852 370797060 139292925 935293300 861478908 986663436 800642158 246504132 992942483 790506169 720631542 51052896 927105928 761041902 935095384 917057563 662431192 834190187 963520531 768442647 226496325 758072701 854699456 949308791 466862778 870940444 304709715 741973956 442944174 615876929 842635636 850902982 44469759 311482465 498380221 790452557 738400979 136080338 342756925 432140987 720492230 615490747 369423472 510289283 318818028 98908224 501764369 736237417 313272055 969101157 893323787 894571562 336025024 959830391 996511249 275235368 859662243 751458292 960018666 917237670 404965966 467732839 738775443 911841689 560404057 779256590 104991495 816238055 238043204 803878119 350345340 205199931 878804141 927910796 194470458 328196853 743891857 660626057 915260601 756464757 896912203 183600791 913686208 21327845 806567410 968946735 870733945 983499398 431728942 807085837 462219910 417640612 923323716 534084013 944551879 906157280 53231776 806711514 974051666 763540135 551821320 828379626 87748351 520683020 846170662 978848975 713763357 121433756 924226359 811687869 333003847 822493578 202211369 313359668 601128499 778605826 845844310 966158713 148934375 745536554 911180343 645289463 849145101 672009003 722815865 570590414 762032576 661659686 621268940 962304628 721244932 965902686 956892240 150679066 388838124 408662585 382072513 250387693 279676407 252186493 18657921 805648408 686930068 804025859 789744277 458263173 265935019 228285562 57925811 898349557 913034880 812326284 864703992 614285870 846913998 899891139 553457921 609489642 125514572 55343339 295996265 259570614 375481528 421401264 835225699 888257016 758357374 752974723 766558856 164273751 913801516 840787779 678669943 131669371 371708878 991745522 832905292 469676876 507076490 914927448 881097231 53044961 499580527 937006984 918604602 295286881 990629980 316201506 748823706 41428734 764441841 838756998 824475545 858528034 869565450 750977226 891857390 916811493 468819419 824512380 636043597 39341371 74149315 956173846 799825492 416752240 601067367 929240291 55207596 952578963 895959667 903128190 542977184 325963555 109748171 924144505 305359363 897108106 752960029 906247247 322337493 842678847 746535267 655283089 194483817 944694720 148848485 855780164 107485075 844775962 144751414 607414394 953718556 883082677 383382344 588327450 400279478 658372437 461282977 758895344 421669965 937502506 113797288 804149823 18491805 422893135 922930905 917841180 27581452 424097501 872344012 998721118 834828365 685304718 895598200 857081760 743504727 260392443 908123119 768190661 571302891 705333421 846147464 519165974 747497344 939131091 560905227 835397122 844803984 763450515 846603729 694970865 702027140 999465061 831109207 973576046 739616184 756552006 818963889 708260235 572571557 463425642 262614211 706010814 412224864 928026072 377436821 288261105 582390020 676536763 979809413 593429313 173195922 617120866 887651073 972618617 885954787 815707044 377606699 113487336 819824715 922540203 889298639 142283270 770058396 821705481 985723519 454096074 570737371 456558509 917504110 897508415 29137976 767806548 134525205 194522979 528609833 735157375 923718331 182333066 827720280 838243047 788358064 423927202 722967922 981857544 280271805 597157714 864337535 189860199 209945939 676219914 325331292 851160392 906559711 630471509 202622495 756522426 802817706 224388338 874810060 39461072 741269142 790786820 67059203 380021523 20838660 889267117 480286190 792412226 884090383 699135746 566084327 181315135 751771955 414384220 501961401 260779875 850509211 490749878 872035501 96584990 33204006 355347931 30322365 925435015 220283417 991996023 928671451 291166941 608263612 829813870 442752810 967863876 813991678 280563896 790867774 997224314 109946505 636221596 284306365 120027410 968167615 847221827 918462578 813152252 695057435 916639500 499324345 743288515 52869574 892804099 88714617 541209910 997314515 920785175 796036334 964141038 773255674 719559462 865745442 173888356 806559012 885540052 183030764 817641909 581541511 761797963 337755325 815063254 286869750 293105189 641846886 995230607 231363443 894845746 521413987 66075607 582231542 996092915 163797136 903339923 746888814 170043470 806880944 891625453 869886868 744986897 739515785 930814591 424961075 514890964 839532809 703894782 107030955 965783322 110422082 742570821 836754917 453902937 972860393 331125234 737020247 871717454 536612813 120168148 566767297 965566964 201487698 466625108 945315825 970591928 105904124 951828528 762557243 922100762 407820954 511785963 163036633 948697912 795677336 130286506 722060266 974302783 787088901 995990216 407548784 948144724 122401625 228081161 933283463 203011896 805350369 316041552 923006632 968725634 229432791 70444206 922051081 208114526 834270525 137434663 297377936 731782111 8899161 786912577 555727475 774429262 848628164 898082751 523877763 521517069 935168338 421389275 801266153 687306555 70050428 766491754 700682286 3677524 785610689 516660251 898094227 566688149 953074170 739524735 875692953 477436604 919692350 311122693 825920209 740778096 629946947 192018061 590457577 777005959 643173988 828244406 821626384 773685114 996465924 339557633 919391771 905251683 629972701 209517375 950472806 950364149 648008105 824861496 880927756 677949800 494665866 188617944 400998688 156509951 944957486 7081018 638251538 444501395 207963663 899776033 925986118 278368421 584028612 948511270 816344314 719205110 572046905 189579012 300881629 825567870 815793448 745050628 226541758 27581816 293749612 554367675 809362134 580891083 327630279 473922489 90440387 563311646 559013611 957387971 136626536 482897796 6147484 627718404 973934223 306861320 946113723 495903823 444744888 930095549 516475142 761600904 422399065 258861025 772946664 821792833 629659297 863284345 318047235 887208505 793985225 225758704 498912173 894270985 47234649 949917369 200419755 107915728 990272044 399354342 8401643 412484996 112885276 999880881 863820477 276059225 352996429 732250720 201997323 894336586 380908085 777233264 70349276 806791192 493365493 945287315 520497261 525986756 803866466 833857561 514706672 925067899 806803287 556817929 398324046 474572235 543970688 374001764 849944771 962803243 985109561 347024893 782549379 459020078 801056325 47220817 111707215 887762266 205626137 820382822 237447022 689987433 34361226 979512947 864456404 993829448 996484791 110594251 847898354 850502486 921173381 946394746 804014942 790072494 30015768 831533640 762017971 341179994 441066386 638378298 890708198 565879595 998893040 904104620 742059189 593940698 616953021 803798162 479411866 612397184 925966791 982879202 956861314 762781805 524372025 500633825 347982031 625373837 806509118 540877273 187464213 220608154 878692040 592645900 973793586 340766163 904543438 166537199 828858576 961869192 806603889 824856831 348238105 342968593 931430187 862882230 991592161 738158745 899545483 420145278 594954207 738062898 507845972 952357683 929526978 364436479 737020247 66907736 27753886 334361568 170379779 434369270 865788961 452396045 773101533 803663575 876607677 711631271 154063297 955302106 737620287 941298960 93198991 751105132 898911841 998019468 853031318 880136676 377530750 827869007 224940787 965867711 658786882 472580901 55197724 461942441 368124806 442701066 430377722 55244065 972552612 574843384 279918084 849528420 100544975 833671380 834410513 295410160 847031786 915874054 974375506 957881684 771619270 909900710 235864419 293563760 508755617 580815256 411820328 223303181 188263333 440978474 629840640 741178589 821031032 737020247 977047659 921530799 712042108 602368193 912409852 277925440 388498738 542236848 616064908 887423285 947098678 445736125 336761167 116840686 359429035 807928983 557942256 865210104 211118356 236386879 835794473 29126625 259217402 923286426 764016984 760748800 252250040 283049902 193941477 738344982 279920667 748985383 794824544 635684715 305455187 579298981 342702881 406017847 761649814 608600470 237450586 871035629 869599383 458662724 415068320 515292967 793201188 87909061 858462042 882477213 449540339 964150965 964478038 207298078 898067700 791169947 737020247 38285006 930642696 790212784 303994288 865197902 265027841 922521290 202271715 34669981 792326945 245011654 158714678 805635193 802325787 102948262 979576322 365275161 932686695 16262822 967026713 305295352 636971914 760831576 870648427 130090828 748826189 787239552 768639558 232792254 346193792 744224477 910466147 592839707 913495960 874728854 792767926 915716889 109825473 86922360 476926132 931815317 219193531 803576674 850932430 902125639 723122512 393101119 942029295 693565147 481576858 940774470 906010521 477389774 459699279 657812635 804910232 522977997 789557077 855100727 831723991 291172191 57362324 388150903 926525473 903018024 954995894 199391316 98179860 834863643 296166937 418935872 428068455 761832342 889215245 936198973 777405227 971750862 979799896 920423814 750843311 946969424 469800881 57733290 171292531 370351837 470081549 812956774 198387608 167671973 818551357 499289778 401899526 750088379 524134602 345560495 380281353 676301546 789320805 784372837 552278053 310723968 291024305 789712977 266085830 747075491 533134726 233259933 789531154 739262941 816940990 763157165 423903005 620927700 343052408 523249157 812786902 86546094 751782815 976566086 868609657 662137195 484455385 469235609 622317148 636438377 768165171 269123973 970999377 109077573 351901140 471149239 610282986 913233767 946693835 445511738 484351789 982381186 617518049 631604370 858252777 34075758 470073619 617826081 747266005 755319599 118314216 401924665 860363925 66053298 359486365 863089559 320628326 869076419 508763059 517187004 990332436 616436738 885345412 895683111 538861425 443873332 13500358 888493979 338168303 108653914 510106358 889267307 460248345 795317008 853352995 886525031 977452909 919287153 769831474 868011901 927038694 721397783 3600000 918904076 920644645 334463585 28952460 327723560 755543652 882031931 98447522 49631936 737020247 37838608 96952556 539142837 501913159 810621959 699658384 497896905 964581511 994107300 808091493 753056936 830647498 931418922 274047988 902920641 957727279 948490739 911808237 924140810 644561615 204668995 950505922 583927630 429079846 727788977 759829832 944793065 98111668 917545049 586897825 742755554 794241128 496167288 365529444 775265045 829769090 903125752 838312721 737020247 384544198 875100044 896324549 184071299 779208812 747049470 381733344 355078275 965670142 927536621 866905110 902626180 831435905 989308718 891049125 127136375 49220681 709781045 301044689 808535620 371393013 992809850 947684861 773536492 563027800 962340315 861802020 549479075 879414732 815348934 912685492 513064926 791486434 958351793 424965439 965906463 760794806 142598018 915391172 225159287 171127921 964190945 773864928 619340368 788579328 985945511 372505076 772118727 507911328 797829354 855486226 273360658 108507498 730996527 565951093 165574621 822935191 675297805 837465420 828928011 839449519 928033882 508412448 969573108 916395812 918005027 64901671 970366284 275738396 752628172 844664250 726644888 329876651 539239008 950451771 829599526 98256372 905232297 143342639 278833016 762990365 657770135 776156657 875474890 711289776 653000984 376702835 314930868 660663435 846791484 81181593 258974629 88410170 887038965 130716686 85234083 617717645 191041167 812874607 120633807 69553270 909327372 651517072 839651071 8344580 140666584 808240794 223180479 887489275 863780263 959048609 823305551 779427458 765110221 804812381 995221211 893673442 739988771 462530518 877280429 35689706 881773525 989247028 701525790 866520414 772786197 783220065 879376174 729587800 774054770 289196251 631915807 956488355 998812021 58588811 988038594 399343162 50796708 850846737 927338627 222795958 90785912 974526687 582766031 208277385 643653100 991697217 318184498 916323168 851162298 134111768 246357924 347678725 771793988 336036263 763222712 528457874 903205072 693407947 294991598 984934284 843165221 811839076 584607375 897027321 987689003 230310232 653003055 618670285 253329507 140881464 228865147 31125218 919747988 72199484 999365336 178060038 998600577 471959359 18737089 391828497 939669369 446650153 422764702 929542788 568283031 248962873 845266325 769368837 795154184 838848472 740003281 770065652 836520887 749080975 989132243 997586065 535057272 918562955 293625620 929780195 932148436 38011382 854851724 338195358 944030266 738157315 394034094 199942268 966572693 863511992 281471382 631030429 995861414 549709666 197146136 726310659 595508583 463144357 197209289 649474795 952672859 830415358 853771449 185687195 891375968 787142802 715445859 995773758 809748364 966440265 982740696 817150606 797764521 375021772 595183075 758260143 764570779 898868375 417059586 786153226 929353107 329416621 318608752 323036347 519416557 802492792 655651462 948519174 801153485 654176437 902161787 542363364 180534436 833876968 788351244 143814814 759496269 499753442 5793385 929443087 814428107 789965403 628395302 407551779 36695484 395294842 248084735 881685756 122196334 836319290 297316294 154959865 261674696 617133145 278849696 870951904 938808612 940689035 877336495 943692086 291275337 556255988 853832877 158851412 223452682 521531484 858768774 998328199 482732571 941359778 166457888 475028268 698736450 969074264 961696578 904622676 864092780 508634151 531910114 570794665 469152647 748912070 219702553 190569307 934979425 745666774 762150039 965380594 275087977 88713722 504277578 108094879 872153182 259720877 262734282 599689839 995191075 264257682 965178283 331438205 156114834 438721395 408331857 417122506 866098756 304518835 994531139 332741804 985524399 605463693 439714488 887861105 769970649 888671995 317312048 528924479 882580920 957563687 46126520 839584837 876359663 651006650 974500325 891535719 831022813 845978154 918716085 349148218 682309600 320768144 931959900 207259108 907063420 747608384 671474036 935205068 559940119 200913471 834896056 797672480 321810606 384386353 887236889 702721535 932175773 417068836 41452842 367967333 163822349 580573637 443028269 837440432 28939600 786328123 565959521 710367846 874903677 903199607 530473842 207577656 299534109 581069278 827383710 604220831 390488490 714008195 223203748 782185402 452017431 617246522 909211522 937976093 334623495 917425735 607707994 476740632 824330258 656637522 885315872 132878410 751659352 850820617 897631799 412782350 24958474 397032149 897932667 20016539 792887938 509291958 443005871 830997457 882772039 711231912 971043432 414914066 924388257 823377326 414168887 901841789 766195088 781933637 863849646 729553690 811344127 327703281 920286447 785779952 943206757 590032529 359393594 385329863 679385803 828074467 53573816 791540436 751523665 871897268 94971731 253194283 401592110 76927286 689520713 804891867 857359566 962096427 709944754 738780720 987644451 577734608 867619131 857894311 777926175 956059977 240376126 709511777 400365422 795495947 147643875 865747474 820345117 831647775 945682113 417338828 708828039 910857095 444939139 784525634 968620421 765920967 901890072 25084623 389409292 598470312 754071340 947791190 863058066 163619637 925882630 237051691 492566409 549245894 754345551 932600647 205394470 931780332 754293371 414438268 197782423 200686384 568901732 272287036 161116735 818829132 773146618 854151776 868103627 967221063 228098000 749116639 790485940 507566952 906933559 866823545 840186395 37015717 803259234 871132262 830283176 561717528 914355906 751092240 972579210 765362958 243715401 498127215 183485968 606894859 819199329 48196594 700466437 967312933 758443375 459660225 932001072 995238644 512562285 439123975 671373310 835439715 519320513 793869123 391802216 920890806 738227308 877117142 155057556 183918197 284224817 150496390 534268368 763643830 921309074 797106731 916182854 284086153 409603413 905721530 393446654 998048062 776106907 998841172 487742279 325268133 215242157 267016712 843048897 972962613 776224155 737020247 946732764 313623699 125606205 30667634 995722644 990900834 973655295 333355190 932131423 587890854 910577125 176695498 841935268 939977068 656198793 418101615 861010882 106409513 756937777 647493630 422625848 56835801 565242999 689954211 951609395 824719891 254222000 996015736 549184775 755110649 500163144 927776660 894304804 863932901 691466704 778451136 789006265 801802470 947394379 989604965 174153480 183439344 754455368 514801733 983636841 461169532 848653622 24166783 951468540 810833377 142060620 6773626 887026274 964453506 772155772 809496010 964155507 764765346 710449782 594250805 786815394 830226561 226760934 759758740 488733165 650229353 957027018 895465598 811821090 959373927 273557940 889743586 55978585 96329383 760634289 267673226 682169293 948247990 897704638 153690291 147644420 644587683 354544432 456308765 196182778 793342371 485410106 718939600 934752387 168920172 230015779 385133161 387593791 868916951 450582261 788742374 602353842 852615231 369842781 417800578 379387920 915780068 657711969 961107572 886053315 83184019 863084142 170072435 845429175 546177685 650863816 398139467 577401092 890487032 373894206 442552657 821432707 323710047 968650661 257595353 993134130 58393405 331928476 853010769 668479625 737303657 906510115 618798082 985015725 968895093 415618965 38448398 740846759 525787983 709429342 22329171 67369032 357535119 777973683 425197317 838211860 996836667 744694847 594849596 838011022 834884300 687023320 825719278 953873613 187811567 819995297 156128344 586861951 853954348 975360834 993997699 400434006 89603804 777075673 37599322 746808628 476287657 888548482 823505723 662366605 760682375 850256526 996681493 262816517 563915344 231435046 100585587 609097630 589458411 538955823 832466058 774018362 212629416 800701276 985210416 125138708 768103795 131492484 784889072 302686557 474193155 276376221 992313117 952523571 464056541 165393489 898834171 910556831 299284100 58013064 849297326 21539994 279826859 452504460 519089976 260539260 497325412 157190326 932995939 957351297 843042717 866577092 104946693 365440153 368872832 738367386 837840173 813336357 760786475 870946374 435461691 967224871 934731215 790380399 568006141 886165959 373544661 939200708 805828950 58280972 493657005 177522237 217586187 282115170 579067854 889065701 927977117 876195727 259056219 879787159 468270698 176650289 999436872 629489495 903650495 966407458 575354902 858073150 856536995 204581037 780819218 713373937 47840289 246067264 936949460 914410999 297287264 811657571 604778656 530745285 150152114 959720400 901310939 999011016 313248242 931847091 828149449 722053629 91995016 761683575 822530069 97611439 301830113 702217017 105032660 566589970 22013290 913892028 582656418 552131476 776587712 890989493 956352856 790467943 751706984 889489375 955932377 966680267 959374872 954708632 866330624 430103219 675398445 768205840 985549154 790470510 905509039 952996890 775268425 536421546 111170582 898503689 190928485 829601793 719546399 416759912 188568091 529409104 893983245 1810963 231575546 850737049 863825642 442823603 936055596 782442179 923816150 831862134 793982088 381845041 563222940 300420282 847900696 175007431 486454008 981530259 758951801 579647422 991967150 874218185 633058185 571326939 857838762 536846923 358313521 286288557 878973877 253740136 976181017 616630879 767719446 962581624 435022527 826800508 924294552 877613258 718320448 263148362 269674425 353702427 988201773 4718555 754110042 969037172 953840943 937804228 612026068 945660618 927163379 38327561 766295173 59829460 147907840 313502717 923832386 551126280 320644458 71172834 956718974 453797131 607328073 6514077 602676488 652041479 751681465 762978083 762502105 893180538 956373347 975398608 939872144 868005377 82868968 861954779 596966774 179607763 783313449 126025794 515248282 755668744 822405020 983761574 16185613 422810733 458267650 769457818 671540728 757525820 343882139 114746353 753971918 737020247 888734263 911469773 946812471 356754217 658173094 979743762 365242188 374765972 85028750 722532282 520654022 79390532 791484686 944593274 806753863 980937878 829668593 598897701 792214484 913735061 845951945 427312567 353879327 880792722 918974239 746493474 970539184 563399109 396231135 806961480 981148845 790120786 66758914 894891923 983228432 526626793 762015028 487553079 160953456 841855927 911752473 212075046 995930232 980010049 856336219 755291982 850136056 736707209 111923304 915715264 287326636 909796473 546513118 787435445 737020247 221685311 766725301 106766645 757650228 967287020 101396159 17070340 244156222 212003041 935863607 952967060 878567497 943347770 885551683 655853935 829238351 502991438 968644795 418718416 814714300 94017405 867747711 498031996 842008575 778646911 532390343 354475201 330201763 923308095 986018117 587804377 933492558 773105420 748259395 840498115 973628742 109644385 858114902 733436548 546020022 674758651 677406817 192655299 985295451 938239187 238376710 898697407 270687822 936843773 469663188 757038396 917236470 401837700 791225231 882681391 824774639 912411529 897026675 374894005 958217260 716786433 822719328 803899237 634310987 485129101 928633574 738990612 439745319 927941801 234886970 811576577 260987816 692844286 773815205 787261033 979578300 564016188 576930397 998863352 657769273 699438913 613238390 353446242 811484171 397698597 222013888 766243051 265553762 789892617 836006636 144548262 219016769 740787491 65786038 613282527 421157747 753015881 283765187 894883401 271201468 758994172 901295979 951461719 476986435 294382435 921780360 478518081 117790072 272363234 765790921 824650535 241903663 94340120 946065220 798775863 565813861 549417878 1198492 890032014 434579293 732872240 167298378 832354757 885256624 925042907 792919633 763647647 451305926 975102964 753048828 268348337 768643368 910949121 353351067 397194461 66903029 985854450 253117062 18060124 671142793 844748271 61096891 896991033 7295101 181922245 217201710 717169797 738372293 837459244 944112461 972219928 181156647 936855166 444905292 848511214 998853129 885672564 640193939 930824174 821021250 372048539 592644719 160070715 503704439 213107894 921590680 976964473 874926769 993613780 850502580 505312687 797693884 819058224 679476074 770430458 877877798 174012368 201753475 634546121 970544085 110016009 820139342 960208234 100589527 830585307 670859721 845761485 834996368 911204948 799871542 814023467 219718166 638859029 364658304 422517611 943665128 738152613 821021709 980318225 747939941 831405870 194532485 680735702 304285575 54368255 394890100 876197431 65127475 597725978 888903865 592893943 63984861 864031432 847118326 666753583 516148557 893084165 387382041 497381700 820381747 929394953 512822176 582608488 969555952 410521140 629126605 148899684 703924448 47848067 255300252 129517598 976396388 898453687 735783930 377602977 480768248 404003012 982289308 846768787 966032193 656120900 901671551 445756260 717033171 574373391 882977298 420048196 426135341 255198933 502828158 289363046 900440289 888775413 506462372 933637094 803852514 400785555 905284192 801386842 130187859 18671606 785832632 658749785 512070474 407490837 33466888 830634163 586198330 883994710 49577477 925226952 809869978 287041142 786813330 358613624 892021248 945120250 848843082 508596638 376033451 640973160 956345773 796898202 428241769 994668736 31164704 607793954 333644556 997053850 398197592 902799055 984926975 48583388 264977817 783215853 194903891 931414472 675262554 876441204 106553172 903356812 523933886 355403511 788330775 114892647 823996319 161875820 25854133 483536772 946096885 289821365 526782548 239448589 24463375 987483301 236736723 861367143 798495627 75073754 600740389 441177055 774705189 912055229 114293291 137789207 796314186 251373360 124863072 878343258 572141392 764266823 794002655 744097300 992573786 782467748 979497286 725478448 591853249 823482320 91333426 403359927 851766291 857166920 476591751 889391369 157937910 46382496 206366960 241332907 955187691 968901553 29628365 212663050 753454929 225700694 297904804 60287794 926671094 821509627 475141798 718871255 632199509 913821893 651441271 802236846 940268162 38769796 584101468 115301146 931469843 808164513 976662136 939939272 524184542 868365851 408716609 282135703 858029828 448352457 133785847 462890628 454279929 917369552 978135164 788239117 3848518 571608887 700411853 782337457 146827256 797298266 793065799 309792435 126205292 937937141 126817028 934431311 757918469 924992287 536861529 384841509 97567490 606746068 907371251 59017607 495488460 863466793 826915891 957553895 896346565 713928021 277238171 528527380 586963819 770151459 370751024 188620904 313251806 799688495 940377024 862086054 948773152 756655481 105021427 63422658 902509620 640510650 747878460 338365632 834381778 827126955 679934040 768839736 225916512 871565372 800373779 404633826 652154129 708678360 451096213 627000154 947882472 898148285 481600760 381218815 450604179 900219592 462998187 806564895 693456559 738085165 859649496 21080551 603273293 835055372 150074122 983329211 70555760 195698955 834431001 173740795 120409123 116957594 965313473 688096505 699323465 4809023 798859517 73686623 798075662 186721306 987811747 89145950 897209028 95718146 996098930 988625453 702704116 135153989 133574314 212348082 938514404 887003412 964212434 775592587 922763274 868282603 101264659 721649703 299628914 630529872 780989157 427680239 931181501 461463466 998713280 843584743 648896851 469909789 757156501 124255889 327259232 819051577 888292984 106695255 827073872 853838441 67887654 861008784 175324959 771828114 479242804 462196632 988163945 606088700 901218853 755864409 988257340 920765648 601811244 711685664 121523044 991917326 225869701 7603786 139957731 86862221 571238021 793803175 764415428 751410127 765116654 875321509 919205556 345716146 765466205 326327356 379423545 781454236 951854918 68314576 326463956 389718390 904705576 124741030 393265190 940873460 143854362 951355447 128277839 997498727 99183524 640853793 427271032 957162585 758811780 431739244 39817999 877568150 954627372 851010084 536330159 933195512 993196716 192510174 715037070 918249501 876962120 765608148 827373846 388169760 401132184 905404174 298588100 603443439 430558738 398252989 946447094 566529143 993589465 961007913 624451434 280330360 334769724 829096882 306665656 836402054 476366490 988903844 807546410 639986027 455617403 912964690 995147768 204587716 938742591 907851302 935584484 160702114 799122582 891676644 600931987 555535183 968269334 522869348 785098185 38241169 563097260 826995739 923873773 560285904 876648614 693687644 452668408 450420565 927958112 936367270 879679169 819041852 209088155 918338400 544734833 942941667 802289032 975316908 848830653 756547953 856401647 979856028 421559596 953897540 210245862 920586317 820552237 466884371 922576556 763264761 792113633 639073720 885944905 171331348 415279574 520072279 939582624 31495740 752378404 362552350 355086099 644511021 893131434 998771402 956191104 850784960 985709005 995199754 286685520 1193355 911550268 612185488 786832570 621468504 961745336 888323919 931970925 473443418 953218073 161366843 601048211 989750937 950272205 824022371 626938424 607523878 765330259 244200407 994258692 918099080 800573928 419329474 150956701 832606475 834991726 799513464 870799646 780546074 784135748 601331988 364269017 782728950 522844488 250789001 392647760 14317938 514620481 234136115 742981388 176489029 859316904 208873415 74856849 975059922 797634250 872602698 815212118 813194966 879202415 499699743 996618005 967026843 952986661 293855916 924775002 508545158 920616619 908284977 968852744 403724262 106379849 856914075 777257697 382620667 301408691 500660581 416388013 182425020 758205078 422869677 63767540 229973122 761680900 472156720 569935572 884781714 277145455 896644025 905903321 888289800 545811916 211189517 793412690 943596499 979208976 295805854 50737583 645318139 902993192 485972138 433860565 436206339 717910486 796573685 244670116 432256445 610468562 740126757 230555009 949307600 841575784 687007849 381917615 344851698 957324016 515622759 983293044 161125145 944186944 137410393 458500488 795398494 66076058 446867580 944336683 855183043 905124654 325303838 543220921 422314475 508352379 847432756 795738436 103653272 998141163 8256081 482266859 650568117 956155339 599098632 625738992 895337547 497467454 915430883 892678079 12047348 350828879 855410223 979779998 191550236 445088116 150522006 860220042 340713257 478676219 680206898 251478126 50490436 801393754 851040689 801237037 789456514 925693134 860912668 505551577 201620342 723124489 876922426 841260648 219583164 465833479 854295569 193766074 216717344 859401931 797033075 143617131 348774291 966089046 842471337 802649996 104662094 668611284 778725838 919333865 672486804 66585179 870558287 71389570 441610919 964202915 166684577 873697177 829762188 211200239 960151706 937769298 924742129 542122973 108903615 766637709 693554805 887573318 473633250 249863714 578352190 499882064 930411120 307676050 142077340 809697885 308787382 530841068 48041599 936059188 178171882 327106405 985047018 133299660 812901380 427320882 725699563 584769984 847886814 625466197 787016819 997847770 226922274 804966993 711928162 764550639 424151886 806068039 908010676 380920136 316272003 113968 931471210 929306367 352609108 501457689 972874014 778698647 363394069 827127663 949684507 982763995 502057380 508967398 847540946 29787303 671514821 133163118 582100418 67029948 801668617 795662721 695922029 762559358 183671537 914633342 827969379 829876581 863513370 975490926 854392810 311075541 836271045 316060068 789146109 124762158 791295218 765815291 980943571 874898422 779047672 746794605 632996441 912743695 886367234 664946673 863379199 559916030 967596483 939683136 180222015 831090395 905210032 814323176 656617176 951607863 781792338 989207153 846890749 940974040 999734917 454196069 48936870 48385785 462182507 718530246 528027078 314076224 819637597 57652514 501867812 926767154 529488131 427397913 572780945 655804038 915645510 859390300 942082135 823634544 811033386 47236579 704006377 762282742 502221925 213551197 828998811 869157494 993042629 602174039 281454742 974267567 315989100 21431300 797513133 308658688 683252416 841685511 785181030 776354982 723504486 992348707 83520563 858326554 19481082 936181717 897129829 850352605 833590489 450681311 848633674 564446773 819242280 392750033 867355937 823583193 911539484 806226542 979375538 934568604 989086015 737020247 831845598 891801065 887029521 822625605 236525301 35425394 882876054 814799542 759361064 884436083 967628684 37279887 475934809 771711572 845016314 120271194 955723134 73766306 897086397 699986098 236088112 225537996 927367178 526708503 195451783 20091135 958451988 37576165 263120953 456564800 610365579 568693595 59182815 78493065 321850651 98420832 904190725 998070872 546392811 944675856 495603860 676876857 862168874 69356052 937950833 614373670 132664542 620685712 845893710 711261417 814715520 909710391 142064293 860283566 796392673 518306119 939430226 202927728 864760107 72415640 785775646 855777600 541621325 138122224 974860347 583141424 174812103 708823255 965966251 853008918 310093390 722215543 719990402 180760922 686479809 918494614 128510416 637665235 920216087 993069976 506524 261220027 84559385 462432503 856991315 333429104 909411811 264419152 747851125 354180143 871421410 879516943 861159921 495315981 764739426 750630085 756713767 803667731 825533417 837763197 843347627 784299083 511440925 249629439 574131284 955507049 809236010 241045132 282872808 965719016 951675676 861696409 763107810 559963675 848849646 117551201 800396966 931548466 954533954 162915758 999662077 185660939 975011146 815740654 213238388 962222199 767986870 926820798 69702671 747864718 897807910 822761095 916940309 767617905 676816425 957894202 394935640 775909354 996735276 365587375 910751721 772597981 966056996 120733552 440881009 457868954 447191417 345980025 273478981 808763378 360316523 121713467 516668581 139492453 743978060 682295573 851785271 731550921 997780480 122958509 953617970 620384841 754347080 893790661 886929696 935807290 204399033 592658606 819569538 893922750 860346888 743977181 753106671 331577064 877750687 788798241 666319337 199730413 954068427 493288735 26523029 305583767 621644034 20595555 184117483 515599237 333266894 717362795 605984041 939276744 34563814 855677308 849555883 522558107 935351147 842588681 67362585 915870074 770192185 261349653 937134970 438379650 530173107 765611585 983236971 919582163 727000379 172550267 462203121 933937480 379219984 678337273 841653856 895510709 723511406 864120129 671403580 798460701 737020247 963663620 747500931 436036830 59388240 869888680 367317813 963727769 895927986 885289186 117842610 826044250 662713615 196354580 412654680 689920178 783459142 868522978 890962393 40680658 723363778 967687778 11339642 3894943 904042436 309954155 797234477 849451927 918688861 969484123 888665717 911862890 91905813 856110955 976078412 91641415 815370803 511847696 829625861 945954102 567448951 938414294 795473656 588920851 624476697 538676521 855032433 750737676 207986191 839901242 701363230 935909369 433158208 935837787 654074174 867457979 842376516 509579113 595709954 474801212 625485792 364209615 818719103 283476713 141056095 647220100 957214042 785326819 374041229 141411164 167842674 46606403 887808870 779456837 249853162 868686321 794382190 792470985 757464149 412624802 267187495 175867466 921116256 602641776 230126821 745728798 922336247 856111815 193432182 358931701 903531695 619163972 658411504 405118295 984767613 814005701 282919546 524318411 755848530 757813505 743101462 779151571 932389092 813497693 877811005 433393170 846050309 602696487 888640312 696660056 828201083 289217168 776874213 737261284 467205474 718645501 351136619 274980309 438413341 520340325 925662798 802584881 874562018 517593685 979595430 912175307 553770846 580744088 494154954 869443060 803367989 430232166 831580589 304185067 954037337 906666206 781607114 607235458 972617262 463366546 758211731 819764770 817226306 915405901 996731377 699943960 831637315 886949670 839569969 464270316 772303982 682155718 754784156 772208445 889585544 520475293 850219295 20030623 221709076 561204548 846939277 156435370 685707021 278343028 393546606 777802153 910856233 933052319 851593152 706708142 708335007 688882729 593707896 115515868 309020839 918418086 829852143 88178724 889214701 858182683 773000480 506596299 989856038 835943222 218536529 906923949 186730440 159799154 801730241 855401460 674789255 401924884 785254792 824499504 164567862 915251102 206841563 349351172 281529070 192381743 780477454 266190990 895387982 420272955 886029346 812083565 920346674 943350353 927072304 741235111 951724415 289605524 677208970 165581608 930803880 79927080 173123702 777681902 647776820 937737374 211515653 794906845 988664880 323860730 802709046 142832157 540347617 337599086 342435120 743814250 875040734 211021090 778926195 761327530 466195255 774024088 187786155 846870916 3560257 252832617 745739205 765480193 621779636 688950770 694073715 483282213 171492116 490453528 768213122 371154681 922779566 805955073 409649125 273387276 849901097 930827922 956984480 746874497 972071373 760066163 263592689 326094740 320361474 156319213 907649639 238729229 856575730 737803507 565162158 66189176 622545028 782743256 954607541 950221141 942386137 947389497 813616200 888992612 762687817 787510427 615976578 835855546 996083163 508630726 960287274 766578447 975622731 865975626 660355852 842816366 460325491 994118945 745844022 393207225 121753576 842897888 841027506 791970063 862354701 868042017 959294120 954333491 96047813 546272213 886775449 807744641 98440855 991050667 739370407 828312484 551571259 914659897 571291368 180935171 926784767 891240458 694352880 676351540 699187894 707170181 479978402 810389830 766534348 534758325 427839799 816863164 901858664 80377177 364048185 905522043 851462230 807569085 847480743 805357822 940695624 53206293 773328895 753616124 959965410 135940098 8669395 776504740 798830468 926867038 204004060 355214631 668076588 899216049 585238499 234756265 821755435 109017589 526156176 848812725 306038201 727711210 803086496 535582470 961342360 404839101 818226954 88935617 861498578 910986465 680371571 226271357 476206817 103435133 710501845 822953173 544608288 752166659 737765731 763862887 630230452 774682478 708802460 797230297 846845488 957673838 472271725 930182928 807539092 203476637 979052867 338994703 601345079 800882340 860939287 535003855 922110571 904572492 817699877 424678299 60429670 8290550 892545651 74643088 817789399 979794343 227713456 914426471 785098017 437746663 264828368 154614057 919017933 457714957 752210782 784201966 773707843 656497036 906433784 865240925 157589808 808596283 249807200 792752836 939186096 189871403 913290773 126054032 956805579 130331520 982000782 46661775 599670937 969822066 762254985 324140987 685629605 834362172 110431246 763465184 761519138 975135853 537513118 268556231 887335314 269378696 961491030 799397695 108019859 917602355 963076490 862692274 852201501 529818671 592219051 767732379 418056309 400450896 790416315 73417033 795879622 295133460 66810372 854821920 506450519 435729814 6556225 410091714 902194599 86929670 33341355 58373208 43631294 886233927 613050361 919284819 855770712 307816167 678511669 818224935 445186388 884015259 460539503 74460278 793132314 962992144 358809008 799030417 718210578 814890425 443286840 970088196 622653200 109830670 731608979 130409326 983901381 765840256 892563713 396860563 73474746 870414434 329850157 994759760 740349157 996765083 55017381 632425128 875741599 427964232 97110089 891754876 712930746 460898532 984330574 747670228 752477362 866407521 219057162 900382551 233995344 938539021 342036757 420096704 809701838 817996683 935052090 579394182 794528060 155729311 193807850 908750634 629698481 995937502 62634668 961434477 982345854 398238042 907318908 632310513 960833340 766799544 839176806 908544471 824473379 14767334 934076337 884993835 592229203 946610966 587265964 162994810 502400180 465210480 901001589 68861692 8384309 896084934 830085165 723081232 253818641 133710119 741475350 881951570 711225539 839907477 887469714 425014573 517897975 601418160 793830874 223648133 962595919 871341466 849816942 588348242 275059298 437994893 791000784 289292918 779168416 505159285 12521421 786655639 257030962 288393451 918417600 623472356 696637118 255514803 786607142 893182657 906378274 787390512 916612895 975692806 908321386 919254640 585044532 739359398 781959496 985233650 285810556 951139624 912374415 685270161 872642502 163653832 805003681 825989398 28653682 738131535 342665087 549253710 369412294 761453236 851609072 877881549 816313927 6753743 753708513 960198782 688803300 422015978 747453546 33113081 908310506 333587120 86199524 745303896 885984898 127517647 448010988 544486290 997386226 533217711 920938684 720404685 998436345 162807449 169581068 874934102 854407953 749527202 947242086 774763276 839372728 520543238 380769536 316394646 366273333 852948421 999179333 950828050 970946947 767708688 426728360 860035474 814474175 384567078 26679060 656550096 333650268 126377958 258219966 841554468 257879096 492322740 964269118 380156569 350249916 126028653 72237822 640449622 975559691 236233947 564547961 252221016 744329298 111862067 999186563 295509472 672824022 732162624 540389589 275500383 627850543 812731184 770818855 953616147 974242482 317976737 902477213 760151915 4803098 788795360 916770140 775475595 822418668 40734013 61511278 808654065 702628042 932145138 100390458 793845118 370905742 32414515 980404890 143242950 746755709 278416066 457547193 669806719 883064673 270671679 890038829 843930699 550881343 232374971 114452310 456929706 16071492 791287270 988714669 909810779 512708760 933582944 428377020 372852671 120795888 745590250 948256704 790722799 495775564 609085535 888408799 249991538 228598990 559436747 722086344 4476577 629609158 802206368 468976324 764696363 962905768 920398253 845280806 751286422 749765153 842722174 733754819 731960587 313545953 893124851 958530656 313800350 580345811 229213736 613985070 620162200 325737127 941806164 421024089 360984138 193484995 565236447 727733019 283615626 870372913 632033710 548219416 265867365 81137556 841979298 866849701 804566885 737577726 796186383 444741365 870027954 313064177 784877142 331600479 188980520 600435423 962035345 135226533 860034942 490451630 920431188 186845588 673947469 789482655 573236490 767225814 691856340 42229835 978273286 508742613 917007096 432079365 543974345 175634674 591578045 793173551 737096021 846502614 320883080 410736523 871784498 746099245 983717717 236812242 766763330 936658136 961188861 319956348 278649997 811404129 286684695 982069730 673132653 668001983 961325803 990239853 860870710 45774109 397055718 46126699 776449906 147160265 826290794 784490147 548856761 830863452 838078460 747511293 882474114 752081102 313490389 717362733 944290071 249644411 185277483 858247050 313803740 979055490 960176954 161156817 500867369 855896967 881208837 793245285 854345959 883344655 101012214 969124315 694891915 513101296 867528595 741785034 954478011 185724305 566162327 275052703 942791624 680563168 957891124 596192569 499428283 85991771 218382772 622874021 808779605 782856948 892129796 918905966 930200697 8262837 759679473 752188919 947809602 811077832 761934242 513357462 988867686 102729639 354318261 786054733 958339148 948150683 777160141 544464360 428747469 267495643 875055280 812584177 986954235 762003516 489578151 185204636 671147492 97089235 336036864 253712839 705849144 607997836 250966662 663589633 803573213 730005232 723105015 809065810 115685245 799985467 996067121 220927251 537727949 506336212 680293176 945209618 424758882 872281393 383591065 282308744 368386110 43142922 559721015 874783549 597791826 756078362 869398965 153986580 917992760 582373958 692907976 634634387 11906662 662543862 981250735 765902299 826510246 580483686 440253450 806338079 959006894 943541974 820290405 787688781 631887815 859457920 596784762 457469081 245277866 812921808 225430313 997175210 819959752 952963471 750762630 518258993 918527227 37649126 839687906 124957545 639962908 5405768 817544327 314841016 111238211 201963195 908519310 758015441 915385508 690588115 998725760 49239820 892317088 849887474 313320903 905704265 809005940 179821474 996392723 346909720 755316155 678415455 972217797 332396424 983455619 558434042 864806498 905235891 766904112 813699228 936050646 764019628 956804788 776469191 996870782 142216177 858263070 807105050 881456270 934091822 864147737 535755078 591141014 578853986 818877951 837300290 457890323 836845721 747016259 5589504 726709611 971097046 121384016 980420410 737674779 875720720 550845612 835515248 771079832 828873776 338035025 357757014 752347368 800472786 247591167 932553177 793747144 988694241 934736251 959527137 444608977 440605964 956569315 780181168 285800071 398511351 188659253 149038043 294385332 494682193 892371877 393865205 873879193 257873860 550079752 975325521 747936684 918918283 592290759 203033936 915172682 851813732 4516057 835045302 366520360 61893511 813097866 316710399 105943272 896838363 779176699 5531238 815272105 95538486 784934054 108399722 641155099 543782438 906169756 843692342 591903769 87847284 900202316 549228399 760984735 822902724 45115204 896081044 940396570 578143584 373189620 386867368 996928534 415985058 963505305 725800061 210848164 132664045 910768567 744359614 818252800 798002404 884885217 812678370 801618862 323429279 933491295 310925160 293414716 823233228 573284451 603612872 474422262 948206690 920791273 746077512 350714064 875515072 134614250 789896256 851412948 418987984 973520321 813163543 866620702 740995300 789098163 944783917 899959359 189487628 956915259 391356313 258766223 705964219 817297583 990708891 404412495 916073545 70654652 675234527 827941448 39239599 508739674 175705810 870989289 956034707 978311205 842370025 881330042 949721859 508829382 786463943 492080698 720916262 978142391 536111420 766444775 762651985 926650970 163456465 957683345 886490349 892110311 325144786 31666029 174822388 391647065 949405774 42280050 803225981 871111418 674671596 151894414 763076986 578557639 166385370 740914308 377467692 906320097 86722201 805583273 945417428 751170349 863986055 832035436 765477136 958983992 674584079 33923553 601189479 527314489 149506715 519999275 923040202 574914169 868544329 292284012 509277030 538337682 170474793 788816243 518842884 558065929 338957302 481371400 64340492 774123602 761279463 26791947 964753372 281974946 564912726 543885577 867387665 763118089 962240833 995577048 134919477 169563783 107076304 982445040 154722574 775926293 785592764 276261451 635436055 958423152 72781252 848585987 806646507 906651359 117907291 11755646 32697867 792064393 162187406 811436184 210353045 924312959 369996210 501611943 707894093 591577974 941712382 863192039 417728245 892947862 706436131 873776788 753873685 336244435 642417794 821315800 283068228 819302513 516225938 121480324 580089108 270508910 760958701 30439246 762215822 944982400 576011345 658596557 264616282 882489952 740742280 879958455 837878216 71726955 488151597 104234838 874022966 891386566 750555925 513526205 382278467 114593815 411834341 94179178 943731453 765417831 339424710 756395117 858560389 878859159 184865565 771289347 475447626 164024613 162992251 742886485 923568014 375532508 996967082 385665826 79602640 362854773 876433585 284073693 977766642 209843446 749195333 553979832 822455242 870670259 930419687 954717449 940235995 515097326 172037465 629398625 816803489 881799707 917761703 800070205 642155281 799016089 525065187 660931149 751547560 238646427 650652913 968651545 158348255 864132608 393798085 52070466 780930501 19108689 973311046 798405193 436037908 860604861 833970125 985750820 48899306 810743624 946513923 187584146 265628058 669084547 948449009 359115506 878924470 489964455 253191938 184271310 821266169 671978211 250485260 366849761 604136755 941805573 121501867 829814697 92785126 683442203 539273293 791000022 929685735 958735043 72146569 912386348 622421088 517017107 672852793 84575457 752139030 154674260 349513936 901477960 898416198 690707566 501293852 991790445 974782463 745344836 501228174 821950923 507374650 757631001 108175943 720323885 921638471 792388838 299524356 707387227 796463980 883383182 584522453 547427194 19556286 23757730 942135920 348368796 923263943 816816846 841057306 837235299 490320090 785127281 973225116 614409228 22851419 247769895 17469858 936669943 483613312 717971348 546833410 599150966 35230675 791191365 888686598 85294133 930378301 169181454 468649214 191013473 9734367 159789702 673852388 128355923 690050754 382519581 936991581 928849707 861528748 875734043 935030419 850275038 843019461 905899439 656537572 603745657 532894852 393693090 853761618 82843148 751743086 829402569 743884467 743558540 536072647 810400158 779180358 219854786 849215716 621625158 573515792 973558928 66818841 246728835 561707093 861737224 962724733 521893106 519659029 60569116 392073114 156462029 884690960 429492703 289669172 578429967 622209498 864969330 116306206 212531755 452137006 917423966 779107138 38991923 832939034 393225936 966061511 10793402 447472659 355343182 495812682 84345565 829135367 666413485 408479491 855399584 805130835 308524270 669930869 409508169 931456074 771839350 703847297 311247057 772586097 802908005 843615119 416157697 583504043 919848160 66371015 534261637 251173634 837713663 448623301 710467504 496232590 877628570 796220499 743685916 612928982 873575700 814656555 461013991 802593083 741204852 842199791 374433017 685238426 839975350 217028164 385552394 852286969 864411365 362403990 826025237 484711302 615914969 572891047 854305522 651613530 963537365 704773864 32597973 155939463 813975946 348616617 749566509 428211214 770126306 869839516 847196137 771227847 909938306 799486884 891923261 853586405 735039299 599154935 950836997 945760836 375487591 620251426 846954565 36618439 993069579 626958128 473912141 407033707 935844055 575506354 582283804 253765349 213405149 26809522 259718741 908380588 672698310 563557696 502612440 819280435 929594786 181118318 887153710 285666734 149424025 861268961 697151669 759046453 960575591 457058500 74740958 460561082 753859926 904971351 305489031 419365740 445837427 313213006 737020247 946260256 24875385 675311063 964093976 701908903 302167589 843252028 589747932 858736505 974950296 914010305 248628636 457050947 961289485 682870463 730476699 782383078 962470432 52979276 844068715 748733107 183452859 800976104 796657721 468967273 699764620 664231987 231681053 782424016 497675108 67515429 761030887 825091889 428824963 486213903 711408284 474062212 938098722 513500518 794642441 907030258 284452544 790035444 872086009 966346117 571301400 290398044 793289702 677515600 782796388 22079971 874709260 913736384 781795190 897590646 827253500 979363898 788053256 896350136 999336118 913127035 474849452 814928411 604022897 762300346 957427556 785753005 816870553 483285733 674795954 817720738 949137604 615794020 791943046 275174452 806962986 846410679 814216540 360492576 852897068 845089726 818539494 660919155 473016185 167496923 793663423 984392838 840952753 924821058 808548209 283604309 113638362 739057966 860587425 850953010 584481867 433697796 757672773 865907160 838064064 999794175 174026150 772085134 844501241 832595840 355203527 937973063 972161653 975049455 974712679 721255612 136150044 798819046 751554573 945363639 947233081 854877072 867046625 721238713 816617087 810050294 973182174 464657910 6050139 718136016 902564729 908359447 837308002 775730799 814409760 788002629 504372704 959889706 15608667 880054610 485327789 796605531 905159753 884019522 880708467 792446222 339816 690715501 85979386 770576755 830032856 781487912 738230589 727871179 823518286 970779153 832413926 27004752 951975608 137896558 784869479 968050530 896248528 484948309 51404244 728549430 3688937 749598506 894711013 247473 267103689 764477116 995817486 810673252 909042273 341712437 382802227 838740717 253862050 562842888 241898573 742620046 583301079 389324216 876380847 869883583 52835090 589841621 400473429 50743709 903645249 976545164 999438897 661896510 813044142 703938083 903897071 901557933 856120689 928936735 596507919 119982650 154434318 958553367 242427202 109340881 972263976 765856963 920365918 70636382 91766144 844103687 728347270 319025690 942704452 820691251 187523089 719420686 857344516 97745077 968990489 745860006 277400656 813102952 219316539 748706244 145532401 994030250 716961729 799262143 851170019 652474941 837232695 480009745 770355698 695702031 974152957 408382718 198184504 420884990 460827054 841111619 433627192 91296341 941956375 335073799 826098276 906550799 787462894 835843623 813799791 931271380 757522546 376130810 875678805 518228696 261767365 69001038 108902738 615253365 863355705 560715018 614091498 443305843 769099091 971381923 11020207 842373361 305518131 778252869 188232940 959950281 987568766 877352134 593759501 544669396 184461055 500516740 410693927 911127967 915328578 501531661 589503110 126144555 790263996 646174925 151223820 509746214 571248418 783522520 33690271 610623650 66301204 725337670 997167029 631298755 242948322 813792071 400146395 818515745 745217144 219314290 867206058 494920920 822542955 982653329 631348944 770849815 932061145 925447442 218977367 862447734 682225577 834171822 810163850 759236304 975822870 941600306 952460118 674686733 384079499 260921369 870870341 35032266 835325651 388881996 961290925 742543692 814293168 544426008 874773502 947381961 383838801 867802598 376464852 696029601 198517312 744009359 144372837 103281814 281338517 283317636 317373928 744449242 551814321 794698083 397543313 789442164 176286118 744750659 230850793 487181244 412837409 360442757 954927830 796767238 742213346 435909427 751221141 136656321 951808881 253619276 876180913 899390431 65525032 67662769 405236483 844699599 891080123 825585769 281608257 414345139 712954428 343360760 759077391 999438025 594817403 386902845 853091179 107322497 933798496 912749356 401821704 860865538 968666453 976710396 133107838 366819996 446605047 556464852 544368421 871290007 997153585 892578500 474507252 971034708 852464402 128145769 575663448 269025193 127677287 46763803 172585139 12186411 451753427 794019915 294462235 566083084 311797004 333172516 108735480 881124720 790581229 114562723 431791543 842173426 182043490 940735338 809345835 984560932 26823839 765754653 563820977 997677882 18314503 798739424 876671453 49428121 507057191 64244971 319244454 968571336 517212490 969126665 75206762 908552543 864670064 933672827 881078543 992923563 484864849 995560682 881829752 777824969 781946056 404621450 458184654 979520856 481343681 884815458 81601806 927176194 91621756 324507783 487751508 912371112 780236725 876836523 954690959 879777753 425156527 949141157 614234346 222483378 901500928 191521565 26181591 401569636 922909183 996182054 924772401 728743368 494178453 957808802 788044464 954077632 553802060 968642522 825580243 998640708 1970152 911745552 519390874 55792327 38127287 751619715 435072019 8771070 518328464 212544855 532749979 159179570 970134648 440625720 535483477 284824155 893252055 894532754 905477361 41425054 819330474 750484678 763254761 840191192 975917979 644585527 292961376 861176460 14445319 833264248 758522702 971506533 788005886 959112602 962688064 632675108 982751579 548245656 115291064 940077032 609818487 862117707 769466037 58966062 986273494 414183170 940434948 645896333 807818990 79572908 868902948 888416762 739349135 643883552 853331554 700886147 851632516 586516749 857818794 513735729 378433017 509827826 866081084 754338920 811272124 494169194 605849144 505685170 24619520 798316449 419720241 234350932 676945276 751336069 505512922 482032436 871963833 608452397 845414627 772581167 21678617 4541471 461141690 483764939 807472063 189542832 811144479 792474862 149011945 907191226 952459966 957736187 392824869 865337675 622720224 828781902 892905861 512604522 953691377 893732284 989343628 162856394 987529568 775113075 871994292 308422077 985268745 762227861 685272247 744869106 961033733 588829203 295291889 759982190 38295159 36339070 875179702 99401960 812660114 967484953 988945084 985084203 568032842 169303054 795464127 723088532 765916493 199093477 954722722 611317678 701280138 262645613 198807353 458944817 420873962 653978521 772699660 196098374 825179102 692556478 45059469 896104097 221047478 310529957 756641996 735517154 842793724 942295985 678907017 820768397 171075371 597198050 533017069 893666499 866918874 779605769 878101089 929878499 754616966 560601457 43520983 351105652 942102788 911885934 202817328 879306334 198089216 379514579 328573267 418178237 883776492 593644835 962564540 896483895 568606769 952249371 769008385 893650918 343121749 759882767 410168395 918648310 117276893 856538646 759894636 921920463 755324731 869338713 925321710 925717274 160245566 808693096 929688849 85314919 998605728 719566959 229247867 941265623 769626155 966149625 981079918 347584350 898006047 776185914 752996043 392409179 901412555 754361570 219990832 899673767 439241753 22217293 657585539 269455748 871702720 594338854 779719031 206369516 822625480 422607582 908778859 760359261 26693916 157990413 129757630 812148571 744776391 768347394 770090627 746812655 874540898 74722125 853790036 795544885 914741361 404241446 490968478 881489593 124923136 959317064 516722831 668795774 686271175 912083539 811221127 239572299 62725118 693080996 828807688 467888131 259609295 306421591 968927788 756510855 598571748 314887893 865937906 242771524 862244976 994305028 885415937 744870304 915673377 882990745 823147867 333108572 11032803 893068675 4804420 281931201 975346918 485652343 246295305 315932605 802591138 762420961 514388971 116300821 919629336 971080089 950974531 940438093 149716417 256400277 295439618 952230075 512623111 876892501 835928303 376882105 305298458 434151843 128723982 547515364 867202903 979475335 952877306 749363000 43950147 853670195 865459800 34182272 425078166 625001796 977514680 685016130 991175439 787598494 802731808 865834286 434731693 837821774 334231003 812216838 956731362 160616670 638149160 196062825 997084791 300098343 941355087 604242184 262860218 288345472 566014123 21214217 523018059 741476114 877093205 163128175 887173022 857394255 849909500 810440640 303465179 737020247 973411068 951726527 633949910 526063378 326793978 990009601 347814235 842831223 605554558 761857134 998760873 247879569 2585095 837680879 228618494 867689287 262164247 946414507 324019840 200532741 314269431 867047152 422553682 995457859 861710671 689506256 228652091 323656639 958989117 767031356 779758791 863135254 927762871 900817833 839596560 935088997 881943937 956840467 759963626 919767357 919522737 588502077 926185987 881571773 395098348 838779792 736414388 781972412 886518704 787898726 975404662 988655453 867506973 653093412 683974806 838282335 902172321 794003505 557938770 957145585 537855311 288778333 418512208 879468085 234753390 808485346 970823589 388923620 21597767 826440113 842896852 875876219 698496340 833661635 816058478 564119986 322485879 441488322 275099693 744147244 449532104 146124231 842580505 7372459 64639492 859108146 266542203 972836042 305537118 972696203 973214817 991151848 515586996 556948791 761265434 769967745 903777451 147851523 964282298 979689458 848803319 856882040 826487933 994614733 625119749 844237338 801687766 677652413 783516076 823696561 187008811 881271772 790190069 364460596 636637979 781912416 714382714 873960732 59745938 804774089 879292257 473163891 964199698 749827374 812092314 34961947 523487926 761967853 838749042 58066674 892318043 312837898 353857292 601934090 834009509 27332669 856140102 798010116 782240254 470050103 791792329 80732100 856851059 380015921 186657927 892015583 77839561 681032482 701028614 914326304 799068708 773465119 82742705 981040517 303899419 582471913 281645839 759933265 681197312 101027059 217761381 680906155 800046424 633442324 669438729 147248043 694752585 751391283 881253579 661763985 754059909 756559503 337459304 671015355 723504015 817372826 759072847 967108642 821227451 541639336 317012141 823445888 762364049 326936927 943858627 271582704 748398657 957284519 803427867 581568341 401936532 153721766 227422770 270888544 61088846 914194043 50883598 461078338 973713503 896645566 652450104 432318334 76530350 128425614 902136447 346186734 618053110 77518293 676765564 901638519 932507244 59483363 961197692 229505985 108147450 247871843 674858506 739288059 58424767 133551190 374882176 598364051 296206782 936710068 968119208 888562954 848576542 565070558 648464865 820964274 975269478 983983564 218423069 603380198 849686762 35706085 922142624 757981271 830835384 767784985 839527316 109252328 904692605 344480852 784637446 757592574 955024566 163060680 792883665 363005947 977557321 820078330 117872688 48608905 96449127 994368368 341177935 650083051 906229373 891249448 919195629 850910122 709724114 815337007 79746923 800085756 395571442 824134633 251170217 958049721 881179135 989868786 780389001 783091263 794674561 873774724 235595752 227246302 768667602 255721488 960401254 696555956 770695666 350075735 692329080 873522265 195536446 868505047 567851498 945522254 529362256 250360124 358543093 888776053 889684232 471512151 838036604 966659991 980904144 352227835 954284728 546563744 113334104 848849285 429743519 670947321 986438909 851825411 510042008 417808169 745557707 50591327 648180194 505664252 689710110 932076761 967164035 981994416 704337936 921890821 62441646 249315461 891614465 868289646 853729448 795445161 322418645 797219169 681781382 28620079 771079921 8954383 884082755 891587429 851639548 938248643 447501541 254209474 903069494 885524337 687320652 866351469 633236713 910530215 27120400 734148724 823858990 348700552 996625260 12356200 951347208 773291975 464238684 707913890 840678268 101630766 782327479 432745589 943071018 633767817 935848829 827239218 676820481 740680331 172279589 662657512 827120579 523595270 914076161 717179291 555472147 969219320 840068804 264554329 477795674 819930910 923480678 941532942 357999248 944327375 873025614 71645859 899338547 221609641 871242004 15490172 822735142 458047055 754020226 943839602 838248644 743145051 630860505 871671779 626351326 939956706 898780957 272075389 676284902 868686203 473677328 13050524 778227760 986493864 894758606 771745830 813433972 564915763 861085842 176663104 805010705 718086709 341331239 885330123 78164265 998341290 959963155 800808490 599802611 181558612 990618241 715987364 125649167 857818736 561456992 737550830 803085479 974784602 151464814 931962841 143629265 815581613 839627195 954953707 522409077 554629649 573116783 226014297 705861481 635596530 854625155 818168308 45942264 911907016 176851455 950631694 471388803 248211258 793248127 303269733 922785213 842724555 358128838 259884473 413710682 985884273 633569118 799387904 763478534 868776649 272808999 905317791 942467658 751294386 204657978 818484109 672775238 980389275 87073171 884602868 893546386 492438840 938054894 882108916 947398172 881246756 172793226 913079969 765023563 774928424 84089582 510567462 873532469 832894744 917408485 269134676 8859610 193859210 942948632 759806356 984907985 663944515 957486802 719181944 576801983 703776530 94483482 723866220 161801206 354186535 926718159 865806303 731463422 204371220 858109883 285673009 755360156 949189744 741722461 10955672 96650143 317683365 949969518 394887781 205882576 495761030 510389676 682962636 905323259 483267723 995902728 921494174 856599917 493670189 902495668 383664227 925278425 174585607 719571127 229220265 811748756 984611288 409062899 790901061 304167466 934483020 835837060 611745762 940840053 330435524 438228348 831324950 29850382 762114447 846854597 916855596 989669011 664730245 583807659 381883411 436843203 832993817 659293320 349836764 820774006 43960697 636084142 109732078 983166740 990655778 750280874 529801732 46984107 937097796 993740413 994781958 520178218 638252107 961301983 314873026 617454185 135866885 650413375 977139411 169454759 924363310 16715733 222561425 215728469 841855126 980325441 599587571 82834783 797615401 566868511 202991072 211514111 384396872 433699901 780994005 859637558 731144685 166121306 351668452 747593872 919376849 289361831 50722627 339789434 766205165 536338055 761563195 250515028 30666685 826949992 1872848 752921137 46450356 191329918 898157942 915891642 364180245 49494394 775925126 940060806 254163491 777233347 439023903 118474449 923449759 888878728 767153811 431901887 901391177 695936309 170794651 270699859 292445365 921346756 253793481 901546055 871172674 58982328 27731316 974941372 59190046 526479894 475816528 821525045 399504991 713687395 115863617 940084757 878856797 346205244 96011406 807723895 703613140 797342995 609270 393705605 321641564 693474271 859865204 834394461 801347824 723988711 638531154 842700382 935490306 303965489 666274549 121718379 737909629 235814730 567665041 708019594 889095682 519533330 919693591 512519323 692140027 37280506 981235791 156714317 297809036 508598971 611828878 198006911 984226821 362625817 569053659 282190550 780243311 791726423 782275817 697029338 278981838 771209178 723137697 756976173 820315650 819513352 958568208 676793285 708199569 941516971 606830804 663844019 311105896 191322256 933550677 3717296 912467646 119170411 640304226 886376273 298174272 995527577 769874763 950173433 795737238 533463597 761579734 394909863 887562510 484706988 248781251 820878454 894056431 840658509 847893269 876247046 873197400 446374502 691980189 135604827 273784187 257311699 119122457 520849546 657983019 938104408 912431747 420258681 743217279 263506736 186690429 869187830 172550985 995357404 888505834 649436172 934912133 415654747 120659379 877889582 378811346 863388111 841000001 531229598 161388050 87005809 946219547 305811361 328667673 452788167 759944716 101352741 747638554 569661751 448394873 860288432 968767648 963974812 535361027 842795452 530935315 75048905 935996897 861646986 72136871 825807282 748405482 755619971 390636646 75733474 163021010 755584621 435369210 363768180 859275469 864517543 750613108 765784528 968423942 778492046 933386245 230535048 754639420 941070037 253240101 862323496 828010788 7132092 498060121 729721128 954430340 989470751 562955280 607469061 576349012 748504703 541148226 343344596 749081356 329793194 796647614 670902100 743721959 472170872 870284 860233218 65538760 975828770 673054683 904170081 948335084 926346710 346436801 769495734 904551887 411784809 81714058 734417403 271705688 534449713 598979250 822044064 907491917 454850558 5205738 7234915 10781983 319971305 29216639 523986156 949455762 265857787 490875650 753270986 719010864 210604904 789130621 100818202 877450331 619768998 764026801 944403519 649610405 59221770 926607901 763485317 762733976 953462694 314712488 301619417 75460978 561824445 184412777 112217624 288731478 878515536 826453568 393670468 894385271 841030125 772327075 528937915 444532200 613291295 880922607 973035555 574574483 992330322 846504731 724076307 728146197 324848251 632434504 606562540 844374630 99800624 950314110 652360559 794899847 246814779 637318118 279542931 984682525 15351147 90018143 687289432 21493902 840232859 512616188 960630166 200807055 93102810 553890409 593946287 877630393 742509498 171638660 612551275 665427596 44345107 133351300 825601239 693863180 864752961 770339489 429035116 596353481 794045275 585404191 824106313 199490762 937348639 811082857 75029115 29107740 505780617 498003222 918229137 14228677 818310427 899951933 855238606 883388771 922672042 768256099 838568465 255222138 368235974 614696133 860484545 459110136 981441111 922370823 962623043 793981046 744282896 970342523 461051364 61841837 234809533 201224613 737020247 172515947 310267683 950891508 409283338 982745220 821297493 102763718 402738307 958308317 366784262 460533360 131204117 860198734 275590104 765121740 451540614 287819515 64187011 892131595 386839486 966675675 780779152 219821431 718145318 812898510 377306535 16096769 856949611 997499365 918621128 925707701 982736828 113122720 398460852 186691680 771173464 884808982 146068583 52935548 261402664 261220401 56428620 1316245 138491417 960108906 29115695 498558817 388785287 793103424 130200597 952618670 907996082 493467450 377394378 745967357 158966526 116633234 887984848 809299308 821423917 619550182 139445152 328847085 826287642 954985371 239598465 610282675 776835443 723847009 342808280 232251931 735009630 746546100 972487535 456842976 822266205 160498641 970659077 994045746 901410903 347409802 393457874 15694895 91627612 888971622 61231630 874381225 786190377 883613624 866593240 238322892 237750585 999792991 801568479 988996973 875078124 756891729 232606402 979435619 118353670 637876118 760849248 489666304 951464133 479195924 766112683 465422440 993726967 161393953 685391783 952664999 996582729 949540270 908527437 865034024 902626837 196550630 710604423 339151405 904068676 223361967 378199113 821070032 123514904 469826410 361042664 917994511 713237979 134581664 841580484 790775222 535517646 956597839 571448680 178145341 739480929 753871434 140317025 905227448 797863032 194285271 741765604 901432041 825563535 534225607 689999095 832477681 492344068 364223809 918386826 966315417 293930001 939295596 752717155 660310450 390300102 93749754 427135450 233302694 863831762 754424389 336501410 292247836 931668109 843214269 132322672 933149574 846783651 327474328 388577190 263933238 888285751 977527695 904355573 611178278 827141108 841124392 922087788 983790860 989144374 104156101 791023150 902761895 69468421 666526716 238831600 845046535 569326526 202571583 775081301 537414134 896918880 271552976 321479555 920101100 882191770 998761154 366295278 879184342 598557385 980812662 751908666 888399479 499625533 755732334 853780447 903413552 810253095 187141895 240758459 572801383 287392647 29518581 951451819 880496628 788059738 744531259 825243997 836501265 940020570 260645082 392551022 753082274 975859117 853789134 397657057 660970087 437870583 886577456 880707736 391606427 108857464 357161432 205409809 861177166 970841355 736691852 751299642 496445 54707481 775167016 4563438 505069607 201753910 521280114 368072279 773159465 999397038 879896503 424106290 921076125 764461832 759913241 451113262 873725894 783847599 772945141 664865001 825822948 456554895 239912503 829510143 742881275 929403471 656617623 741258272 834290284 486809237 183693931 27293694 799364119 806475229 973436449 117233948 65001582 386760786 45445080 942939486 866132526 912629360 707865820 258761139 212037315 834249113 457950855 125597687 785180364 961205494 38761530 842349704 844304730 242693000 979037791 813490387 52596296 468365123 335768496 893221939 544219611 924804263 931825951 57305524 840324042 950833671 1071864 276361587 99970860 358067386 393526214 466878523 103104544 655771393 380329458 536390961 797312638 350354825 995701395 814571723 915114276 323354272 865204900 809912770 272627276 121895087 756912281 264297969 412503854 711672329 469596596 494951876 626746567 981202381 329956736 193870348 907528685 847714841 817396215 937043167 106059562 551406859 743572004 4196023 476161651 914198339 515067435 848256772 809756747 448935091 864516858 798606142 217049301 948831224 45593814 748275080 492898751 904159517 157454912 943927265 778382411 985541548 833583755 717169417 905896933 989902099 299244026 787147382 328762031 749604932 344491362 582886346 716629060 224175134 234450292 922508554 227516936 66694739 170489768 821805733 859711002 846619258 332042910 41059424 782967980 702010025 739768703 877092112 955204138 214568720 409013179 908264647 401463229 854339628 989664568 905795667 733024492 446842614 807708576 747160302 779865478 168357369 949556736 941368042 861764583 867001915 905099992 857240924 19590597 304534011 675066757 957610082 830572561 791121358 63881331 881161336 230053316 422561114 737020247 645549637 990748451 859636953 286070730 812095639 478397271 876807938 54392374 672610279 463996888 956838803 166933843 152687025 998831287 309603390 907422862 265555047 806923938 56821029 913051417 787673522 925427851 128957270 986682129 782660476 993008196 614046903 367195750 469659430 774087852 494635231 778453043 917568071 999224569 266609835 72141571 153459854 912520447 488877208 789065548 290562969 597535366 522231861 762790521 819429783 274695776 883844675 920118151 800630605 680351092 982504540 725545427 462864506 343567065 326447607 75899729 970218082 750704485 500650519 795440325 787595957 416922762 862701455 779801282 471148713 602434074 212356118 903159425 874590928 380861612 754576814 342388874 779830934 912679317 425946509 380354856 930201553 246196293 685875908 49017944 388497110 784208114 614699902 792276924 894808744 956547340 41138798 132439217 927346634 174908177 721250077 754423047 72302421 858480550 775493529 678325663 798616659 801838462 647470272 840690003 73753931 789431782 668401061 839423944 354490885 518608429 929309799 966226900 403363357 986097462 711934984 66984522 644873977 883292326 354504147 172441135 709804355 835906133 81423098 514150616 713296857 933573076 50416041 951345725 742754573 906406036 950979157 956773159 836649995 862372149 881264542 386922766 104745429 194733135 864380115 557472364 255415094 680941045 779938783 912890190 441055182 763576515 299872919 996525463 766877460 815316732 924181984 924256261 932271237 986046232 881542166 555644254 541133889 916113238 286049239 781684179 770634079 360980877 927197926 794305134 770507451 727567621 675894334 659616022 437104934 674618106 371044730 140036354 320406065 980138559 967757188 105412533 851653072 84481449 70997064 534244499 584455821 435376117 570202284 889135186 928423719 912452038 871665393 565666739 566319750 26085972 651830834 836265307 887639912 996594181 771614668 990290418 381221930 755987237 718281542 822205375 760592733 479908614 865222406 469054605 732952242 433051776 114680917 768982755 852792609 389093255 740460923 298263288 449549905 352516597 136699466 527131141 516086913 868859919 849621162 163949927 984044560 34711852 684887485 840152373 888155995 792067365 619326426 34723927 974600022 788911120 945239501 36993241 795849753 945629638 513189903 453955258 912450295 773177319 811647262 15347971 945629643 739819213 890898186 994635575 793185567 971579765 886188234 791330442 906037912 948245461 386977274 631955939 812181425 834346072 629347725 954774774 214096365 757756409 928723439 891444874 482097739 943787763 904981844 818047395 796276301 599085980 905099726 774458385 902441764 941894150 412907563 83744191 451815600 951406540 765656363 425525140 903656871 643447326 921662146 201694481 874587289 67595970 542046327 433808533 64733796 931086324 998155730 4523379 77597703 789251935 267699334 557259201 869901787 845892125 254521300 936824454 999702340 403421625 147108552 717398226 258981705 834490837 901714379 721396553 841250600 837295437 50053015 44443969 799635405 268442469 149503235 917376091 794425978 711302909 67275397 638985640 748441701 872684324 641784211 996725796 615947979 332479934 347189321 905072225 656163904 853295623 178508530 528956826 985221555 572014433 994304078 862237166 633334185 760555103 103808640 81317833 941801124 742077752 168229947 472376443 913184167 11771682 967869378 150873050 644505465 887048066 779905357 423270254 615953451 769242297 788917467 260241234 345794112 190243293 751212664 777844553 381830265 613555551 829234257 758843312 825731194 89966021 359779450 897986780 992201276 517631563 954825853 908280432 615319566 312086781 539058551 754115129 339879639 780652166 726479300 546549762 839270119 822309763 419934000 153556213 912104386 882070819 671391377 332089632 86757713 767671707 341585362 626378790 436951840 749196651 268760372 292462269 777946041 785214164 187619247 42652288 457245988 466463066 863634905 63923999 990788118 219732040 874561321 27485233 840163564 116763596 879934127 839274968 952597938 10644660 620483279 938068434 631687060 939359144 773826536 226283587 986924939 860381906 85753510 191338812 735940520 869816453 293287009 545323226 938547134 915855807 994687021 762497662 850683989 386442778 770808296 40396047 748982195 523630680 613767966 883002797 753148811 991738050 821336860 577486522 880349591 85551963 432658174 483657858 797906745 234322919 996624460 83309597 907071733 125503922 994301165 24581416 850326671 945175140 536136614 918529905 249668920 683314103 885900456 29811303 6326316 891649641 722698028 102976746 192555872 783812807 848811311 759501118 679756739 911137586 371251733 988339530 781227979 844803994 485283060 860025321 811343458 864165927 957038332 252909616 78569706 620022811 635367182 414160334 621235714 938992318 694573635 985688761 739819677 961395958 541213985 709195170 876768302 89215788 475083341 293146213 53411999 733845475 817951062 172431817 248792387 634549426 127889560 362241463 461010076 842715327 730146768 157636955 675602407 101234836 570201476 303225489 350671958 952267516 696280810 797727263 903734284 913300542 935669088 723296220 341869532 819379798 107422346 718247354 433009568 953724616 668028238 956261806 652301739 743989374 991938892 749982662 614828518 613466745 824601417 683903260 856817600 998250947 850420122 6179564 746523233 567064865 619052851 426769648 287074893 592283169 928473588 389920252 975553037 661607119 197936712 793779569 822678329 8747801 59644195 17779747 379069777 888443162 417888375 730073317 853333115 780695126 766320500 603405445 931850838 357115565 847638278 663225795 298313327 991235027 937684574 832112828 870632779 116830387 757797963 885644983 935198230 773951310 531282519 137732269 847737982 906506244 993384717 74597138 588091219 276131074 867786587 2371310 855240275 215960673 249750216 672077179 32670961 332931573 705022979 715799026 880337536 923575248 66312304 853478345 737020247 964305539 247060527 467876107 875999066 915024854 735663445 217890176 856481467 526795654 863112461 807919182 75134348 74267427 741644553 64853566 716672240 465530728 754361020 438629729 390467852 769258632 496407851 910870548 777507695 759375845 899375062 864302964 992697996 498613647 461358647 856310823 3444391 389236279 585782677 739804612 746273321 867889577 899300622 763217581 284098894 443650401 864671123 192052672 438595091 983102318 844505201 928662801 763208931 393563876 987070566 58051895 514151961 368938501 681442262 222427392 78945107 503781680 217327266 256362412 924362539 793845546 629180862 164586418 207136915 876977908 928967290 750683440 382856031 272207315 779027518 243451858 852131394 530713440 411713887 972403836 166113472 445856575 953101853 542547641 473830086 743449505 865250611 889256333 761118018 836545304 900487220 522439667 738304045 883367307 369087987 233360630 905033692 986682525 817684971 385438173 745411021 977296595 45301606 541741945 571952451 918351080 986651952 335052070 745928588 790954712 806664728 420472763 145179093 904510508 971310728 746108366 698838015 410155067 844177635 819430158 586970467 875556156 702705390 747838078 938995690 929045199 278235005 796059165 643422781 871157141 963065590 978152483 991237418 819253753 841150267 424944525 440585109 694909820 907205011 882050997 492396268 507748633 830088109 176618315 246331711 944692525 63531640 811538718 973826698 824643979 988782520 918580485 139043981 999257573 826958181 694718954 120491149 62713231 955178092 720693720 136481214 125096833 932728624 520135807 101555070 759630329 609783101 66625035 820830144 155495367 204467478 658221774 130526355 274758980 338409389 440990223 860766816 318990803 85236079 905116936 260654600 822830728 379675144 697665278 857279883 75970340 998728698 128994159 821224985 480714247 573300826 128974072 848389634 236825057 7563300 792906411 11751540 500826140 915001200 827890893 181347753 600176248 847147215 854376405 327619615 768100950 862214070 877901369 308953994 546811753 493340404 183751620 24320612 959199386 850452296 198436740 326246933 879334901 741076873 837835208 716662365 799031474 702703270 388675616 602462872 450357609 813448368 561373857 836196336 857695624 752265287 943286287 271517144 920395818 29454725 882306325 470630868 907143066 911607482 313498463 737020247 764861459 69537809 147948709 760172055 752287827 993366241 597305531 813497319 16218992 770537475 770983360 520491623 844151504 766702660 696858506 786074500 738937564 812312844 893148447 669389009 238820733 511059543 521696944 934673761 913535275 263720798 556363481 794788854 940551525 823783354 860692058 877951302 947119434 883318883 570224849 63339245 906988752 867350126 537452275 846773765 449693425 570283260 532180832 847294729 971793335 851885496 591612129 462375198 932143331 826641060 616955303 287274733 258425620 980330149 934541177 291996852 973969532 538932928 604584107 344027566 827684474 835192373 698547276 771153018 706342716 8605500 349830182 901632754 849027137 707476882 895582969 686433377 780088455 918319173 866949167 612492179 824416347 55660470 469484607 784001887 735758984 813625299 57719 909285948 747839532 932532670 445829631 504186506 965163630 237681317 966952272 415212922 956101275 786452426 852682883 987759573 158442575 831717320 780580253 664537962 93695369 182741166 568517387 759058523 550879867 572781865 994231319 346326546 314552314 264012566 516484402 2674192 996997945 755986838 645336156 130135774 559329883 809112398 46043929 605743206 785890928 480128243 489982133 916104983 285073939 174300804 318961246 591974418 502308568 734221999 398015315 503528875 933995219 532842262 181927349 830276613 965368706 991908395 799288928 785231774 836330471 857386044 262809616 678500966 419544310 800330028 71371570 164197226 615729044 39639989 587996159 599405197 55164148 369974433 822134270 872923965 240543464 611481958 901905116 924996288 607272432 134033139 557674037 992310555 131663983 873810937 438281765 256865571 928351187 769365079 660362394 576873623 992004887 759744580 749721709 926548447 827164270 478518091 858378518 311454096 70102243 817501230 681170330 555742579 776658840 251866955 791382695 775547474 918633948 812908581 784651645 410885660 44628889 267795898 104984388 867885816 696390641 286687613 556278168 710862961 916459673 642338860 280085576 737939649 991351837 870815623 746106900 896342266 936993707 887659910 236163235 53848870 202214139 889941609 964375373 698766186 716340022 6065130 872663540 914293467 303151367 886530849 989449191 921018497 774839126 433612556 931159734 997302567 655354422 366249447 808495392 734026029 765298715 755338790 331254039 752846929 897208384 956930719 263712192 573826740 745335670 880332231 246311787 908464434 963152476 806179857 897381547 781892308 3198227 647387897 522278877 294049123 556128481 841759244 734487870 364432192 777994129 866115976 890782237 447203416 930854780 980393682 145139631 969023063 350785138 413282258 618628008 398027717 870451453 822773128 675760852 934020772 805490645 843645686 671547554 304801983 852446396 836387565 824826590 712543925 873371742 927459237 962137882 51857759 135639975 893047913 61597231 425571989 132031186 497015442 681175222 916708759 893956919 114889966 887284231 414557889 183397313 803534227 761170293 97378718 421956302 821388360 790970651 923697355 523998214 376857023 528659352 700049894 180586523 857044910 126463502 607559566 524565390 24805384 301653134 115245357 926196845 858196965 569329895 827966849 674059844 371808546 980112669 678518090 632194524 716425285 286504764 907841341 572948021 564511890 879153371 376573533 917697690 852056068 227894240 535107418 196670222 825115015 990579008 834749736 270504764 965363107 335779359 904970045 795620553 503600383 912035111 490462499 923399675 453717728 205993082 190135282 586282786 631132618 465241223 947187949 255941124 269214486 933673770 998658117 476163090 856882408 309273838 743094565 306823528 742550224 755254869 693062628 660592825 846660222 497039719 990875812 146692992 978399556 375623096 187145357 101278484 222543164 911917939 835642228 280462367 843849658 250807308 851828805 846470596 807511608 106464446 56150807 923972786 676147145 951276806 905427651 258599306 977132272 535566203 549934082 490861315 872710646 208502859 273450172 910902138 858040782 827912803 682935826 887841988 632076444 72077238 117971292 490010379 48049899 435011231 933024962 898460059 113180360 834366232 866547155 843241376 860388983 221609714 753757482 295129287 846578103 965274415 896311610 93055332 531197798 635796694 948950036 73708421 351493924 982363220 951912739 242348546 489438006 201187306 100837826 834552796 872416624 391230554 846128396 94487462 699561184 344320592 521647963 719000197 261460842 851736662 943245713 969117570 477711905 75125832 956586292 426027667 340459744 13643926 774446792 942667630 151701294 39100054 724047689 986679920 938659947 798245893 863663561 237515906 793715929 28695961 891671473 969759696 709088878 911735674 896378795 990570671 482596241 541908753 21781881 809453862 842086600 624215064 656672962 958345892 984633897 757618535 910339743 960699646 903266232 655578295 860757578 838673291 147143686 423956226 6428009 519731891 873216775 281079207 795382219 726970130 37558378 527234016 566171473 840440092 629172656 895323424 95291404 595769945 255107846 810085248 964123059 953768714 789562190 730153072 811271328 791913934 448696177 33710489 65962009 213307061 421434866 989302600 205676197 556175071 471002184 875154573 761208469 35150351 956698214 738108637 837641807 903740273 338005482 145737415 843387131 496974362 958644749 904217156 240728331 495303244 852784343 713212976 710995766 876085514 831331374 900220609 27111217 983396466 307286496 860958578 413680213 57347966 447936106 232547467 480963654 795050002 788465646 421481384 990468647 790805311 890224501 849233941 943819394 490350452 325475546 371192067 709175213 466179520 904439641 439885602 767729909 603335018 693645918 533372417 199362159 780996411 866913613 935035872 104209981 403934487 805273440 505748778 440415457 913646483 269699993 679147361 532561773 51595286 270704627 326235660 277463442 731201246 943889882 3076184 601956880 165671874 906028852 126810584 290458164 763374746 941290312 566601893 797248604 142222436 418774034 882316036 939850829 131278945 862280718 944851160 225954882 370328815 839266846 395985876 751149578 992060424 867844825 879687702 940053800 897283507 399111408 871782709 23775928 789508452 557394403 700286029 407797661 879027666 558913017 894687694 13159004 673198815 108634623 864567536 763817567 859357748 525693676 896361686 972523493 178978797 762770389 67321425 943863263 935753082 303344800 69356094 963885120 667276065 823743602 505374334 692703838 959923818 859370196 936569668 273795409 827790624 713100309 755632237 878884571 110682125 315051854 964352840 869951283 856746369 954137621 852100940 3012015 918794317 513362547 747438188 844258667 385923716 960414271 485676168 974496080 185788390 394971883 749701463 262991891 157073092 831037387 681368065 603865645 965782027 820554534 357800270 761117791 789632655 314395991 865469094 409065543 806890200 962976356 226528096 346190059 808923144 563659282 961175066 697543531 709196214 318670897 780609007 178411707 285235565 988118119 105253372 576135689 889933469 122386605 598908345 410830970 343742312 133445463 432325026 789200432 998208362 855674649 182703528 881386589 877713847 724250089 417548839 801040217 399724633 535664293 144007012 974654623 462527214 413979821 556687999 940364556 837232888 824124053 728584808 386244191 851068842 854534431 566057672 701679206 334503714 366445988 242227882 897863768 892133725 897572935 831947888 949379737 836146163 436973107 801793031 64027152 935954505 791935617 247686783 535848097 479958668 122741779 674865075 952519752 713441434 354657587 392903230 741231097 106079511 302966667 912622378 210409583 79601702 790427543 416832755 405264796 735875088 116363452 913158149 893529677 809509435 29813651 711182122 820170399 786635714 703892444 839890684 798408606 10971803 499845054 971789906 896354330 512723867 925559355 741210893 434260532 909464128 838303635 812880055 640306937 807299320 747766765 760748854 869746750 936858557 748934814 893397909 798753801 68402231 906254935 270488607 882869798 859802400 767002070 952387146 822630063 315457794 332068444 852728297 214492342 951491530 833940555 440886496 737555575 993710932 937261143 375629913 684288577 839883206 907206458 160336820 232757560 770671790 827444875 401241205 28723268 148032857 31528608 155721011 367467577 612991822 340048325 485688291 519778147 848673698 787496854 901088589 578478677 577092171 321737721 999566150 678301207 760644996 775915496 892182491 384956671 781181601 822058414 941871687 864882913 617219830 563399104 776940672 745166263 562742063 769916402 741316315 571410353 884310953 892038918 81671400 834393512 859210236 904410287 648712270 966569084 65431473 807983317 785580575 987819298 381791065 939211183 745107755 8646633 740158497 926418339 894806508 43406961 905296787 948323276 780014038 741752887 238213073 96080820 58941749 367242321 817696337 792205318 185323468 962255117 723554496 576733305 781559557 22468906 11793378 607853449 968381677 199683649 744181553 375782648 593876426 413833246 598842676 752962494 53642345 498730593 597565467 210553014 352812907 94029682 532100703 959482551 146515850 700159874 593944017 973546284 682327326 485312532 418158110 367829278 961380602 973824641 511222175 201645952 830782646 400267664 941116328 582295848 393076589 215180293 836801593 844188249 304158277 236916549 432327402 163172449 152299975 176324725 502984182 274917598 754117840 995638900 903561928 320491827 723807019 604336745 732205733 525509569 737020247 835115636 466133923 809407049 296902307 430118506 824898453 392975265 278677050 185395378 584687338 926193616 631028742 823581968 780856931 948660187 643808853 747081286 774406843 316160648 917118858 885008404 951953299 572445391 610074857 943638250 759069588 508484243 384674658 998893559 19190623 500741476 701631271 275355845 660567429 301564310 783038837 841004511 802296345 114488533 493243884 811129501 975881281 428671045 747331025 303564813 776131174 756790295 982824815 929189547 876965591 812708276 899992207 425493209 649231309 214417200 858814385 674655579 754460162 128967586 573072928 316591280 957113102 840567862 42003726 44967912 206622233 957937323 22587219 72234715 683451708 941337519 17657322 780732439 880918706 156380271 889276532 46729032 917592003 608442996 926295748 600471824 927641046 143937709 875548006 285697264 756404144 877147904 403552938 832641095 552619556 844709584 937080836 207731935 583268827 850834958 400210502 340534144 179448324 510576344 39892960 77491241 141983077 300744003 949417785 813273025 750931572 499672689 982830159 564130153 731077485 898318095 881769451 982602503 806062709 61847424 920204599 247921428 825501286 748527760 403013595 456274743 251986020 82431499 881963604 202681658 908660404 931820717 812949501 474116972 985112752 162335425 845424643 44754799 510851843 430993993 201131983 809603815 402970799 872753094 438334693 822787693 903281587 710903551 958303458 548601857 55066427 60985617 840963627 868791941 268966801 792005243 596472060 864635980 276015727 668233281 585911958 844740337 934561155 58199281 336579409 20189776 860393532 223997853 948760797 564619002 868819805 57301941 710448345 70553769 971579550 754917616 2756588 98144493 299339967 394218876 253956373 748954555 775846667 177557157 236885278 539334512 843366253 697472839 787819753 652782465 234749693 309563643 540708117 664619837 508551216 50085865 341504294 95459027 987856685 993476702 421149354 765754494 913937452 927572287 575052944 488278790 96859923 287390004 361946931 791116621 347221563 279171684 690629244 854385275 101765756 993599972 419288060 63357967 937346512 893962132 738935846 799957651 636670842 454730701 869198713 983277089 912922438 920808740 755291337 270009811 17739686 899188885 793434366 251976765 872773226 627509175 818905083 234539125 452353310 709056807 890169721 345633901 397225659 751427402 802354931 800076436 853065319 262260482 971803542 884498179 991086025 806368248 781236145 666211355 977201461 567041273 334893623 965082915 369189043 143035867 602660992 834550035 293390007 125634607 757482307 778757914 902573612 936029586 946717252 190166910 924349926 860324715 877897275 916317769 819506930 480964528 34731067 348610166 812533037 24919208 992095927 805214308 837559929 842935047 823514631 38441928 913374883 946993858 959891582 472107070 868256087 932308490 968767398 801078144 879735726 890251923 284106831 303467110 412794203 942311303 151104564 99165933 864678001 907479293 917724404 679468951 559528154 998997856 32958635 927490920 833372551 917093168 936193236 745126402 853391939 598758162 740164778 230988642 994363740 588900273 591960040 559938535 910972989 722819580 986809664 741609420 825117379 20580794 948400844 779516956 944706730 894717375 850132139 391152574 959718952 367683421 230617711 870250494 159932196 980886257 186107129 831914465 79840580 946663970 745359670 402703879 874448440 422183733 874449392 72777619 957070589 994472261 450194220 476277726 984281959 20163138 739369216 832389343 341793658 278909706 899272825 335423186 754960369 946951421 905410237 522558718 971818986 864341746 939365688 879229997 49826104 458406585 921735486 339753072 866941780 795803597 188930076 175530830 744386570 327725254 228545223 659030214 773922601 878615853 335412657 707566228 819282995 816695228 738056232 949106121 899588453 845536505 896053862 309485047 915178798 324289898 724402500 915093982 999619571 758687351 852049670 895952928 645723664 557173607 321152309 180371144 844649760 993659418 485987781 851788991 820539374 855046352 169068005 68345246 613307924 917042594 13807515 543257907 969008033 791568626 570941180 551951317 358272443 902544564 808187412 877122538 982179397 941603484 678914528 889074055 896042039 65889142 599243900 781070119 586398013 21300110 313422207 36357567 943632663 204889134 753607203 895437983 606624224 847085351 988376517 875208519 939747820 452453201 403719271 916031039 118844759 563703813 931967966 225338873 569856883 925715400 887999839 768506529 787351065 862823466 763559829 38739190 764588910 943467668 56215318 500442827 144471876 774013247 891491794 929730945 887106852 346191492 897389233 893760519 612194462 766794690 858524393 20648888 870276476 319267873 957923723 850637683 820885818 666735478 973464288 995740940 926511889 135476963 31199824 779938271 860377348 678326208 787933015 826828660 899952659 538451547 745498082 223423761 737020247 394014653 616652648 846126278 112753145 131388516 541692462 765528620 597419054 73720981 571725221 305468834 784150828 743278229 225587347 383563746 213471077 961154791 206204613 720605165 435125079 404835560 608189471 954919152 571800153 60690775 1915336 795857762 984231460 737948718 814314396 907309543 777935506 894350909 753839833 998292013 861795193 68913713 748452871 687432800 888619689 491710438 86804944 591461240 855476668 628952512 949378732 799873674 969499840 578016443 415861930 611336930 75143191 938852868 733135824 594716116 995713477 95232931 880595762 822333910 940332028 959971744 164200377 484144266 437396719 109534071 971929891 906045153 344091207 993037909 615374874 189405132 131673075 405049390 80644690 76497076 785846822 580117996 968168267 952037252 747893082 781754717 6153633 98858139 447480747 50447129 550329234 896297134 837421512 682114945 753520711 862816321 957008330 225995571 966023585 939400849 801981719 449715877 871774991 762092077 365648351 802871787 750312741 56216393 933493918 564699492 775594060 760063803 450989606 465595368 975822632 963509845 359081390 183229823 898183314 959783878 466534635 942975491 586664164 509714169 910295392 737581645 933108136 180099783 131828416 510097999 749253892 953492015 831707610 855863986 58225351 812897174 34198498 808422053 316499129 827076448 938781430 908730682 651743781 950219641 975000288 216698484 802890180 968192502 741534108 3663896 743494978 294401609 198463557 836527452 827745520 677420726 838994060 847750394 749714537 395859661 311250197 839935092 767501988 762034640 884147488 914946990 827036624 777839701 301256971 852003868 899999281 919459477 203671059 318260688 796943318 715700037 462650473 50739695 227336466 550086062 649360705 881692418 873788969 660851926 350070842 889294868 444932861 916719222 169724086 256475577 547616445 937524012 552168130 660552254 543420826 925740494 308814008 853764337 597825813 31023158 64029387 379058300 856323034 848353595 604246278 823026931 576719100 559326956 611234132 543885401 379208662 627964297 950310244 867664330 750655871 330196702 732474887 403625371 917679565 741581202 66541942 830209437 689685943 64800310 729028729 942801128 970681032 767121514 542550645 781846103 269633554 746639059 875288153 991513466 772655434 560256547 769774847 973513795 499990673 769569549 289602805 706730224 892859487 837868926 916368640 462991034 372718619 291055747 960346825 336136309 382786933 242239218 758097840 191274802 285360938 429652589 807183488 784353932 907226358 926425151 926004347 842084705 949522865 866163608 834165297 685749052 104679926 573411643 82729367 356868249 402239849 686314947 541237735 824528086 666219623 709001355 958035556 974416069 864588688 990278401 839443548 449979185 320166997 757571011 525547795 866683447 950086377 781050104 17091930 67968823 840949070 101094871 782295774 837475131 123368946 275146503 277916798 848557000 862423394 778611286 330962518 384984627 147703845 85771467 859327133 196894970 964775448 671693469 841983914 872167087 885188736 75757456 947612579 737113994 960457352 179923800 801999904 45613959 847368539 797640518 875581222 389012394 234576292 581359199 307319650 384087216 198475549 812300166 13781133 474461640 23987541 662335458 631316765 907131053 942909869 997557920 925893242 179185818 993556763 999085415 10548358 976104286 397541212 812515700 270947798 432579454 670056975 493902369 867409377 942229666 23433909 180490581 760773880 753129348 987186892 759794180 936361876 163989703 134473257 633902523 480328873 2565362 827834656 776458167 753644146 738354360 317115677 328274524 796348335 92760111 246670927 772806478 878898941 231922777 350286564 119391191 785071834 76600049 691057175 166010867 999161537 833371928 844061865 792619596 680654809 799372007 760326569 884733142 711800372 859239715 823237800 400541107 874528658 264381486 814369319 861679465 964466670 236503287 952858371 828993546 210734977 35623217 960982260 296278321 831844206 861374233 923860713 225340000 516598894 980518019 595834803 272942328 910677335 796163688 853976730 177946603 359187020 997509107 365900970 320690046 838280725 308980034 889620275 801757850 157656847 22289584 855285429 786470183 246321836 146817347 466543171 296380436 786471937 766594637 941814928 896903347 900308956 849781333 40364371 846312460 745359189 979054793 97088866 53834335 861378085 718637455 488371032 228994510 100405131 9652956 912212130 961077281 449592957 612886632 462904287 880720304 181549570 561426255 999173786 881893198 356663599 859553917 833100087 324001867 929123478 907334771 987898565 857951901 632682693 348027034 811684713 805842591 424247840 367747358 777609791 683570940 740096354 746785537 119985460 410100056 631024779 145453290 61325963 513040808 913375767 926181122 862181129 958242656 581951896 393872722 944580102 141608226 478823449 951211381 228676383 364450343 712896044 532752397 795188594 257860473 986369957 837885811 466096484 765527383 920531236 18196430 896139823 496219566 27505708 62500451 772719651 974768990 258771157 801531070 94381105 291357241 210851764 28634852 332718065 111469063 764086418 762703891 661982909 806567858 946606218 841446854 984009110 632100559 823409182 942556048 354142546 249057169 476311849 919832228 634234737 940319362 773673273 748222956 893238140 43254394 914379014 658504401 599617860 763293264 765470536 845323558 772132874 511457073 261783519 259899571 681564803 504839796 518424356 979102373 550801010 529717682 149108099 896932963 544226307 939562667 942308321 874822902 95741496 896278844 553475631 960000313 812331795 964488098 932305909 122239011 787388260 638640564 869956733 901657984 744746886 855653808 966336810 414581816 269653311 920594154 73167569 949980605 857795768 822914359 906950075 955557097 953142384 38680530 95516287 180016863 591423102 104904389 965686027 799026741 794459280 908143918 940431061 323022880 760559209 771148777 831330711 309147095 529558414 529924683 371822908 827914810 586583094 985448969 796604601 754384044 704474942 554716893 571575314 594180804 764799143 550694817 998924694 178486884 722331063 281027366 744627349 816023048 789115595 827957812 225754882 755146846 953547880 609248964 60693078 263147055 861629644 482600741 386433130 601333741 558101148 995360332 175041340 339158853 969821746 906581214 926483412 869923190 644331029 544574271 570060999 972236074 409240829 899574184 504330863 586778463 919106346 751690201 932420523 435926552 902029437 39460046 940320412 754948021 392663965 749630496 909947457 114258127 482937214 733435896 709370745 810378860 856340228 783367747 541944171 986013832 371534780 909156701 880296184 157859846 692543928 974925142 906051976 438594658 524946668 800885495 435068498 916677189 874535978 761555403 275780584 812332731 312989368 853471878 988007812 975168593 757345601 117996611 54122636 71109795 742462861 925017200 152018507 284078631 641731226 923698850 752745043 861572775 880617847 871407779 838508770 902543337 955227111 926424463 927833661 923749012 774499371 799980737 241509933 526343923 832571435 291648680 294036630 959620755 773140057 747316113 722808753 212030776 849500908 145067141 724684944 483482675 556222058 11376748 899803520 114895323 434818656 933962842 933180828 205084452 131136642 306813030 674575803 876909102 849062647 330216195 452339023 876857857 897413297 718265913 891207045 902075073 943981766 460846454 924999949 709304007 705451046 880520567 781502091 130240771 265697888 846657767 879274965 838512273 8344774 548285379 842509753 803265863 16457264 997864240 576847170 801663131 898565721 44030934 303890019 973070712 897136626 899406509 856439231 995918802 770042220 567775450 851426505 546371482 973919990 899917539 207221675 975115413 903862402 835431181 774835689 850419465 516236672 188346547 809255751 990497736 871620457 923869387 781948985 302152115 910065196 267909586 674515901 959076199 595919921 284504336 392178436 775784486 537593704 776983295 754587872 33887535 841034340 807261858 981234518 372297691 737422753 145256427 980579759 82691182 356062386 982052073 791430629 806849391 957544765 297913081 800289148 831105689 36514506 163825366 909188515 793497673 957886845 800937878 977588859 841161636 433308736 354011658 945001313 820741179 403299780 913355362 709955617 832116883 856406264 371053798 16287270 545607049 805119912 431877780 59279088 978451668 383922721 552450067 391163906 339859852 785546172 823590516 933732557 915319212 50038310 992398186 914326955 808224766 896347951 974989153 759864163 239151864 566162755 437906889 956368869 78394385 851501021 825481881 379030089 828599703 699939003 224489952 325988888 976702625 87005652 865152502 848564355 890626420 755554595 995219436 300610854 82714573 828918800 118543887 144906360 587967641 888364389 602022977 849936922 130987121 774095223 824646017 988431924 392144647 964015900 33464998 974285631 413567801 379079164 977142323 894546215 806228490 391784568 806521071 401805593 777088139 877750578 835070836 564902096 849825685 86315069 37057705 701967957 763806753 972838736 801180731 884343799 794615963 765252819 907787785 852071536 483616187 156140009 901271286 531514180 729840991 859173702 981651766 929646576 620152480 852746881 759647127 701126846 913131167 285740305 216305593 231690208 668735106 220194291 54056490 890207315 131311075 813858974 54091778 936362026 410540543 418149523 586227831 239439417 177549178 979243971 791731179 984858047 938582435 775222047 308240815 877916076 243942771 892221163 250440032 59681951 670036005 151950374 767367859 990948967 517030673 105415656 99641067 754179762 115286053 926870946 797858944 946717661 866522972 827756099 668382623 877622478 648177838 546547249 395760937 295020414 857681674 993632074 549800256 907130840 515947891 825609940 629172903 197529826 924236692 852859919 714310164 84241772 60576062 732488695 15142764 33682848 555707889 474057165 405838671 39173838 553318435 212727523 591383721 131378782 944491717 789228190 562392791 458770631 295186852 41212994 863607256 643834970 833595733 937057701 297924659 247841748 339297496 811190944 179731202 79336755 881881816 757339482 489340641 928070501 517251133 905181553 344867139 859992411 777189679 312481877 847735845 775264344 841259776 545279816 668052004 164073744 432280652 862147752 50719975 948535735 792132176 735004564 132284855 971921760 278036549 770664068 222973962 690702945 991881970 878936728 568601917 608517230 991023452 772745969 770395761 169192389 120019118 291941921 786926767 893008237 365800109 154199077 520654480 738565576 826635207 739156056 430638950 766699785 672855871 581512930 870738442 751894951 752633959 229755608 718743695 39191169 878461896 902368114 763869413 321608988 869139892 784981226 974184968 847552273 556352012 344736237 797155463 865407408 805736016 799659775 967164432 847708440 15955724 789605938 322929318 992013978 462746296 884642691 861106085 746948737 824941780 943071281 111228988 862313921 701335156 585874669 880326923 613490377 961729783 807244498 649405417 835036867 840625025 243692983 454409817 521024065 292833548 552837444 170799289 917885186 749878678 177838543 63352061 737020247 23599655 321084653 836668433 440718253 89376611 914708851 837978689 465982956 842478380 867532565 890098057 110449316 459914420 5863793 830912501 229647630 531815282 887714695 672616240 675498270 362282891 358970373 616951581 549630314 200995784 377659922 346594929 234467882 105650973 650207517 454678985 975814644 918689276 725471068 847268322 959037781 828492606 3434344 964714519 699677185 399763409 862743588 47799870 982725538 740452020 684637796 806481708 305740545 333682816 302362426 338814619 694608467 330473564 841684750 868438543 628633293 532829397 948250290 762680828 152935737 588330080 704461056 174901332 972090960 141735300 837735834 394938090 335533471 810138864 136054615 550760596 819171221 947659375 243814043 424436722 864374046 723362059 993691271 129327191 341248817 873161532 737020247 77378442 87294762 309539664 981910793 971839161 814870814 566076694 611020093 521988750 829583000 255666265 295850927 212551515 878549711 773211660 943757358 969306812 622225984 924190534 314482484 878857736 863414660 910729923 78703443 244328772 929611749 687417232 956488004 767834409 744611004 713738381 565752134 867675692 869862347 908198768 985324496 898639721 304175321 890138847 536919783 699490240 495889481 137684269 497590946 493260293 892158627 890036014 711497708 985650139 860567837 624725162 428550965 967534278 946128086 350773683 16499626 875705689 269352054 255031358 672140933 647843468 661294503 893255798 250549920 68013142 873894088 239748916 818936058 98472288 289845053 266227397 741997078 243167031 995326059 870695324 784419028 946721756 598557100 914833513 241469560 720771329 664573360 884355148 750991391 279616083 694689968 853400074 800613188 221599210 904972249 930410447 25130577 929519723 617506790 100707299 921077199 821534083 133902215 754792541 884703334 793135556 644139548 733758865 827803508 544743759 173594788 167691025 867785227 783899562 934302347 838728147 261676749 58751898 629550925 935330455 480307468 203364939 855849880 492190684 921341427 787254840 981105375 814670085 694775981 293802582 773510139 982709675 718051072 996042180 958031736 866506514 69445694 132348637 674053855 628239233 546746092 635474771 213602545 992064520 859963276 960900334 737020247 977118095 417280683 957418947 183153404 75542970 818801059 388973649 360723305 228056433 801715415 606675201 208150166 919346099 209771794 145701374 677756712 744677399 973830132 892760048 787562215 61950831 788864905 33935215 523353864 823137142 975212008 959158519 212226938 984301786 949953436 883911350 716443219 889984056 649464384 535967194 989877010 301290499 198534278 952090195 757440499 922653130 128463525 711219220 737613061 322094126 415864387 985429356 889432232 985844461 766100414 275850894 176224484 65161618 456035909 385891120 767913915 780730180 857305839 123438118 454546514 900053478 744309655 32429910 758993203 616746617 665645010 961383639 115224426 95326670 62804548 830555488 210070301 762543776 267506742 744191126 128172780 49790019 268045289 692036870 414332429 515022210 667274622 847253376 799500392 971993696 753777289 928775756 188499774 454085557 46262579 505941599 771150557 337279436 898707937 775965371 342916552 242286296 744603023 830295141 475896907 786842160 872788077 402276039 237106359 287560027 77596644 881176170 562354890 578623571 67874632 799151584 889982565 578482598 300142946 511988504 807350325 144783224 147280279 932912088 674433928 934709013 890393551 801806363 767405078 865039682 869515502 999145420 333201025 830610405 733419493 753209908 535072363 913671021 545498697 635330347 917549682 482983125 71094450 507202744 180393785 706936068 795206284 271930964 152535607 8097231 943958121 292739096 132159445 73699772 80585137 343806357 938843156 87836480 55406546 285770458 726324554 903490168 835519653 417335316 384947523 28159225 652659926 595898598 768744978 924576087 891942330 797948097 808907224 159363264 856447862 819611241 690295211 588934540 306382040 402509095 806221761 978607826 789664767 961271113 804483776 155288871 248284415 190679420 916274585 865314566 93373515 265478612 712204842 840083616 628575431 972180996 842870021 83759388 766368555 499782154 346572856 826253873 875048847 974985104 816844876 518310415 91118162 874554670 755308280 254411725 595966932 751854208 627755107 230591910 852239118 766042506 566319799 300449169 370559583 123588251 468553047 239877012 25700143 39551768 266677924 803384921 381248918 515250735 600189590 763236014 847705624 972996690 977366817 759747280 284615155 715558458 312845915 485506233 144411341 855126519 839054705 147482169 789758589 86461952 760583675 349742333 138615460 523610546 855998004 544230404 819678250 390418708 849067210 966578265 892461748 992778893 571599930 490349379 140479684 872014637 267115000 4871409 461094928 799239220 969816530 980350374 734040315 599487113 763097102 591229743 113894706 807171674 830207264 272589839 914169889 743317569 938113633 817777254 181969692 975004182 521347445 304296906 46451553 843774918 399425666 769027430 934933779 398620006 831433372 877148636 187330016 764707145 119369434 390620597 92740687 749136812 179278208 878286102 941738642 835714894 822721565 502024262 240087873 749227509 522331708 998539308 855612154 271360243 774680898 972387833 174712007 861782093 260963876 581964829 742858640 878942321 807307142 446033613 996021324 245954113 921297640 738469816 776396635 432853534 845142291 760926463 930342879 27255437 974120892 430310319 873036849 983481697 629634189 894531919 558220171 667289054 450897265 893198007 230613582 772400640 822089828 414174680 966128573 944356437 309744347 785090577 752290688 964985641 865846240 642631810 957117795 336986109 392137480 930328636 795540421 404331011 253961998 996653203 837540847 819248957 604002771 841250236 207384071 782416893 351709403 995105244 624133133 443014314 503247931 909925334 964592656 398344659 419450657 885591994 956053580 486443735 236145625 829077172 810771696 980190095 991215860 268298736 869019747 848058936 3228238 733567210 49455104 924847240 967926955 534300409 294539161 775841963 781276687 746358578 441533324 754162101 415556134 334348136 752560280 544913059 819703451 978722632 821525788 171070937 430115958 190168774 823917518 287277733 192423740 760609213 557787122 277178564 74303256 529755879 348008429 792846939 777973362 718923028 545283575 852580423 882039778 336550600 995816248 176632535 940530967 641530503 169924458 262747295 297041853 732487626 882453203 372456243 996346738 589520226 802918175 178933369 765962876 727790289 611797897 62567812 613700020 783881747 964048168 63080843 99996033 823190658 800774794 921112356 759959998 525215144 217570233 977499742 876064052 692586487 862593409 553926495 66315185 958065392 369361281 905573892 50257531 209520868 740677524 477030158 404807384 435102726 102400674 895003632 845255457 166840094 989953701 804432865 191858964 969791793 871279771 977854885 769791219 737020247 832425646 740347359 963731251 154663917 703528112 837743731 568532175 737926348 773480070 486312564 898998274 627977318 986114502 4790364 422636064 185552642 418328350 393035259 770745817 21106685 690619795 727704497 753863690 782642232 647169243 227093039 36193446 41764871 937949866 745283283 757595986 643627001 56474523 981627841 12229433 773653118 479399550 970020424 792404815 629277048 972293228 499405674 721106546 962219017 166061441 929312606 857686346 761098226 832337172 818596682 738224188 689290672 543900953 942848689 964030034 982027849 932571386 627138699 313353797 99702479 901994836 345096519 507030816 668330614 765128440 568542866 47380812 941465962 4801228 252285405 788193767 750057201 486272102 352253103 757206932 706519334 958252802 689005420 643243048 987345742 894865610 192864234 528116984 774525606 931603250 29346400 52044225 376350545 870258108 100717330 974170307 730562924 821420437 150214761 925598928 656957061 821453479 250057421 802135457 882106585 906207806 978455549 743359347 552969198 849824695 727436456 769810273 408798797 540663345 177701809 899969280 252629234 636609799 874919695 836177222 869459905 887748561 210366014 188455361 40663773 322089752 988839337 988954900 737020247 396238367 956547549 793775457 771135874 182049694 817321071 477950445 59193293 574836395 118784029 988096967 315930967 526239659 534132315 486157410 26838449 17607684 733342 980895589 610665057 794264984 823568854 418902848 834813982 597426825 828933889 953204997 7859797 737550302 760897281 570828007 939740804 877392964 710346418 837589064 134764408 77728589 416320317 696346159 453827823 564207383 717587026 776182401 40635897 827363425 235329794 932365388 878992920 576067046 771225430 69484896 25543570 918510136 181095987 970145389 797330868 985300159 722952759 610358204 581447842 115753325 283685616 605682217 545715919 951877726 746405756 539168335 939415591 229313379 679419256 920323796 3611260 163929528 313931813 710233332 738911722 440310571 237730343 372581164 140174406 991464642 795018567 745180698 918373539 385908106 773673325 877370511 379207453 620034071 987731911 975919545 204255966 828758189 999146317 442758265 790666068 464787005 571005544 477884948 298145199 991444386 766709465 946265950 321479037 671252663 73640366 439620665 794286010 366607130 224552339 968424932 654606561 350771729 767428350 663693463 992716249 23652195 175066301 990934527 745044771 192287725 470198386 549724954 823077437 11715627 815430383 846299497 33079913 978038415 600159717 791931310 459374086 770233848 508156032 364199330 565533212 483708385 638499508 836991835 825579551 605720995 920090033 953232275 779148878 872476195 964918859 185272711 350355948 994706460 783164222 835347630 907730398 567742248 313604849 734959551 829475932 805623990 822242984 977816367 786458262 937721413 369556225 60420544 405432177 774589010 805380705 740872909 953215169 764681922 781457771 386697489 319609540 759110510 402589658 239808593 250520712 16441717 687364630 978933428 916745578 335943393 879030909 782994400 883344525 855403700 639728077 732697223 8903739 755397054 553212100 852027227 770920571 915687102 836293321 407134205 445615393 57982474 961182913 679845605 885296428 566179036 817117919 352169913 574565390 225995056 936255388 63446122 192471364 852341381 905937649 828196410 400288087 221615789 744048361 577394105 565673072 534427019 635798098 335065356 969338470 951996954 814347027 235770667 644993772 606242122 780857243 862821290 820338835 372210720 858509715 792719036 403411743 261425082 809105456 816059889 986866889 826549488 176299088 703813477 964630629 980724150 947205746 847472147 747801178 747935642 12220828 272086407 744987077 298239189 141261423 923294953 969365103 3431881 967849720 139577801 813700489 231375957 690673873 626776023 182303443 257000601 683667325 887867041 783218441 972122105 248386015 884308099 634583300 461276779 120990489 329458122 520356822 829871925 807092870 949115807 697256802 913027812 927362004 775099652 115998650 802141189 922089637 662206669 201763325 820524224 896499141 951651164 371849319 501862387 106890125 178120439 593109073 783113802 130386633 181737764 947829639 842366758 979703598 526891527 564371383 962963098 712767694 765531697 972231995 806571854 370242065 950346600 703068495 124910856 984043883 285807903 950628866 955101172 850533405 263950607 685099106 608522922 798042472 269562326 700968835 777029854 159379921 87611160 829448638 937260414 886655864 881934510 994633658 55575284 150658464 250294166 954993578 790684549 231198719 853049588 797573987 804021678 895380918 852470087 433434398 324157467 788379467 525854414 708417774 60638826 796858683 120932250 248346599 17910485 849796396 947641396 222749788 481713275 311183602 219207788 836832070 373438105 423751678 417158915 525932293 863037190 990554829 808675951 811551436 679632299 799561654 933989465 251923006 255566562 198309639 886137052 859932982 950689440 72372266 778278059 967377993 961806487 880922983 611623013 852574754 870111762 992372270 753885278 996176944 186661904 614929126 448507 870105762 990143579 791349285 661081517 312718981 955540170 834251926 882654413 67076623 737020247 798539802 739324497 876061859 757601857 124380393 738152158 740043824 217509388 940174075 735555303 910995014 897357907 272443017 985785375 732474129 740767326 544561379 788744609 825077180 790270286 953192318 953977630 745714543 819877711 913483890 173625295 779680781 37304144 54168784 982431722 900422249 935052739 749421623 585334570 623875209 978603686 657222037 94177074 874151367 212523171 512286932 519312157 868928359 159710517 803756536 262383780 140659065 839253693 174272591 152993583 286305091 727417887 762744063 866570863 405724733 342876872 914844365 339104150 263432268 680151402 964258559 948523987 983466587 237319081 910213929 838380241 930214355 917580261 255126003 361194938 976764570 604864407 194933208 959729830 860366029 16456126 501759115 695022319 383600702 500533096 775659576 311376478 887755533 858712677 975727178 645624107 77168915 822373961 100998613 810311656 420188620 19852490 843354389 997979689 569230359 588490687 570712661 457503449 807779626 920886953 772880281 26791917 290232844 746450701 871623296 811534496 631184762 913282538 932066012 696272718 242651231 694902295 632267993 169596756 778980482 738238283 199129165 315380133 761952002 273161137 449504884 542559856 338243931 719226623 894614142 129529459 820851695 536265151 251144806 661346022 111114376 144363296 89505872 906431369 784238369 892243159 591913451 730198591 899315206 828316965 817528004 893898358 25311040 321012698 903839064 786184778 371243227 602107752 479722010 546145832 883252790 180204673 955810038 820424423 581768525 827534501 839111873 94023271 828409881 117632747 272620253 472137298 745774236 739531679 423423498 112612278 697693376 797170152 581527945 902713236 140631353 291022787 829761537 805128158 773480937 9931427 110766291 282617848 465590364 964677737 245072122 155724108 836979090 876729454 513663013 135100886 349146315 665023803 354170612 755281939 955645919 752512446 995540880 996843793 661870893 899674873 983389154 993847899 863016253 395246019 567954394 891994981 309876723 76694392 187606327 553097340 800125333 984085461 283494749 692543530 975856574 755783076 455290369 226798793 239944397 769133195 971853061 881887388 825356705 761921115 948218801 802143734 336626057 133428350 594844398 766062851 497248532 905440834 930765412 35080263 898520362 807381975 979659001 824264809 488414440 409673979 600586417 88906492 979103632 502172265 951234523 973046500 682034719 674330783 637098558 87170032 720048610 923236584 460371417 775895994 91828186 865089989 936753378 259664169 861813831 929293512 125511332 647704811 903222970 204629329 864292240 958070348 691253995 612981710 848787835 952646210 701713489 960735244 964205785 851970511 374625549 17104745 869955532 357142813 440004910 836274571 824917854 427568279 952879352 785244694 773765386 605089942 821137906 393134712 880016397 293510176 720691784 594343355 208490047 775288384 585728651 825832820 652467895 462215020 161764712 746532395 624519770 146927629 88932177 216142689 142056404 858052623 876940678 169174788 131999439 470340859 57016052 148445245 690888633 484267530 568766818 872346978 563819005 819469038 812366523 367434174 832284345 916029665 166427636 956350088 820985301 469355572 784560953 214100527 782430427 397388701 918033921 574922785 474083876 831226060 77251982 63919198 515082993 91429992 125914078 366042404 341273683 748203438 743604260 616241418 737517024 892373247 413061289 624553296 744782523 89918796 898053564 965417351 51470017 298667145 966096343 896787381 796951644 824387700 477501691 998588851 813614805 123992310 843681074 932248611 844394130 79702907 833980722 664136625 183492514 817529030 621737456 447705615 848355637 675493167 977424714 817274013 777008044 870865587 961581466 988330437 872237983 613724979 904760580 380149101 30543016 550729854 890369460 333570157 786849413 701167845 186974799 26108561 821360667 735710179 175782968 853584720 565487110 242143303 752719173 885560766 196395391 862191279 978112381 590492770 72690779 421169425 80162604 103010166 535739626 547988818 864131424 343876332 859140436 668563933 584251509 779044027 194038378 739954322 957987547 422977598 736530226 787525998 683087467 998722956 526637518 692403239 446434651 991923366 915346606 828020832 898807686 887943993 725030344 106632071 555689033 964821175 562516944 383354423 840282781 792090069 876919054 305750056 828595799 538593754 785873993 293417848 217265212 79034410 139655271 427938761 424789659 838294643 720962581 929213664 808946902 908776662 159750115 640646141 974581235 267480742 144163615 323174203 310155621 395460251 847469450 977217378 847632781 885543640 102055514 113403034 510649336 887475436 823536728 588180845 785203561 941665063 389828658 783012572 386600523 233340710 802043852 687477518 553151199 995535102 103051513 905701154 233868056 451781049 832496211 588887141 271110892 452142201 704308126 506632233 325653132 717717025 230273411 962054052 958851477 969977795 879082821 194598585 913785953 849602973 837902532 121964174 675512173 189597963 529299012 178029352 918050179 843595668 850126832 595894644 875988154 718245081 669047821 60837201 891860791 852364851 384161613 468446663 532140376 243495306 388339729 408662190 841868184 102068051 247192139 831008391 562656081 401121756 744995061 884989245 789316681 785588868 543221188 902189845 863604833 570741820 989817515 499478347 791162029 837628750 958627175 886975114 647018401 983438605 209227373 502146371 735627112 842605776 769360337 964363255 470168804 751981932 729106639 471196451 650019029 753205518 474181050 773523989 827850523 626062756 895498448 977621061 289509278 105984226 597263382 40357765 559214455 940204918 982130146 18047000 819638759 737020247 230582810 902009422 743686424 568012101 998937005 235515954 738652586 761200795 969940546 224262967 345409296 375521410 990571014 913792133 109120833 121674210 768033435 702180315 912563594 47291986 474936045 828031430 888306339 107256797 834656199 730027381 828956068 992075469 654186690 938078122 601886118 751339598 940405755 444150086 986628980 963225306 817097314 672940292 285575134 709814773 310740023 15088447 951629834 458243650 334650017 686407787 833380683 815936297 289562513 933481880 695552181 745581299 51668231 657226442 436400343 927843750 913526939 731461052 497781347 295083033 31011987 11294155 395128694 670864746 967567966 447788732 468352830 75045810 931206194 386490977 326930820 310250369 256588366 631133756 807299994 786288957 952008802 805004633 846947486 963541089 490578622 649421442 625346660 873145170 681733658 795275106 622084463 217349192 921916932 912412760 742872756 17762229 298339359 737835472 424323964 86224312 843425326 778403224 735976616 880536915 802631958 605887316 820830113 880904953 191222991 740627245 998109224 96616067 134516915 980511349 34716101 458097292 881758564 107045188 158853698 856630663 316234682 976283684 753357827 969451818 184999808 784625441 559630988 916917668 597177619 271086910 533973078 946450392 701780429 937288873 336139164 895141025 946456402 480124903 654293931 870570208 708277160 514529163 837772198 909043834 701630145 144883495 108793964 865535364 807687098 19335276 825865809 564902816 763917944 809196565 996424183 215567711 111618050 910596041 386161292 818346805 761870984 525045951 692693076 984136779 225294215 860152891 916222024 328556061 197219188 581959854 648800864 798284524 960536593 748528956 888837092 416485016 507675836 995106649 310420036 901503475 946202221 146256571 47465491 927543902 884188414 50646011 549806428 798174488 962706702 510591290 897284103 940340179 798966191 880718344 91260513 493924748 731495660 210458784 517337962 747127719 931125488 569366975 248681229 218932153 996294144 863930817 72323897 166827158 779352709 739320049 181160004 837110442 914926920 308792073 819819255 696433578 998452793 922274823 449481705 566278362 827986652 639500360 63894784 817003451 249201974 878642530 451200391 664344322 758127896 101961175 809463660 913447121 863548898 262021759 855639162 209460359 434085449 286802391 568127011 463760176 894696605 815518774 376178069 874883174 161044769 221125808 152505566 710464176 5952095 139860842 162579454 251802730 687886237 492392118 633213747 707719068 897430844 911521839 431929606 694740344 128722391 972388240 175389329 169436479 619122212 705191561 168801818 321903103 99253988 887638062 454454997 789985347 843617416 47521476 77392215 257191675 691801280 753577060 668065528 917703287 810781950 581653677 617279424 823055327 892549168 419857559 130464047 927768773 6330364 263625829 679185001 762908919 427759360 154002536 414817003 454535565 159401156 978100538 741067383 943359761 635930948 742771495 963047431 879753086 397829028 925407717 163675925 276995522 752605419 739326891 781949613 800204932 336343768 663855495 713531114 741627780 544818680 769462718 406735522 418020666 959341932 959159620 772744700 885280440 712623032 969739560 849575068 894975494 917381931 786602592 133875131 562745399 808624665 991408339 966727522 918161683 850091232 801365104 838991084 565197480 948640179 562114049 243661165 796389571 576100795 890621071 980055875 847649893 870484877 76296372 908998893 926927529 816618546 678522043 523442725 432147792 541358452 930942100 797912063 675291457 938356374 858603653 892685135 848865830 795872984 994515115 712027115 193016361 442427751 520183246 685885008 890187203 891649100 742443131 790825964 152236813 883904673 882620401 807078251 769269183 809815030 194823089 801662835 411986124 889117628 454027637 823873463 975141315 828860655 954915709 991372940 800389345 598082056 838927631 978093969 49087322 786394371 914510707 898010442 76460345 522582382 873381119 675243737 890103832 47153238 729264695 77150966 964658519 140797677 165736691 113628353 199161668 517587296 894958709 492415413 967634328 961426883 653739417 375069901 968535473 839319492 228913266 285620537 833550237 442225879 665686350 775828824 828802893 742293461 129806871 796202414 16042383 301002837 577193079 843534473 89653835 200621844 203447035 584194521 546086944 656437172 754917486 785059252 747844622 185291156 415142259 533477372 496178137 532540015 774238577 558187938 932120819 139055596 713209473 112804160 118651680 759457686 998424808 291196868 995061651 828203239 943332037 913522448 6165531 988881071 880636434 393614957 968404841 90539438 403054049 134492952 816627450 479855174 415594062 872187402 865348438 931668070 849835874 718060980 424078052 828653214 954159834 770990073 961486955 577264401 569391891 756629256 566417855 287097612 825870551 137908960 994720641 824592099 635846189 719203616 919495374 968199557 284385746 733578078 980055360 732807254 870127037 265969780 553184021 145406577 602877222 101612198 181976638 807456569 561889811 959491509 904450798 666837764 903396000 846298815 902709350 831559906 184451929 668738299 403912915 896166880 962892961 684695446 846953746 858502866 806258045 247985742 588023199 990385095 335260356 560114573 579947684 832407444 770124148 991601526 875411006 200914287 669255149 999556731 742644794 983203392 389545261 589776893 87391729 740673672 541577611 166676473 962492897 908346959 356726478 470426787 406058987 764880882 515170888 684576481 490696598 71230663 489828587 175121782 642187897 441340248 794149257 195134168 833070897 241580776 913804762 968372224 678059175 907948965 355853913 36306981 73290676 955244783 799085028 853090992 475379547 415721168 835096122 895341022 497879793 489416240 298699538 186508682 567191526 912813870 969951996 488578609 788228401 498715801 979341126 15664329 814391911 16498873 847953212 352173082 339772717 380249257 613485631 992031906 379326441 17118608 567430321 921294820 695540942 898057992 782345226 506928793 897129557 239159081 786630681 488258703 992787198 486677901 934439867 984300255 65595934 162853236 117892263 6238998 688394944 506949640 953654477 810170705 497913351 253976854 476755127 31525921 796279671 714845405 250077342 503410606 54013095 640253776 582825041 763389199 460688358 460479200 30709519 684797303 291627085 882358819 124062566 970816959 85747475 582471811 975261431 659276036 476908430 189752079 370869815 156378455 560246708 905975098 746920224 778806786 940829538 768627761 793097604 812907073 133722231 757445157 875246918 476449739 19494984 963220800 854528649 821655311 948123395 286189935 14037407 370985471 964699516 145387742 629187490 516777270 892772568 848244661 966580238 793576117 818744683 835717365 885138338 306569973 386653060 320840512 852237651 789228591 50073235 764074221 738945799 77609181 291652285 835798120 744374611 461490923 103868347 741976915 597705536 897862379 998406521 512167704 743757131 795248738 645919587 659638361 162906116 421581420 839549982 811524333 917002570 828975124 496824056 972779758 907019594 868299612 913824457 979502683 874150619 771853518 972730472 268362307 288649039 945734096 963830236 594788091 171673798 583548911 711153729 862621203 914144976 396128316 774391990 98989379 213752001 766593761 707426609 81626347 53558950 806251938 636020435 439092082 738536761 788758699 874960238 811264855 794995878 961823923 916727564 790329422 837278681 934991435 861421219 942910828 4395734 947182830 892449366 738356622 65173244 721042299 794109408 134891429 96766220 970735849 920361293 497405404 763638407 303927169 753279642 937365015 590878985 470161568 541620098 848194247 884683138 963836081 600364292 853391450 939406331 73359515 834161013 899404101 927321731 957518975 133022117 847946354 611678902 908733960 366324994 6881125 106638227 787304952 683165666 913009334 706849103 899935992 280798420 909161713 826160638 755625535 820346975 853568173 827566515 945424114 738523183 746315628 989916134 645680967 647207198 992783435 640169047 717604018 769751710 4150789 472948437 703123425 987131636 40511657 135581998 415069789 857577537 985902560 568751369 993827038 2278969 90441221 794071457 412083908 895542137 992738742 970655903 570949956 137003622 158207799 661839154 647887600 795401487 99274352 607549354 382345178 942132625 943588294 283904778 765968171 600493857 714496076 863434229 924364078 890786143 773370367 860617132 744955271 579207765 414164337 917454763 603063057 845013079 591709992 173639275 392685800 900686148 959956418 742691341 309463462 816580109 179855689 444276946 791217629 803370633 47571083 370982505 808264725 816423827 579150411 807025112 980670591 832819051 63952208 782751382 794146775 615703655 360391469 747737976 637141811 158587143 950536092 113126836 427800420 261146050 904633976 770058442 66032591 815948921 854796031 213098191 965864234 564777189 984545486 790843260 896516806 870179657 875103800 981060876 353648433 959701508 259446360 345123345 466825792 2056563 226333957 195747144 700136315 15325652 871579314 240753421 171771515 863613195 29892797 535615385 817232827 947511310 933900839 74903151 780513873 882364276 552587062 769936951 159814727 800876236 535359602 511730338 44604867 657567156 338359818 607501976 822912249 921168530 953789154 644153798 749300491 894324398 178406348 758542992 297628343 220691808 17857508 625722854 775717612 834258835 620830076 591272888 925778541 486768268 509059282 739914745 596429819 587750255 66163201 897535576 376766034 224110704 564288076 798013998 800467329 801475711 954411585 416441444 56657135 322475864 555571746 700228250 908064378 808916044 857325587 615967278 861772673 852395530 877771294 938989222 150052852 710029090 246485076 272511550 788602669 728356183 990560708 873320904 746932642 144176931 15858741 950062061 740274905 786255699 737020247 825543506 752075527 22581461 871766674 186013849 755332594 89213985 782281726 886203233 514510692 32294123 838612577 393222681 831543354 839483617 998457629 317943795 749944046 795888172 958172701 803752611 909679728 140944400 885168037 619514932 267380509 343541412 806374789 964808387 447135856 781545243 820262712 977160848 321523968 172984752 836292390 429179021 250889290 794625408 35106940 863299651 954774586 504063842 549182666 852101390 263730566 739225245 759422426 950714425 646265467 988644193 535653977 730487560 1977230 774087741 486508701 997372825 876679286 146485442 775355921 888597116 968148583 754451152 412556075 913078102 991269381 867484544 93155853 266436886 995888024 892782912 900543261 980182584 436118782 833517663 814095243 951039893 921769182 897068820 826853917 108876510 860396217 841954987 967420542 797369036 35934307 737020247 658355081 476136623 970653806 915955040 683697920 678147979 570337240 837516085 187613875 295430138 514273052 848663871 881352360 455894210 929609335 424842566 44289138 228613256 931101701 653507551 908220097 683033733 992911020 925685928 188685626 912637257 856923374 540416457 922554472 967362285 814777419 599203200 550140005 476306742 424260413 595092036 527594636 784244503 995726336 166918032 592812040 266414682 180535209 987100270 983898152 792123442 888972589 986757739 777284668 529649789 321447462 817188880 189846165 322047177 618517767 695636434 748433763 378736242 941202791 375798408 911693896 559520246 927262904 951133282 636338442 889574877 954826585 14640670 547819714 172846485 10415696 243296302 349955842 25464631 19891638 667404767 857032048 787024614 212345255 57089665 802773360 408531961 937672735 771703859 429836241 427390844 191709262 483528655 374506774 189545303 824204647 978879291 322741227 50382314 498333294 811200133 749007931 366822354 508615934 25481383 808103766 553453010 427822651 897831560 468422658 753611595 510106733 973343497 957877708 375910996 901442183 196953123 441125227 752962420 503443859 279944867 840177401 701226139 824420900 34198150 785677411 584020089 511002482 277744683 952085908 808692485 603676369 978853468 620128196 883657287 951372624 525280621 737020247 125902065 838014493 745887172 515547120 783597507 895441823 696988763 890902135 902906561 802643870 946719855 935864914 553422450 861703266 512371812 442001196 931254194 864818855 776020899 394058187 801873623 525405191 637700403 47005772 287339821 464447953 486241538 902616865 994260823 794402510 722938661 890083560 308799142 384241512 797744467 988915378 839189082 954437686 581172225 91434522 32978340 438185927 180172933 912726059 826116238 631909335 463785572 748272806 349157473 808183041 108335183 157901274 758575193 894145593 796245351 739060219 746413124 770852137 6425257 939777570 767984109 3855172 840797600 196773871 790765333 748670656 812655850 824105248 984730188 315444978 482927166 869326930 814792091 933789525 689137563 942284091 743626171 227090897 771244570 387134236 985679614 310712948 991006031 906639642 811679718 629033760 153921170 816147059 51032428 819232463 702385801 84436203 812221621 880075797 704482332 406673914 657351005 486500484 203033478 981184749 981510458 981940275 893039619 859008537 251036065 104953436 207971938 863931775 161423536 830444845 893538120 598305020 932009736 868215341 933344456 907243525 782941925 634394913 900488222 970000296 901588105 397457104 979261062 359585305 3068967 995897887 162302689 988121563 930681729 874258757 533766539 175122990 867370808 537526750 794261009 837861068 555023510 513682116 856749942 333945848 515984763 884186791 540706014 447227531 135280438 390853158 797049832 28106694 217832976 818880 505115368 866919795 381898630 854534158 776528334 243131156 964253665 756626309 864103486 769791915 824043707 846716958 920626671 21392585 684279331 980077217 765041829 758935446 925262146 750690687 163894630 639996669 195120862 827198063 754616024 737975295 299298512 864588961 866526587 482730302 979280522 974932100 587535980 762529569 164408533 785748128 15711212 939439542 972996479 815622060 816286900 361671246 766902916 519298693 843300270 692634688 604612521 901569054 478607407 565485776 951758888 746127114 859740436 981663998 896685037 995922337 774573002 45967438 48930725 347737779 454096675 937926553 621309759 991414119 843716263 814213771 776883847 768657692 284081533 40766011 898514401 394716320 773966172 631310895 388470109 232625401 101628700 508162445 63078094 900763067 958311476 436272534 455275995 149348248 291033660 999364211 199631898 235777787 931367814 596438776 241541368 887568788 492358748 445772069 960016659 734856407 332018252 928235063 940157299 882781489 896999327 737374965 298446131 532347081 206740360 827394696 253934629 822051569 532268803 851605937 831373394 813210661 786238913 100138594 630660493 24925991 961463351 823788552 33868264 907744995 876780948 849176282 859631996 992555665 926603979 885073951 954306699 916345210 936472139 753684628 663306896 969027898 960307454 774620441 805779969 456110712 416261930 133956219 101980310 140672088 345161542 232843230 232320538 165328737 119344918 758854227 510869829 892781678 427243213 751476056 514946737 871211318 406176986 294960721 883793357 887754080 974558659 549153914 734781883 985251980 365239925 918965773 780552431 553359637 437286108 860472395 960479561 514864109 928507053 833812002 198256064 82251884 765282021 896501604 915841560 855530930 6444922 678623883 779673770 574274471 166899000 107913354 133989623 817259652 631759584 158432641 817987219 457717530 798205483 614079511 761397168 750045794 779206167 110296537 37456916 898092299 932247383 723933874 973761410 433257868 776847860 845148531 344418124 7982890 762208092 55832834 988587560 737020247 844870038 361378259 958022014 830717606 879955557 3714955 920987496 563356242 996766536 672464034 115532468 941300289 138511965 778709388 824428875 320819735 526254168 917449288 917879191 54442091 965877370 741245514 137138640 513833905 951515362 882812913 498576662 863638502 146955372 883560477 449276484 721110892 83552322 740532179 956756955 363623638 742586152 113287960 969094251 378064206 981367354 178169961 896769725 669294729 142731596 24654484 962482358 157090988 941439021 931990745 58358069 831705075 747071521 402240866 916188390 169180185 794077760 981790001 37695597 637279613 716732032 939147994 108852997 89722310 975388881 831489331 610500788 500514912 922802746 595281054 370890797 920858050 852465052 603280859 790063965 778711077 113482062 926688696 381349190 880571147 935733302 751203738 803254522 817101188 811115269 810608815 569531592 936377081 798302976 914138194 985080901 394877990 760146565 292233398 268133251 590327201 117698044 618611869 980726471 151873719 939832177 889708692 585484321 365364460 614968092 144116937 906424513 77014647 326531854 793993181 722016459 874135901 878139110 900641330 985574143 359991511 401133793 942241901 874203346 863253265 840332192 590001734 193313955 420441170 621314043 441615926 364278482 915145281 626231800 797084337 511927852 939129120 139414879 961484176 990940215 912030748 196213077 770171051 944101555 843923923 901512783 982068142 659234522 786295031 336999394 976954359 554447331 894707330 744728254 680605285 815215506 955924713 722535337 936992966 557099690 707092869 992391627 352935763 862183091 69493370 189189995 935957584 876597831 926069610 892911665 827770002 868345788 523465484 736011529 359907713 223493527 154670795 93877710 441813733 955538675 992507016 449351054 742082156 191836128 889242117 668998408 541419951 93650430 21142129 763528608 652806893 308124314 743959601 946455360 950261190 760363028 953606763 273928235 744159835 100118387 929142911 565692213 785703290 452979943 137057132 938914443 816485283 961602600 739113579 868442835 589837949 641360137 732054713 408723636 853677768 358234828 178374233 845746736 749886076 240818742 646632773 172180471 818571552 626761494 355484793 203849615 650499566 978559874 328370231 249216829 755679323 561853173 742603955 375103199 930233622 990221208 874660528 850678051 221803237 994071772 824559970 730653011 513986728 184657880 275028445 258621668 800267542 25611057 311033121 390848144 457177859 925359212 332428707 419439406 668099677 586677189 597753886 590770023 229681359 746501593 598420238 881189000 880916986 958089287 133353139 985424754 134283796 442017404 290149511 746990021 855586515 893475538 22159016 449660964 889291010 506375225 879382641 43030598 502182717 798040770 645605635 745407481 688371113 868950581 896594554 267328423 761465180 470693834 429248376 803531207 896646491 959951176 721601619 835781177 837561548 406389309 9862994 742756023 670850562 494230471 941855868 69979928 755320172 462356538 808000338 863309114 469200225 948134907 263007973 872369802 998429613 965790557 817082489 969692097 622159219 635942042 290521843 985558537 961626866 678346349 64350936 828422733 487387541 30434001 745370885 442712219 735231508 841984161 219691949 336491402 130218026 933483643 313058990 101806640 990663576 809031933 66689290 189169695 606853494 800841493 744116232 267258153 361820713 108433817 203424388 848382848 295949636 147681078 955667170 143307719 746734162 133582230 820601463 794145737 638561477 975358482 52475023 980453884 35679681 833818215 506171601 513487719 419338580 864945451 514027700 392510381 964358653 859981816 660350041 853548851 658823395 907432412 226226412 957306287 801362120 828608044 127339647 276305734 725874206 876460375 352868435 781480082 146162551 670200059 711923125 974505487 347685029 898024179 379765924 778589623 131983592 155470812 682976125 960858050 714057301 444676321 431326870 698776394 435348433 919792535 684249621 99995699 697207952 793104717 104602477 877796724 888998695 812941549 885037421 952539055 876700115 747963593 1240111 685339711 474580170 930236039 649448610 358803502 694522493 733565543 803610028 24899589 369410463 853353155 46752893 818582257 839867979 970361213 232591981 356771109 254098493 390192803 361540575 796922321 795435312 669811198 140966923 619276353 804444493 372334583 976973355 87976088 920039558 303115098 878967322 213767237 181239094 943771948 443269895 768833275 462087061 863288806 204802980 87794365 509875530 535448390 748552419 222701227 631938310 583115351 141010267 453525075 326557172 918203620 766237990 83642488 873465456 986101884 657112906 191992854 847030227 459202243 802450234 805084865 496808043 689198303 456137953 870115642 124006080 558901979 205571140 323192502 939747313 845426465 922974182 770771133 180724098 911838129 923962051 768638496 904067688 824329143 316188640 923276093 109900548 704352776 831088307 692355774 978202829 570655677 940629448 111908483 182083377 971412067 260794462 433669907 900744939 8073778 335601785 818364864 909273452 701278845 812638801 981055753 542076832 787048923 797243337 588427118 513541529 382824936 772730299 303206684 172613892 684116747 935529362 828313948 236613087 256601235 751040009 752732274 239645435 871396627 108268133 21610528 602232834 497873612 156930718 860215979 75079816 951896926 964758096 931946801 20732498 668637633 743185336 662488533 533186252 641903531 784161002 450427610 661554627 756927439 908643902 341466004 787128831 114822484 786469966 827741318 953945685 1095344 266872322 789338009 547493334 987716503 788692421 576302094 971516821 364576574 842408017 492502377 975278474 311486856 234251508 621580200 37001672 81821920 756708284 933750335 880273833 939555242 468577046 325460094 273061763 179487577 748636814 895267787 326230848 888823853 919383934 817931018 952152195 748527888 849386364 749466209 890608940 423921027 138981687 372579367 276241453 252311285 795831836 509156393 560565000 858304615 295523716 970853943 84205575 912737830 762483150 215522661 172246904 830971336 852911704 361804723 159534488 944167234 909006543 829574594 632088933 725399594 865809675 604284550 252747866 655242931 93279699 842939387 588527244 857685262 584745081 724259613 186246955 995008775 649362467 929561663 807521831 860598626 810757641 999866077 129870580 109004930 756266921 956231699 984863687 164014321 209808637 470081468 817089668 979232997 783187040 234806205 796795859 813268761 934891289 908102535 864694586 2876937 487396923 116415015 750855138 767660450 247699295 874909262 900818624 604058123 964924114 817776950 35639331 828570795 132242529 286307682 486400235 883316730 35332946 23922858 528052922 352528093 293997623 302922925 125203165 958085158 479714051 802714142 965637315 876075601 813984329 400451610 741316792 545038953 887545186 272581424 409203408 519533451 882224433 742307185 728779874 914781609 488428273 904525015 725238256 877380521 865483892 910243964 868240282 141105571 38689639 480425351 965724355 742747082 698841456 955895753 226281697 704345476 777274111 250941269 985544490 42831125 434397437 597967006 509517598 283709250 557994981 795398001 877438479 907286075 299600658 737020247 962819809 977125046 464992249 240126344 991881821 450644337 652888697 779997834 707547535 600547790 640718728 944632342 234474860 385465495 128212412 404056279 634652365 782834342 37536845 865057090 907857429 825058602 765551320 782525919 131312038 331087201 771728275 88245911 77466223 825055275 771132104 442318759 594681243 97247827 908220638 882882538 850239521 701711808 457767098 184254312 150733863 369821433 800451450 889119928 214946986 31836576 932354897 791898341 261289247 342578834 715558118 884219823 906822168 347127061 38339918 816189550 814245984 806099808 16199046 16911469 944328969 796681650 590826616 655088932 396241531 846891348 685040300 187360789 900233849 165184348 979267239 4768970 880476517 757479073 40485316 939790851 926431284 212450868 759052781 531307065 511902684 693959456 395095498 143716461 177325370 436531962 344634799 308008131 802914716 533882924 93628839 416841487 947156938 14831354 645029327 350376997 803857175 876805787 437589045 376969068 386155752 618863940 637764729 778271655 986765979 56337376 860856348 237380597 724900595 948240666 203132862 829826370 757750766 662256250 496338895 580871851 204810964 987945092 846268952 967030921 718227399 440509257 924327518 224967936 81207996 794250801 509893171 991680287 956821160 210286783 346475610 375199894 786315655 917020696 749439175 14303535 948517943 859627081 281202965 38005649 184654014 673509187 7148102 772235228 861966380 756984936 16554263 816069772 959635298 291828920 249424036 880988943 428741450 858598396 742535880 976925854 691908440 476004089 950408374 702562741 924067560 288265057 232337381 25373460 760353679 591703371 957552567 31121436 896322523 629386555 746409988 196363567 42158977 397875183 249911932 932821503 665773766 82517251 152314142 96851625 514129443 651047713 939462035 145293386 833815993 967737875 814540520 993976742 656865142 725509775 230902501 522879232 820676061 295336764 809034235 945778662 751097356 604743193 450779908 827731275 985863133 945641462 786017279 788118735 792987946 374073205 274106537 784571132 694269356 906732860 301174941 927192791 630794234 775116949 416355853 745015479 929121073 576046234 689976973 207287134 358612107 972047643 229083830 198013608 577704730 946249358 867515753 714547029 749927897 870441971 558920386 480403249 283439240 255580778 456665725 309459828 952233039 489566255 246572547 854238595 294214603 916420352 421591353 848123684 834077914 962330597 799929848 819954442 784455337 756931500 592829984 589518300 96491102 622815478 939207440 181974568 824397277 589933193 964916533 564873142 360820008 27659027 908238167 779260268 887520469 778627321 759228989 386763836 247923352 35576687 790290415 260022168 731102009 781206582 721748825 811817291 905904171 269918375 587474616 195263145 268568907 511508220 789591121 553161724 465571764 962983866 236981004 518572828 819281410 831629644 736421229 964945254 859184234 825343633 796842846 362302981 3568049 861094472 860339014 401708866 378984922 700808521 858154309 265902900 374928673 516421487 745022950 114372179 405737122 633716722 102747948 460428708 14612582 649426694 558991444 902070789 354753742 3210023 326717881 866922381 343561140 762507703 413826894 446959955 817896859 868900627 859891599 29230356 608717502 747700640 693154067 202353022 780059159 15607293 783500493 66395403 731610895 943395874 783333424 792852081 814157320 711765710 738284893 208131649 245035937 425075813 938689036 241227445 932335876 966761469 823956262 143553692 213883428 884476346 945637704 71563790 967327893 987799273 915111351 137169068 494865265 884779632 226976302 94608752 108117191 427067758 849833637 875950748 620582758 746615931 1236671 820279897 975331755 749974308 984925417 220515006 631190837 326583185 525972166 795701417 846233414 507104150 742158224 652324326 746911288 909773597 740526458 811407248 390909503 837737592 248416239 782175336 38179306 618011030 861010004 380305276 595357278 919258144 387037478 904516381 295047032 853627582 869965454 648023571 186084475 992165754 736416789 297442833 870029002 352396498 485159083 440303717 81542518 560112612 992265584 958042177 850682097 476853414 101570185 434238287 268290739 211560636 804908395 746799721 468556958 34746787 984514094 565445546 950438384 955735980 789149606 412079494 224575342 66874608 857925214 792955947 368728574 956612761 782975586 273377387 948108038 842486038 748093621 907729008 978628196 215482052 854654934 859829649 327315752 783516476 288133257 875162161 600641084 560191406 780675870 824000512 309415764 517049141 125196850 862898231 184944862 931008290 946325778 823084925 921412539 45986460 351528822 156911940 83253327 789339713 842256572 674341978 934382277 195243498 721644208 479479726 959823545 990634361 901433087 912195422 857540290 817242188 663693634 872872604 490758895 878707313 764572805 859288345 425798954 829414858 929439840 145352095 779740227 953778789 923996107 785655013 954106688 703035288 214015606 338166160 472511249 319389152 880086703 751141410 948127258 718332184 45668144 366874895 818839803 443983392 168907678 402011264 963880092 517714210 871760946 996391138 682759996 861806469 62514137 915703341 810622800 734848562 650474040 242121555 984474034 824090217 475229904 467899405 887999495 962906247 23705333 684230435 396021838 769695925 18442582 823215337 352567448 189353661 373846075 271926603 94198858 870115417 916017178 475022233 948464684 73586436 958850346 642091890 338204852 963178606 879936289 933997857 471566264 326785437 796741983 366397691 315267103 859278700 901185189 36269699 502265905 63042965 695040805 877860467 242085316 155181938 894575865 915142045 674569099 823003261 921487428 263496831 170088448 951533557 855309712 942824544 738883999 911741472 14965163 976254628 861836443 275874066 743600921 267208643 993100126 797154980 630240842 724270565 57472155 654504892 43276461 50178952 420935926 545883860 812813344 53099645 623481488 331287254 247808508 268194423 852252997 826697100 895644847 951285629 555242607 73877417 314291501 529356872 563194416 372923999 782164396 942396735 232287092 851990281 927859497 770502768 347249393 246235100 737810471 853497290 924787897 603281786 301500498 250198094 159250363 850901168 410907394 979247214 912674922 891175829 584444477 849853251 234542253 525190143 213794999 96332760 873233325 952642870 882827653 960237120 460839618 870593649 839919202 963287949 862295169 763359214 219440855 118961862 924576179 793106403 97969977 805616615 829374578 777672634 38346831 959747747 816767077 410180918 702177694 398830066 662709249 349529978 69016648 903532642 495824640 335775779 826770698 806086203 570208212 279792099 190515738 313672918 983754187 865944800 939450370 892816594 906511234 104417873 66301541 970496691 996853319 970015656 768232041 482973998 857212953 841935543 281130734 274203401 419887389 975245412 439423263 838317896 338683684 797868242 836347692 347961963 66131052 537413608 859233353 910424048 335311485 295187193 946514136 963093459 956743862 92194219 766917626 916002336 894826239 804218643 970997855 742651008 962584217 580732367 47587409 631943673 947653830 904524790 899328751 903671436 453120878 537945965 472606214 954595303 815522003 275417768 541299074 829129646 960890787 288960680 90411364 884742049 631153084 972563856 755129286 825500675 580642809 808578202 639819089 645760207 272970973 872223437 803902215 976436109 720430740 991998809 105391022 744888117 590147149 811714592 195118294 258801342 243417775 163685931 324137783 24770986 420652829 815946332 340166074 115570516 570622841 984499507 538483588 503692247 985990550 795650406 207138722 934202225 402621627 882430864 586676954 729865744 319492766 766814105 998409776 428554450 708453261 765689219 918414212 550892460 838916109 480477318 140725507 557579330 879150392 867380090 929605366 802194624 767349261 421902509 457358689 903416145 801667679 937099446 984303745 767245689 785919426 834728623 899614307 409921462 439613324 158220717 918044371 356487353 7297234 266529351 739377000 433041778 444330503 965299069 632430984 772044866 903726823 799244629 717941651 189009735 842025372 110217664 802404450 433284928 936654633 281055928 989256414 969722339 519886784 799897599 952241482 777594812 139875075 955714859 667389922 685891144 888745227 518716055 445362310 604742138 450852371 810954769 638617053 954375314 478031714 922563475 926999910 597699913 869520320 491342207 55170772 767304111 945008237 25912555 528476228 780567334 713734957 875298906 757779199 772502904 376401541 176363186 948873349 648256714 997321792 767003104 97514112 886892881 609837706 79450768 846128620 600329802 645221610 785079897 856406988 996109133 157660141 186957699 741466174 961521548 227186201 843445828 500212085 497049850 540305742 764146012 311307731 999729614 565314764 916214685 89990236 924397632 535933309 65529177 879959947 950812532 112877536 718907761 979303356 570380324 317820549 156111473 787839761 402067180 349463209 935967219 703850690 148228404 842793485 694949977 4143637 140479094 973129334 774330870 971955408 874981429 948848647 877633481 957863676 769942997 862009475 72522919 823596497 978826696 622017938 799302752 852558204 964358864 747741162 671635663 139972316 774932033 894855971 664861932 800466485 175217231 250233726 780400284 141596747 581004685 122409506 38660475 60594822 177787530 66002 854516834 927313582 264583829 359023393 860438848 834674421 785335217 923306171 313930835 428581405 909769101 856643499 188201122 102552489 966101234 895130077 966239338 291169933 827014615 260315341 126307341 761066793 911415018 979349819 818933014 809296469 319963730 478204836 25817863 817502373 138859263 612847932 609694683 33588898 948626614 26050594 821421727 690330257 949440917 63806116 990052605 936182165 189483819 470774679 478661007 908614352 811385634 965879726 151991974 449964106 740842286 301748502 984906497 980003943 970986474 559722824 759165020 613718139 971502079 40044935 540168615 841622639 752603127 612915088 940527802 968306989 316768119 146612039 54632968 761470564 169176914 949424454 796838693 642373846 969994540 727702765 846334455 903040889 673976325 826173773 14719280 298381638 797277328 542273450 792504290 509496720 254939131 640216096 537493688 763277466 323712375 849482704 878455050 768394776 622257457 375491636 750601970 313555645 979876468 67358537 985235306 385561273 570470256 256856201 21208860 610377754 880487457 921758753 895755100 699899843 789638347 850039328 831784298 907934382 851045909 760223642 48321002 178526242 880414169 802235169 402019865 716289291 525333553 988896967 770006446 865334994 930716591 784208031 816225791 573038970 195315363 959127271 779080664 898617006 25341247 497374912 316048469 563378279 647178708 880134997 475693444 878884751 371563585 848924642 239225511 665493322 506640433 786651197 972379863 25843653 880945393 638239459 773640851 214847980 967564002 881612087 338171928 767996316 428234626 231039260 700754159 870837879 957110607 38400971 47668992 723331508 978748046 78607477 932599887 934282584 757496645 810233530 951763377 18805111 984341961 807223976 129403747 739243344 590442319 111243429 155801735 902242191 963612362 491837078 863647730 707132928 966042731 802366928 341400246 932235669 848666518 836972657 252992018 462567198 805742351 799982884 770428121 813889786 292731052 912574939 847365532 788640168 91351592 70898479 336556398 811519347 896166034 126529129 445140163 911840591 769565631 947381629 759683282 467417778 208751379 795978322 223082009 28102462 318158938 178441946 513725763 828750219 904735317 590768710 802456517 944913509 239924094 957802739 657091351 802648767 666972396 306272388 536614278 752630390 764667480 816097544 343036442 684419098 563557374 909328405 818171873 739289261 222559786 7504289 760454094 978807707 840790060 617608266 783158781 135953637 994772598 79736628 4313067 932370075 937720727 940053563 512098145 473091397 367514035 781122950 166239837 731468437 613809385 958359188 148664359 796499766 234453226 339164370 221785130 912636856 407117178 751313570 812468843 930582125 865398529 140994526 631463146 968794665 902884824 961104049 219470070 931791314 468158078 908702788 471842297 771142733 368917345 109487681 873851837 888763951 214051983 760969796 889302343 328337846 542525285 884063674 988130763 863352794 890880865 960759356 951689303 479834599 591798204 429677236 229967534 755831022 783733175 863975613 734963106 55346090 633028079 624999498 952359047 138168102 993240012 962291773 863792343 576251264 462493604 865562687 354761277 767042854 805787009 489586572 181515591 433142724 546828691 867886972 66659589 854246 868191951 353327484 301816494 939607081 382800670 766301847 874566493 978682672 375861387 536027724 661624183 271209961 741532734 838578226 204553811 159483583 577900120 962374660 540628373 803364889 762384077 536653120 914126691 422999774 888188427 294827619 772260885 467552863 467374160 884156196 807981222 396316367 949856587 580462497 458950459 630312284 886504890 45624105 810858496 210491512 800217373 657305676 50115314 425209296 915112708 368005791 373196789 481063799 174819890 71552820 201751812 324957638 843537054 361434271 585356894 916972591 833670827 246978324 641540729 822918982 915348356 828850162 177329408 974162160 269878736 768316672 260896541 784929467 127958813 442345699 873031678 134916636 811014876 674903392 919893421 685417309 658664366 966881013 839780098 173365371 846145317 577183554 968208422 102010748 852280834 659355119 979055343 927497115 972359153 909519774 623353444 642802830 687702388 767885863 718723623 104329444 893539056 478729022 974971155 151975557 628459781 837013015 694084781 780728615 77912010 376830004 974150789 598147210 889865940 874105384 292812258 795486046 959171299 821425642 906125657 133684567 896657236 928341528 77986645 447871330 192328026 466110464 943019792 850660582 67252823 511116972 335379046 108756909 788975767 115215624 239055310 284332825 775018529 160846111 842823028 19227553 277527903 310954838 688749906 148426595 612604296 7131795 661682923 622652417 229383022 590650044 739989595 620006623 801299330 790674768 881859908 898757709 619485078 753674382 850530854 982655121 580678241 855030711 782797448 936818722 208866187 782514529 841345282 993226930 598069099 956173098 782629810 762159352 79804623 49383 927751668 819347025 875029351 975936767 311356264 470156824 490656846 809143634 168543308 810547808 361362677 739379762 455190988 277594354 879644555 558597486 583555176 234094238 768537137 925650454 267928795 826577615 787385795 942239236 425126426 184971759 1940820 741637370 334920114 7221172 903207316 351189894 699047255 770463179 823994005 698338011 909040007 772491557 997153587 901065284 944179391 690999644 161203542 956975606 782298771 468853650 978838740 860459694 934158563 557899577 798365530 913148955 944225186 257659856 773118891 718233809 710813577 350714008 563857940 487438747 303506515 940903516 924024310 826683986 913688189 788666816 916326020 625876626 887475982 808919725 365531233 1594733 481073032 565485150 866841199 152421289 783590489 667355974 719004067 955398607 955850953 517044003 747631962 940920181 981066568 19206755 981942507 825891488 732572670 181108446 556019424 379642399 467423366 616479643 807864051 901996922 403106777 1469916 719316812 61425125 633545504 530306778 240419486 977044774 557819765 879645881 202946219 508834870 353111168 881646716 638797597 403709415 426958330 844512490 478865107 19150515 494988010 687253845 883265832 988559096 572098232 830441689 986108645 616731212 53768198 467864834 250618943 886224564 840412041 413828548 953644758 189700941 835270162 855865981 602209916 557245128 753602059 790328844 964270762 808381219 378508991 127978261 930497511 793163721 141031076 367468807 890911966 108941316 251702119 922844164 321165209 953014525 85362419 138479801 214935788 822636073 496038700 974060028 866577685 976249201 924404412 887041231 886102178 315775845 867890468 533241727 868538993 922740756 10636692 140349060 785843102 842394624 936863129 202290419 562507075 133096029 289926531 406886227 779822842 904911347 913925860 510107639 423717993 289006024 902995507 788215699 55429734 324886999 818959859 587516864 259554947 440875504 84641320 995051181 270316867 11978132 769534458 426221597 300038107 334007983 573360848 882551401 125081750 823320468 185453657 992537034 651412027 949481288 264611907 633275032 494650727 627770369 227123956 452252987 190036321 82386854 562112762 931569633 920127779 248723937 755872187 789987981 905138294 795214077 838824828 480985486 37065340 382375813 196700934 971316137 937246601 441789197 256629536 851691049 871191613 144694562 964908779 817406861 877481667 871168556 506348681 771744424 949514885 229411300 889606886 478597342 584214390 836768226 962501978 933252770 792384320 753279668 191083770 878786380 969094894 515915214 166416629 461231424 991171054 915901386 879792269 120296251 536675341 823678166 149129532 504288620 883882828 984512621 360459831 779971623 941764108 36269981 679365182 554301158 151719334 561127274 806816912 968230444 630969868 937618497 95111357 831193307 730304785 938218104 985913635 447258159 878904297 111395912 965329921 764817977 910919102 910720073 425400605 660427335 845376815 908348947 813979350 277831695 857806240 386814290 333372638 878109043 865215115 755873549 935147990 397843374 8522200 757856262 968267256 955648405 828462206 927117738 856173282 252069108 410662935 597268068 541014235 473275551 981980486 954882738 795830372 872190119 383732977 732214929 253520680 29473729 744676518 569604205 843859760 485414477 27951430 910672258 642968348 924859349 898117185 723679939 853634528 485521480 43364105 316356221 851511009 357289172 292265547 589805903 602191556 604705693 810987465 249514125 423029910 804960874 547473187 631797519 588863835 612263446 912120105 898177490 798889673 937792604 787869760 884234877 355839260 679153982 388815149 751867164 738223761 884603386 424891448 738430875 697432325 925064571 413983192 45828529 47930115 164076489 614513771 394627056 761874887 526604243 911162855 913340060 763676553 725351322 959829150 319823369 784943766 511433959 819720242 624217268 67365554 836935005 67322166 761020913 889486419 155544566 966580659 319286656 170755874 57284986 147002959 740373347 282450649 876862716 278074642 820403049 374861507 833037649 645217430 490880876 285130766 952034053 920372009 772382729 432567019 356928412 82595425 978790940 907094198 982439568 21687289 482939714 776343929 913085379 309942318 770948639 777041044 632022736 348816596 761760615 797967266 588575465 729843787 254861269 796070798 749225103 788266399 983932143 997681063 744346241 186728133 429607064 202347912 187083273 34522091 88431358 583355476 746561307 849780248 762830948 777126584 334069526 739638952 789669466 21765413 111979352 619739273 784565411 454520018 380854619 868851640 963896824 371768782 609995231 870256222 749009049 92198595 853751169 600902816 598025991 100184480 183727063 80523503 232972543 990898632 811250886 198850296 646763625 921753654 267947882 152191856 88898542 787971486 626092049 592167864 701313534 933296526 991383377 484660325 872795521 888964092 933551926 959157915 348915622 934700011 72053900 361679761 842931260 51548385 292217435 529056924 658716220 914811751 993836121 334415874 288905221 255956468 213075681 852782512 761882340 971837259 853556625 878969445 405748447 428815043 438342141 765882130 855181237 963793379 446372847 479626570 997225937 934749198 611427909 925856386 835351217 242393301 933577516 514220175 981372314 937556527 509070447 750274326 563252447 246814004 26739690 963873478 986199677 234049869 168147940 812530245 151043430 973263098 665626884 640690978 789742326 96432565 750783774 677197575 900434608 965802337 835707897 379695818 5020181 918569860 904331069 849595284 733507613 880664186 567225551 684689711 699706625 599484927 318150775 887277649 247998994 269293481 745072471 955950444 28179153 417784953 600870335 747120753 849244679 356258641 108701928 60113745 696233685 214948988 945349485 417881526 886028764 858183978 439151116 901120194 784455673 917699223 771737180 917850705 810708283 862879086 572229515 862416813 592870996 776971364 842600692 818961340 367511444 244416342 995424682 217895690 960710881 753159913 890518383 71484214 148682280 128630298 901692521 885846313 818254409 379266144 205314329 118130737 740824456 832545893 105866868 233481522 57348262 721580323 949045222 929039606 856057145 153131207 976325459 304292602 801459072 836087446 788393664 919931917 743499120 429840954 621364687 922675529 905582287 68008049 335417630 768231450 182999512 897537835 793329973 858580596 115484396 594834797 682608533 979090858 974968002 741819553 905318630 25518808 276999747 894247260 440938809 839766077 67282956 95240856 526659782 414759591 151961438 977209803 355257965 185541703 792780941 457838229 806546241 329606416 489486933 312263472 752933744 925008842 199594403 215196685 569737233 727983596 934100089 886413472 865593367 241728514 614881798 687272802 136696834 995853017 885522609 919761628 42439478 703504723 437859478 250376799 510874584 969568239 864461478 442712962 753305336 42300705 867015695 979085903 375829437 195408721 915707436 956210089 283798827 731883133 469800483 587062458 997621611 226217212 121448584 720452295 867395899 940019030 123144397 767868381 738866257 794997683 876136782 817774691 929303864 777389213 581863716 894654029 902252856 854663302 803151409 850203261 542451509 982453267 284863721 562786499 852727016 600395187 150253393 902202829 648266381 949229719 759281877 952433926 806236856 837063573 823767544 969313869 824778014 364360159 111434355 575649825 932108968 879138740 521011495 544653000 874147223 927176208 962923158 22948885 803002318 711243556 96167107 830271150 847818297 557776383 637965466 943965681 453465093 985482058 890185723 416860077 667308839 593745048 171641812 973671495 741650517 315749994 723108603 277986236 642529529 877015878 907834433 677100907 777490183 915483647 811015348 742961192 535622259 515783678 520076616 822064018 718375455 183435145 858161848 912723972 928747868 856389576 647183953 11419056 640235333 18982428 510789767 547915407 343502782 237926080 874468543 752969180 846929721 664589813 792655964 207549677 844683910 733637635 128535676 528274142 640672938 414667653 744708508 882581646 375403076 204433736 929516719 890484985 792264918 880363726 830056491 377610545 150978839 771215211 796906497 995847873 94846724 237521691 923893496 49439436 801477018 826711926 246010797 303279269 881661156 851478982 513603716 864769859 227596479 415596240 331642094 369669858 335376759 419038709 850940137 63901059 172109142 309996127 973953478 903374927 878777500 351408615 959932832 922222340 838537660 137463124 581176055 962019933 503551321 967828151 753414811 226852138 952067180 907628636 77529075 829800241 905861150 508540635 443156972 946568723 742544399 453189962 637024629 162407681 505185625 696820809 752837723 401783337 285832898 810982325 815862576 752212330 906944302 808187115 872016638 894117651 648957970 527543256 94797675 766753981 846532944 237662218 923557544 275547145 902228620 883935486 608248818 788842056 827017985 102390052 849512511 749363641 959919351 866377955 643671524 965964425 905023651 768880086 750224161 251376967 819210058 23388967 207702371 859800140 836232299 919238695 619601343 744381763 750065107 160515237 47566638 877718428 240922515 843860992 22767620 787501241 737020247 857290362 739443320 916043579 110022848 758914472 837432646 57511427 298359663 928427900 975825622 629277837 795944646 988897132 430034050 954694098 805365663 737948806 560897385 450640502 911139124 945911610 111045100 477711556 242325926 809942946 116380677 964147493 903055045 637691536 155600304 972250256 822932619 607358471 197718804 314718383 837667474 812855714 961342665 478374083 376094756 60822529 918192693 420150872 51164323 251117681 951175906 534475077 800658999 603058535 768321817 911327027 983813036 810782960 328225059 546032100 141395780 753351456 756555864 487092044 528905457 607079861 869888454 505106982 338222746 868154024 822034867 812562254 204330111 785595822 43809284 935539829 955385119 744415538 804360004 636758262 178088327 858394879 619876266 454629568 786264741 19767335 329083586 911387381 891953359 910084928 10167821 908754589 930316413 779677377 810502301 636006228 962998094 970630223 390356497 997964300 246284833 839145825 169603682 941484943 237511904 795933966 863274018 971421169 949383690 160001038 46314384 752807319 947812874 443083621 914596255 951620707 784690343 838185666 808972058 429073927 866432878 881161998 731308536 273388559 107839901 676074135 507888548 681503356 456748708 113900756 925938738 623062137 645396061 47923167 996692133 488323027 781374256 801104303 890042023 873979892 989327664 968467165 127853779 83524883 919098821 758600653 834392372 334947158 106210356 738735272 144785286 801225187 508562545 840238610 548514726 176831648 944337609 858577553 294565702 995398599 53682885 792600830 200911322 389192339 675827701 954517691 738468623 786140032 914319615 66257310 364573363 884869183 929333500 366147497 258606400 816611788 837321666 712652589 105835089 836367602 270602172 267797232 891004744 780213236 215121418 777487408 280184463 774867535 988465153 949312761 931608268 921013471 811013430 993388779 876832126 185969538 66283221 28476830 981656615 881202024 419404775 775352141 678262220 492548079 847793537 742455897 770530686 632411513 387122437 645371714 956750919 508293646 777987621 769811548 942063125 755997811 141959406 372659074 990428049 395150094 981811586 421133637 850531779 581637790 300343433 14966815 556273134 999641798 737131578 954368276 474358188 956543524 116579189 149951961 884711468 187838732 919164204 810689801 471357256 993180764 919361008 626384398 913445112 792436328 874005396 966731235 343783324 970330808 3900573 640636599 724207741 366671901 196027118 836104346 698636951 553611708 752733179 871263199 851501249 738455393 822771841 635042310 108471994 232484398 515969406 696371327 747074603 276982423 339482512 921765674 264662139 908784484 995195795 783350979 457015386 959546744 908635870 942668990 667992049 783878950 359742354 845930197 885572753 381696474 409364260 838544898 321384757 774026491 833193188 868058065 163717838 493891372 898442120 997040679 53198286 287387782 104320357 875882931 151548523 264806330 606468557 300441726 761984627 24642153 568873748 454653177 602440001 757439006 574934977 864121389 779079960 653184886 314287673 950850667 861616895 178712897 920707452 968924351 422149224 501508303 195825184 768639378 548728175 651700590 238885273 812402422 304748802 975739691 769019865 68855657 833534689 414085306 742570710 972561379 851611010 845746456 835590601 399879936 779714601 867825701 443936768 122962351 690447095 630535720 908891525 803336522 746255060 994443045 226236255 984107038 378460550 914549172 756325194 929619965 191393375 108994871 698362666 235029917 153436263 973824305 872674371 961142919 926364071 656478257 959605795 880604777 126391720 713492739 713429398 51838937 29882798 839695893 60321061 287537944 881330636 781863563 997271124 750986370 827259001 14374778 545216737 723271649 265981830 920462323 890949677 344565972 342531105 818580501 689445669 197161608 551307645 558564274 789748111 579073914 501161097 574268997 803731116 344803776 608229208 988207593 720170566 814224709 551728778 407906744 235447539 669024908 750617192 437461864 827043575 14119687 760369384 714488932 685076080 15290836 721558326 910304055 81027871 724517918 203396393 559387908 83465938 876194928 805199815 733893490 359514031 226773954 796315429 886276152 912349070 876435440 943168028 274724420 955358708 719032738 743555605 959467550 890251133 206585340 164371038 506336171 509983490 941584314 909828112 922710637 104874760 249338531 756258025 776376347 993858584 687499703 610896226 812126489 993222559 248961367 602302424 595282474 909242208 893209222 855768580 865804913 486672016 872084254 208590063 41247023 777750963 499328429 958690030 924348023 839891425 778302544 457473901 621695431 184343735 59128281 992970270 66483311 856067687 651585133 882731645 869626800 408840519 907531983 329369294 961846992 798875649 897446719 594535430 139398615 728366172 430399158 807882514 713154579 972508885 493146972 976697141 236631349 523312270 146668557 459312737 751748483 569114987 878218685 782793844 789915038 762537634 975704240 643275587 842532443 117437839 66785153 341157343 470426077 756716703 721922714 970030087 819067022 608279626 386224442 753421935 143856328 940805773 35920584 236154633 448142976 226602886 916838324 656109491 391247599 156120799 702906857 832972800 408329752 739994319 272290197 733094292 206481834 822812412 927932392 838815404 754125938 859262947 956147620 964144032 807817677 941653297 980647939 330046040 922316799 546250327 621515055 983401677 459710746 199397227 98143186 156122701 457622170 808071588 541204610 757797982 806305180 871429067 979927071 418884469 385144527 325213770 724327586 953368175 578482728 355131504 243863929 773180434 535254992 693402463 543633841 770564346 210053520 51898300 806721012 296426788 193562077 774783526 853701634 826517340 137664332 163987355 140780969 4881396 533621365 244309381 200514984 853717259 833941553 941146123 507567526 121627259 996585423 818869634 946289366 224652769 937003635 807727866 998090990 610267412 815938929 862736157 933511002 961734259 809891589 831776997 855000527 102759727 981011233 947957339 805457107 268705155 529875934 744301320 655061367 944291372 872659045 542118696 403798905 930415243 162549279 924509739 897743945 865514824 361474318 108894877 656335461 68464700 35491102 722705723 558170717 285658392 946026349 744876493 804681937 896391370 216157550 435214650 68912665 281004247 740567423 464887731 870602967 486047167 66040864 885452470 222839912 423251960 531411681 783221961 647097195 232882987 954962789 418000761 64106941 411550276 690997158 780703718 310709327 938919195 617144488 743494482 669086792 961415385 849592022 827618325 827182886 85024582 852520366 488066973 936874382 79580760 917768024 791224647 583640493 929612596 789141086 771036156 130164266 914366981 813781072 808613803 427505934 767009985 330835252 473956874 149855645 344576099 555047605 457457247 555120341 649067536 827738491 869356057 461046872 236339670 255482117 778988036 721158526 811212378 545815590 631148133 737992169 407003003 873976492 184810495 347439430 799541953 993760651 987139172 921741141 801432134 470739608 15699925 306877742 752657985 849580783 901468599 170211074 693042690 880748311 504940971 792234761 273976683 696892881 425811417 35314585 256257987 123812567 572644976 810575355 778354762 108054639 988360492 739328587 371725209 789040706 828554602 990732821 885737560 784987724 315158763 693628543 687555940 801243089 771084864 750590279 742096415 813183868 331161571 754998758 804979796 271191436 762144006 718730564 865180055 874777175 137893730 283006172 193036337 840802894 441567715 846536184 71888386 135746656 989220367 232795096 903865862 633371263 824995325 829866115 743695231 817817444 806566187 832560091 136196507 753387496 448338072 297699410 432604508 86006160 920850362 730605171 761738064 762680697 931133007 392988708 194935948 283975495 924149294 652225351 765177084 428266767 416265924 925142891 553905591 839183518 696793048 961705995 792090859 271912409 930490476 753441159 454785349 593663079 351751675 722745240 602038479 445620683 543851081 913298530 984600892 813946845 44959119 869793336 788939866 196476643 799845457 74020859 42234282 945090172 792281384 129990701 126638497 424167745 387264928 338591957 449834116 191803818 739824529 964240105 64241040 445129892 255448676 891246521 603920637 937332426 714007260 375393827 951172708 870244348 850900620 601834555 737328454 204732524 300259749 212219884 591743555 924768081 756054191 765413408 907550522 216422702 26425270 937836487 737484949 723987200 937389313 754824081 889961000 851016659 779691796 13688056 850645892 961704734 758453836 409519117 952372678 937977171 426335445 814636095 874142213 124206246 715021629 885905925 949591845 579526983 218726066 814439019 981749548 185206858 295689033 957975076 960733140 156860210 131521414 884299975 766691667 655417527 953446015 884207946 797549794 403074506 640308906 577609376 80566869 255796641 313545631 329949738 943281725 769641632 332460373 611167423 225442757 852889771 559313577 833452303 190960540 943279278 5863802 833525789 839801553 238223142 925925438 10399029 538389402 912498535 995375948 815875663 505736310 794969878 826197514 224477614 25425856 764388396 606998200 768222285 153113766 951317280 717401535 658144104 927363479 918267221 917801201 858543923 560721378 45961097 789852034 466945607 609070719 720605559 958368478 871992729 685868315 315277988 855401425 795093981 817257549 152112843 606325542 101234761 718792897 128870669 812096084 921727933 399303374 399181444 742844751 872245231 879704211 599706843 32614439 774386349 189498025 146836110 602853131 399058127 938686587 698211946 712656765 968110156 891064744 756104652 933668046 686727958 375637737 818045678 869948774 345605781 807881743 816046669 740008070 270176803 375198896 130939826 742227360 926736529 98564903 993437177 645205249 710359224 256408282 426129296 484692268 390811835 949065190 266256543 688074410 637414309 325459784 865394443 686156177 609651759 771117010 454557710 973799759 26269963 742640852 478153544 914519349 620463955 455351094 989440421 892963581 937298514 449469518 520342968 985840807 988700601 88710649 839813159 750577539 989774184 112192367 108251908 942341898 843576409 846054056 445559327 392565870 111702253 972434752 339184741 375921769 388799943 973814205 77358875 763141776 836543547 506600259 548346325 23673652 993008990 866589258 253158194 863182727 688973935 860788890 954537866 796791137 771114611 303589447 773365395 803236307 743734618 769594296 757063114 928049801 313254538 680258067 757244893 973442582 159911724 986870854 586979255 760940676 658407798 59331836 724331994 884894918 898228291 998407455 298060100 979036367 437042880 250615564 185875292 936572711 408519539 513768742 861976166 746467895 459534396 818197670 907291038 109684956 749948417 653019827 266111039 944610686 833236997 285466814 690772023 885883797 934426693 481817679 958115551 223162467 361216345 816577881 493555935 359925913 877762122 902389516 753514841 801120463 264864354 956329282 366921857 972615996 2752386 802456542 917298875 921476620 341803016 459919346 456911059 627437774 916541891 973181271 886561609 652743991 993573866 596149872 135827199 451227043 609347561 474340836 839427965 40385163 31083542 358523230 483715367 243142395 567845835 902050812 960836137 890489294 903954309 744800819 286869922 568786452 967547042 130026019 571514271 428473173 560805535 419313104 120661554 920876520 595739926 902760962 785729088 13072294 869232278 129524610 259232060 862073774 703577296 923263279 864085024 996039507 216216332 978269748 934343717 322750747 172615504 634856176 614414483 696982466 683210733 759831116 220902445 855808922 912604643 720015659 759861496 1414843 918210875 851144327 150408782 953597982 936260918 202173635 786243269 815322331 652564673 136739682 988084888 730260367 741077134 282095128 846494877 905268591 980480692 687546306 781021522 960522257 394346529 138683565 750092713 163089577 913143241 869682942 186420502 839504405 839271378 815757190 279454694 970793329 248038784 869135888 479995545 154530204 985187575 809972451 23717246 387343579 433852954 453645034 523938319 652780059 910533419 954076781 939560373 865826723 24194107 470939891 262642607 60509224 127838868 922015601 349449064 965808836 633751232 944650243 997348326 987983710 380088377 392233287 902760649 600340435 685895774 673353069 939766828 864324182 799560544 68760628 733347551 905066766 457509559 983288962 948492254 948776088 968190810 905501983 252019356 826356876 197795100 974912078 858737312 638193142 858996273 902930232 960704547 794168365 538179109 53049272 612199956 675079330 922370343 772612116 39639238 23513362 963874585 54551215 856702516 908353603 862192124 490801009 793285598 682855410 176543601 914332532 453557720 861641240 233499756 17686543 958630791 903098667 963747302 878175706 592194569 466542319 752860788 933366580 280617765 949229842 264227113 555776396 986586050 870000537 875889132 318579765 116273440 241553318 982389616 269055182 74033063 834822248 790615949 271746002 944461124 799195414 894404616 751514802 193051520 983903416 981405143 211364195 182799923 868620440 918435322 202080706 302903600 410159259 521896544 84098912 23777139 362581373 718712120 910604108 920106352 839287156 329296463 252274677 937476099 739857224 773359063 946415023 934962013 91540671 239551157 807631378 956342841 871144421 942539802 869838199 890960319 816826007 878566258 668967074 816971345 659606290 809055871 999619403 881083966 243001225 885114611 665986356 909465541 929647687 475158393 674450514 519942554 745571523 204677211 15714168 713801144 331086970 743630258 928693908 984964267 834304239 843639219 820031983 512062050 865650296 953207467 647742502 857541380 994455140 228495460 724463142 125228286 900015319 742680226 933168854 880616966 741315523 844688844 694354497 716594451 535007974 733039283 470754177 756203652 753040747 802885459 847649127 405211355 795556558 812218229 840809714 882379260 887707640 919934676 427259669 100044782 888898056 941874982 545247763 304483934 769338606 865312650 41399453 492159924 985995822 758005243 314555388 813998939 934215180 774930644 823336507 202861253 772762665 58741906 690636300 978446973 950883416 963365285 873128136 904845751 669565635 119584168 854729477 123349642 89335223 574020471 908786215 338994581 215480018 405068524 85993465 912734059 953222189 757569284 976125763 389972326 950975027 921118804 903406739 430569683 992014108 289387748 81720912 712237508 980807041 907894814 427981496 991527825 986986928 946064496 214410344 757910575 866197972 852024299 530561406 918407520 194860136 821045006 755944728 805242942 941705451 622525682 646494802 780427062 813463908 58085579 883965660 832884979 857392046 283434405 612440025 354533065 48996534 98289135 302059546 733256825 307693864 910431105 865314415 957166989 980432041 656626019 858120543 633469006 835082210 355763289 56530379 215327720 111416552 274904378 748137123 831487101 782794227 892833503 340766952 796232861 944971331 377037242 125610422 909524258 617841532 817377719 805834976 29989870 871484370 582067465 226338264 922702285 407579882 282226626 970083285 143730264 90458705 828753395 111542938 106443526 429413820 124438267 116176312 181957516 182277392 737020247 969925521 90387602 999661726 683190304 742509899 824650843 869365569 953694352 198634853 333220692 379681458 940867408 900809351 774722920 830549088 475993696 476612134 915766222 893052310 227129805 748151694 106300633 324515965 550199314 891052545 667999664 202451959 760788464 340477143 61749310 856852786 884341783 800294377 826219622 73924255 877089527 797336168 129758528 508634955 970593286 902568475 803504256 708990019 45843357 786047292 836246013 149647941 902008713 389228288 894805111 225443019 776001210 313831089 982988824 977371739 904370520 38827742 700978556 971938489 479208100 783410225 627079737 34806142 905874108 979857739 451679829 324291428 769058969 997441972 106944546 13047901 384667555 977133418 936734580 768479845 436669381 643657201 282431076 246419171 138140101 937847582 299497475 797149729 380241449 849350612 817905027 825002546 356972959 397281886 970335871 816024508 906465307 855477371 98860589 803912164 890395451 927527062 739846518 33142474 132606370 844758570 367566162 492142256 517150913 119831231 418910670 870256801 982484629 796639424 822107332 234955689 963917285 582447303 945693160 770021303 569181769 891693923 640326619 942056695 835294461 837560193 296647734 834205865 399676077 63978695 819963713 886236854 533786230 813468709 59452956 759804959 180073134 23778979 820507066 812851166 47571405 533862559 912948282 754634011 454904968 921881207 433627962 606409239 604533168 761140779 729260078 863758597 874395907 441867070 126414880 430251818 656005021 851143844 876164620 519572982 60137186 799845121 546305836 994366213 406810308 774575412 719660671 857677240 557455619 907628279 940824879 683387551 407296733 29960371 870404417 319360633 217658138 154261155 437969818 744166361 738096907 613517945 862571795 761466288 692596222 463734382 536265386 787064273 157517726 715930685 937380320 944628770 159547324 17521818 947211484 635461111 801446718 971174411 784344096 858016370 933114999 783281998 760015798 514742643 834322641 499667416 911246083 261967194 861730109 927433163 44283028 429499046 316931601 912689286 355941760 644420320 308211109 94260781 678728394 498454501 566163719 751988981 263628415 851698632 538229728 753278916 890508139 831899073 337756535 518540946 989406092 885677734 782508442 940757423 494141450 467590373 966532914 855671407 895867583 846659011 920918564 483140850 669172502 346027169 871737263 862691165 785803466 721470134 930495637 958320109 171493138 859325956 749321887 783889729 590403540 484511977 508893350 40809437 808050321 967743036 750401302 844640847 910851298 227531999 639691159 765813310 738527888 970429714 869574214 175779903 276461053 812872154 988464379 813824539 381552973 524725305 978984143 67963281 781181022 442421645 816028259 932013618 92869051 741224133 355693906 125215919 689084391 368063876 780790223 803605725 959357725 259515941 21571655 149413697 187521610 634967175 737265779 900045370 643626322 645996089 865799689 945415587 651569834 29110010 933356619 480720757 612404856 973062263 990269723 338461403 776486506 888203128 288587334 930413044 157138153 763041899 968428922 892394731 835217855 918886134 674828855 772356445 766757185 764105840 201214573 81569467 260811749 429372780 775069629 818077666 173454115 491937599 441125457 218816147 866166407 225664113 975239173 368055729 55472772 101229961 513870971 411519719 700139790 999369549 819215201 539593644 303702182 590547588 31350893 126127737 243854730 635263628 850346904 911302864 294297862 737020247 801500402 669352955 371400125 772702928 585167332 776292703 982843025 557126178 600049390 45265816 94919872 986766769 83650605 803568874 962228862 800432457 778916131 339692360 746358025 161716453 846091795 212343546 959805898 979597061 130862204 790951660 923633285 482145089 409536178 280487874 508789755 174112872 662982899 725223149 373663725 134865675 999151057 995457404 821784533 627806476 358203718 657191652 927014093 558691879 940040412 798354878 812900050 826200866 658334024 249284028 500921497 841036461 123010166 262307783 642111243 845026681 137530129 349668893 202402850 837105958 810842378 794172633 778372942 722575552 666083878 966611752 181168174 739561586 332138873 986159665 971398402 125357437 976052227 835786151 707834965 404485214 914317960 37318282 789684385 304473854 159337731 914260416 989392819 868903009 248470167 783726523 783020724 126825868 967482029 570827615 946078415 244255076 980756471 918947287 876614982 541687928 463933298 803985702 969228763 698148024 299272817 311525732 904164129 281006118 812324157 818868410 371024429 921251058 529640129 813921712 959373899 770038587 936128880 512105620 748037844 159971327 892123528 24125096 130042059 822886342 501118070 563217106 999184446 516901626 988497628 788726048 213385712 970124633 764413547 151932584 991964568 121889353 907252309 211131159 705232848 831865951 433389961 985430342 890202922 809816808 983761237 802595689 261281964 300406877 901339367 506073134 808546574 203283469 211312027 801917526 777843656 102627370 59118886 49686981 494935776 379789033 367455488 550732236 302810597 146436499 886814932 759865542 168346364 976674382 898709097 93998625 819318009 982336420 9436320 970449952 553595184 928096066 453483110 792460480 333392571 152405475 932770580 665510670 683769519 14230781 337648804 999999652 928849520 707385632 986552317 986074028 57997793 538493852 398524408 887354369 858924511 259693375 77102830 980833385 358208589 877595814 914829353 5324408 891597884 271512195 918839413 499138032 772032917 290188989 53709217 655508426 804192930 865638035 936304734 806971098 231691625 625339090 222371059 14402519 80081623 872742515 181506215 854417601 259155769 841965832 17716247 852733572 594239845 706389139 786361431 55432171 775156423 833825123 873406122 785434554 729619322 419633626 440701629 515990940 697250788 906243253 272844573 858983228 936531605 488806247 927359725 283655263 591957714 792500719 420340752 811794200 837895221 786466024 729996982 136689793 827411027 930793644 923879881 720300371 669838738 739889535 871767981 478214236 857421181 14597547 2165145 123536578 955961356 981501347 491209072 291787709 994927395 610326853 972352829 998257998 939875729 748754439 337316208 387555378 912902912 703171505 817019276 73135648 35063386 544201977 781825654 775071703 386902200 725479366 930851898 910787863 899936549 697137650 854199069 112973267 870444501 773079316 493563208 989574601 793067785 787442281 939004321 644211933 969634104 986501549 810679109 864122671 891819763 705951184 981273953 973196783 127339682 61055207 586852927 863858017 847184297 2739525 438181436 978278511 298242227 18189850 783238135 397012739 759612333 670918303 184667899 596111726 952092032 426736617 375514595 823118795 290142556 850060387 676727663 827665310 353036153 922562047 931394042 973411809 890480839 688403131 737067967 407491980 564744549 379526393 930024979 967174052 748857676 920535871 711752296 933139598 641619970 785580384 132965643 786884548 643868846 591930674 635453184 154219561 844260355 114188660 4553079 27265380 819321052 158224905 306077308 715698829 837389461 503503740 889507767 14052016 180114033 943505558 817541956 285179452 782452355 490060451 258375130 452694623 80598956 133748738 585876995 435200976 331567510 641150032 390376435 746280283 957879381 169497128 910952452 187776143 899687354 642190027 918774927 852802968 744480000 134103773 934577503 754719951 976619118 350912485 825153855 674279081 309110216 915740961 285744248 951146132 187548843 710984352 797678795 878926983 708638122 796899031 583251041 251904482 872875788 883641703 777302114 239113749 809591556 554501120 629648187 374568570 809252098 953639071 497755387 942867477 205635770 881530687 829762915 654964635 790740975 118096166 844360508 845538458 477094930 946291479 128474417 542462889 764142403 663221970 864935655 137366755 737020247 357719817 209516180 822608893 333766923 408616866 785487786 735118434 805252190 549393572 859923046 215722553 355341146 980449209 282516500 572035346 891523643 45260490 971725175 762250286 152175500 444530285 906688992 842397291 700789937 913262959 940161178 885397398 855273275 501648327 973565465 902373999 680486516 222960717 654848923 542270823 266128248 746231334 751844560 222566989 244966225 664020194 877950031 284887343 263346557 602314918 788576001 643933336 77784396 181059231 18072243 939404071 784045404 298200587 258442966 653393779 801012844 977234970 826881403 744509383 171313431 883385698 818044465 381742562 541045074 828216579 891717497 823572617 772187657 928496661 803873687 550432925 781480387 640620459 870188449 967782043 335246166 969515507 493654951 870531040 737384071 964376796 844600965 864821626 6104754 776108073 93259710 938951997 422419378 944689607 889599986 909817793 822956937 675949663 495675410 186554421 236607888 86368598 407709010 410160597 541822952 839594202 736154780 982477682 817956298 772846644 833202849 974795907 967464944 769052605 354598641 876637857 867632168 772342779 133689733 595066938 206375975 966051750 507482823 272745407 890579048 815795675 752912235 913166173 894887378 709301851 104682696 934014537 453405395 948566500 749948088 847162386 333251085 177291997 979077585 977042911 271804041 515823917 830371830 882975181 545344879 387042360 532439524 292517509 426394361 747028470 738465580 563791660 944537024 845446417 789059930 144088652 407712791 119210604 245221584 943559006 714019568 856462063 536102954 759602106 985899587 693483147 727920240 518947695 876869635 540499855 227567217 236906191 190115102 523313600 820784985 668958086 719029887 633096136 241308392 864975438 491638265 17184953 816031239 737831476 747927022 665340099 924707263 82380203 183425823 676338742 738312670 949224696 585843603 367797775 6177824 797106936 957376012 804983342 742543260 818295732 716628346 632321985 55023956 721164991 687243774 908881801 997028162 325023451 747540465 622503 972731412 999525202 713963342 886341856 469179217 963660200 689312757 235133576 893033159 428947126 39075870 839153495 670407149 919700826 960966182 286589024 581192394 153571254 826125867 920695731 257270720 849658179 872166315 727015263 551655364 883749947 846484423 57923216 968451794 690805138 719974688 439847490 544593158 876085649 740527770 116024503 592291690 599958557 824567626 776678120 336595387 482933538 935923037 751591744 303595237 278127603 837040743 594438222 469477339 348169068 394896058 390097571 318693256 634554217 937832919 737020247 920391149 378055475 760757678 944624918 522768852 953508037 441681452 176808054 742253415 19277943 94201852 267784979 843684199 453312042 973311759 214721541 394916076 846939959 757899645 811521126 643155409 284113069 614748118 857528411 986467240 876405953 487082695 502015089 234430806 982276562 798975859 787444006 13324814 774072127 769665543 828266332 52006569 974336538 560830839 764564160 797323406 806495965 784594548 238248984 149762282 47895367 286433922 762225782 221504823 581221795 648774615 262709465 703258395 999863049 981944542 883810233 827086841 917412318 843025257 659484729 411648039 159333307 326827630 661351735 221115894 787931101 772944774 305521512 957279018 905561820 708819545 994375173 267522199 337792116 793268632 780792589 935503313 738485805 995755700 942009662 603142004 949166775 738669127 447063174 436631888 746216707 879126487 330152439 324865388 39822606 340269503 391328289 873708394 661867273 628460508 981199756 829776048 878397803 47299013 897455057 771879484 632477228 115060727 831339719 930947755 459069723 745705945 928794788 507709129 809592146 551869677 760078259 592987020 804307839 57013480 285419291 998462827 959989537 930060959 792058241 749970267 87928004 87009198 279314595 738829134 177272370 377981497 10990288 383513293 747780403 505485307 859482894 330521780 861602234 896542541 56074283 940664099 117853837 85040859 119184126 982516400 269581097 961221147 232406094 992424104 387941427 982140967 25963698 395140263 893623079 745030644 835244207 24120652 360877480 802864004 895397765 421862574 921447582 552802354 924839966 747575890 462069765 893048782 415708628 823124988 115420603 777010530 461355056 107626585 826419179 917778483 627285644 862012737 889814734 936083683 938784561 924097000 816911389 156202310 890972905 780229855 867812855 965195279 913034693 24501343 847534765 994774361 786518905 641521893 84061887 956885003 753831965 387922533 595299614 890193013 989631058 646690154 522829366 872309666 745319884 916153379 14316701 749572550 896911453 824315909 136512542 999870364 906004627 195931556 51835581 739195745 874728958 313781867 230772207 667454863 395841170 87515344 744787885 987515477 741535892 834596801 436280171 143232449 299689178 687753888 943290551 768388409 706622516 149213284 824252238 815486831 837563188 68252620 625727145 999661559 902695418 945969413 24141625 774408338 962405442 299846084 915609311 255043386 904782101 949684575 997063664 650419077 273758002 834013310 622948033 708593316 870871022 890989458 873301472 802842028 806943948 821882616 550304775 964873022 946610944 16262649 572656086 2136114 883458911 83218182 948265545 62975326 5321822 400394385 811566392 671343364 108911578 670806581 276840548 942371274 235966464 938231146 897495223 892773262 891673144 855841866 951780548 907774905 978569469 147148182 559358110 560436413 436953091 537306274 943640470 953195094 967437215 297242866 890811418 792283915 770039234 349537976 809139802 788734561 940766343 500977724 892233815 839022546 100527329 997683194 746158974 764792411 432455355 959263746 840456255 758236621 705210766 956167691 896973336 998904592 865438337 325413154 43670719 898503579 443388629 919195282 310851705 470096307 188107717 525634040 374142024 350957600 207059963 940597512 917463152 959494102 99382796 336626949 679796212 740816099 976976391 896090878 801276343 227346606 37580941 503208585 275536858 816234523 234528412 883517809 48498146 49226034 842895749 915783995 977018907 252193892 691638784 877975167 68427009 515250591 996587055 883497997 939627323 858717902 49937506 420445400 490401983 741794897 829594409 464369879 257850886 818334373 221367442 608295316 850014786 515956401 769210436 782515137 505117007 772824583 664873687 794692888 118488604 849159239 462129157 842206426 886404822 245777550 209816632 297532585 901505901 843531701 65262860 549595985 989671548 408940392 737020247 603803255 920432623 220746955 41126788 755062533 881307108 935161369 92566782 335537995 476060040 765637740 811251270 993171604 680475649 957469960 137783315 216980101 185715313 172625836 673670719 746790761 864459716 896949599 104265788 37859683 877409024 225616122 879075560 402846634 998393059 914590232 549742938 624364034 15504704 560167933 627462137 503967109 740143694 509978592 956800117 809975602 932814980 469713609 774158977 604075111 92516987 867975813 467937106 392510874 78662587 527057268 131063228 278542987 11560954 67256821 757325083 501916143 936962988 798082345 886949400 837838905 809210465 967466190 81955601 874515328 291895301 845604200 297108747 613228110 793445805 635498353 737020247 287698616 545289444 630216230 836639836 640578653 979162290 76155063 686524605 724315292 826802016 254896904 913048199 386306535 508313113 755168807 950800486 382601455 236854023 760028470 557437565 424606893 301942575 261359920 470364831 991584269 954081620 942702576 786295136 737020247 365727900 66730937 60029732 762744986 457536052 857614467 494724799 760502118 763529324 560573032 170664060 902735364 586319771 284882372 970154496 397754233 409802146 774645128 281072014 632226850 915796712 404246156 880069539 606055843 842609035 119786355 551017693 759331292 976030478 832867214 321793672 492570830 567694938 185544970 986710357 410192487 978389794 853460917 10899616 456381405 779472223 294426616 920072924 912247868 127363768 786604522 957559868 166881042 955010672 637307852 902572426 53662437 822817722 837840926 986422457 896463935 812299766 924968252 898422279 609085142 977187559 690568818 754029323 592490237 849456871 159532313 590225282 389581630 130598832 910701387 987844470 407104191 884873755 154621586 661241471 788049315 743187811 959629705 26880035 964205510 782972794 822798473 336763413 854499336 506408829 956460824 954325205 652592234 243150418 573705321 844853616 887565832 637939474 219862538 557393091 284956606 854031319 50499517 459395631 845661455 981848306 929545366 414776171 500579159 871208018 930213177 741299792 872148484 841543740 18348133 942541113 204107412 827911125 496143338 358862951 923546341 229601580 991580881 790510125 221627333 782330451 706282602 790510182 878739067 48278186 545523212 822181985 833240088 793044785 9232746 339299634 694595611 597365154 287311189 297572254 790420698 774286092 663310072 770271180 522811096 387668161 463081210 876155017 997489006 741098348 593568555 644249249 786255168 888059893 960379105 934678899 823443012 735824649 461080861 864354011 270639733 529130578 797886087 520758791 510256017 164527915 273503635 545429155 672600720 625117955 305194567 990698480 870893582 785213860 959319128 792764080 920552432 141661383 564033748 740983107 317561392 43292544 769401623 938830381 945681062 964091508 891421954 203350167 648271501 594183989 893868127 666933326 780005392 891663640 875437709 859100765 406363098 251388254 698712716 933447138 102760079 870447370 643206641 265724653 950802455 664723785 515990689 266400751 819321106 328435453 885994914 198027102 740693519 241287904 249482918 726309258 211571996 807918851 887245372 378905288 11118369 871617996 780949802 833571564 786907509 666073016 161058863 119236134 929189289 878448940 874996628 849258318 281677456 891049717 921961905 410296374 314024428 744233095 392653666 286821612 908245794 965764391 558392719 753619605 504101138 522181817 870636136 776900090 769556702 900081280 117594826 287686092 922838200 742541883 418524899 750538997 669225837 680308869 795043919 549975777 742491207 48910811 505782047 907375504 27448472 655573087 273144440 290100475 295000445 898389366 759507982 952764658 932662999 870886356 372629357 377200131 981374011 441250381 960098016 829776136 903703019 607515739 674612218 964191554 962357419 984402993 413533683 956500422 602900566 747303026 920392027 705000982 326186693 791954518 432005800 949413753 821565934 887532777 86794657 753832395 54552981 356401172 970858009 441405421 29748601 404842311 836734387 701608319 453381138 754227954 844179965 948087901 752073541 920822675 401888619 709379484 966630758 340223781 803379099 315335447 903169367 819406964 837364198 963491637 877880401 636230324 954681965 586484131 886665105 205456155 916012185 991214714 965089146 963727808 651847039 298270688 442593045 883869242 825025702 945700059 932619262 54957707 754514663 561709201 988566274 781249041 462438585 321318036 991902908 576157100 553623212 382768712 223577585 478481433 996994237 209883639 30384956 984499084 865521064 174057583 333004318 56036342 147192254 63279166 595261791 686198882 361458036 13822155 917992950 865712372 644176004 687770422 277867464 195054300 762331116 693415749 759431403 864519388 261869249 786899587 65157222 555460737 408114031 26005700 409638186 41616361 983690301 908581372 156747859 857859275 357609615 934354737 874749308 469025124 247043366 913418449 778483000 660039076 209131633 945031804 738806904 644930813 244524497 958803586 311103252 44580078 867820036 354535832 787281491 804639333 423426473 999614189 686900924 137603941 806701931 905881187 880330983 825365596 85785263 10871110 39469891 55018351 780988864 492919640 413407141 771735027 826845439 50123382 853959895 183922149 812648557 795354644 459669575 375011533 702954 922957955 70905466 703335560 814362593 343633814 920763881 756950739 900008671 844958603 921865443 858896328 952017439 940322928 214812048 821288012 752551631 964005167 22955666 783284034 990991418 953624525 340141012 156789749 883623172 789054071 916956290 305318996 922992449 835799207 412982293 931689597 944500191 286808760 850022206 885510047 528834040 934771192 901418266 988409819 759678143 846138235 214821044 516616643 913471972 832840900 385566349 335927540 894777862 974424426 529622007 390275020 830699918 156478692 252377139 883744472 984549094 838314200 594636459 156205635 871073106 893354403 864861684 817779373 785168698 931963817 853307069 973260168 675221243 671623715 329628691 854503546 113626120 580050315 981371209 41134934 18019568 177726692 558802350 247175899 610558513 734448507 35235889 20488314 536407995 777988762 891777023 892127838 909706813 586663844 943210674 518500600 807678028 989830920 316335012 759093619 862630987 283861300 963897474 931487035 985291397 814756424 748401321 70029100 893710800 214549134 245247733 417500557 965441941 478118297 152154892 385707041 47267041 101638957 920981404 915595780 746121411 201038238 405125399 170702072 493639101 901693236 318758811 588644135 547964667 792564571 377471979 792815930 406158950 378320406 851199447 367887335 871927362 920106827 892349329 356105514 250038536 560861664 888557538 978708196 881746702 115559907 27505457 911691116 916506801 600779070 226908293 422213725 995929251 298714112 836954540 4562928 497158903 740622318 634702913 862899251 698360314 174286734 373615885 686082166 844291830 59803372 588047343 754320537 964961317 330889131 775270280 283533667 666159544 25519724 945877111 908027869 954928660 588142518 905106691 304949132 566499561 936474831 741199221 792401270 471025331 152882363 553992587 27143477 588652885 697949482 379228398 926458851 99087724 811689873 612221030 894932656 9326169 948936251 560888228 970745262 134073435 825746271 95901600 908887749 698843975 207090581 962404507 808006206 834026736 275611333 958774110 588294756 840328904 918559688 202914552 747098461 750998538 845162250 729693370 964014808 657401307 42093297 977824301 985571406 947019892 325015049 816363798 720933473 83207040 888307434 805775888 615655940 752297449 782556164 436572732 827355133 986106776 150663720 480691236 655466427 848947493 915880353 686744948 52380330 660900697 792453354 865830138 973191029 804497098 805090600 143753268 776140041 612904948 810376891 759609246 727318963 165335803 267296955 891778166 998576285 619913383 70840050 651775942 558225 957953868 289072028 568179469 793130517 800350578 134727096 47345221 995712046 916437301 798882214 602008914 988425106 702378628 390880376 892432710 817871105 575619079 598133474 982104013 680209887 658584034 819727716 534595623 300297971 658870767 777458751 845148266 776432639 840976778 914391876 6306207 746981266 489837353 948076619 657835080 181106280 155681371 540122937 986861262 536227191 995194825 737509873 897584795 834777845 717753539 680152052 712290918 797095594 437697086 891668454 959775322 929478286 856265192 235918186 832870818 974426173 723534615 233175650 880452612 94339824 815364530 982279309 883805361 258605667 805890667 781010411 468304871 123789179 303629694 407432635 796946704 948055010 674862065 872541821 936103411 962331117 875788838 575120087 593868541 745985399 267612885 621287561 535063546 683357158 188446583 24094799 788837237 609317256 9225139 851696467 362994025 891326891 978568839 465587164 955329080 229905942 551999438 838289893 456632518 798827011 939708284 581566664 123506470 123423237 621758837 193471076 827269921 475579534 607335909 988011206 847768413 745500455 11943343 6241562 830517117 919156874 957367054 603387781 199966036 994482339 322930556 804049319 900561893 801640418 41547596 609776321 881432660 981835526 988195929 210857951 747830724 95489211 560788339 741544114 524732002 772589307 441207385 339532514 364497585 699618071 746847980 970631216 838326110 12192594 518895497 781765736 682140237 385208822 253106681 651325689 593495065 951692150 975074926 762346198 551756991 682592174 717712015 990014535 997140862 919048127 793701610 943705537 922710999 425216244 825763400 990812058 318571836 982177933 915221456 237476548 877459568 79140427 558531094 219656959 139412818 25819807 362334955 805260972 147134187 957387669 963478047 208159259 746111365 657885318 814917573 393786605 52469241 590659908 187111818 611219071 760740404 245549315 568633276 570502757 529786144 843107311 934889271 759099622 336084975 746693575 855980713 247846153 903460876 312748803 816581110 798244072 772881847 343755947 769298387 725587110 620104818 516134922 956540121 410979751 900707198 267762786 169560630 758342265 975484352 876179979 99700636 737995701 876202857 991446939 691877979 117651397 918006297 833032277 391917579 745008048 773613657 824149654 463876308 504053192 391784652 924845690 927684242 117281587 662378736 352274227 877093969 748177558 796250341 911391258 200625281 810043476 231206781 658811673 338065635 15718954 694040435 396956279 788060504 438901773 926483843 626223494 993882068 553260474 490939816 890065196 488736751 945825441 410887804 991190214 959428951 869676396 792425115 830196706 286025643 456894957 456088097 27546501 285291917 348271147 868403834 987026407 71652758 112636491 631755617 741896657 415061966 607298994 999825716 845975143 894518572 994085605 746355572 976351331 822950539 945260731 762726007 843039184 556131976 917443034 740100846 946636302 821029126 428042839 893464481 930734616 869461560 604875014 971612329 344787987 454982721 273900244 449294374 158639173 995863426 871551883 669755331 987925155 861459760 878672292 283984124 973418478 747629280 819605569 950047170 866597285 706776963 170096705 1673945 871946196 770068436 615733824 195117636 745896303 756807526 812346206 786774781 856677828 800733638 422546756 778844067 944831032 562314391 529110149 239798478 895024154 897039480 899100330 133135942 94895539 383328742 678143708 540418922 897834312 673178670 504783096 972709782 769524850 943078691 292936430 834976692 747445034 383675420 241024025 221193283 215488163 111777309 750539907 244152574 181664614 749092860 528232621 989234720 844568438 221797653 540242607 657915231 995035952 737956686 422769352 471954436 958619020 939218980 422474714 818581075 816676985 123916166 628592583 871810634 782017279 368906097 993274387 778097920 659927520 223812298 125566459 769335430 864273942 441498955 499917176 183242332 357640245 975396686 327005585 389950301 650644264 743783428 446020752 166090852 993142237 273826120 910908755 620789292 369667690 831878477 942520444 553697181 345793688 502899478 753137002 850925024 155519011 840387954 215841562 927358798 962956000 983854248 798065508 692957439 890373677 993034454 507130818 905833520 322190538 898005955 855209885 980107360 189608538 959065441 653771252 613125651 785561850 743633653 184128319 768304104 839988753 892984344 779800325 144532977 414322709 818698174 211453382 847188787 981320477 301631052 953370145 907594873 432399888 373667883 692287955 751548807 952426798 672057374 556833704 847818414 614225906 741930906 316862587 10867014 367052685 713212193 476159606 799658512 892247045 838633511 391162315 330674836 934698645 233364899 718568724 847481510 731319598 881907894 430716810 800456607 252850597 712137004 794269548 898024546 544976884 393129199 869545729 24791878 981758728 668837940 485555897 460210637 406470109 969568276 827555833 123597248 930966956 16560351 25243303 150636706 831613636 118033503 874725378 907308963 838855421 512607492 322129048 376458088 762748242 613587030 909915412 695204902 948157378 793628695 798662433 865213692 835735252 744268947 968122019 613679440 890533999 98461136 620278447 927076469 868810693 888576461 266830305 514600730 539550837 190116808 734829038 224369321 815717893 273720704 465637857 476148943 788851685 105535504 815189074 569261134 886828154 841300835 97192468 389476745 358832402 42093698 557148382 380304539 708415376 665899553 834071241 82215541 391879613 11205368 477342163 126347682 755460612 432639316 468158880 929979008 268324365 765804294 927875450 656153866 699807620 664055420 254912743 961967263 185415190 74293227 239120915 209626652 288692719 318358309 913313123 949136695 998427937 774276776 25206541 805007410 556008139 289732844 913940122 978440425 243307546 142844800 210373872 571197407 567502552 216537181 806474977 713967568 996904701 943270553 824852703 643055237 848574323 129962615 899584360 1132744 522429292 797700451 943718725 221568634 739631415 82568868 211572023 529119245 319553114 802584221 22832362 381175909 855680457 839247348 866326676 847588217 288530178 943824757 178346220 715174907 858586529 776850645 834563297 877508063 892803627 972288455 219351969 349096798 777698247 881384784 20023849 458099859 141520831 951547614 383702813 759740466 829619423 964772784 720526907 448929897 125290446 45237637 843365026 990043631 707249738 390837126 886935731 656826433 772078009 898539964 942838336 910632350 995501140 942989152 159279913 880187603 700401068 178901844 109460206 911947751 652192695 939694704 996893855 817760551 360928005 755518796 515806698 916500291 398339804 955343860 908229802 592797314 271210398 922759466 708279660 979673014 817787433 450805611 80757922 731749450 300125081 265846164 876975523 119939228 893399100 138925450 967446467 982253439 884063851 928144787 101510849 922045160 420810999 960469594 879190687 526413673 519477572 362055572 741301610 793421396 880352949 781738280 307028233 767202075 914732692 253570114 110100328 8881733 841557016 138174382 364209452 741407366 307639766 811515595 919071829 426500176 596066227 884155030 967188870 995019802 712605170 394054205 661061104 911565803 770974436 896363511 818079441 343029 874217431 722291004 904040192 285022144 108984413 789874694 936097025 872226713 908034759 938949667 783666888 766506846 255378011 644413443 341837877 738735332 751088483 471858771 881903878 378387963 505559886 846080711 337134432 143836287 474956407 550051164 934086558 887566753 621860134 328288502 909593123 813878515 996131417 969847556 968610155 130107796 157270626 914614268 237628372 805626475 569110649 486488812 206939243 594532326 436871224 150822610 597824048 456166631 710381413 765724831 963513064 322872829 87327486 34912431 378572823 959964052 27361883 910290054 927299968 337235291 967136000 154480397 705697833 884928868 944723252 207284295 294323552 825036446 544258892 768495304 923971775 785806795 41020141 805949244 869031844 974546979 382047500 798648390 899949969 655186566 629304628 446223240 801752678 481053491 880131697 486068472 833704207 737020247 646244730 239166779 844970547 725510789 962517904 984633261 397129563 878877330 619877837 589933855 838810435 124589198 985832372 796627755 580394526 258843492 743994141 470397068 804513530 246112433 841263323 349388849 346855097 747433137 416931043 166329857 849975150 858578933 802127611 167944415 825530760 805743134 899458801 249774632 933120167 269686270 982368074 607902523 952462220 903970545 330145453 995472963 753039254 945374099 198817214 757632040 789360984 300271596 250327879 947605953 763236687 562143510 57946511 892514219 999002116 597371793 373828656 855046919 928988605 953595160 835243308 731744569 950385270 741331783 913841027 928583516 566666358 911967579 988704393 439154686 37430050 246983586 670694632 975321110 865154928 851148037 980664373 969373972 997136689 206396014 920307086 560371336 859567966 267936690 236686899 985622445 856820308 459465039 627489906 852617057 985558568 837907933 835665441 946670200 401863355 716947732 755021575 32961814 479907582 461534145 916164121 921927792 297440297 660293721 118101387 20587495 989218278 650005731 940204824 980522716 755058629 133211211 920327939 278679140 736125057 847119461 982286412 565614999 879166435 486594139 951952571 225243779 403809050 763160327 382596724 68997715 855440232 420871337 980876664 663379612 250342311 831687944 880851493 29121889 913352662 867529706 786009490 626574855 491633179 197061202 190907296 953456143 392253977 995826908 754046633 233737571 929154507 991889500 978334627 977058112 224186450 798955690 879122354 833856811 914605822 905265178 631669295 919941851 866463860 780848036 785769554 978981911 822826005 6794747 256899182 944612303 927180379 93919342 444176751 379526602 849001571 804171220 579684971 734727062 298542907 446115289 990378909 195405025 525991332 757351284 877548860 334766567 176809056 3591106 6418583 131719677 136829596 654423306 954218564 457608265 472735628 438483421 593994199 575939934 406257585 652332118 794821933 134311714 362218977 109271755 607302993 394234226 97507322 261529322 963095669 453701405 331963674 571655987 461791961 598684485 760079400 908988046 755499922 35533335 11348827 903009631 766089646 830389523 989666646 765302090 834396869 740853827 734631464 954490645 966062742 464670190 410109977 951909067 775848521 440360948 51961028 765763724 777385100 899501098 808299287 597026753 936561579 807138953 407626417 817511877 510378836 875560866 839598124 784940924 920809796 223909251 936455111 960590769 830827138 778826163 862961654 452733307 451416817 892802244 917399870 958002737 425876600 816641160 810890379 882122900 116994148 891348609 977773434 937371717 532240498 667708211 373950473 755731760 37594305 941961507 670061074 901489438 658558213 912473429 968709216 919760785 230030667 66411446 871571885 813597653 306309722 26387704 992382251 276706963 632779898 873152797 637465375 569129877 196506295 741576468 5813161 326034990 974885332 277212426 807362070 854963392 790020144 774054862 991472305 998767532 793476719 747562833 738949322 380553227 567441321 918500706 814560975 791776671 737020247 148416527 198134144 897317235 941036668 969445156 56986920 860114274 752995434 905958649 300812492 16549198 448465637 999772574 969969518 199125534 910816567 149836196 418063664 616478007 630850595 868568941 763251872 377937307 310816041 980609905 867169639 531868448 892178270 962527745 650517271 804077572 339635113 836580313 587537492 915455074 939067120 316972195 820602527 464534915 736489880 682830942 431345090 859596245 22193790 140776823 638518245 122863663 813340162 514884557 759624892 241527905 931221599 730731147 850847130 883163670 136702869 705149321 971365488 841600336 924886611 446889062 851716069 987209793 841306135 619830537 466624718 457885204 881512473 130892639 832996943 864320144 868564790 828392821 885681569 903125349 568817847 777890623 287147108 290892623 616771775 894033676 804567801 671406775 954475818 624071077 582988070 896095691 613898515 475323775 817936365 760743467 876983351 917342283 367959677 354044351 873950972 845036941 866913075 442656421 360323861 824671073 969859975 449631787 798425428 678877276 376916017 963916095 525701468 988891040 296864301 389612553 122479284 644852326 956618232 840985210 866657527 223517958 904640037 627167439 616415784 181632635 10528309 396004878 984193383 971171300 378364975 686590475 377946660 488551273 931523502 713508696 822182291 115889911 960941204 954485808 884129892 761377717 631287289 748927823 582461492 591106635 238110733 997705354 242080442 201942279 998137011 90746149 168383919 381601251 774864309 394037029 965511136 964292114 280743491 911900574 675338974 985546204 988916158 382573081 776406840 595141265 861809356 815567152 829950472 533745967 951775660 5032741 408822284 896506669 869188377 250198843 722719531 203837464 243487546 502863055 526857903 236863705 963726859 887730511 135048706 814232814 511391190 540306292 285092205 371773736 938022688 847657725 669969053 209950688 74267890 287899369 483302688 761765759 829781817 715787091 540382442 740895623 839292943 161158476 513080801 177081347 233141638 200963604 354181966 106724177 456470383 895746783 166989221 755166785 198197902 432397688 960488421 943031784 909210253 741358881 331373406 927383594 487404885 791837256 621414722 318670666 822387844 394771659 791116576 255053299 323110328 867420673 415344702 925918111 835281211 840367222 861887167 236120270 129010834 60995259 201033003 772272546 807169428 889097927 681155010 652948054 890497441 621904172 712012290 869853024 818514677 956094176 800976210 405593021 116783487 739707267 993434378 749077666 823818872 989973727 82988502 557192929 330964595 840464196 177570694 484233536 801740765 601990367 390329600 182920734 857204176 974856255 809817535 603511119 847891313 474114452 681635001 536480529 127309885 494192979 919594291 983231365 367321879 322185856 787336793 454389350 786993714 994964386 879101286 218235742 820912469 830749768 755604942 564980246 481521731 968121017 771768476 893494345 936459653 846515779 892842609 20726494 216000516 898739760 822833004 250634183 858270517 849870439 949357751 943375111 444294560 387279123 377624682 513041804 891558639 899793558 362020780 904584802 769921582 493377489 107854572 766293808 831194791 871537292 84688801 499841983 646166896 994728830 31707230 973074716 562386882 319880404 823571852 950105321 804326530 714557227 729464285 316114758 596858682 945919977 914419791 793725749 651654175 550040261 900013337 281362076 874392456 379501604 177372376 676751446 655028923 758754568 811593107 827982329 759589886 377336338 342913596 674894159 360927423 853310661 693744848 617032434 127341486 924300847 78578485 980134942 977657791 952241548 168399277 441970626 887929247 531260401 854685986 314861403 715903573 915078552 758512063 864771766 975998368 416715477 113752187 828978655 964075439 398461095 785934667 441408130 833039173 945903545 357525746 746187441 980976908 593915060 973543922 870044654 764084686 844589219 344120769 809737118 350840146 882053134 212619438 860146769 849324179 623289445 991294857 62796684 705694758 108389220 59319328 817060347 830977648 387953378 880156699 667265703 519238642 408405909 714909539 800699771 875034490 848189799 443087296 294766311 104385955 95210694 884668609 267750508 800704901 999184260 141592589 983200157 48398081 391173685 96491654 922459527 693846396 338510010 742364647 181937277 940853670 219778228 31249169 899487498 276236597 794151609 350668130 767948273 307991925 844038837 275561001 449129819 257935779 92960385 923632014 53250991 934270673 918041859 790749353 299478024 979935105 779427098 969452991 822459633 171632320 19826243 881984401 151862368 75242574 743567147 603691088 854872396 482164570 792998277 881046718 774790891 409298266 897290171 722059334 831819997 201295233 566323272 771868466 943297457 483629880 133952831 177487039 779108598 860700846 68861685 861180290 902149124 33928596 965238314 459609891 856010235 841880869 841727315 920004209 449610918 638727639 549884298 254372704 98273628 833695805 804474865 458953445 812162998 884231638 999658227 387060625 557286252 234836885 777527973 748170672 917499928 539124359 56814364 242285219 446497358 770505141 844642457 459611904 237073722 802541992 996513568 987742406 865761529 715953590 740980665 164811881 22714286 997837307 481314835 347177215 876968679 62419987 902789287 56151891 872215079 62427535 22677280 372781668 191631950 972033697 75549978 821911539 840492601 98685727 708273779 72905630 626115757 26101596 213040199 789458279 319356036 855160375 933557853 325514650 595659427 584102485 440632357 226760618 278187288 127715949 812071218 798748000 843004525 798277680 999735168 426353369 446899833 702622715 804911289 754920105 887151773 751786213 874568278 798621566 978667233 362701568 184104222 643009710 31591478 155254870 515444963 960172615 914497420 929163515 692347577 541782917 891093379 702330991 685446423 822074032 483455897 454614149 595013308 155592515 974279172 659985839 802819595 575362523 867809068 709087442 236833553 573338391 789690333 166189784 995724624 643038672 955394751 946283673 560924954 684365121 802499080 790436599 896120088 845840400 889740887 777867630 423281412 812604339 507948099 351329014 849696792 960130361 986607781 737656532 952494344 266961148 776861981 894125589 759699554 369582081 256791465 454156051 885135098 977642210 856373508 858365913 320433926 704898457 346873303 974367647 939550304 775847836 100617075 637016401 403815434 646323844 386845387 856697094 921704638 667620953 617280977 404686992 32002242 130771149 927322965 833855070 861749019 556345690 289086530 973404911 999726042 300487334 384852356 990750208 978316537 442359916 216116014 603786712 480387356 13054700 183675440 958365457 854392786 659460479 789784661 967786989 442216578 166622432 775989951 942876486 851186519 26140664 73641426 550995177 401018227 751172184 397796130 157913653 999756342 994488137 762251922 407792395 571745967 869973364 875124096 712288391 763910267 886156559 904423883 140392676 857370789 283560552 110629435 279896640 578526335 806539681 280507046 249534262 554968355 778903168 616053340 518843471 482369838 909748927 747770770 215981083 109206739 880042810 567057039 484163335 763365171 868595458 192856342 502358745 783536652 951293618 562816610 78651822 703613624 646595730 851135160 56128103 41921461 954992013 767919713 308352431 229985867 864053552 812665096 85015222 662547302 566894706 822053754 303720339 153338398 280730407 574607320 786486905 419462518 574007952 328240955 63000855 861111139 952777588 356736329 47698631 989834273 909279279 789580536 794841794 993965306 929040955 28563208 877790028 460609057 939159601 946839912 874322526 834059423 562730211 745639498 715184478 748148244 816727818 178712047 834204048 628139875 977444264 415316354 802684058 806882511 388245821 831748535 902099144 258706707 807519306 529654491 376960180 707715338 337599700 968388349 650862004 444405061 833400141 934719692 904955806 278700224 963215804 256042135 874964818 805614737 579546165 953947737 978233740 711040685 224313660 918667243 261633998 408556049 826564514 997050364 36014486 868012790 716011771 463994434 301836873 853011141 873305616 903487303 874320036 741281672 939633812 743068860 999869686 924714848 457978190 895556190 384298568 973478432 992656518 181374554 716852364 930025825 886212057 839432975 440091638 292219898 854258417 799900303 913518186 772269603 599281830 910078488 891223711 113979602 403526343 601560690 781246802 790412174 844360460 418550389 846882595 796651589 819139476 837665108 868184905 163586355 805365172 3430017 938393302 255596675 806238095 986657422 769562850 737542932 403167326 919396772 678909264 901927490 776097569 567399061 988556365 864803896 982883403 588217914 350066599 735770602 569746079 839367813 931782861 578257025 189646490 276662826 102855093 50650674 841356021 445128472 553822917 112204516 11903255 682126969 311590027 781153737 395706187 115204883 249523900 813527052 476440291 748845774 74202521 974644964 509315110 149017657 264080806 759922018 562529563 987709536 524908211 909960907 767979002 603519923 750807446 746296713 801149793 793290711 860296161 870735858 729903566 936881937 142680410 933579824 652834767 893546919 968284350 103731722 815891458 217876199 250981437 901274018 832663864 774832086 859925739 256179837 154934659 536327845 558268927 991144057 142549023 340614453 403368697 42036901 532813965 74636211 135322270 826080037 1655092 810308116 764774371 384469030 760667164 175481645 566580879 775261955 832994023 141306161 144711827 291330767 495753132 856881395 974801381 265624261 869360717 945854462 210939667 890906965 251612441 650465198 446508681 991977668 350950987 461823875 91856222 929364510 822665967 870565339 730335122 17189071 619459826 895181572 194223848 770238119 795435978 626595298 954327611 872296917 853985204 911865972 515205367 922789811 382198962 898482641 920236046 545297853 515037098 79562482 324193550 298791054 957064573 216936368 209963351 856802954 689875223 867373246 303050880 895454074 759122884 788367056 858081828 929967148 986590545 471626642 697720918 988218331 201329707 807906395 783272055 978781288 566784247 275131902 201588199 27019620 389771694 92204652 976122970 339997973 211036864 740923624 10429953 296689439 260215588 604140738 743207330 547378185 735804086 533874673 844608091 973152737 809533900 82247667 768950783 768256408 685068417 813326017 335509931 204436423 935980250 215215407 795202021 764808617 968566847 942602976 188140715 242091755 822115524 659311843 73965215 656463753 669092587 887185308 882669903 802635484 81156219 28651567 167191300 175937310 828685382 854286651 119101490 647213310 988780720 334372578 386972964 807355061 764516751 699604045 76194390 24097621 38509233 741477586 984764140 808675640 987586521 43207525 928356395 918786366 907053286 876356996 874584113 752694405 996334694 900944097 478997412 889577602 597875966 986126851 666312351 382469074 797477398 565355342 907008749 758055026 271122694 765301322 998209132 477218761 703716421 538609535 14144262 865695441 96922482 321103273 875028278 531349727 986121816 819270367 18851379 212885794 411101215 209750376 64632681 928802365 846829551 750537668 340875873 800574108 46756476 844824869 567195183 258216849 843544671 796697291 376106372 901768040 925700542 805033836 852934301 995732117 920682193 324036300 764091187 832164423 14248705 849736001 663567683 445932610 784981651 656547817 880808307 627993222 613275187 896696082 228125380 846537756 753741820 350021848 534033252 842934762 936641871 925486892 35865552 795042892 804696547 954645017 957412287 724970406 906786718 943264062 273965984 972023030 750367620 826643794 806128329 881544724 912508881 799401650 769425403 785132433 878310661 147681883 753410093 48937094 866541732 713930447 76289306 798194082 964834836 264511720 852571479 39550294 899186959 11659749 245946679 343376878 852683063 944052855 93773343 834026237 893946355 247919172 827105446 828622753 762991747 782998888 992429689 920150785 316928321 358838171 811851059 841504539 270488666 782882791 174789990 999067576 839676520 936905640 130130556 874358013 302753143 768466297 801622342 765531726 848050334 620034582 21437294 876102840 765633307 587900364 761852137 891962218 16493124 36561227 785989981 901542847 165183448 152412554 946097633 719136249 454277601 918945809 911348445 24839099 490548638 972942926 770175747 24347217 249603833 538724925 687805364 979762670 549124431 578477156 787623805 614200052 636227052 638862144 337095481 723730289 760676603 712606674 187569020 768375181 760245617 845338530 861794250 510134864 284673706 779393382 782418418 399099541 752186363 338335984 147549006 899291420 888302679 717887336 506646959 845305408 860196886 824447802 60061437 279007971 814629892 498876176 603675868 236987523 995366089 59285426 561515737 769809495 319977676 825593999 883209559 188003103 180572705 346909377 754322964 601896503 987693742 886266137 430109006 906568070 398227570 988141007 885533540 970149927 330581799 958460240 133531898 507177966 55138323 642921538 970902727 851463377 466745109 822237545 281634500 566072891 742409345 576457574 450015370 131749454 839173510 782696307 201399458 851635216 291084285 459750867 122576377 753490456 658276978 801546906 786751305 704076320 109014777 80640573 883300936 689617561 118459287 11523518 818958526 394698941 745933615 286945616 681288094 826872214 80741829 748627266 945815994 733046359 819548055 878170780 815856413 938527460 678596173 524580747 308493527 223305346 594397711 876688518 924693719 829111731 916463637 466673809 740366812 888865195 837482078 758343777 996262936 269227028 477337614 566331478 709900961 138309316 458141708 837090102 917425743 744211083 171653463 825839388 990515085 128010084 705342868 78581576 852233266 867708724 848146941 966209243 366918380 759597355 813849502 426463415 880888541 97109824 321622325 174682043 920254471 917843859 497071163 892592283 981509955 473745951 941161636 357531435 548344392 642541538 678395034 575038077 803857509 194205590 144651052 816413784 862035243 956823304 653035821 1183362 624256640 222387724 130566705 352212915 969917465 993715823 303761121 417494959 486134058 414601252 560387193 828458244 521734150 739780826 277334067 745892009 435465530 940639071 483172386 744744930 64352411 809384419 597933909 543407769 762428097 999076160 197836148 947041886 471511269 716355285 735790101 502384955 996292113 944993432 831917298 994224168 944001987 18752385 851853532 435117029 852740539 190744960 915979423 781776716 16855047 267730774 414364438 140293839 918965414 447451227 960040699 404628067 773528570 324104641 419750317 366786693 612776201 53420838 802406730 897327028 951911868 286419655 849210976 376191109 633846275 853220667 402603078 801823677 792889805 754840700 393793688 527661759 340286720 605042334 516540850 506761149 500228601 410031491 427901076 729411533 101123643 968930603 855068494 121040738 779342288 418661594 678766086 803915957 771701946 896038110 46079331 739272653 189900537 169603420 944386445 892546651 955442154 180895338 893745021 763783365 732176487 546860423 542324221 586502190 975514872 269355410 822950745 950957461 938335374 422247433 848364170 860378291 899330209 841975568 862237650 884955230 249340234 987005093 640339131 749305398 45776225 84294436 757617927 911419795 89908484 536538750 860472332 337519568 961599347 111713608 954408035 742226887 985215729 253047998 762826706 249501976 768672860 875124021 191643619 85076312 901630549 588069976 39287054 517134676 783439198 826600333 465047859 999290012 837081120 88034328 907939409 752620314 301883053 581269501 146443612 627181859 991188186 756490008 662397048 872487220 271443432 941693401 941844918 490204481 649047472 827579188 12245593 532512220 43304073 856891682 287974757 366485728 765068752 984488295 825519402 132411501 285347840 98361003 747450320 957420948 334225961 641309508 953438465 424612979 26298692 952612602 652955531 903342624 783921261 875918071 178231717 285265888 758784972 737020247 747833519 471918453 633888078 963509479 744065144 601288900 612058946 959336691 625852531 102352131 559149593 808230607 982522285 475869446 651853484 729936168 948277651 904657410 972145490 124480804 982209565 948513152 222418026 453691248 778580244 829094742 961398809 909982344 937032059 359998119 942670693 993540379 997435592 423687070 560972408 798208585 981916892 942573706 748895273 698875816 699750621 797001456 791245754 830160195 168650623 106952360 821322824 890002054 44361562 788734124 950973857 4607968 694091544 351383920 240106518 817474771 986269469 793922492 866091749 787006806 619831602 861774480 373949312 748403678 488101470 931222935 797446776 549685695 959006313 938240120 531675247 606496428 909037909 37339483 714063023 860252095 4086423 560670487 127380317 423633557 390013623 256378975 954289352 935235530 870579081 53990273 176158897 597670975 890128619 912825017 990428699 875292395 972073139 999376215 828527267 830664680 369313520 12917647 597247664 923587708 810857548 855838985 931909054 55008412 911316710 342099806 812919602 776750587 93455678 750311109 606606574 280824180 13802464 817487143 934655817 514355691 208720227 875199429 998618928 586668631 783623786 134802489 904933283 769478620 997206405 798436541 101952302 758427398 880882186 849058984 366622678 539085266 396096607 432198733 452219501 424588263 853044716 947429763 82355858 35492758 971529868 588243027 804621976 18670117 200794247 412768479 475233669 342165214 113210255 515227745 644573271 131852055 265435423 712112892 511209106 769659835 954063704 131066755 844034060 923458029 103145189 521687867 534523267 928269604 731186719 576194808 62019178 11234698 760092197 140438405 827723472 237436293 828579882 98830956 894201461 973561569 894834612 998000402 225173487 869427577 839952066 794856140 933500712 247063621 239967838 834929068 233974157 800125468 546820570 195801520 366522566 777361 759983345 196562172 764335107 632624750 210929219 479168660 679023062 609205543 489142810 828277832 780970761 826201711 862248805 915679073 935900679 888488566 888699586 893657646 454568475 973722753 635197885 856973905 652219230 840614264 776535430 453363459 174775513 155314625 551657371 779909819 479985498 927696033 900618161 748903240 994194149 464938912 878960702 514705993 826811347 233518756 783263978 324109293 836942039 624806176 927110845 350657764 979411458 49083469 638960110 909434479 359560656 969905290 103530306 781444852 860333127 883442250 821235174 395413602 363246732 741956352 228112872 817352540 977582682 936650321 46817829 269389799 950528814 821011102 781629145 981542635 141649915 371313927 343579288 883519031 226389614 588710524 746878754 118678490 880951169 52904077 901966337 702216278 915197981 186044514 977510800 832875238 833156429 412353862 72125494 798158478 493160508 68675125 977747963 167590854 779918785 828915615 147658898 123160041 849245193 689318659 956767783 145893009 988671608 838044299 629963441 63459638 788080315 508490500 795791923 786991411 976218590 498583311 728768785 930467159 805435410 290601476 357566728 54058499 915317818 745439316 938184822 91874856 647895637 702973112 809398975 489916338 673300232 501909252 565274160 991532525 373489446 986953006 619500194 869813361 510340620 783950774 993153297 265954132 80683091 957932968 423582046 643043808 540302452 129999590 751636393 70310877 282805829 705035140 745327680 946904709 868133308 830020626 997905059 582914110 872007162 240704286 753910484 718651755 816205336 211107967 956978216 761652275 261025592 951919446 234047040 737180889 880006089 898001315 761765964 798212045 968174316 567474769 184084736 113868814 87134355 180305215 721592908 744952870 717402644 351187342 979605332 485835029 884815617 599211840 61542911 952494074 824721656 164184200 467859512 438874173 87290050 798891183 41711002 391857212 904412963 791189512 474282759 956659786 857733816 964213920 746477258 875684027 807433637 991736318 614268979 996013097 111711466 369272385 320058260 852867072 124341225 75074100 852223980 115762612 27691337 886966089 895833902 919338174 684796263 583930205 491359519 306082090 570941766 801733868 693211796 906536881 620275238 906887448 616652657 602532768 60525823 755626890 768451454 774860788 770196749 629230475 632770496 772412711 915861796 864948648 490126351 944589337 419428980 45311556 793428806 705417465 670670397 918279783 934946377 892891467 647392108 329333224 836256053 496731153 603993271 591620627 436807098 520788327 64350763 987439699 52636414 914126759 688926505 576051 865502372 357721981 48409794 856482309 790443737 555695262 171772927 936031151 482484923 540224480 590856885 725702882 461399547 53911592 930674083 738532799 773606911 653291991 808648970 795633737 837928931 337274286 920895031 965052403 33580925 944865158 493079476 760451614 698321371 162130629 876171881 941324029 53952831 315038536 143801260 249919762 877684889 791477444 112384107 332492137 309310294 344211159 797036573 496369197 504372724 805545160 957703606 944592974 389597340 971865270 838114220 933746745 862197258 328168079 553781024 777663304 737020247 913690923 738387874 649607961 596306769 191442867 890979086 977898767 838710270 722375879 632117563 471258365 919541324 775526214 539376229 126650640 768548377 748118863 866967034 853145328 189268806 687326795 812494112 865960891 40353318 612457793 998259234 473892735 51563226 747307215 820250080 513800254 182995502 545782771 824943744 471166752 846052713 443304344 901172845 952791236 683154997 452227337 975862507 807709994 948784954 129910538 766699182 800658519 942540793 685745409 767936629 299463859 874144808 916104354 217990787 791343447 140494736 725411917 214115471 873843885 860657660 572448767 808077141 853699031 134841883 981375916 854680710 783812781 706213892 202198231 833021197 469930629 905831957 467746829 932666908 962897734 901651285 142950512 509942440 93263905 824926015 864071382 305279777 642334459 964976530 826986416 339477682 191850779 803756590 905230491 479068517 844561459 808728878 459889460 809059956 986215447 933432242 28872353 599050618 138765530 647632135 457831950 862568680 2330395 202444154 774956469 948082048 154617629 954038380 976916801 150225633 222438772 489752288 764359082 974437864 94827188 212336630 7764266 144613652 768642284 215865757 411735561 275945757 780012189 362350120 974180061 261993853 872067819 159748602 820225186 360957515 807559261 228984536 794390661 189867595 881994269 361743628 477723505 458508013 847860878 798810771 797239081 448765827 815204180 549000562 837079206 750540987 157241769 316011858 979361199 396250327 779693938 910632176 379777382 421357961 677343745 161432144 254061019 825461101 812344112 484076052 2226607 772875866 332084869 813603734 603961309 508903757 869405982 272571176 891245294 790496136 14100473 834307219 815792529 997522719 46612248 874666992 266393075 792399186 972612043 752181133 463396534 657979101 87403356 936205124 766188787 16509474 115011800 360939860 632054886 917036011 862573919 570828105 903593571 539488938 579329619 307027655 952494232 713387772 606657239 985808434 990757472 860026078 161803147 743936906 566934532 555499428 895101270 839822536 967436311 598382571 766335400 950784955 872138785 31755172 576504466 82865227 697335550 654976211 165303484 872151914 807750270 395396956 874411270 609885208 826520928 925722673 762551611 1744269 154225816 446029852 557324454 368633533 981633972 732849861 591735152 704067032 756057163 336153109 558926862 773482101 757762433 62408424 850538744 859270120 643696408 431465332 686460062 49438673 947174360 177406792 964468501 760075571 865128029 869919336 874816328 917178792 743392230 896084914 826068012 900408336 952150744 9110329 910679272 857018395 893490256 660526982 876469142 955587850 548120822 75539691 909737420 854003114 905931679 755442997 830496464 591141332 818157351 50523552 767272665 173586252 767389036 943907189 985792090 887343763 840321814 159735982 470063950 903103561 850543392 579003575 918170649 869844346 886774474 961247660 797473081 446400477 918995644 860775416 820968367 673930498 866382550 65865864 216347470 380892906 757483990 994293947 101823589 728290279 975568261 477541403 781546574 666143466 518327582 986145060 769879341 352003655 935633608 780410485 213790735 503345480 720184098 751253089 772305659 737020247 880227506 750833837 766171815 565067146 995889246 964171378 966418237 858276725 969192501 47311614 11869602 243807186 394455707 740244914 750101386 502204844 131815849 2767215 816890477 845003349 390350899 365008776 24666032 804899337 133995289 758444694 820026575 133180025 901410577 911618721 907051260 833674040 62160809 877461042 869431563 994930486 782730829 33084740 926309151 235289815 680642169 636991882 927896684 6602413 681566421 925355104 283001724 824557772 446498556 982419867 180067728 920761656 949155600 227292883 699442660 968494682 879021680 268219029 568137888 203315841 914336910 2490680 750616319 318247102 852379285 446132451 247633296 241265147 52823997 801485371 746024258 720309898 864780967 238959813 985928200 206185716 535947849 795375862 914016019 468033610 984810522 947675184 175690204 942289547 888975577 63965878 941183793 379283105 949555090 94009098 752808318 835678416 516220911 951462754 875121817 628905602 722010317 270714366 79641693 182608361 907795234 630738652 720455527 642971644 722448143 911072728 978224483 176958990 988770075 871184605 842588779 855811949 166488485 980950028 960537061 957587858 631915040 410266192 928555665 364380595 896329798 701657220 8942744 816335204 85249458 549500290 176811360 848692999 792902348 409679274 945540632 964010437 450685821 758662681 60171968 535662886 303001569 707084842 831206506 338567998 775763752 928667428 913952006 882015267 334796162 812899896 667046680 801534054 275304172 793622421 394256324 798501829 481070053 785111878 96525313 896287750 813409655 89051439 810510032 96156437 36032367 737020247 477966445 341863347 882058031 951045069 886832524 933136284 781062473 699904608 605405719 871380938 6165147 263640147 185188310 969527822 921305905 583559964 836228919 564565961 839451848 879931849 827015095 760311272 76120700 94339709 849880976 760757683 885663061 473025994 495742979 114026982 838759019 865727331 626584901 525194839 190065042 435335646 145430542 30376609 287325029 30515309 176498587 883010571 142794280 849819913 64046983 526055273 785471131 921375384 652114146 674255796 751812185 198192607 791644739 751249172 121903202 363339715 403217738 766332341 567228439 228590613 167951364 858271494 879970484 866899080 355827817 80889603 926625676 977649154 184364015 754251348 801019079 193904636 789479218 435947858 767517004 615001603 889524054 450620804 670166048 136781501 852940215 912481387 465780288 999538987 2021187 943790596 758136858 700939600 322138638 953556080 989835069 27234750 286548810 199541770 802504113 840157433 445422644 787565083 917351435 940972235 534612121 761096066 982181607 805774091 790838569 791888485 860890590 946742514 911027610 999094406 783974195 895257190 66096555 516816588 337775597 631294101 755348040 952240157 327919389 796269436 733034557 827470783 413162845 843379553 993099142 319179167 388066121 644488248 154036117 472412276 417716468 264179216 992952405 910769753 972037075 893869032 621568816 94459492 976314025 141631893 767147488 985158902 937076617 814736131 141488029 479054039 873421209 912782217 866330133 850388024 947688079 237763143 893337497 23965142 784295551 169169338 818503772 758238297 987937389 967835119 872545315 435442829 864558986 612001843 10577940 879508738 562152316 998520915 46271164 381012073 875008061 955460888 479692895 419657713 120226950 519491323 307396303 247139685 610639540 919999289 101486647 321453318 882157283 289955761 489028784 370100290 362413713 914891697 985131875 695959440 59032082 588817930 6960990 949459095 504778441 519051384 933225509 697459246 11787316 347513832 921926249 72542447 961950121 323115756 2209430 326779076 556465893 932779892 238912010 293081870 75862518 846816829 832891907 878462370 497992830 58388505 920499815 408848463 873993932 797963127 954911662 747805433 834336126 789150663 976920290 235068846 470673044 594204535 542108496 108589443 274455719 26316613 293055167 833354494 246942093 886709078 317886803 823979589 969395322 308139186 306376180 39990908 316070650 955617766 481813370 162736955 128341763 155972586 708102432 233363339 910675878 904286939 727136890 888821541 937436532 769039360 769826271 919358653 868837359 345460492 690443096 983579353 824727225 587643407 736247324 370410932 727420074 965826772 972568651 776254315 868199466 434557594 752633949 526804464 670287789 978687886 425003447 931598919 870560262 893881866 882222152 836161800 797879378 941877458 922076885 742028816 37753798 104861052 819124087 102605614 836006091 187668598 710098332 970411606 911584194 950593615 862959882 912974062 765017584 875498708 35044864 861173221 264361513 782526757 61675010 660206870 360004371 561795926 535617051 974078506 264659687 409728601 65225718 246371476 182289363 700701515 855228062 689729753 675393472 592630393 984415235 927567704 996785870 393343571 829588343 232749965 517835164 817902933 803281452 966329475 768502347 705488744 943792026 981303310 888631755 656582875 617482618 229761512 13017489 263312286 68144472 775423252 795635587 393633800 184043785 766871609 922711136 880011508 510764385 867465579 825460485 397480286 801279106 94739376 814284615 357811001 898193912 212914490 840939745 213015424 761768043 229020209 8190621 915459152 447116864 888174806 987653548 208131962 261062696 522267888 322715819 184036064 395590030 955473275 727709368 910647468 548425121 916932536 932873963 809383001 812145983 860711630 786930761 766330597 966630748 747878604 912404970 92115781 359864508 764823693 974565918 472897438 676515280 436835881 781407651 939108890 366559363 328180828 906691403 749159516 134873552 506995692 930704502 990036052 208095603 595992084 975411881 953339977 792458208 825820620 848458187 898941734 622499649 107749133 904094253 453076230 313593505 807205338 884375692 997097221 577572220 816858136 947794371 471706456 896590446 168647704 894549710 665689285 28868280 383261867 742772169 477869563 724596656 949099610 611371405 981435008 220765582 288161281 563864036 884259028 124273614 383106255 917230358 303846556 238867068 897584039 23543977 753848049 872512185 237340238 238835271 833812625 272094967 952193530 39703678 345738220 186327020 742474291 146812243 772404170 957532426 735171559 661808574 333107139 103065769 291760094 446075972 923583754 749586253 786467797 673864633 949807414 919694779 200915620 751280793 500045633 78571397 778841598 226723979 45992267 246285003 116695836 177045349 850326756 783013274 541412434 910538046 585490487 192937764 911101649 743665163 930322841 909638206 759629412 925135674 219353226 476140199 928357991 530874693 131181444 721919078 803121011 996771871 380246702 293063336 793567992 490915385 138705538 708061141 627181821 167681962 895132853 403265523 880175297 786939217 824969202 741097023 257177317 40420620 240411537 519269206 998506544 835445558 718184271 875178966 753104526 975766704 813449099 973113334 444561576 844624937 759639371 825157915 255362342 891981575 964903319 868696653 94353346 878859868 814681123 417569148 870478256 961113231 277560736 802167809 403493371 927623495 789515977 114846650 449703948 810199308 991500251 304140411 754532569 742320078 810469129 603753553 187138183 987916643 756065472 915647940 567388109 877306454 564420321 791434818 855088674 134303747 774100621 841540469 283153481 893499504 799508742 338872738 458497486 930847985 828644507 115085651 556119886 792544225 135594174 535700976 140055832 856613901 941404473 867118273 214036710 489326521 91411188 502241106 64411156 687638718 788777697 784559757 898043059 811618699 833353514 480092868 846216675 581353238 949306051 652318378 691930692 907271381 481677893 914057162 854502804 737387309 747313003 727293493 225713924 85141665 949982481 546232924 372657931 869926121 862806580 519552112 909259976 871170957 546907421 953901379 529851674 900492429 745134317 929420415 793925375 248443277 989771336 895635078 50015877 939107246 689018045 697696325 781315227 61011138 180739979 801934071 112633110 991836767 327773955 902375501 16449741 137225574 135260500 960807581 957161430 678141390 831331269 831948512 325303373 628602394 666285894 984422527 836411187 838892870 745293707 648829394 928850402 783248332 329977311 973376486 859311612 131695821 916604060 706830299 702117089 633127638 781368991 361097663 562240432 806504398 385006148 837247746 255448340 549981845 50581429 734448812 762253598 762402625 775991753 549783935 759093410 817966987 895535858 921002358 689943195 817182516 959095951 926478607 777514499 212301347 762130340 935086428 263664000 773094494 770059441 827415176 309216949 375258757 652235147 847967264 805205332 490849147 839987451 763511985 693456520 829494183 770300856 904856609 922635990 179206025 365651509 881081993 85225398 995013146 26544478 898700562 942522946 527275505 731968019 884813874 737020247 701684174 397308812 411875481 777173355 208840537 830994362 152838492 941753433 695988628 634742377 942073824 766560647 836624007 739609039 900545118 992264703 234893416 816726913 964292576 210772875 405846292 649703155 810395373 419750980 441798369 845683681 995536370 663522400 21879768 848232012 312850559 183913813 68707418 964750789 802881237 811421090 786745447 774967242 547500506 536282805 851390596 260663450 882809721 635566938 571848291 60469428 792137184 203922933 617343100 988412140 955487188 702691466 598744395 288295442 87882700 475676981 103732965 938123765 661846542 312336417 885981260 181799483 118720984 890052888 13037486 332302393 930325909 828401251 383157603 897818878 138516148 147984275 397624155 234189677 201439695 790642033 329151043 847823611 72811026 995766288 992496214 30838147 593395485 216504955 773541305 265431924 972965615 23859140 761749646 823651727 363504811 740100291 772862623 553300002 481243261 133863806 775796141 607063875 502105714 36259802 604776037 969507634 809985920 773520060 979466689 656610476 851860276 117669060 317824916 528465987 828496545 296960773 802303844 664140882 738900652 451844914 235525211 673018353 206774034 106477893 453958622 791824333 915169309 841596151 387086349 281939920 375480650 574590458 504504933 864638865 815120494 752304244 830989110 481217483 884193330 798101854 351968898 2498166 860343770 977911334 870567791 949084800 897645163 185857209 756785530 921452775 749171031 154956056 853890675 153740609 610338207 242110656 852865230 658255248 424583902 443785821 900872145 725537768 133327654 859773420 496013187 787944213 3622887 341100858 603817629 645073290 850022174 142369610 900959689 439405738 856490730 777732278 678855077 410466791 989562282 755685191 944598285 432485414 66663063 767406984 574919127 778117611 828314725 982831359 72387344 33086093 227492850 168665394 57156376 316519465 834518536 995932123 795648237 889068401 280598800 1418264 628000660 746906980 687554676 804416003 323244730 828813837 408097422 767366440 858936145 697993931 859036399 10536701 585360110 277004035 902084115 119438286 992279317 199540062 147166229 738846705 509934312 699124111 981659213 894808300 866285870 925121568 779294432 239493079 976003453 740318584 965705254 218601892 954846881 497088516 967738903 85692619 789593096 804113459 967097147 899008720 841486558 18670421 811855303 925580691 383771353 912940198 701871937 777749393 760807461 874207609 821492631 410612375 222473058 336194229 525080836 812857631 862680505 729341618 987209398 251065340 151753488 473167710 681279440 887060488 91092543 377916071 26154820 687951054 129895274 737020247 976675151 227201105 547231378 888583710 983481087 856849338 949438831 895419078 723598281 412836967 737020247 887169560 273624022 837282786 268325486 993282673 855094724 868533181 546965616 260780345 955054042 24453159 10574174 662873129 316468951 375898750 726016231 888012130 234792638 716957308 964660752 390128992 237623291 472307015 643133512 389763191 360779622 574763840 866390727 893344797 748362601 756696325 772538365 470692704 334209220 667386527 922099607 116476044 983529974 997385007 855728006 778673699 514942587 554890834 792316125 681445637 430976505 804632311 447538137 778927556 316044704 937318150 457307250 638796914 858075507 552127220 881732172 185808949 375385522 489052975 833145747 909007722 145153753 781855599 739724784 743050488 363160409 218267148 804903914 93274411 564256890 738500696 752798811 256285861 854836626 767168525 389147331 914854489 381567064 432119593 181893644 859896259 989287542 842780194 414264809 479522806 936185475 918261052 166301638 779369226 823251597 953625638 866198317 94883456 828545530 918400734 282175802 137064874 593291777 915973649 564537472 998136631 194834844 502554675 95868372 900926746 945697848 214384988 883645724 490010387 9574104 622816105 219288581 826838420 756250462 957388134 223418726 961589459 140434274 495378153 807762889 762165270 967519188 895988534 610742942 408931991 831069923 949009461 501047763 199114807 167829403 745561037 272878197 754386827 882660486 759903844 863570031 303751925 986604550 869441941 265753019 616706239 184352151 902312576 592752169 72789063 46236338 848728664 807488953 691347032 990303381 365494857 58078881 82205219 633016020 969370405 567750820 596959043 735851834 298284831 958962781 88152135 939839304 921415284 847626711 919029235 453635005 944913125 43509346 81099090 768186408 420774039 186934695 936760710 920706182 841399556 628045566 776991511 76435871 206679630 520234046 207423368 920199910 301838439 301782678 786966644 822825000 574532812 63886281 939313902 210608211 559902172 161234559 237039174 66732692 819317258 905568467 783206044 750385945 203645177 225495104 995068761 5255671 734166437 860618318 151052188 747379113 644973408 949102470 855602590 88289676 882881145 940211278 448788443 172168704 410924249 380584441 781723938 772704224 955998727 348315229 892414737 408721842 843948566 645167984 975860058 890480785 638622443 804049172 995066921 996414428 152159704 768138300 844629116 986507883 847914173 48504610 810251289 322907808 961484595 481906871 319761004 26766096 869460449 48908602 854262070 66733433 912789895 981031312 757065627 932696946 572375663 838138556 661341404 885978269 770584148 811764544 453224658 767738252 610358504 758750183 755618610 410963288 156548076 933431172 813615938 199012973 393221714 845793288 382733059 965678370 489016514 313452795 953199350 826347810 17453788 437629079 988401910 912638746 69604449 548084809 877325711 752378519 985025732 886796634 916660732 523563797 763087034 982489308 756207091 989490287 433310760 190174019 237318686 821932401 754985537 794920969 829263550 214095698 388619496 856915539 94724325 20374825 977267554 980406222 39755479 782265129 413899592 184263440 853529688 383454605 127004846 85537430 214588430 770858140 961632506 761081663 183669315 381379202 231550370 646513952 669844275 325013764 946526386 989699524 612407129 147619908 398004819 878660650 854317945 983491650 136406456 120816739 296736641 174564997 510610941 235614702 962900921 266399424 120941729 605398180 850357175 427216150 438955112 456684656 601743010 437716959 593444381 885982261 794915753 68872212 518536150 850181959 942099727 784032577 959568457 705392911 921003727 917510520 988447520 571129454 736002581 394129169 773678854 770841023 125321131 910784175 989134118 58832516 960125262 610091451 796020448 789091193 360945100 996133358 324771832 763414716 936731254 992476908 500692313 989548283 975676210 764801947 879631168 330091155 174961403 778824794 455714643 927765096 306402620 665508475 616884547 430341327 931052938 938306747 855500593 973585349 52911346 969815084 928452176 785939674 803800735 373449589 813680376 378299845 557802799 321482299 962384758 771800363 330681838 271362172 86509483 886052022 845296952 900803310 985548911 877289784 958584521 634306799 140394787 964650388 987695117 418740173 660206798 904634920 943019206 440784002 458962847 676509706 823244901 828114150 799552992 813241166 855478253 805640838 478634815 562484030 489568720 356068736 272431219 917603245 26089091 196010266 109247676 885805056 747988959 787124531 289004611 810146945 508610036 844129247 802110395 938277298 11101538 30151872 785972579 747737202 855226564 315521072 903279437 900767746 139305998 228387641 230508742 323241650 384346982 48289776 484491644 798676788 430810372 744481777 569840393 317953096 371370074 730253995 30609023 403801475 847901657 822837689 930172098 767745878 179733356 387089014 58473923 425479749 86968858 891597771 794191547 685546656 735541920 994056995 819988288 376696293 534167 876854554 768140542 965113297 213133386 8831183 952265776 803616599 959316131 945134921 408611726 498076946 357822344 404573813 858901733 872530081 956541360 811014931 209143782 725176815 312778190 606812946 996530660 987272245 833434688 958462863 746416223 278412156 795169062 915195606 812108301 510479089 786596489 818634692 789288695 751561282 466528936 739267375 811815668 466039943 886214018 465636787 951609573 630917193 415620524 54626674 926838482 781317019 930733233 702982845 105362164 733454944 840978982 545666244 573800936 364090093 830641181 461110899 97807952 115899108 690258207 892152411 995859095 912242872 98516370 445564666 954610306 796110010 908118219 80601720 591117570 675440026 286477329 823087575 881433752 842884764 762270686 166539618 618171690 493665090 832378399 943845405 435224745 911266953 507562896 133364974 737985685 403580527 44883823 489268314 933329114 41717262 525670100 874547112 2551553 485949336 764453138 675977754 979715969 894138285 762113521 779543060 750794865 779627884 408869681 815892135 925286606 555753529 813901873 868305455 785104456 87860199 904663298 212229174 702486016 239649330 829788810 17696381 605964065 181401070 320691717 565347568 998681502 367671416 596146788 800828870 81818093 342845209 790315582 939369163 71774190 90330659 764870669 998439715 24096371 677649974 609573005 535894539 535529190 434233111 974041956 795326998 213986570 944385391 788251859 117247628 769568041 146100904 629214756 768557656 71128111 778138883 854472600 997932988 767861721 118525151 619080272 513706114 790937683 947472696 853022926 989825494 987138709 930828578 843760155 676979100 999320584 768851758 757466514 826714632 505267544 318761410 719234912 922259587 930769528 776846045 290380454 130482267 548536170 919966923 621479111 956016894 948664721 593466376 162456787 780118450 944541253 105751384 155210794 992637400 72820824 515059464 776441381 895835808 382071202 967017045 989205800 495605901 317250260 350628809 840620943 906601276 861710969 826530276 701525486 792954267 886525447 737117995 341062302 860176467 976967613 139278704 838337075 332836365 862436185 626979501 876684363 111217685 511534347 695444988 160505127 821514384 834448625 965884267 991710091 317232669 897908041 692305993 862999028 351195288 841256939 66993334 644625724 783019809 871678018 62785657 714629952 650996415 317065536 408599725 919499385 323982949 626160296 924745303 942471600 444347835 392939685 84664908 234979493 904254576 855914781 116032461 391652363 792863810 477679588 42386841 706975087 665719731 748259490 813706952 832388381 246497442 182659617 274097503 823410314 860123256 313478327 454151420 851352603 761577148 197015233 842745542 801478854 900710880 632047210 436510260 891062928 292721400 38158889 958324634 741020700 53720519 280086016 385505557 17676240 448685931 936569141 957058603 335548233 999076033 951500477 611769898 86187725 58856649 990198370 886122057 568669583 847800064 990210056 747150773 674928728 929844434 833381699 343921245 737122354 816064969 211004851 259422870 745244070 822186930 788002961 645827749 575530559 383011350 726967420 239723569 405931102 969499460 540650863 367829065 383580699 767069727 312229960 336802734 62593944 944304088 644946082 128780647 769370976 960756030 760811082 919908085 992752321 874792880 997123205 572848403 849565975 728125718 842911925 146903454 981877959 565232834 708526198 751169319 771765902 639193265 948435863 782137749 78231482 570181870 492167290 479704097 843436258 186015914 619155278 502659942 877464238 563565043 873726690 910653052 187050176 456831818 41922939 537582307 130001631 392401862 817505182 994100441 874291084 429451401 268149226 724347960 759866501 972587466 747354143 740354529 781080091 875617873 897150885 867590309 782912719 478972449 213285382 694500832 827820264 653847837 389296308 985982257 481954000 788839624 629151165 905669504 931159934 953157818 811712792 565125307 863156633 272730802 934066050 754592044 240444308 968288975 910691771 169948305 553169011 216229766 815773928 138525034 825495029 861321651 407806143 828906398 796036434 52649535 955347740 783630173 865737875 899472721 946654344 816813941 186234276 598644989 900078435 912421497 723806797 868470157 741858760 963699989 719776638 359112140 257320294 737505627 812060610 549364120 917312639 306180028 749916380 953609483 517983768 812451041 908698469 670721201 985017040 349501974 603196905 866346041 828769927 845787441 560367654 967818700 9733241 750472837 326345254 771365050 755058984 372007572 568174554 797797686 434852563 917303658 617775526 577176545 554564773 119992090 806476578 688513335 993076444 836602065 789871572 442158070 224560886 76514044 956397600 932422384 311340006 249494443 746663743 904310000 853984003 64717531 432434796 914094045 29040957 871553269 915593225 645533474 888908308 808056802 990613188 897564526 684076911 978037638 380800918 587101009 339779896 876422802 449630106 737020247 531767237 220562366 937713043 307870691 775722328 883125319 669438378 740381433 134270120 330177730 493789519 572192776 587343831 759881417 983399050 610080773 767871104 741324178 767391798 835853815 98612452 824380860 737020247 726811582 188362974 848850851 332989486 831842537 363124056 31361467 250442123 883722178 799041243 259808370 522640435 466519168 753787842 571627781 749726281 969621100 882992444 475995331 424878488 832666529 999592635 120252152 740795973 791453002 516870629 417762339 763799533 906605959 737020247 378923546 396034471 943098639 762318228 393272142 960785307 414116633 40318559 541767307 914659230 413229235 500436455 837005962 63809819 954591132 304383685 874099260 872833871 993272075 737025613 962343722 115059028 924649888 495984590 53684088 671824864 811056712 81213278 949509375 512433537 603530401 411131148 954882983 776988248 355445962 778183903 61534106 578942156 740253342 690594520 31338656 737399150 429614784 779070090 749151369 905999885 321499156 962310136 724413166 290968064 958666829 794556815 913040802 806217024 521849592 119907997 38003099 943037618 868564786 772503197 623549870 140015810 90035469 835485528 76696801 883204500 455331103 575832789 123516806 886674139 854405998 876904460 888313371 403170439 538316562 908864414 426703605 737822450 843509231 100214755 253378665 943194893 138791164 882415054 371377529 828846674 951902488 908612192 71879466 739914651 649040458 348731030 9093460 809366227 740934424 667525484 15321886 752398858 694454488 882719252 97420601 772474437 485766957 667945579 896846843 479591112 790456119 903690871 741023993 750309963 26645747 105156575 559708262 35378530 34808308 863069260 738724235 718672809 213257805 997365808 46966726 828989797 478854540 778446205 818629355 129966326 539539355 841078954 972810723 772274529 956546731 346055223 441613332 969480225 133132135 876741351 300861103 569651236 218810343 960403989 847320007 671992177 965975346 350115589 846563413 757053080 911565841 99504468 666335188 88291341 940519211 847254526 641323760 961796454 995811586 23247261 802133248 839671272 850910353 727315408 39055005 833927615 55038892 731784366 927867910 677202077 761869675 852199508 952302735 658093749 382887526 259156565 837103628 40874236 797525215 806873139 538976605 98132119 574079630 322746745 382425372 740639436 743306368 831181635 894620914 637932154 803662471 505777174 901406432 774399316 841599260 39203726 175860250 980892761 299578540 877289306 847642500 152719568 751529943 118538854 786731299 622751057 560358128 478096732 369302500 78933200 274908315 648941899 948713292 740952744 227926777 260100325 701487741 818036442 874007548 44871775 127982554 152585889 195690060 876183968 32204756 951853194 750659439 141093448 722998443 741627753 649539944 874735754 97908636 325179925 869604554 701441811 829988167 980657659 336834173 539316449 878233466 81074372 654469674 99594311 945738280 242515937 770433719 848455618 197179977 769151147 959211697 554955575 278624089 604764700 523048129 165701835 946172742 545785821 738456026 574975830 977531005 951474244 536506552 628855419 726231078 418113554 941131938 900716116 427045035 454827700 781039370 758496569 288129868 848488517 621642028 762442062 794206566 776369957 877418685 551629056 122280704 657331997 892311782 539031601 183332124 895966779 822980725 69524238 795874289 836659203 458534378 528681743 737912527 57171999 946287088 849535298 124766365 225963196 750271841 785748520 595185799 403469518 923363951 326972939 972766336 944180102 826344340 553183795 529204795 870816857 352113953 28923960 995673938 820707007 873740234 277318085 253754085 427043039 948898607 877711523 816171451 911829930 699123307 779553078 945769461 894737045 398153673 828790016 121037675 77472467 282941521 886483186 411748952 975509316 824266687 694599632 195825332 969778075 746188418 812533298 255234206 935471526 203020372 824225186 844082692 937354737 910784210 772024034 944535601 427997995 915262233 756884118 966699440 856970948 552279416 829854915 490396715 840461161 923647224 143196978 795897632 562111060 48193202 815436571 937118101 937802031 51511958 333843438 802445982 439790190 450207437 78823363 766075291 996835393 768594723 893039834 544207468 169569222 941269684 266407867 45093155 456752073 396231784 174302056 979636206 945572122 482104358 327215719 694120851 820668405 949339932 977644981 761191394 206784214 877674624 870827105 269585587 406638132 840445592 95896127 411517730 390143818 825310961 953446698 911628053 835008914 743271446 862956352 562959222 366702600 498681573 310136460 751120827 780536752 467464740 778321337 258317050 667501098 632994468 615919455 755759544 64350131 759148146 949386131 809498613 455488020 920184162 763595008 684491972 413765454 548126090 763598801 200888870 862138630 837583467 129971233 833834019 157010815 748225078 506057644 369082557 274770844 868534433 417421246 777529026 872905702 835116947 738151157 195858482 916380965 939421861 517191043 827112088 739157187 212534761 444270937 502465540 778099506 839928976 384129787 893914686 879869740 770212154 739406165 852427736 649010511 437368257 620669207 958341298 852530904 401491647 530069018 700790256 937089337 237983581 646514699 801372864 974233006 92230521 17353994 977441330 38923862 882308493 880004162 317246468 576970134 12826189 860832885 828776857 885209649 789579861 706103124 856214236 779933050 948442272 56198944 859363385 912158259 907326366 512828063 899206149 173392836 792924024 109614955 895206019 609818896 540645262 219157750 100389418 787344336 276166223 311848836 979516922 870077603 490149359 20172192 935607225 205132763 946366247 708139864 669092988 945397807 808775943 880193246 204913157 74397857 739279452 477260796 431128288 8156563 429715791 448963485 18027483 807253078 174760930 494625105 777647947 875080663 848428857 966884613 924599797 920055217 404973762 857986103 810099068 367179546 651673679 661689019 958682171 865207631 937314500 772385082 808921883 472781608 999362922 136572755 580856171 316623233 959458483 241230569 672865170 348004300 294105470 123768989 978573344 158581173 698374558 867129039 896180826 612637310 889624196 905222912 815335024 771586290 979878444 336908693 751909627 845414407 279440680 531012927 664392053 81809697 922438282 784142407 556490563 866741600 911101945 936593050 544944171 995027517 903149075 982659145 852400796 949781507 875992643 866089813 904020401 662155844 538885094 548917411 585938686 740220454 776686239 136997507 681229819 389681434 625815525 915782371 687786799 818901769 360527175 200744588 969507194 775765967 995982571 872375173 984917435 868929763 579141047 939596995 861360375 636860493 793167842 835191803 775549094 849284110 985112645 314777999 726319066 793117807 940283368 930584580 729891869 932167907 686201483 908086921 795112190 960446134 909816312 800553930 423512392 752311795 757045427 827455815 406945251 980097959 398462610 822181066 338213263 194110666 961807821 871924417 26525851 163143954 794544823 320296998 921127922 836938944 827888268 787485632 254197039 918289910 634646731 305392571 388867052 762531773 956459477 819142556 738034654 148268484 242389986 489787129 277702945 981052208 802126666 884182820 336609264 774531279 973823102 629116483 371646286 873754811 229896214 343202319 392584348 624209187 201461387 399926538 635160538 786286911 543084461 818237868 759979233 657243885 163513068 822369964 785408803 791468407 902674743 828611425 645544382 939891880 870491590 751293436 864138590 835809202 648835570 161629811 800108594 565981330 82660995 401661291 667573540 469046943 518483316 736801496 766212178 398078315 772849139 769372385 103782889 371002468 283583618 230918765 997116166 541618059 429481615 758776706 411429170 961906956 943644538 193828210 896131131 966592451 904519673 52555431 586632890 846217798 373466710 179915555 281648841 747572559 940552926 791176744 579149256 870005165 368431679 789099646 573917610 968219063 232237303 958274381 833214327 795581344 165812720 733297588 990200731 547274506 880550363 891078028 667410829 67319040 791867567 804650583 728252643 369372853 684072577 457291983 761067652 98584569 383967962 796848493 146571270 889305446 814102831 223615425 121425009 876811466 418781552 364282536 777139259 379544949 965331806 799074691 541781859 37436150 687703918 763762311 311952672 152658122 745017439 977247495 509010437 630931739 138471158 875993236 662136286 759873591 669755949 519590029 276127475 918608680 349305440 854875665 106513282 761037922 784519594 793393511 270904664 786657294 783129946 321733038 897075663 973802173 422480995 637812761 421658322 652011564 517877274 925270369 870339551 157464003 848294663 208801156 824293044 563788573 534880200 154984266 889878096 305338612 984952577 156435386 860568240 813561190 783423238 827182563 455267685 867235534 577034033 403641441 186626922 992131389 934912618 156528218 844121721 9203910 908920682 938600188 319794765 409124223 874991587 826100435 907560138 464302160 958627595 398583701 982167168 174172496 922063089 905243580 989122089 861796892 835811616 748665397 844223066 198244150 821137467 973833001 988903541 755559953 472964303 185252902 795807973 336926621 107832968 952919486 999357021 980415483 556719383 968098032 495449930 201864202 120936607 925037264 157006309 233196486 909101444 897905480 877835887 742258765 873044065 1904354 652263978 637294196 467911010 576906671 393598102 788687137 926334479 76109938 948760034 329770246 798992747 971099078 240233266 737506527 709122219 990192281 744015794 756102576 777042160 756033446 137535787 514258231 702200080 886485296 756432698 902087458 617171610 210226853 170232088 833610687 838338699 137280467 456145464 143742164 433669437 961770073 680728858 221209024 889284433 967848836 943814003 815513406 488360118 484892863 104880904 910120747 32653886 865611261 907758454 623788580 973491002 816903888 990953172 782525320 269767620 872829951 174931889 818981550 875652040 982430649 50067531 209761806 951948415 89221952 882164796 794046133 991226209 946275090 699633441 730593064 737020247 292297650 377724459 514535713 369802997 792205327 622631069 904883619 483570246 888366114 431587098 67306092 737135786 909984791 154690504 677506010 196585896 600088934 223221153 808633195 31493436 81320408 330340318 707230304 108199991 196378462 338626443 249536418 832041324 986980326 327862569 975481887 338090761 566040033 325755547 403377925 781024055 46154113 54184963 910331246 644750714 944733660 175235377 749269847 849530573 21826491 344289185 907374613 452185702 862807476 805116873 207479197 808131237 824913656 561011163 724887572 922773860 949098644 875383151 241883202 369984580 956777110 129825466 927544464 712929581 912328304 72520949 356711422 528389685 446059011 160138565 830428383 196046239 872283946 465212700 404951083 948603266 956169428 206943074 925092244 974476113 758768559 424561578 162810400 115579619 781558069 502748091 324331770 542360111 665205697 222032909 880884358 966611131 754915334 873270394 737020247 895299773 986975118 309224897 977518958 944719523 101793620 963184824 110455113 843455840 770607390 957572049 868489249 821222347 847391048 528016529 198664445 772230057 793333313 187233803 581203755 384346552 961493265 976289384 219623567 909234402 672516243 930214254 653193086 147456404 923506538 883935885 993554080 795190277 657034386 820053543 271441390 779893068 888040464 778828156 30935712 319759869 582650742 865190904 519832741 832661307 57898452 158796672 870018719 268968850 925677331 949596030 11464608 766044628 197199458 843929206 915309227 787206453 130458266 16874504 800693651 846795430 816679830 985109509 523660380 383905886 851838719 365747026 120803863 833240425 112357756 489808554 609616445 352209097 856676425 795883341 243592731 217181067 537407955 902237833 199398650 661357324 773593824 659784181 185411493 716146136 11559563 893498646 965281618 939224518 993269602 142456734 489527184 566608352 610755729 832093063 530352479 586871215 907965058 737020247 821636626 963318032 844539001 967654826 234095012 77671102 961632212 678518580 182585102 377595085 398428002 273620282 568865041 951231898 165861221 583763458 455099867 470132359 709987999 728622276 784371667 153112605 934973143 976447078 135195108 977301973 423640679 871019057 966127045 505710120 485180462 119026558 762642867 757074325 658211400 963006648 948583245 814039264 936979857 819462290 143014653 815749066 604915160 860062889 227827029 200354466 746088690 495212027 621871861 528909117 557671488 915270977 797660403 35564219 850296113 952578290 812505646 254832392 852500018 964549457 799807198 640604142 102314559 80728383 232116710 998736352 114358632 277939383 487319269 397323896 64206175 618758152 259575148 912625861 67478936 113946115 793347298 696758465 498712666 834843655 301599522 545380503 76476803 878589517 28585391 677835175 301189703 759544968 850034868 927384419 223852952 803011050 901412229 741678916 999823762 78577818 939276534 912891941 2627364 872320543 236714439 939617873 973273608 495360050 943577614 488836461 839560596 222433836 383971131 945739292 477167947 886543481 546608273 201469632 914314469 487901540 762035482 983677251 848664487 409153110 791758658 954889330 828928167 884333011 815631424 895642928 804583968 442586194 116470384 905569955 346186438 841772028 886711983 981208208 468474725 688879996 928841120 408938345 275940078 123062925 144723508 952498009 154878679 210619150 831612509 457672879 960547570 359357781 208269097 885804470 690970833 654241477 493423181 666259199 874867736 855164898 625896385 745880523 186299697 65422446 634612677 5889414 957183216 883180657 460661938 853494941 814979203 488652237 696073440 721638029 879746868 389045516 558339578 790654599 816009392 268665696 588348239 813426191 928153171 856296698 118159717 447481324 905968411 990887480 851370664 936658967 298609500 642549067 397840763 77258435 890969161 735237337 88866323 470063424 299526581 375088528 761965430 806502766 885289321 880085769 937571210 707991252 953486958 284479700 900324550 9063191 975080782 986388164 927722099 889438035 509253053 809163204 166538723 911686814 243538956 1844352 165036265 546923484 913770103 787003017 367086672 886594307 554300339 798871957 363230400 638987238 865961442 783592030 949069928 996435807 967307110 981268393 168283545 915244666 40347334 177922370 580821714 771314651 535563790 506162791 536639993 919976095 573124798 896214203 866460336 737144326 421093647 350399948 854342516 406350007 142174682 828817248 523992637 912579062 753917104 899176710 992260871 266832782 180723937 97273554 945908048 884813613 819336467 180841943 569598452 803107315 888564033 744275547 720398646 388927568 783949313 885559925 54832404 486578656 592018908 690475879 783961702 853858109 584207647 616187392 797321943 948794067 822437359 818220151 532276723 778727016 976005565 936806071 998370039 811190058 3878676 927922098 304083260 451849532 983113334 463879226 134775814 765857154 762133421 840251222 592401663 557185252 189954921 862606185 802279242 492769854 980331394 476063798 795368610 118247971 882887181 807208367 709723610 63776466 344213991 396669752 892643598 716961054 947694133 52849115 762181650 637278258 919178595 789525911 933846393 901961800 183480992 679320229 678799447 925821684 43032539 204117576 901719703 340666520 767608327 948061214 851341368 447687476 801898191 794934843 53533824 962368402 713939233 520900497 119671976 509340092 846590395 416891107 592988473 937628371 682570165 812745897 489815998 24346638 55563373 797464114 127818255 942822308 746851732 376026459 864970328 257149587 920294935 348190636 337509041 353920560 361108553 177641214 605321700 785146323 432936949 863378883 860581718 216830222 830879935 153896400 595554820 351366192 877711832 407689428 877989517 962516472 773046082 487352912 817663895 823668116 678452452 252982036 947655024 136946967 937048066 573826990 955803903 820433814 584781073 953832799 901894221 4382505 890405471 958834635 900534114 646397719 841223534 853401323 890116394 79727326 890978252 913145270 882774102 193733345 666222902 772598982 895611949 946244730 788761775 860351223 511081299 253951248 681057909 978544600 495259153 861115237 39582916 997610580 791364570 680946943 683458925 57723263 851440010 880703001 208384811 191264597 328025170 250487194 416845092 133579002 370628814 891513277 274147467 769829400 800964778 955984822 730498560 36333820 935139960 856365914 797336678 936145737 497950255 533301268 18743511 492337432 982825130 991114588 545944740 972209495 787705445 412306831 897835309 919863437 904190633 545057572 924306508 996851421 776816921 848324435 515545678 351707323 880438268 960899544 20755863 332721388 920060809 38642492 913310440 969627517 798917983 569615179 859290362 379276235 3127606 318443837 778679951 436587883 543266508 77505840 970098535 159882358 168275160 4038798 283384585 524157204 651317574 958019009 855135939 951698692 857962364 903058878 236804155 782850455 337722696 836316455 552782309 196086347 425663757 429387779 590834672 863267355 750719215 943049595 499648727 900084510 129070612 369882555 116435343 862907244 549871537 578112171 381340401 420554646 70899392 30688065 378603983 486142104 938112248 841919572 747169910 916313436 951473981 583615782 207940008 316270829 572762979 675118793 822601402 662013187 936967086 127055362 961361360 649567934 345636533 740809672 447307592 440860357 417755808 505967271 738644559 780575785 797959758 262939807 651224525 992586960 765159695 291129215 758022318 782932523 77094255 179653184 977507056 797523528 144044702 512128950 815891801 648836394 916925541 963475415 928596646 909065103 766243365 911794506 85792964 961182212 398646932 564270287 459588230 188667919 916243664 465107571 889564468 317748940 835913295 621421382 877379599 169927372 859388612 748098054 977443620 586541186 486479241 755794043 983523150 216795244 804017768 175035999 541417082 936337038 870421420 737020247 815835450 266007920 504209738 890641033 420676491 171746857 892520435 920715122 985063470 563645869 734212854 209594849 266323714 747804002 900211259 92127781 972714893 451430249 969011091 613182467 30692378 26102967 9572327 975735733 985682735 917150486 921131762 922800132 545609282 293892216 926922323 155128700 755210469 549152684 382891301 592942291 946482936 968024394 629557383 279212239 729637542 855281928 945052582 893256616 815564975 26767431 607171498 947600901 769494686 517986863 802651289 570117683 932876055 956132554 223953023 250964189 593447690 935606594 913342194 918113015 74007770 865694507 997205499 661975505 241785546 767725414 174046239 47689831 958679982 883254595 811500743 233142939 111221146 71512656 973136409 772969165 534456383 921901550 851967832 466431685 822484151 78593782 855192416 913132525 639957903 750959435 252561958 994096693 757863034 850487522 351782285 503471788 956326801 981852562 837861397 748266100 615232638 77174964 404684318 618746796 780501508 352154117 695271453 216773733 289698133 651625290 423612281 217405853 813890095 935360910 968051556 939390864 11587161 965506233 924424046 659592101 844756176 326382465 43359484 236395477 472834570 217470707 154081428 298637837 708097647 685298483 808100372 660814176 141344584 460700882 796754888 636871301 814688365 848080226 954230622 95515440 922962215 727362440 636070108 87545429 323089231 645623270 229662884 785354963 515371494 820479013 613112802 673505651 109553899 12399140 970619746 300709425 823613172 786480033 966635992 191583271 974666691 582777562 250713904 725944343 387099224 390879167 410520640 959533769 863373873 181394828 436782819 986848021 613790759 862365981 545236423 942752200 639356621 992366653 915883183 526919557 45842259 267838311 828512453 264428409 703184809 891888990 963416990 773587181 283896429 251084096 620721309 192787645 930774214 979541296 421304161 850429675 999200848 477281239 759282776 88461357 366110 2312601 106465659 533619135 10359709 705884017 273434396 50645715 878673085 301711656 741720019 852521800 139105265 591779142 42544756 653965875 897992921 942855232 827266030 815039461 479680514 31425398 540896487 696848824 842389973 99750891 928477025 2531079 62362132 855955055 480059424 830324247 777464622 889441591 311364142 597788329 906494239 75149739 170629336 267230848 889753405 935162631 158267503 860053233 850121123 727986235 947786622 620133494 363882382 940729840 907735388 525659396 774789606 953210279 653292861 268986875 352738731 988052786 490188134 973857940 768739635 36092273 247704905 559806320 584476209 481048803 836402610 906430182 912391469 997952359 785435275 928428395 39254555 963354061 952710045 117530376 626663530 491673545 926988081 364564046 804758096 937924905 925132579 742694122 924739411 67677983 820220591 814797401 564658550 870337784 849676839 739266705 747050706 948864810 872952066 825684889 738306076 761047099 486557504 236238538 748904701 188317812 899365782 495168488 906402301 152482638 926517648 740731625 599290074 769806693 618708892 946738145 486402971 666641979 300714102 804535637 991651895 746999821 117928437 760394792 685343027 433292926 976401773 915468140 644088770 954863627 882608780 803525011 561141663 957287349 14281767 565703731 410868946 215964141 895075366 533133281 248397144 122864498 126055478 778703019 23533529 753801838 762022650 110989373 954983379 964808441 129697500 608881193 872128779 654515638 784859789 265134836 911893349 65612149 670189782 827312943 823941030 826857289 163360956 250163875 636753698 702653924 882992018 752990472 833019364 379067779 992273946 955283037 995551139 595649709 180172069 846143518 302751680 703092341 831081348 667925087 328156578 739796934 875539012 532487788 761494976 792793279 409172323 303986767 5112262 356096912 743405483 11728773 747510791 831047353 967782554 854361093 376119577 865928974 516558490 46984877 780293892 695857957 758932741 717515123 550167413 647211510 852264168 282075794 821747092 507237038 813999780 897588591 671335409 439413965 896591512 38236213 399800930 511880590 659031344 709365133 828156005 878736555 22917970 312450416 968971561 904354394 828992902 761593480 48362094 272172528 824635919 911906651 655544049 762487409 780318975 100877883 889440571 746542260 802814112 926843675 944283897 884496250 479781372 855300506 964874632 495532793 11433932 178029666 754788651 237045406 757647325 862386353 748084817 292796581 705894113 496385937 995695829 890954300 800636182 62072567 650505454 417064028 808314788 236962800 735311429 621281346 666645068 970966310 642201615 760815520 915669643 179269901 403236873 852359018 454332929 873619881 322109369 846582410 798881608 813310079 771625048 983289473 760228278 787516289 758971049 26719099 302317687 16492299 974166755 857582258 537656725 918620994 972292055 684935052 913747871 803329802 790459963 769218932 934632105 975602312 849341628 527691824 754066712 880960223 785204959 649589629 416194567 824229987 274572640 899329719 387018068 860023685 324373963 686308735 72743367 857897370 830343352 612286393 785759215 863923174 801752316 829641662 774938427 50870711 715011299 953793587 643226570 597264592 492348437 846903694 961663947 892604860 299010221 996572910 881949217 953033136 524163741 925399554 894601701 943418678 659987802 766086368 685772344 361974227 996070328 576381384 806910425 111102326 29385081 825197368 281285984 890269448 740120257 985363506 688960285 892533248 355282089 987463903 764745544 862819589 927766233 945685702 161383028 59470346 768154751 874444711 969371908 748293803 749064415 241993713 54389539 504475788 267997569 290084493 423195168 781144918 966363538 593684968 800452320 948225156 237042051 931720742 772053980 217323382 956768388 476403627 106785446 599876864 976035223 904786854 865592891 999188830 785422777 994510786 204395766 911269547 893758606 904522958 215707004 146269105 419022936 930515628 365503997 168255359 108233840 765430387 885068303 884495234 263170898 845265787 376497831 927552752 576088805 90868496 910470703 57384181 811983220 194526338 744512058 332642151 936935031 815727849 760305098 763032204 636893906 697533442 208821760 837064472 854231693 805135144 880033087 872768978 221637205 468530404 846403880 739252248 778897044 831630095 749166231 946084089 885270058 529391896 807765602 889581086 598320263 932343322 791770405 776786284 88500862 872293861 509282834 737647540 904539313 965401887 947296895 562314631 798243727 687186634 318381852 408120081 480001377 920813643 922971149 801660454 343014505 877406077 841377043 602453324 930946032 696142475 521019346 824516294 120634294 573742079 816520986 19584609 919238783 746287546 809326823 996247928 599750208 650822336 667615309 657369232 979280563 397075273 466198774 97554720 864868822 953606015 148963514 969910761 408432308 809387043 707539945 513186764 772944543 387722435 594302354 233698120 887267695 954112634 856223122 843935716 765415620 315960948 574809642 972959001 910675107 807907885 479593766 177775723 875933008 845888133 983856503 228056233 371511080 40266137 709881350 605635731 452690649 693314992 449534261 177701626 336698254 187921961 427236899 775254937 463662901 481667498 898450659 550631548 367013288 816254390 10754417 29074600 974897544 978506949 831289556 711761842 691495206 238423426 905268774 954258549 273817464 978231706 965525402 791980258 161670740 229505142 738801858 93884776 206035822 57006815 969615452 384105965 986468063 314732474 268154934 763979348 757866451 455640518 538275322 810545058 6807765 755370677 66636734 905042081 898503705 853037926 85582779 272553141 839623789 819085410 4791186 685882159 383743880 484944413 270594923 98594098 929755526 916447909 220764367 528094183 947695293 515321937 579422304 973295056 746453114 825436369 877198691 465326466 325582752 663597326 994335054 948243005 942756091 906502238 2953295 957224938 946196775 80642837 426548979 954566855 174001831 595742829 811597554 483520954 905509996 964961797 879354314 781912634 505597713 196642127 127537490 826130940 856253441 771028738 377409017 979697011 176346878 528293662 994365878 38570679 893247670 484568792 543324179 834580581 890507357 873373156 943808070 103532674 963935562 803845324 903533994 2574502 816976971 953461319 975789440 617978240 928466451 842360226 903746053 985053953 292127691 737020247 983793042 557539312 460535212 990648239 537279921 855320661 22964193 757572660 351482239 835534646 127901633 908344377 761774219 990908713 795829294 969539290 597219011 496592770 519308065 896093941 40862230 951294228 690145725 308699842 599423025 269348539 935064546 742786599 532053041 808045902 305367435 305737702 563780844 92283378 67361919 931380842 953077450 654046378 816625479 878798286 655053570 269380250 877598828 758247356 884823681 38204635 458954206 759728996 37966748 520128599 942922240 932439397 567495018 767216887 869185543 854077457 429218172 813644302 350467142 746007224 422974212 866971394 980465526 343568148 946164081 684342207 478898118 223829073 641793246 748137219 830139040 556943110 770318047 302056071 124551768 948429296 831715795 838082015 784180725 973258619 949549554 903670491 670671242 857616220 906533425 624137418 772897473 574111223 866402404 241526541 160452944 922858764 242151795 812597070 946018035 662427760 881594147 654003855 744378090 792572289 763799702 496280810 20860224 756241920 643845506 195344311 966045201 519805617 817530876 533680759 815315489 521537727 419782312 385973564 427790806 379514118 920830083 989393919 432757184 173794869 840264922 740973367 474427982 750143993 715230788 112223317 886074651 888613544 951785119 875791724 751213400 854206751 817631259 799531141 818134795 813646487 992794951 317425522 895412167 738541421 519625518 875097407 553044561 710836559 166208606 853214925 780599967 798940428 579526058 635089118 629483498 602936968 726514345 491950876 940357859 399066980 954478152 986409846 457809500 997654738 162760417 722025667 782240899 115339914 1905027 763724562 773280645 982205223 796931758 738269512 971428391 986484553 517065846 534709727 975346369 183562957 944695555 954932773 848013364 369788723 386614917 47975726 797374776 545988216 845268147 941607848 958243903 21457647 597087582 134222124 940529568 123002237 359032416 10181664 854415453 189740682 550641474 467920667 972031719 197045780 580091999 794721792 838389866 190463678 966806526 822212932 899219539 765206031 806531418 829321117 100178234 799650771 869680415 957213858 843740998 838279407 985570413 947795020 848334790 401447034 307052432 185564015 156342665 864093473 116484126 36409286 999930619 139609317 587580585 703835952 861695651 341481249 848152872 796633572 89523576 262317979 275411961 947880042 933486725 143754598 871132402 410119014 822280346 640075219 701128473 944861361 804562466 197797103 125002747 269147463 387430700 763401371 668382651 876976693 877164243 967079281 307302125 752553410 103534715 869849478 944313991 396014784 303811050 908603598 672323824 443640456 843706160 74067424 966210777 585109127 534909446 122796165 730117712 777108711 847999888 856745784 504406736 248862308 441188522 732999878 950424153 472637782 788876788 368251816 999338172 972229685 823733258 30176015 339843413 969344651 953760996 547879820 875724714 617742444 149816375 750342758 76930581 780824596 859717389 800451328 988265898 773488439 914880643 711951477 319812685 409718538 395200070 983281841 916352258 805104720 183960856 986919815 514137595 189903789 65234509 530170556 813738730 184319367 235877582 984605250 372720977 233431574 229433514 846575761 937033657 33844681 608652536 865951644 655873652 906828790 783984816 111831195 408450066 428943308 779722216 112157129 161276420 521800825 561208026 248748309 917823513 997146765 852158051 36601272 695521172 803247948 366039978 727807671 879076980 44606524 753460868 770739133 859616796 236663126 971843381 675482704 587926700 730368818 509254794 477324282 869293858 593668124 768488564 888625197 767715887 439300211 231336681 276604562 989062227 790996223 907729487 953328548 990194739 912280024 931973098 957042996 462008211 441569338 839043983 319279031 343338080 479041014 925493713 840615845 584026737 827244970 37855782 347436701 975345127 834060812 832172742 824259076 575271886 8117377 988589115 723375911 196127367 959499235 19038270 971600833 771012692 392854206 942431542 748822895 470741560 895756584 307235000 658577513 113271942 708489129 935540861 862792444 919747156 583144937 893688815 991261897 802079966 304715231 765060804 815761961 227068226 790990902 140565010 146844058 346611695 448680985 821787454 338828682 114392671 259568162 369278827 372645177 790513719 504682840 876948584 923198958 910210299 594745236 140783458 828562287 457435038 664327334 880887413 416840179 103732730 775489723 728648899 878605497 824728287 751411064 845730429 290323354 440934780 838355194 788119713 848776164 898321878 91486383 855505457 653097711 775896411 822857906 196631625 977058261 528856253 583957279 323743731 584270664 76263128 986323017 256529568 781030352 289482045 10523025 450430777 371247500 767628807 785028894 974808614 451942005 317974566 928254874 815706445 794855872 800385633 799644126 65749951 986631933 943576580 211316996 787941370 756484810 633661257 169905875 11583381 207938907 813625918 297128937 158389081 890750626 697728517 866630261 871917665 933153240 948443947 641907706 902272839 926146773 952160612 961444357 778073112 845950513 962586758 455908973 748761936 783209275 105651504 814668311 123793636 317381592 22487096 687065094 179421071 534268892 146563115 176364601 943715315 603823380 139763874 597177492 916830687 737020247 935614101 446196206 787920235 986933657 718689115 774772744 986819937 33006919 791804657 592307425 644389940 746348668 47557912 815872915 876512807 396046458 973918301 562296605 923034032 729430790 803982467 871642871 941879360 895452525 399467916 507649515 443627603 839601124 750194941 989924083 593146995 455498235 418295414 860849348 547787425 716315810 711520611 544456422 963262048 751098249 711614461 853128826 402208558 387508922 96843370 945520774 764443883 745738181 441357706 817408139 66410649 775596875 759304781 638917536 324527298 294992533 856693902 79925782 354441681 663570998 290821461 38190774 594599296 919874143 585414679 919702478 188258853 839962019 852120014 755469200 428270932 991387620 998401378 855327610 922655013 990126900 794296482 953973721 856381246 784593564 636836779 968403916 763939018 901973456 964101023 701426068 426964980 256259807 762433166 826489206 831248599 775456869 798869428 255048209 247104375 841295797 279267839 28428956 37947365 887046174 30917023 979583767 554898258 109459757 923029158 859195828 79532969 954100517 186596362 684627073 103959257 922233583 796670200 822555553 639776296 666745847 229518254 766756581 625648613 154274650 704273457 878015980 878119392 862527722 748477212 196817006 59148500 901344813 715857953 663046208 860891705 799474880 766653839 990703243 666052772 963689985 867549727 933224073 434751026 94598049 981968439 930813764 820053885 136635896 988641107 811018174 934616868 193150402 505796944 965240900 936963511 69048847 42929078 936965746 356794143 931661467 681694315 15542628 931149482 898874079 934718636 239082638 760258953 16910113 992699606 556786794 892862364 896299191 745852157 782401455 759516352 966494552 393283503 906112734 64609380 501007821 819389300 612451801 784591700 213300657 52085070 77433370 152682116 938101873 317335412 368638002 499190746 434441059 341815607 340784885 189164183 826755287 262672974 796140369 107797638 360566815 43360867 924607245 575538492 934334349 673219813 796702472 947282938 814936094 992456501 721788769 596697212 64891375 856948507 790911520 893037125 492737440 207467591 487383092 151277497 633779890 821890405 489495781 816561799 466014932 412237149 490976147 883290323 155126982 221451590 996770583 998209489 744128724 443951178 782762773 950668713 710138340 441954782 157139075 729982640 959626900 81720392 367864576 814979727 635430179 311253598 576690881 914674961 648780697 88784217 871534278 200039788 128813393 784348376 461264730 669075846 916710707 873608442 710057333 642521356 879395261 948078694 857025157 17560584 878174301 514122944 678413769 363114278 298019929 484303843 455520278 691215557 760443133 233929465 877827516 702747349 927312078 920335768 912232073 390413214 942848977 917267000 739047575 860203224 914053881 546747132 169778982 468722757 510582172 960270570 337825087 314160754 640147033 881599493 290852993 948781880 570917254 387236190 770929795 403844380 881181813 757804371 382052328 964552502 212521455 821206363 3384937 466552437 908832347 982757270 958758512 989502641 752071110 795522309 568519738 265445317 798566970 106544010 831407653 365995928 73163455 334058725 413511823 983102363 784877710 768881902 67277088 937308180 975777819 445448377 781508153 956920436 79930090 748441155 139308193 468657673 781880842 746003841 900707977 116408478 851070275 876345700 503597771 117807169 793610020 370918528 921201917 948316840 609457565 686160386 954067272 753411802 991920115 885616232 416250698 763737119 791075696 135616352 812504529 911290769 329842638 980351849 915868280 148339487 939120413 761823696 982527885 949181039 890855040 692483618 555522220 767190051 814895732 488174437 929810801 428611239 542657441 970032517 790331397 303219543 891197429 492512761 270451469 554992143 925520920 813568286 558851318 39999982 402712509 918896083 809179821 413828375 794209271 710188710 992288589 897033892 517725826 550407871 66289578 813409473 762797443 790087349 638628658 958930949 821970714 69530898 954813438 417691154 382677264 816506828 856326670 857776937 119182600 310080274 793549489 254373636 96687241 782846980 750735189 832864738 589712587 310207297 787631954 741707245 980180181 895316023 721436770 9845658 109745835 369030677 839305471 933213417 870535284 289714801 124316335 788192002 906475170 751753892 263436677 579622224 920469290 751704646 880601885 828997379 939231661 888102123 290970386 965349569 184796873 94954093 913410969 920537188 743932791 817757097 596314720 31022925 548863042 957323038 657628208 979659554 902802691 103849932 356212991 935646528 235456962 592207204 824751040 250987507 872125368 654755996 203112963 144747426 953385645 788889234 917142010 634759447 845776104 886936239 888410708 824949466 886456143 426266498 965266424 600419692 786123531 90101794 855683901 431223022 748194142 27601378 283534457 805367184 830926369 911171121 398229337 607537961 591960609 751832570 174218892 102479812 898057605 95616924 946330617 441785723 848870250 995099406 875648764 864422706 674865137 903008916 969665358 9852650 386105350 579934646 239799168 556460457 450787484 406400541 386254822 786353426 295624358 589616393 61248746 866001706 941396930 737020247 879872965 510454535 3155114 912053454 40158436 33144363 648433193 72267413 817334468 849984985 757819213 789323344 818613714 203563663 619760913 680345107 210227170 536087704 91845791 361035025 762333881 903904086 264622282 998440320 978326171 367065125 521576777 155029781 778550710 576536692 897877918 920350791 991195284 734814969 972998093 742383676 979500184 548943974 799728977 169668577 422852037 762190414 874062888 238382215 851857338 914830610 689044965 501431146 845751893 887739842 739412299 807341665 59009646 695085333 359062298 763930685 38680301 735276750 897214687 955403563 952113787 737020247 460063623 963322120 905273420 648519621 902227223 953287713 996663427 927863482 855535357 163852311 910902878 205876170 970685457 791775126 351146437 962540558 152094061 33354976 635493459 935719458 510013384 936113594 335091777 520779061 761925539 70054462 839849558 61600835 605466496 302588949 62472897 669115720 11748151 572213002 732952979 547434204 836546446 894141468 741777781 749242245 962399199 959745579 546318492 465941835 85203581 410561797 871187068 751320959 800565179 787695848 973255974 16070277 104468254 392598365 825008544 319989814 956050911 802484375 848470356 938365660 868554295 743483192 471018833 602582148 790967232 922389311 584910669 598845995 115755387 629204978 882448488 346338674 169916346 955025269 135377857 884989730 951998319 463091587 176993119 843848946 74174870 840482934 149313795 3155860 101083107 891540519 164231335 545732841 851377702 850938072 540758524 947359876 140379417 981249582 677500396 815941649 842005754 689983345 395156166 802193312 996215322 560013478 278907046 861922095 883588432 800158021 808314247 973281374 817304977 600943557 711184323 751362085 855448010 539059438 978016080 830517693 265067527 903723564 548174638 370436725 981395303 341323757 910073796 885302136 594655951 868186925 943284032 260663682 740421812 851840491 818851688 471917626 762478385 584941506 220949045 623874557 995112700 826331109 846039925 983037530 907851015 847918771 418921784 581326622 459398976 459096611 764499966 753822011 174095332 172160257 991026983 552033735 715631228 917018340 817812550 930043955 484014404 952444849 502807443 991151281 941359272 770363774 424547486 859916645 805921906 942969858 480940657 751915542 779306843 566665337 853695224 591168669 391132679 864798587 762804151 911176441 574460787 181908339 652071533 980030782 2283230 157967742 935697058 991559408 567988385 830924370 775019721 948335878 79822091 434977327 146929225 905578112 989436490 600405352 608417620 440154693 282759173 926419008 964800718 528876544 4303957 790184195 583906339 855006976 102035145 510287345 343592016 933483640 591987185 526726421 921897368 865937680 140893702 251398072 992863863 747160899 317272978 154885049 593788282 674844264 277604848 166027834 780184563 292882859 928637561 9954601 774762868 882376421 456104844 379498107 968905319 865159433 845364849 284013704 656126997 793991627 973449196 160474863 875864815 254056621 850229505 209854061 997941470 853439919 941629076 577592288 869910543 875401919 775944648 935706277 566829131 607121406 566294373 961528677 759049719 428863497 496768443 512030108 775964797 86103977 374887078 957128108 969320631 758569769 756451233 190506348 737350255 743013384 849456765 348676588 957005794 918262527 516902665 977730089 923883047 513514119 866620789 786312698 767289199 703628200 847940144 920076240 681835605 848354972 240633171 824205476 582208095 698753309 756923859 759444702 684868354 205022725 943220855 216785459 406092189 773347502 805686905 282499477 698545685 754369162 490542611 654874866 105007938 876211503 434179252 967848939 948577689 469167851 749406671 233671216 173878721 744780462 816478999 972022420 112499456 39571455 775861311 939900379 794992576 78910610 462583640 133760888 290077709 841435986 478724881 277492430 118624366 988366650 770447627 493383561 662433863 170113036 528777870 863780441 812056213 2052785 411398824 891851210 803664940 244110763 678550192 40876449 570872951 458112720 853820188 312835580 377548113 880942298 314194712 118841607 63521680 844444977 852310580 572523695 775249952 966195748 932478979 996068335 182060919 273308354 891924258 912228924 894675325 376498471 691864622 465946447 908005445 29008995 702184736 913566755 314998758 256740215 656814781 674499990 744345280 973166896 419313504 997880785 811857922 834858981 792354327 872383421 275619888 985431672 817918816 981823070 741435245 305895450 890507023 163253147 201068892 737020247 531317560 749714806 964949739 595328434 863209802 985704891 885415936 588483737 348427278 760505012 310859746 759129488 903716793 209439870 373705418 973640327 212757590 632046466 835827050 628795543 930972627 637243852 271956274 930444330 492671092 834254425 839827663 639378411 423390275 990568213 348795344 429237915 949493220 831087037 130590682 864630590 762163943 737079958 821901490 445141103 835881776 978288574 943716915 414492622 190144740 837450875 17189957 744760900 354767346 741333852 149594338 766606044 930659010 617020340 381651708 354026433 777240694 389435616 871511777 966671379 424801519 724582632 311857091 259089 972757601 435976218 923711889 419159771 786130809 579582827 980828426 881305018 162152231 840001824 753120653 957752703 491575306 173271965 486535279 756541260 808555816 52949545 164768549 810887837 838345278 854641403 682268024 306590557 428605002 682650145 174011597 350795091 85643553 964215189 806364231 160467587 302750215 738108433 432679992 610710834 57863398 795252260 503042670 981755366 461910551 363624946 183699021 669550106 99811504 457066676 526382138 132670014 449945594 455603871 629229549 828804928 308384792 159613154 813562319 987559174 971088363 697879816 205337734 13661361 963121746 127813153 847789437 88317661 803346754 681329021 909241169 939932414 882057051 628389161 366562738 167272928 970902992 686302885 112478118 743450800 262903962 764633297 269612236 822608513 847438879 894868339 928566078 290461832 930589759 914551057 607203349 575678739 883732877 953802453 740924046 935112924 48891209 195887839 860267708 766436218 519914403 593426457 896144341 51514430 884145803 619692606 827099519 347797851 857847287 720360156 808157297 896958416 90910132 445718587 649132122 830557729 263829328 228608416 91470748 904775565 946456220 109978682 74175852 456478979 829458697 735643367 886411832 24281211 849596737 599725276 778084301 881360570 797853052 467573412 953462662 774148155 817248093 746084501 108595686 401501261 831036215 769749195 934182490 237690837 666237763 931368828 425538508 870299750 45619095 907794681 426304966 503420956 919652386 701393110 372112095 752200558 627545660 882205246 234555617 960391522 937481675 836289600 705479799 937844001 94056161 281095527 862291060 97176707 835496159 356722236 985536447 921964236 329391558 267212642 934570270 601449472 934887444 265124499 725526705 236140664 959251535 696729519 870293615 813901558 172951500 116874256 914000169 68966653 842281828 526102738 932872059 937948903 841619221 155360601 859518702 917999514 888087513 754319625 253052609 481622766 648068913 143858652 930856700 856529462 714372584 820691818 861097274 750848340 758365985 365007374 994980359 852458792 156101869 621324557 815906347 756461266 222303810 27827993 830417599 849553102 517669242 996853547 991461447 586729099 910039523 583692903 830749951 34645030 962852615 103629270 960744402 750974048 955520825 861187627 63486630 779105371 322183445 590202479 889483590 137523048 654488120 887637726 832177980 48817338 336051671 321827310 97761491 983459560 124181299 742091310 912880898 841274382 875253700 220890315 285962580 816493973 830175018 702512753 995828803 946680165 527125430 932027136 877460685 76889963 720504858 798546998 948678541 667264959 998420147 955361381 998406204 167998704 861140768 944779404 27102214 762837016 848384377 111182790 333175825 831258756 127035705 454976617 502979531 978999320 810641787 622497992 768281114 938510633 968462826 796130571 795649914 787226299 858326128 816334618 461121016 801543088 479956431 483140485 550804436 128242370 926938745 826059566 853615574 956205598 815984657 358243332 987351493 773474624 97469928 891825392 664463710 671613077 263144512 997456148 978546208 779096288 894643717 747046201 491100885 582257566 915139805 519075812 457312505 204584673 284090447 213569552 36066807 914273068 925281228 680535331 521357104 207747860 818187293 981255960 840980827 765277809 829560863 940369392 592699127 184938733 445647870 387900470 380534904 433402396 741426816 858819226 657446528 767848759 561240556 100981605 126433228 283269872 379065630 966243245 924490140 915657280 884023775 913115152 736710555 35358711 332582412 909207970 789454842 2576632 778580064 847403992 182080780 426582610 307228168 486872647 255328934 767708080 973980921 848349386 304212277 384411149 29337893 126000067 839381333 778792619 386690467 628584067 864050819 982257388 891084672 894844924 495056376 872156978 432502495 900451558 826567514 977910527 933370044 366323701 43736490 24854167 84375013 240508513 764233651 830370261 61266758 972032123 884506415 999785215 836874440 858868402 826933857 644675685 200619189 5867369 744511773 68587149 762597991 854230964 773291640 693363035 306881557 782434851 849666746 472231460 388149892 488142921 731001689 869434101 706417724 257699832 739588289 167634598 649349355 985358150 72889041 689001827 992798869 552481585 510401905 424837004 139933619 278076441 943467481 227275942 589240783 962886407 307956329 911724406 936332260 609506783 934274730 837761960 967780418 905679498 793863358 51756354 88524405 277825056 568750006 818158966 228882369 826463769 284429391 975457928 245521917 527482616 877021499 85435341 943145439 878217930 812627524 519346581 321554510 907237882 645133184 366292894 406274869 843430857 844705883 616782337 658668731 881175367 526200586 453122629 709462700 968156550 259934987 868031236 971362562 465832461 186131332 550555349 493670979 840901735 899373771 343544951 922639124 147254416 132783837 342672070 759173657 637277212 603985269 849823922 740925816 776283816 309729349 567830054 869125317 807860512 980814418 163310769 820392074 748641210 810406852 922144601 361544857 963973749 886953748 880716848 686480597 792848858 697780964 72469591 956829481 440579879 233332401 802356528 462480466 802640814 865776175 777596694 391714482 398666476 881986013 981405645 994792938 968410939 917203319 960064074 274291930 786346076 434914256 212213079 851457353 969030648 660505137 385841702 813708487 417082763 369732570 940638695 45256035 723343123 922426004 977709776 862055286 826790949 778537211 288149982 801220621 544328694 637012848 855210183 567479620 490995651 968005159 624563559 813541241 143082940 852398946 220818980 793469645 999136328 786867543 440902849 386879782 819317559 890727489 992109897 310308657 238030033 61265376 955255981 508574433 447636432 448311866 568943561 103445745 284052221 180578930 912306132 802910881 483466103 969715308 870451600 193640413 569791788 809094426 522618291 425849317 963571213 467704177 790123126 699983845 675708406 538866379 785169260 920524482 914200568 806160698 749521351 654812654 802827794 692326927 702854151 786127256 193013695 919314543 807076967 387918685 679024238 402914044 6949100 947204353 96456723 828437859 802113598 937316128 438526499 442471810 563681857 274773116 69081571 963674742 574624598 294865936 740070858 827334827 948724617 555787313 413788082 876297181 472239112 27499730 70792036 781316559 444016699 35732214 803993687 757591195 737824763 969578006 606203688 104413969 204301698 225597339 837545745 858316519 897672055 687176747 766187141 814995350 522409268 840882947 819923742 199757730 977371867 789996720 696013547 429184568 122821487 759011218 865723567 909712237 60572760 108759777 378713156 789436719 904109129 18504226 659950388 875232747 937848190 974252301 837510843 913920642 935529433 458842039 618360056 642616664 522156494 908040848 801636152 109968884 915983019 867919278 811646388 586632908 847939774 94056393 684564265 849835407 7513311 833820394 138944501 254649654 907933850 951031766 585688135 274131550 960607916 962397184 496659806 833759537 812032526 900548561 887125244 860517339 710311298 961824518 827840025 436789521 970934530 869738038 195483123 864999634 199803272 36597966 827667051 903165151 423590440 380693416 292650711 754326739 837327142 73786301 683331507 973654143 538699756 146101727 734057098 745199008 915716633 227086742 371886156 747976913 546149014 857726923 255753275 163727968 50919415 874556458 660472721 360561537 397152769 756719695 903051461 11797478 266168563 715372319 761372710 889495023 915784460 736295230 675425553 983331838 769949766 391294872 381884510 625143398 70973288 506257970 324046521 419283366 799319240 364580180 301259939 730461141 770181147 993873315 892125394 748929181 959285761 774070392 299434854 161515213 882149455 3202419 984019536 165545613 878069994 553190602 838345047 138221714 903276783 122903873 210975683 905786952 974413866 244179381 899255181 949659710 692440357 911632607 186483322 924597831 762602785 757233918 989309226 749735505 20081764 846594407 288670596 47568843 943622741 577661326 750291211 424578203 796542189 652246064 721565280 801475111 921731612 239572575 415165456 909713390 941116074 384188899 556008632 942555085 823810591 459035741 487924313 409421960 933427558 835460199 959379681 950483400 281389668 547075309 887264598 623852594 819151327 871655164 883129412 514099324 967977954 423186537 755159795 327500252 888161703 570035043 277245502 155601757 577764199 766423027 111665803 4417267 104634127 779219732 983235288 906630316 860099492 758214662 846574246 414915577 791070972 631843497 859883365 814281759 261428038 851473908 656922602 960224935 421175197 819335857 747259120 810388204 134106419 337325958 721525855 219933531 137327985 670234122 244353525 459556765 867999903 802654708 420935258 929253455 831027635 916566285 131634990 810092331 97443102 972790191 907956556 49005900 898637288 466996526 475022806 619257172 573896011 929374082 513832294 910880303 262718743 942123748 409418642 521983149 953885673 180576758 749222834 718360463 936590519 15382570 877208962 772778742 917489610 951611466 329520629 590601774 363285582 913597525 518511967 104196149 163346331 961824205 614516145 546277062 815770140 790557278 156244284 808117198 967356670 779332522 950898026 773155478 526364139 540652609 235724773 955255691 773853263 975169079 368317977 773564002 800569059 671832446 863839019 748570702 673861523 958248862 772714457 147780075 811845990 748398946 768423429 567643069 743469730 108498980 760728372 815387708 738560488 284382635 891249501 238868490 777431929 878742769 681064435 842730451 743764707 42244913 927687141 321135711 726356921 197176869 48332769 408272099 821112190 968122825 176476196 611727425 812144275 847026964 406188659 394651566 254860740 34059233 938848142 162019888 923690412 810598711 357924233 885349914 15902357 880468879 485843138 758145774 442333188 98600470 925662501 669600622 394086722 274119413 999390429 786113906 794936416 602506170 451427864 723952960 254082160 516290052 564310816 892236005 673746478 384015812 761832802 844397602 841111196 853638799 765743126 353393229 813652093 780036030 212505247 851305124 508450181 972309577 81295761 889541991 673033064 433804652 778850829 892055716 366718360 742531406 842685758 782116013 420734300 757624567 890052895 918852857 271327743 982581072 272452374 123445710 55252029 430439973 531832584 532510602 771371328 226938940 951831128 985527473 40890436 671535417 51724034 748697974 389834264 458686574 805949027 269111285 977300701 552249060 303407354 267788362 316614566 652010318 592649056 788079300 912667247 188491581 773261907 997907843 60129400 766070014 76246980 848684833 276450341 481755382 260638723 990304152 230060017 795409392 980750761 214123116 542990041 922045116 647890254 643771945 427510024 276155850 401833459 589841840 887757055 841431744 129228170 835099411 908045480 101716311 608459476 838818789 438148404 755004379 171774051 807478463 879059148 131795462 961409172 910614191 479924571 261760390 907207534 81420943 716891704 886644089 730414740 292302838 69240322 932176639 922413259 91274666 117988587 907928590 928587612 752509925 734410156 774327696 107674497 791807659 791424652 894748017 749749561 438153966 911339594 640444028 775933505 814852435 611761093 258672853 616683398 65448366 960888222 766159982 849903244 884763418 809654686 514813838 93126073 851715435 804244697 923029621 861639416 783889897 9287694 994399818 520163728 58419215 989703356 175296450 797785558 658491301 848897791 33809375 796191401 888700214 857167621 102659540 817437386 940568200 498569039 573202176 748791820 898191699 998659304 968828981 798887872 389390954 847453951 353735161 877115678 39434007 935672371 110511999 896821001 781413603 505006577 752095098 898740253 837564506 407827877 82691800 64390226 926079541 837185830 420093284 42233477 181670866 970818713 610397502 791188074 230152027 354097742 753264364 872634989 563527281 97256300 790501967 975916868 947182320 525915190 817560197 982803232 406821149 842573887 881006825 325281403 215312654 291624072 837481808 321637270 855665028 561053122 738239158 870954126 924259625 625598713 920904402 412193276 829960932 870787437 974635090 763195643 310126927 128957764 879025259 965144594 458979837 179498108 920854324 82108146 743939818 907636822 827258411 431838767 781722288 524225368 377588829 288690899 517429276 267662038 820897515 829805619 836720296 811082778 873558849 778087758 971324747 809721412 779143666 784404248 872730410 489343726 593787254 988627028 972847010 646580720 894628161 172287009 905528438 42674605 199330235 412070063 618273241 739004823 920059938 875622114 839137148 531200421 740873339 752444714 802390812 898663478 968594299 748458776 263389744 342208863 815692325 986900590 828401122 972346143 361074653 829589479 933480767 821879542 901649426 618466326 882893643 906513164 982685686 927946621 869890941 894624280 739362462 983480433 922385573 948282656 248055499 321219995 573121119 306021653 738203474 492004671 685169445 874114509 827677255 415648495 377479564 152866619 149392722 816550951 970007318 861799067 574086640 686551355 775499989 904190354 379986287 852225945 78180559 587137072 991359900 823468408 746605329 274343299 768836575 981983476 916129367 939989665 769335855 234966570 171650263 10027700 12572776 826431970 254628415 906295164 852772962 968696492 775980129 987435942 167633458 794079274 232886968 8595415 951687939 16488071 857267804 856677170 991692586 941737109 273372146 336645814 248614909 750333868 783327872 783637718 990597423 792852538 887074471 327734342 812531203 657498363 967652442 880307301 988299989 836207931 402279007 774734535 390912291 765514306 610743335 798114099 124129237 856266144 849409109 458188512 960410154 780607185 892408284 412313649 794418636 168358429 419863124 809921839 549181173 394790951 317150210 367955237 918521852 548391823 208853947 688962463 746685010 738152368 802368930 845573288 60341743 846445390 196918595 770740620 945511116 197581082 906409947 947043675 335329041 41141195 955970578 557415041 610797115 7162256 629317653 216192102 402839259 100386278 619959834 812400425 870483259 742471478 286720246 891581552 199053457 366553660 883659425 773017036 852125993 415984432 760937205 958552777 948651517 254271041 398190946 888037968 20625798 907533411 263690903 163913760 841835836 780268332 899160845 862461986 991228159 96914659 973900488 576493647 470397616 583758742 222935216 532988904 939424812 156091760 931368501 559097842 959751077 194767163 859832295 935800515 804000369 945612609 848404152 764783207 407326172 987109595 876688577 884789240 459551263 999125978 885880603 746046197 666036790 762564287 122738367 774500517 544881458 136270194 942894014 992949044 525202917 810183483 45304767 156680283 894568294 10591804 749258182 783852379 940066103 923719649 181661166 588998620 770271643 239897035 68131026 173496387 914592940 915491111 597286065 951483437 253991308 919698009 832555648 656848414 34577627 59511525 976206590 350802413 916428434 925738788 765657371 922668993 149848900 721530068 426210541 764034212 728612629 909176376 990646466 893925662 771557701 898859225 779442201 919485413 167277971 670614102 732524703 588651744 521480147 565843127 814440912 758124883 979371359 339101915 316037557 355965942 806591088 18335046 813430016 912520462 415495712 794758871 988256225 745481073 824240349 46351872 369960270 829658817 743210901 987755514 908864799 747059047 759743594 598181657 203050989 753653800 689163032 518252856 422499144 994685244 847692821 701005689 788333125 47407764 971379741 756378723 47414015 942071864 747987583 963923389 660835078 911261238 996916948 715188289 671284887 684003586 441945379 823547670 687205125 909602648 987477818 900086613 110237854 869280287 398360602 116846257 201293069 29726777 835273877 630514255 965306247 711712358 795587808 441380759 836101118 509147988 97104138 767357680 828238407 709806962 743665025 777516827 851508549 849041626 483604461 784948662 163809866 977256745 751770290 861079730 882087201 967538394 775841493 536233416 609606013 745386012 765722509 685488975 773219288 263298869 539804414 164656077 805345117 618323034 390751158 418656011 942784301 53264197 931137234 756378063 738791941 909003728 652269154 402891260 277529884 761619212 796649420 983099950 817864465 763092970 728669839 518904392 119560269 136939286 484959160 917604669 986644289 892052302 203964835 200282347 739414322 931700035 873721656 851918689 884816722 332414604 613005016 15711177 461156818 962208034 51435411 867790351 980232554 407397054 719289290 768242588 884371136 941099406 154298486 814006178 785425451 871991980 981480243 837351300 774575011 594322612 917735896 629269037 796486001 755254832 989366817 598417568 851630363 992099592 95028916 281621187 983134600 417210153 933676395 785054528 353082625 798766667 918877288 531631987 724366618 469340289 650545665 201735566 482670469 762676171 792970405 874355656 358319840 152806740 646016686 705680004 875663480 544010166 549619775 944996890 882594609 633998216 281994553 360196935 398355064 812742216 393756234 763748271 994316875 463965319 884883920 824342682 953078930 888359654 427579058 812025931 725833637 816954930 710658566 918693573 861576807 826250216 95621831 898756746 904882460 296152110 122810258 718106246 490373500 562941037 363550492 771122106 127151026 403628327 404561219 878014831 466973310 906814558 564478572 539457665 741825689 133304882 969578836 925475553 690985583 864911662 772415251 190512214 516461822 749386665 849774740 58793777 917462537 931519516 750865105 801153518 171058601 247343446 986962793 972431668 876759772 997352358 729775563 790572340 641129924 872919475 670436068 905972354 256082494 898575081 955480234 991835392 401931291 275120512 555272263 612195109 146589289 307432578 182254568 676553929 383414273 206385942 965851033 956485457 758312924 301400370 798696459 89671707 953379820 803848044 625893108 119834390 741585722 582594923 996419511 960095285 766878534 934894370 178804925 543232097 769831187 977175784 841062894 732993135 28355315 818787810 188134612 31215503 663326363 933315738 35204353 973418491 199822289 772488731 466831036 962167990 868702143 960161933 873771457 805104327 305956315 889739875 568673180 636643538 737020247 697931674 198587330 445268228 596702169 998179354 861499166 967255397 974897576 92185729 642273159 280900534 788500744 782565824 802347147 654038967 475375693 934382254 435425135 984002044 6837078 186324564 796876228 435957580 945408678 998195933 860178799 733272296 757779274 132956554 907092472 970213798 827008942 298197637 737020247 220286582 937611861 883255154 147471912 798119350 995487661 88715123 876925402 37858653 135752768 883601715 762678495 827686861 180163228 123116257 511748188 997770375 861670941 737020247 745568954 860255877 890771875 207787751 907317054 149264031 930866316 846904661 747851775 298775633 802140211 750970979 356243702 459156095 301328021 803387502 824547870 433336930 766968553 958254196 601183652 739538959 920620273 872500952 922733313 988449001 870566063 573350248 909951635 551916188 698716220 927467433 324327261 949915658 429143460 992356453 982945000 54863698 439705971 682679866 69137608 746552904 983107913 706043846 18294748 510789642 737020247 884444955 775521804 407223119 418337901 777342926 47513421 895909048 756086577 152680562 854459949 933115974 970948633 289615654 888420773 228216599 920830953 620961164 650075332 492619286 228922927 94352869 973348266 120179937 795340825 850688630 575711689 284910179 817746742 962363234 988989761 334764544 474476913 925608310 334756333 12454026 476868979 343876619 160830525 828863177 993660953 86995392 811779325 310810799 853563201 182269202 675651462 376280170 754203967 869312924 738766566 326473016 33202228 348217785 765745623 534890595 490754989 150287562 302772101 610597227 632632749 893331798 906164846 574146202 971374298 999732249 946207796 953320908 139329059 846429397 999646870 234024781 518423109 178315938 513961655 875585731 834906207 332579076 702603413 750420706 318530419 955406055 956225072 895861846 882306879 758004120 167049728 918685602 750799298 946765637 976485579 510711060 321391431 824383068 264520694 889972207 939968036 975896836 122637756 940896240 873513218 741965383 274319279 784770795 142750497 819117180 761796142 363898648 990285950 31205033 649825515 746413277 156522563 933681116 961014282 859659784 911931902 828459042 768959225 813458414 816616477 838038617 382570081 713646720 981518039 961050175 281638451 844910490 760657317 670572168 964345335 83874833 768047683 945635604 673741197 952197047 861992689 306757723 55986124 310767964 52689964 699942825 143830792 906455155 671841518 894097321 897713821 669907503 779231505 118850383 754986102 550464616 628995889 985141738 752203062 7904727 720253333 577056483 290732317 321054249 705963763 629719076 177550852 856725029 410310863 422635872 183133195 859646693 278692741 912519618 526707449 70901720 819014608 891842256 952096892 136210507 443871922 475864515 563323983 408809164 268541418 515685794 739548318 386620376 105889343 311932611 589331034 818739378 251765058 906071270 383206957 825024660 387028861 731858946 295577390 839011560 455435665 256737973 85140763 723985028 426996806 783898440 761018872 919435525 450631493 100628308 984878177 180138911 972119394 175959523 811902756 30090433 938112119 138121792 392142712 380996814 713374675 917099131 57092387 140487359 810492107 34031449 829148748 472344538 851290094 762282623 985827409 900053548 186531569 598986887 779391003 448597083 184228438 261624210 824494027 411520885 528319423 186652456 993971056 385468251 999655997 401730899 259607554 261135628 793068210 748253256 896217033 752185988 610785754 627284311 359335622 114397261 947045941 204559279 558860059 921819354 665670167 905587409 840565620 771435955 969153430 259390977 440766261 712501023 805871655 741672116 662545047 792808895 282539955 907339310 98581794 946556047 984600518 431164962 970003889 301095154 955919093 612819107 838532033 165854368 2844781 427020337 985028325 873675217 807775133 373125620 985359794 504750085 357376489 82391964 106887890 849579647 990433641 366988782 966246364 774034637 116355300 98398079 167182176 414425023 761289540 954690989 763027718 957467463 869533101 685260661 501198195 994273102 869186592 825437741 842544522 751967429 876013372 663549447 950326378 778105679 737785106 173625664 813914677 753706175 308122192 161556600 887551400 441517648 856333473 337122825 789566336 453460927 241221320 987874532 373450825 344517309 543455706 780819721 958158730 658724168 59923873 598798410 614105672 240393781 393093463 402193296 723859442 297107540 432846436 930919380 637679029 878151443 840737575 847347046 809163159 174271509 881420455 580768875 353883369 396305678 849249293 233173690 585059856 929332181 464280269 871605423 294075248 54325037 231412997 616561142 750778994 951517546 761100422 828824580 692796584 88502390 110572195 939562009 743010860 308699045 440790805 74347361 473500895 819845611 934084245 408076693 782211397 860960801 903879990 502269353 376596468 33634339 648093689 650053712 982482807 634171951 955619128 732247776 671250221 583166078 984152406 669025784 140455349 409643609 874722225 644523182 233503976 404197363 877984538 198527964 869865548 188759916 757358498 322534975 920774577 854817280 200356845 634639084 925388744 664745434 38670047 51116776 751966816 980064191 45946761 791970072 190067266 691101900 971006851 616503337 989927414 492692526 11550976 942052223 638967365 931730807 587547427 615900980 892722308 986964921 272056286 326898850 692601181 980838923 326255835 926724832 947996765 502264162 266260424 797638331 866579620 789069192 87955638 723244724 180827732 191720304 894133894 920382690 945327459 760332972 746840264 738773870 26289213 924482663 246684399 955006599 15164763 173378065 651754430 379873027 989763503 101076486 574822690 820749911 905609569 936246677 615932137 764409180 215451342 12238972 855800316 452911827 928248584 891519817 743189217 199721590 791140804 969477025 690514554 752617101 160794677 232846433 768040065 444448332 999157414 602873086 754624674 242855288 977883406 705702300 664512886 937552478 988860771 741693368 817995898 340383883 779291898 988132897 375373188 59028285 173705564 952520620 172975103 599465577 63669247 601792267 880929379 535375939 903802607 755886012 52778919 76023163 999148954 789514275 884484590 623089546 823963989 441849435 848553017 755427522 793455693 727911960 987939388 770234004 574420427 861605187 737020247 534681590 505087900 917772775 895057663 128204113 3684937 857908081 754441929 182065580 100891241 488966899 811985444 854493764 897708288 194093497 757714476 466103049 880324686 759210898 879795565 64540761 723752173 130202641 871835113 594266514 297517993 922360056 43482587 168414652 112956375 814711932 448471488 836170900 798406176 923886357 751803519 597592835 812690270 71863830 987081149 928889414 337122013 836548478 754760258 182172969 842703831 640439461 922871211 880128735 729035580 734709250 656110553 868085418 379352595 226694297 156152608 778793870 865723621 903330704 231073320 766325328 925845920 242321221 317851475 553336670 825046962 282855233 525781868 368399593 833206454 986603014 901361437 171610775 975786536 453668740 426769940 836280853 881872864 420875199 172662701 891003922 804433879 696370679 859932289 496878719 238431652 980934283 971817806 734600890 575768140 861280480 961662251 759789204 985049185 167086539 685256200 880277352 923403198 781805453 918446587 894072505 56470640 810921831 210805104 935653399 145432269 897768741 793555859 541168947 556438900 971616132 406838548 685052486 808918353 915384323 888508773 968733340 636734842 308294798 688940028 790278880 839563348 785279423 851289316 748679324 197814786 886915541 726247728 802800426 775306279 56942857 86407797 16989357 887855692 39027868 395101820 85761317 762875323 113516155 842557050 283751686 335937155 514493705 750969750 146938231 209486067 775661988 456157448 944037096 763731784 952030951 329908327 728468610 231255327 303559021 986853828 816526097 764756855 494134361 811453742 458118876 834997019 532178492 210122507 750951407 349538304 906388037 197726540 772039717 615784644 550973735 178082393 773427142 345981940 929821241 595752353 929509093 509257118 908682641 808993975 37092795 399192497 44746944 565104717 327978849 880665670 818754727 838425982 914458087 28756731 87496625 617386226 757144787 586064991 181722977 239444816 777789929 841355698 64435947 858236898 111223725 535935307 399800381 463694302 423589947 351802571 950058504 959103403 962582134 950527088 809043108 703819939 411180575 617416805 495812596 755590225 794191041 628537651 85898147 680577907 894781613 678406815 989128201 475695062 924738027 924828864 833804365 870917128 936652669 407089998 361129413 237075459 675199362 804037891 304707158 985789289 314141352 891878141 440843193 760203632 487901260 833639068 196273330 603316973 991889359 842028902 325634137 558798100 746082500 94112353 828201901 15594218 218024877 941280082 641206472 678736023 847053844 345211361 554578136 913043618 710201228 671824641 900479567 740673193 750281749 994686234 337698019 22712776 818114901 102310897 191206730 417569303 609873283 839186136 849320412 889344600 102107053 128638664 756326467 932163835 626952036 361806739 75844554 843487428 991548493 734737248 201703034 892287698 973250128 434707144 798306335 370561967 409604400 358063060 995913617 949978930 967894972 571457008 220036734 790555681 390434836 875236570 856669507 763223535 789142390 271332314 373321304 986326230 302778526 500782340 910558513 939111999 903803320 689535737 164016566 800120198 839705607 262870415 856531158 672534566 221241893 793006901 433777248 909125227 270330016 800923076 525534919 100202738 140316875 226918364 938501265 983323176 888845135 617465389 902355769 955977533 347796707 742257585 11978338 556956662 585225388 904685469 750488572 854961331 339515197 745574027 837043555 662796710 145350175 939996862 458387265 775700515 390135099 161824830 589716536 403203589 803946935 300554975 786898071 661929811 488040402 718773722 544896013 804624615 947424896 795414749 948212303 728437227 415903381 903592271 116308733 367431623 764677317 875248497 893967558 171684684 986352636 731485228 169899397 348250883 484769286 703605336 947048617 882501680 185857879 759628724 810254700 775919101 240234145 420083084 911511342 649542185 496637892 596489139 338893293 596855141 158151250 823870824 840554466 883642553 774268476 327947017 965766858 614077653 791609867 842572434 902262788 442592486 713444231 881592799 673255642 968977653 950409129 76215440 542760174 979715202 265252165 507598987 653292369 839550829 677961718 738274868 245872838 85109363 175159534 782011490 277942647 866462221 175585258 253313130 858351714 73103926 923429669 586388061 396158419 153965413 763290850 762270647 133599973 839739752 540599006 855772198 217015443 516016735 967278981 211626224 8149812 946100832 254865068 852995106 248852846 994105469 322282107 938159448 942211203 977922277 785946902 913350013 868271940 246050454 212553257 898496660 906656339 847909865 677881691 864773501 725896513 302518234 2300575 992942032 804918726 767104059 503963109 600087802 411670401 930261737 817586313 351251774 765630079 353308011 763609239 906306153 879067235 159512538 769472812 52522258 142868949 938487866 546874480 768092537 47741444 831491435 942100829 144893116 527168854 766028066 935599793 949342660 834895915 53199854 216567844 815420613 872655415 922080138 923558964 342591522 906158541 616172342 744088321 964921617 109126548 782060285 773119038 143568656 848402039 903686298 538609869 809467197 810325587 952147416 128279170 467727932 104480706 798527658 746148471 916206466 680019203 395906282 313062198 965433835 796949038 881636939 862392982 842083292 859723822 958832099 601184540 920185463 378153537 972369062 192958905 768068877 930583444 247939117 443048128 138082033 945041609 975342423 741998587 759732338 192852927 805025484 234449487 495528785 784665312 887946337 510662073 215606702 164698645 9041588 802257388 845691586 507814582 836273536 76703366 900042675 925624401 746034126 387316609 147596414 817613030 668211460 862785407 589539686 292514487 778543343 740907822 782821841 375042119 612434124 840487517 423971554 96293944 209832244 516470068 646232167 404554716 496101979 258957297 48239061 964142223 971645541 818994152 764571287 741826493 16393431 454473890 504956706 407335717 738368893 952517069 592526006 755874479 936983418 771365549 986273619 761713063 848046065 839903046 276267475 543532441 790340009 59013691 973721999 268757193 417550821 702663485 683174672 535374304 111869933 939530543 793023199 156467079 993868192 550844285 766785000 945453001 326244110 726862963 74887611 267562352 835753243 277590131 959403250 169449398 811411131 219105916 999505208 393879013 138145336 787644963 1726879 935628073 926410666 67738799 780634818 826746220 172996116 970729025 973457233 709956984 149731073 263688506 747192438 310303818 962038360 907389008 885271274 972046826 53722324 949844265 875180859 678508103 443689032 872898285 315181542 13154369 909353075 825478514 548954827 894688976 436747749 698795045 682976532 832668599 796794771 143502813 967252195 673531476 691271079 631926916 206175241 2857810 689613263 896932084 459297696 116976720 386358052 950588665 738131539 984293653 900247450 837754805 499419049 810891400 909000038 406857797 198931999 313132564 905927018 259245832 877643295 665973126 36129406 992275140 12124540 164681464 4276012 758105084 785549177 335285967 901319647 783717106 763420636 166330007 289632759 249205389 69825564 472426779 819915841 900799375 218775492 789648645 229269282 24850295 572017936 123719126 770168 608562357 311617669 849370382 631800843 810770321 930621276 465190733 49655224 869389219 876938829 976588719 959701703 840499724 911127618 620093897 869946678 782203098 350528999 367889603 17896995 827602016 84166081 20926237 792384642 148789709 592625953 189225603 752275523 403613301 990042034 603139840 761754348 989227520 949917311 459195993 943259955 962429752 892570696 692997755 866501505 528084151 987100180 771345880 193671038 715282145 763387220 700840954 750161030 778837811 288630366 886625893 965647216 737020247 114906952 652380897 954867185 430998111 892147884 971511470 586878560 904803351 100860263 241243693 64230579 743825852 850344998 854303938 841506682 589076898 305386886 268169726 994191037 224410215 899526019 793967206 889261841 871002108 891508684 735128772 855760705 458975566 468211476 536509819 2413381 461710774 838022465 802694084 755274231 387557430 968208803 131053764 263701206 823313811 948926228 563786981 766606742 969945091 927827099 296949959 880668650 899748073 654761319 926063437 720770633 777500391 794964396 916865125 53124102 529372159 884386616 319721958 974990902 900216011 795184043 876630713 984212053 950823955 252450163 680569631 346843725 802716605 885705427 428376253 145209232 771019015 407813206 834603357 456069666 203232224 749598607 242078025 313551272 349631621 93253173 820584401 959758849 474530011 122003852 134066164 886403648 751452130 59635061 956874153 978319289 933802170 908838323 778595193 968869585 649535422 977631122 607261564 489407811 275837653 122104791 799757508 422961075 831557066 869531633 748900000 445415235 689932288 278742750 964230980 801957892 990473143 204539394 37284998 382123974 331546288 886404545 751143370 878315103 762633968 968908283 985797498 856271347 783335883 151637565 759370115 639683130 940010998 760573948 751042054 145682148 58901175 532028349 719622065 751843488 77317948 94504373 884416423 677185490 833714650 87024221 949241712 990718338 589386790 857610467 752775075 530215288 237988544 901218434 655071320 406847849 813324635 526789153 233229396 554762566 259617117 765612427 356215953 897176788 491921319 685841331 918436240 456716954 592119559 970554947 294492947 135089530 813156786 667860045 852213561 216226574 204781840 885198419 749588233 736923662 551550667 724068802 227637361 305466018 92549859 849221291 932272190 912419622 41777480 852158618 349039247 998314534 63890446 329108594 878193491 752712826 411231832 389669211 565280757 737020247 971267282 608744175 813933165 838988648 782209754 875650917 763844239 507843693 809729141 891793331 891135380 78533761 943164253 908361863 284537242 748543776 315303419 157373449 34422356 404773287 67779811 386712586 736297466 713273951 497210358 373787622 990403580 516963717 557965236 395130118 736947184 737047801 760749543 301761054 912625175 874519422 287770411 265426982 761671882 936072408 160234264 793130053 520820111 271843463 174177122 386404860 855005647 947564998 635960847 949745925 896951061 801633270 797223172 707775175 900539888 869451124 770635595 400853405 317679459 723809074 168770938 803756411 638911913 461557504 1892952 904254795 980818079 207440618 75159575 702665727 270884535 256065766 434180189 736283069 251611656 1101630 538827094 279561743 681490290 896533333 734286674 522078133 813788927 966407964 194976153 747440429 54965681 737420438 855090488 736703477 412198022 226726912 413139585 174087724 887639558 915346913 574968606 359631814 457783198 761011865 782412012 860984360 416493753 870518276 830171343 415484757 838312391 831460657 396897499 783604999 953457654 190401102 311132116 852877305 472496466 282803604 666649646 900261338 822397804 899361163 664065334 797087696 507533962 360920772 15442516 998559596 743153678 524426273 658499760 505863099 826403799 299420144 170123500 831745529 722050778 578605266 789372245 8215021 288687865 943034991 733011015 944591570 427959807 296105162 754078808 463448328 337304303 963578809 453676385 319023366 321421592 968546005 320543569 771562987 856951144 636270551 801770364 967938785 937842429 751971228 921961318 112496773 123858579 352093769 224599264 829750559 809185731 513055116 861845179 585296168 834401367 95477169 788280959 960791773 537820088 891703540 928944104 763286741 822584837 794400258 920132673 620325448 40142727 949681703 969560819 843058926 156813325 773923050 743902247 253723862 106571539 965828349 880451184 834945766 142877091 143860763 873348203 54483860 777684346 541930990 85300233 523723480 127596765 27520480 889941845 267909292 960375612 223147005 188976298 851713915 317407798 979504664 231625620 912384200 996067718 322969859 927478875 966310159 653757387 406525417 840388136 996903909 942379548 485000887 767803426 734362927 712483539 847535731 462953563 95296971 27163073 601592993 717010825 374670833 176863978 434668617 858829043 772238227 982059087 796980832 966347504 381110515 972028995 575104516 135482649 526798621 931381719 233990848 789446969 869072316 74055958 751606822 893305405 15492452 860635942 905617105 949674973 933444823 580366125 549742865 877156546 481631371 14968128 913405682 559955599 880855746 208536509 794455012 499728124 678909896 43977628 25774241 778809250 145086028 925216509 75201669 477764541 53567769 871196453 989964388 828930493 24513298 168609492 222478585 932155387 880929575 814732171 834116029 583929779 799332356 826407710 109618522 199184380 898495424 995353262 31009971 787025740 461342380 425673976 368749682 338246594 759350595 923804037 929456665 773563264 33359868 911448140 804059526 897399568 746318726 475222354 613192682 794278896 397908590 910710545 551519235 164845740 691541443 949520522 584157445 425812130 827210749 232800282 885789880 802938704 984474880 819888380 974239038 643515917 584825957 577458768 586549879 645005915 534279993 919426492 500696944 606794687 380102133 747234389 149896997 687528679 422343051 952855485 571647475 785588829 431966592 743274154 48885734 47342612 908611944 268688166 185069538 77801057 99762383 791853863 583379853 933582320 170182108 667275743 947329687 835625468 808084625 699769429 494964373 947761476 787698764 659980668 299207451 883362838 527299967 998898611 826994861 558254595 742128543 512838144 481663890 228780132 60468175 945566578 406226860 884974603 763614468 755745868 287429564 966354582 804512354 814485168 739004167 756337870 658206530 955983648 796530141 34798924 864422261 280156584 472704096 14158289 370080902 851782352 733092341 248952587 681501956 370291862 735953456 78050910 64663227 903689591 921756521 874273021 661441826 420038952 766795421 810622953 284634259 746152635 67753548 93324054 945840212 791512891 346278521 244951968 867608687 755116553 775074663 769704851 714124704 750800679 12470973 573673327 865845088 291910093 214434296 302456960 968307260 320492105 490502225 911417303 108864527 945335332 272305555 957300032 338664759 883710279 859755302 968142989 792972952 881785702 123355253 889051481 195294719 852228832 656438979 643638346 636935742 911574054 933383708 931484146 572732656 819881941 878885067 192089751 480197110 451600938 720493996 611068245 468452260 719995096 865890336 862101225 462368949 816725043 857282730 773946866 821551187 876175500 437813165 966145437 737020247 891670226 862055237 689675608 791047999 746414659 852614912 163231489 930481176 766992580 677621983 807924315 149175889 896754788 210569897 439874454 863565151 809998921 166569821 738923874 36087918 953784394 291999102 839401320 373757338 717144057 750113367 21940944 881126518 66475538 447359003 755666822 814993022 968456310 121809788 791160202 379506013 382056502 685321676 917709388 705765298 544177512 846204221 717521332 745017669 334254556 890750565 233482088 753247406 937722790 667175672 975588958 566661987 629847912 813255681 895177250 561306794 80358696 295370956 128032700 668842568 958127392 875127464 958286523 988324089 912498316 833049208 786684336 209547006 237594010 991203226 789213841 992635813 887283841 680779936 879600110 860410231 750366534 252496993 984185179 827900887 753323914 400146154 911586434 54912099 737020247 119124713 692190501 128677148 898825432 755100184 252205685 946186494 828089544 835376104 643796531 506174234 225622406 307654042 143772512 773412653 802311347 197866924 157828283 811445517 856659699 481892652 514692284 838148698 946615207 580549017 747733797 478822334 869861103 767466696 902775418 864603300 355580659 862097890 224820616 363481775 957334863 958035631 869704980 427337381 481960362 924462175 232190601 656568403 98773347 233568573 932650010 83303048 644544770 588943862 799981204 548400886 585929008 9608822 88131597 582764123 923916928 793563634 787347334 789005536 870649243 510733134 674778315 701704262 846756752 486149310 71294229 319111870 993577712 43507010 902627134 935757579 81151929 403956296 978899655 151784402 203395186 118378595 767701307 521379284 971542006 836169170 930767999 802213964 769143794 887406210 924262863 274284317 938311554 458079854 718187946 382577126 695801296 975221547 397492949 514944640 849672577 488290774 98025931 158282119 471717394 436273809 829068852 940315449 763354415 105327134 421337407 331436597 477944136 148633374 968483077 768075998 954177884 601562458 113831587 604124391 437766448 91916079 901437877 212496958 706138848 868674443 341752602 759650350 913169618 816960303 518837304 967511235 588222572 275555843 851547828 670299580 513558928 961693141 572052152 412087973 180706165 288401251 960257500 779371384 714250380 777433302 809880556 436139787 934497648 998739644 25502964 944761899 916922082 915245142 879669416 193884719 215204550 783090151 674127832 905037471 756544879 145848754 427394228 941530458 46352015 269743048 256466822 520664166 758123267 811925516 987224202 890574461 739120424 82164117 822467357 23543946 996658961 22734348 800930196 687625473 747919170 88729407 939127676 292960646 759603526 782465891 948202481 141868009 764040316 507612777 646570768 833288683 737020247 566442950 262116402 9115901 808563748 923728304 299363967 113535581 868251492 401362002 235955780 56858611 553362495 838757611 803823221 953784457 732703306 675990729 500223679 908906447 145179428 919281492 564417016 997986346 267525956 956377546 501314239 698168052 955485779 887078776 417381770 423438015 747354069 373548262 799304484 350355641 462151667 836147806 48632940 883176104 196734401 950570912 114562595 996416837 204643846 307165377 602224326 759731090 884575155 893854908 599365583 361377 888317528 910484578 399095249 944384979 753827444 448479199 34937544 688586166 763948612 946086492 20099981 226406917 962884973 940287647 850532170 316330046 993402618 896239787 180288884 891677947 271305141 759817700 719761257 779754470 997159294 797845229 405127657 739542868 538550802 894668301 961469024 54157290 803666109 466825387 63998955 466537936 849649145 188965181 500093498 515785537 208557198 173714310 477364935 736004981 859325763 654673413 847345859 783009757 14274071 791365157 687265926 308211292 792411557 645737939 390370270 149042855 753164937 792454270 903243403 210027695 694374285 812247789 798133539 691976282 900482833 115293982 785081764 284918392 794221449 54294778 803906986 869379036 791048822 135628538 898505089 213262766 934876447 302031535 271157305 986062106 178178522 177672423 981941768 360822457 256294962 722325838 904253338 329850412 992791372 964534169 941797663 843910671 309134662 683494475 3593814 961201961 458519990 58341222 889021970 341067264 895956284 525942578 400962912 648277343 74033382 902435034 54557635 868771058 831906055 843269865 722981531 866389367 45212152 902647429 244551615 837336100 938585906 976275295 960952251 923337907 854568801 78332830 364389743 822510744 53393988 59844969 786595816 456444091 848197536 938778367 803888886 815599665 816024182 596226985 250169275 997192825 324395139 320229131 988816836 271088002 526966484 146805153 873368394 337089926 769595304 569374584 829175005 603100822 750586124 468190706 954448437 790831629 776862122 959958956 806998360 967867147 3292913 485899554 738348194 441864732 21809003 985221568 294469550 535134712 195744173 228312155 251247386 788228636 988412354 208682267 180828077 788803804 605726998 869051762 584497794 413909011 764893069 962440584 946580459 972160785 735180635 808658234 999980636 147625618 168187509 357272310 868677705 298537060 398806021 748923728 769685507 636177847 959223435 89348038 854805172 415190163 975841254 726938792 475531326 930227418 443218290 846996534 458557094 628159926 44403423 197143611 435598182 155196773 861307294 288105855 568142324 495335412 622069718 791394006 718690903 864877470 825921447 253104704 600304103 846820644 953804111 865006741 593881994 240464934 679386121 219595892 263460819 670061070 127813548 606567501 370618953 932011748 571902428 370415934 509583124 31715658 151102556 864980115 842874601 956146369 828859990 190863351 910377622 882782954 958581048 768255334 344118638 825701115 217564153 983233851 887383535 695439091 746252669 986473532 790331255 279174977 675404386 951676749 884327662 762510620 85862418 929002751 887931953 376175805 811130321 856528131 199540440 27063670 839917732 760291170 829567675 916149985 224085595 437475822 936792368 738635026 772851424 609138906 615721978 217930337 825624821 52577069 284740193 711326347 804482552 927672012 793648299 902314051 604471686 992509822 64169911 875672499 676314853 498962295 954965652 741181626 858846241 170113166 654593154 820663988 825241766 739847195 661126092 976034981 832512756 128679037 344816628 885765777 500537875 801899038 869542399 302161817 866979340 777578230 868313249 466577290 335355128 423721522 860719517 863444546 434136740 830131429 21400792 847116723 110189531 728867865 826376710 519098426 735110727 117571969 342639298 80066654 950352520 63383867 876643298 606678542 775957927 860203881 952596617 726259412 898832703 645569468 3130680 77723605 910336826 880123235 922939566 109367329 963240983 400169832 817134443 430969811 629837893 824246532 230391669 276302957 136998646 911565857 978621496 395187614 895687014 541705561 745747824 906852442 367380444 928017317 829312258 514754651 562424368 569679082 393872902 94620389 781326043 244579241 834259265 226824171 954724375 699315121 756656472 380864016 910043093 180891055 930519154 906927258 124268144 939365716 419819752 68854323 992272083 742269295 110227808 730249772 28716196 781248985 886157511 547743716 827882771 11343158 937036128 82257464 733397928 947389164 480991730 912412964 803874957 574106394 575033798 778199696 951950056 104016296 129158441 871824660 420679668 400488968 842358727 397489111 841231168 399569993 400966879 768914616 923677383 294825977 978152270 866883971 98466258 989245440 105082429 533199052 982716257 780644344 888753205 846831474 917839849 967496527 895708320 969392793 608470159 70890588 897743989 767973122 865728217 513030707 717652104 264786015 957858803 430035848 814621779 942368778 884061697 285414069 817024614 219957949 994613977 791455208 44972739 653307705 452649458 932321647 641982197 545976774 949975394 87938104 220461851 216614331 111746664 884332203 881073158 883623884 197539707 178613500 180774887 770767021 315784141 630767532 470165478 252215153 285016844 661180476 961000457 813265984 932189821 559635043 894751837 729463644 967785946 702980905 429795473 197045022 978463501 185535474 675666399 612943619 574462577 229251306 141258951 465769653 882997172 891305712 958543109 366078147 621735654 274174744 984934279 103036904 129770910 484513791 866246512 62235297 664650817 817469736 538444629 958785979 790967831 453310215 791109100 671958789 581733876 176224755 203589250 323885839 688211026 597047639 849437729 88901763 680184534 746553196 811213609 980868768 680705253 737253320 998608859 126412571 911005718 955936313 997582220 962790874 949875754 436272163 437827946 776693130 268522945 344601025 781158728 935767405 940360443 776548302 964020593 491002329 60922100 486556760 643132180 927431384 638413613 798407183 172855863 545169494 867465600 376408445 790625413 578014043 344528154 949743158 961627037 828452815 498366845 270699572 996258398 902892920 605975967 584673387 598801541 783351668 210935134 206737581 203561895 316987446 100306671 320089314 950924210 482048964 755053360 982526310 758625613 440474460 328776355 434568223 556123193 917666532 842321110 852976685 383835471 851272044 949890596 513876223 934279551 527661987 799849245 224133665 847047267 15485671 206108392 821086854 745793153 417548029 491923536 50090035 970788845 882759737 187324234 704199025 490354797 287642722 717989961 792953925 663857219 613018220 922354364 628216958 451125970 791114284 934182138 897298084 64249263 649344624 8671668 28119744 244842941 969689244 952776901 203652047 560028516 877591881 913273029 818682547 818685651 795805763 924988913 878184625 927942809 278249466 757118225 738934165 212925931 828831818 980726461 684145759 953316089 721887654 621234886 786773792 737502257 892567000 909733953 131168891 842198565 302101480 912899897 866601432 973854442 630936662 695984631 647670880 601444573 913569117 555873453 402025743 795305789 61769464 923873125 405487485 522419939 744284327 720239266 838657324 982998122 863062321 812836086 810386976 661176418 982425727 943457382 865735715 963143478 173101662 428423968 766297188 731296175 935006303 920399256 591511594 745131513 694750567 786429798 947808242 826851834 379188182 525926768 694049995 63320565 221068247 370086050 983750948 511267326 955980961 900595635 394206096 334449900 960396298 803642197 297498595 862708491 948902621 875684560 449361595 906537726 806774667 812345617 703982861 792442450 11832297 984534232 115917096 798216909 310936377 894778907 926330763 989064640 443561170 789359396 702162125 850034600 592367981 834091184 285920605 990017716 186309088 671491974 995186444 633266830 886569455 887440879 786563230 199531601 715165882 335369888 520114159 952244050 65580788 718855996 473632874 684316111 523494495 899377951 862847563 91827931 131625950 771680504 756027819 351608827 850359562 590433857 67612787 402373491 399854523 425513548 569297009 711383825 43702537 966363870 236796637 166076310 590205732 175541440 480337144 302223601 251723697 468344128 606342261 957603827 666486104 398911584 795766517 307004783 268199390 874319148 340522019 863877445 43140038 200238725 428929147 450812083 853953884 350015621 437840846 940350783 136912510 842086485 604388289 613041530 690931346 638456988 862574380 974451849 943614361 623542545 797028929 677769786 962329947 895647958 599757161 857144170 231326064 396819706 635143643 738479319 165314831 263492738 849263050 632553006 765530783 210727658 763160296 982929368 739985106 925441306 722814880 391717021 720487345 744224079 693453386 423024584 882686096 1973681 494935381 32835643 401593450 990549047 767804756 370006493 626485017 834563752 379053662 983813448 841509364 786769103 975651876 792446337 959961276 670264265 827802846 551189428 166448990 789442791 455329299 853471410 209382916 214404315 7410878 991130681 343041436 944937830 893339799 753243185 823264719 779610990 813443944 637454577 914826690 428858846 604045382 972878044 231922112 793110666 40737967 442300714 351173393 61877788 981403060 271761551 858569473 55387017 202944277 753318910 678875573 522824639 793312352 834300891 898898691 533203330 531451441 654761087 920917585 523045668 836696623 336787115 124185664 278045612 786437318 254979573 790622117 7101805 863795237 830316300 213593362 893316811 62378973 946300533 315189625 227155380 987967521 671241347 105035185 858832175 806665229 537076508 797188470 32225406 932661959 925887281 704899753 996551935 900702546 6969029 785204467 869711436 915578314 601654088 80489589 575675477 44220868 136784941 759276938 565620351 744572061 147443965 105822506 801956811 979864658 129003753 111047170 947147813 904316373 258787004 571366561 742260183 288990441 969625595 638023833 815555508 168845215 571503361 448165822 395376020 372589238 48981992 842743991 866246690 991551944 506156739 375117035 697255312 795521657 841188311 42836276 847950671 856161161 806132412 985777549 943036982 56047786 993850372 85055195 754816341 160347228 929898016 206159887 281931231 744159574 299325120 824974957 806719539 834124157 222210895 546482907 967948056 135131778 865745058 214601069 947167323 301268526 329616018 804503861 737698854 475531339 796479483 102926343 982107872 679900231 920691904 63051912 163819373 774599778 766309708 883435120 892030881 586620561 874036522 895345533 260488029 738229975 742306549 898557662 812192676 961172675 794697666 613562008 75335976 605925586 53834309 751092412 886598427 459325238 792867629 212010983 483637428 833315484 443949372 741371708 622089111 371260698 837699523 964834682 995702801 839260168 956702546 912620536 928897702 987860646 57272965 117323048 962466012 315896131 857608316 5188314 966107460 924211789 640899808 782911157 441274466 904105205 743205066 452581695 861667876 975670938 897690902 821808766 496913101 569238357 236204701 580166684 402477355 435375502 30909697 590926106 449621869 851568945 855195946 970865764 911481504 726976227 803084505 904209877 781575659 934449208 456971546 277554138 965522666 522021347 912774383 188450912 384340911 561858683 834652060 935608868 137982374 385660187 999546618 290426071 846402387 769953951 739508791 90791881 55170880 380678727 828462312 944174131 930922008 112721697 570874861 227049285 775018736 518600564 232993259 791936881 335138558 682513412 890667123 808042761 139701574 954399426 982509942 140424934 49942130 696855797 713578970 942258146 991977848 546248803 69374383 863538520 18338273 920321570 422366569 498279798 929489896 536365840 157642470 194994793 195160783 756108832 837565582 179275172 631330714 780475268 750030890 225812357 647601899 976180827 91338736 807831656 372233863 715263020 316038186 533020619 982864778 257371163 767644307 181119059 474329301 748560027 942649088 69172199 272582570 622027914 755751553 181805378 309682483 916314015 889173788 169807592 862139470 928032005 564775463 837881318 360616504 381294045 887842690 919680728 657792137 758591061 945907406 748440988 710093939 913552894 795493084 750562219 912360897 599114372 522991244 904295750 432738663 805939958 102284743 842831263 999400262 43356283 796646191 745380428 655388009 819424937 690084005 56618206 383754654 908949029 100372461 182301096 122999515 349064303 793225851 873832444 318828328 357536590 830082350 829935290 947464209 794506237 850054021 669362754 785596215 107893248 219977720 856702898 819673721 843479783 981592180 778065418 778105652 1117442 636178388 630813692 834559099 901956879 948138602 994091204 782029644 304468890 679028001 427054099 969935687 320073853 915887990 17123971 971948683 347085633 995762569 893081435 130341876 176529500 859062998 475517752 609487292 717513229 795001884 914243039 778040668 97089729 687589959 815873973 148376601 151094262 914917035 930440489 940415695 809120244 773412349 443984455 259673167 857120853 450888587 139107264 864041873 950499149 860631497 704966201 739522399 880731591 204804850 904522712 36641199 142119722 288346407 179051042 842955986 943365794 752810876 951840044 788407019 865323250 979777019 499748783 509711441 287235927 676479787 775483221 785960534 291054401 471244275 976717610 722358783 374816058 886935708 364704114 896779842 611097215 590987252 136164673 548765294 721696357 801336943 719337140 998942946 938709529 612199314 887993276 183468278 904962945 751614368 265811609 336542677 916126366 933414097 500055183 252364146 859385704 373638394 846055900 454902660 115848829 909729914 760346654 684530066 815829394 919480114 320347262 980935059 347682514 76469005 862203579 160053142 878970007 375211900 679038093 942900683 809918765 853033557 53873802 652332992 88702832 22654089 362857598 336388581 876214644 989492225 942272113 721051765 892395416 840541122 552357847 632929462 452612906 747074584 730711889 529527599 836684233 849903468 836864698 753705407 941444369 263983758 394666625 944714748 829212567 991838354 931920409 677455832 955537837 291315051 43685727 954744517 803847478 773332578 831360340 746864260 513982750 355708224 828228236 638909781 296348004 603701281 779475677 450567337 417228126 978417971 350172496 768281551 45367426 997095157 818335905 763600192 752658807 915413337 405932013 813015378 905015996 763645895 658391813 508961933 966934324 861709215 718197076 541548274 851577507 675197983 775417507 68040328 271163491 33809777 234366084 899503722 205587305 283947112 334256855 82192478 381142430 801240760 922272696 737020247 683648771 738401011 926139659 673812342 394817377 803011449 368248624 376334202 81531095 755200540 926526909 981481088 671955784 547002885 968875239 617321052 33923172 697724677 251919953 956241890 232135920 492940314 996080457 974174244 882520157 596060698 560095326 904789632 737658135 831951310 114009110 326990581 951878172 936002808 772002947 620338815 48036691 977900119 777629090 796464995 68378949 916761201 837140989 54353309 631367777 988465406 856303223 780320878 858460411 399245486 754715406 347120331 270803697 815475279 373330956 141513558 338111855 948949241 920908669 102062173 369979498 942066754 909419332 863297924 913092596 739992288 719581087 962674927 822166471 787502583 735077155 47000394 791144826 319914425 934215266 198576238 906821076 37384797 772043867 983190349 702907745 829762795 72420834 966539219 853600727 776742670 99209246 943174372 437226961 100798143 310776301 750998839 789911805 751579816 816250027 291880811 944924994 152598735 871320701 553308971 824562789 766192220 298788057 793138299 726732503 119134327 353082407 373440937 939511242 942361302 952941227 356741716 648252966 878739382 240326772 834923531 223592548 853272836 471514537 423058389 636330823 610484986 962117885 921620034 929396260 4411916 836087338 974272778 35303575 965419824 967488001 869985618 511061842 403998517 944074385 867945696 914809825 256631480 813271411 866746893 5570803 416223139 553502388 963318816 799449258 839329917 954561933 755204671 90119551 836482093 809492363 711258512 354936939 758932270 992522624 809286622 364237202 378662381 105420937 54356751 382241160 238305596 168973237 788968167 586174692 930918562 765232284 949249355 502411302 456262403 917553344 803918837 985286342 746023850 752584833 177509363 553947011 929862988 750006818 832061493 976747094 529599719 844936951 412790700 18412944 236220763 838126556 454646315 932546051 488973568 359825279 63655059 799071226 974376133 271185234 312648103 712036285 78809349 687479759 675425345 177668080 666833382 292647425 807457999 416077538 800703299 836387806 292593652 61837371 816861357 931919128 850614960 772896047 942962166 836427264 837713279 240716325 751528652 36476414 325556286 989875188 607056501 996809690 223112482 355313941 408681321 774655957 365534592 402554673 860030675 811350035 427859554 80810795 120509724 334257748 582758833 271224661 970481067 998273840 849562205 548103902 744442580 830225288 765246634 587202366 824834209 585065989 985893385 825331484 402292434 84503659 176075472 892715527 876236718 446205285 473755854 918376599 114818128 969695830 655431727 984433182 503724812 574503918 966212640 739342018 696184439 102709172 806453341 842108131 447054729 383115882 952594301 668164308 868562452 920884428 844053849 832093249 871402555 788693231 937853430 60711314 973182041 827154983 848367698 789862596 289661341 801524806 881527739 16497967 950377553 14301672 981414841 88515638 798000739 790244487 680473091 575240016 886571505 994622673 775643976 606522793 177207801 929478277 842805312 739004686 384806979 78517891 452304437 953761786 995549610 416147783 640496814 993018239 190120887 482354541 810472000 751228744 925144496 969663559 774041682 803362156 159692372 828502225 925367543 725032941 38481319 50788221 787868913 593840221 705797085 623564260 565374374 588185172 790705254 997997764 665648344 520659204 169000471 68205428 996954945 621233674 896172165 984582641 201099958 528764373 886848826 981464340 699716752 955594621 995879053 256012993 934214720 973821214 933900052 903256752 376722315 502630760 967935317 11507573 872344681 373113406 760313855 871380186 759221527 905924324 554359252 66905017 865668417 919538999 954032517 459206887 933548441 492658454 807395652 520610110 597609061 684772197 447599458 763603776 659233974 877932224 649371154 62232649 774544938 829152808 831952753 940781948 181295247 751475684 880235120 595166182 963871148 509774455 991198468 971866641 907145590 800266019 452968142 819411934 991240975 872287636 646244271 746705553 599673674 966936866 579814786 791229561 856377946 838065718 986845051 882990855 223818624 148128174 995465974 164742821 318954356 808141050 849649027 335153265 92854930 151450151 334725334 774865374 789906645 672246465 933644549 950946667 220750456 901140418 759631907 155697409 898487930 847312182 983812359 70452669 582914580 414299887 610647098 688601808 515497063 930597836 365991322 476147192 930569759 455752632 555950099 806543190 930285520 168020622 739775198 35525382 922241864 770514229 985113216 813287824 520633516 707805709 991686446 202826437 455328046 796215435 720798404 979966200 309010074 955838381 315767423 261835714 833799079 123137256 744153983 967353352 500173256 624953960 103638462 94937184 740031785 785280234 320967778 983546911 635498579 859647126 980446975 359352289 776680647 123653949 811310639 698478324 857512683 335273305 996747149 621607774 788466355 479828975 974925876 840437001 609130171 87012775 739058844 467535591 817205800 767173548 426820469 889713176 857749564 966949032 943619800 822932876 117948558 885078279 974881065 19195691 859220676 378291772 632078722 872164270 770757348 859574710 918132639 351786111 706229100 254222212 705513777 933594625 843771473 918426629 814507778 638682151 941284379 143451260 434544743 726009476 415800519 317429655 263287777 995721852 982119515 426920296 398843464 859431452 805468989 759729947 872147190 711249317 997049045 992631438 966203109 759913039 456885395 829388949 385173593 964581363 24382571 749171156 874251650 984511378 928274307 949593339 305421185 979125670 748397208 194332464 377657403 556302874 341501947 286130581 786701473 151047759 697250679 418688553 105641511 736877078 175319766 128856529 191101734 523403522 901138245 919866285 790820926 442989083 489755386 330148113 292110631 600237650 897028074 619528590 58877895 96263463 470619418 402656613 68376193 846691472 917437624 809831149 853603563 840835384 911610509 771661395 562837744 862148152 940412900 575704220 23030085 825390796 943383977 775561214 856455470 977294105 903381346 544496979 797035394 880043293 798348591 555610506 400878250 806628074 876291662 551086354 999169611 27783773 364616557 218299981 830967516 422381924 113722183 966913881 898573197 975765528 427322147 619985113 165223954 984812578 839630172 747614058 921262198 518652310 871964508 878251173 191944566 947148371 841785213 960874301 857543425 438926687 776592007 831570231 418833712 205078954 759633354 760551757 829549294 827162834 20429512 937630791 408644261 732239377 817684746 742700020 795245596 246005180 514741854 980771938 959320568 336291956 35316605 53660256 458270570 852267380 904504879 635358035 980668801 824099633 627410589 755711435 987107775 970565772 758609079 966417038 776929046 104958813 707124158 672317717 265065619 996302306 28687865 938990062 575232733 879927374 593584623 473932478 756021383 852656369 965646306 393062511 946044666 397996917 247312032 909863089 851390057 35576572 236917844 644110935 447746623 36925617 460538684 834625344 566428110 904701042 896295531 787622106 974438067 857048809 644148617 888375666 591305243 413149465 929493571 756647167 154684383 401493781 812709194 980294033 849395150 280267386 921715457 820836007 237869169 847543600 480733066 908793038 975824752 413639300 958200218 332410822 962772325 510725593 919731251 5841823 157986762 517890456 829670531 208644273 683977255 792462292 52454794 818369643 907492253 762125049 847661777 569687124 588251665 865754633 941428573 245017036 836584631 368982958 475527208 919264825 966429790 475898000 854353838 199141066 506764767 44465490 45455210 995247755 18820922 809747159 992298074 971809771 742560650 744854458 825402067 549900938 407319627 901820219 773322275 697638617 878786928 492830316 279731901 750855512 362127120 673232434 903284363 974901377 866609936 295683225 590129612 966004408 850028902 836348411 925538523 278477849 272768346 651656594 650781411 908379327 988604630 524893611 546494970 532482229 791350728 307535426 883834586 766139273 766160229 294312204 939689588 47600627 533780138 922840224 333585045 223597635 220293369 721125510 18622226 317210832 193915281 778666030 935448632 723157444 26301790 546014994 741941922 876294984 40277059 808450235 761570875 926890271 749662210 927241626 142239534 738027110 119268674 855114001 813882534 811259769 865685122 597511499 207121726 384501187 703893041 475402288 492593654 614334605 346141118 284905692 262782425 850865099 977513160 176348891 854229320 908179183 911687827 336582733 206052125 754621797 403253734 43125081 767599997 998946791 848961638 893425956 921878294 366397004 94705216 396588495 557155140 501835791 336342693 813031436 95070503 487109083 842538093 472211762 970136287 770144883 391066720 477913284 886270532 991909617 773383550 798269383 979076818 824251588 119296583 906127906 364503293 349289659 483717779 840950151 151589289 966844099 830996799 832643073 497796210 454104390 693411202 777591832 504673676 826061818 135608335 375196151 974065898 983330225 298560740 308332211 583812187 154118785 697191835 969799778 195557359 165717840 349979329 761148925 835538785 907823213 791600890 537534570 296953664 36691456 549557837 660589488 846844909 798867426 290666509 951508770 477490022 795718203 165292338 415973355 848190281 546671289 618200336 859067119 758055013 966423428 837343193 418160964 215335253 521078351 409805349 452869749 301258445 239901599 872926971 81900904 861155870 839318045 225318320 894514981 692451936 983587045 474871228 866403750 560489989 819475185 950476549 986301275 838250925 690656282 976085188 30107632 595131130 948222254 811621561 810908899 562293784 879236386 900318644 464250209 754683076 251267037 795747384 899927169 471464925 845218694 28252519 742985847 86662315 563068207 122483733 830918701 879294165 906438496 208443599 605704950 877483875 806215894 840323126 214989857 939122839 698315252 589259370 831745104 890321057 419884689 747810827 241523672 745025566 771665079 57103096 860646738 612786242 876163677 999684323 692090750 542683300 268920302 970532508 785399292 737288353 335529580 736761210 701360314 843598339 812797917 986322697 254825020 72649398 993030167 321926157 980256900 748461702 739615567 131636041 597625573 131217400 479315764 134823083 493029691 311342743 831187317 378214661 206401883 576813193 964775234 882299153 111761075 868440017 956777257 282986833 216434597 385064860 933563692 97450822 872517299 91990785 856692195 864859778 743307439 985036540 838820663 640887756 52955755 300894230 858506752 838484309 270547729 886920758 992823045 395427872 809041974 968787226 658158036 992409396 887725184 350119089 903734386 620973323 916698940 858288890 828366866 648741514 859095353 198234011 102276210 418242728 818618368 520860064 898675879 878717511 189879118 160713794 407819055 932067195 900282905 764829428 425135443 170407323 245528669 81132555 929699569 827396418 933574557 763567729 523590014 574918447 861121644 970261581 539744310 895542128 860252348 549356965 980925526 910217917 333386622 936152444 768121721 931182023 813196169 995207814 777445425 987465201 385814851 344740791 130421504 530978245 996598835 866123486 923575682 792631869 822453243 188201388 569206882 596237643 912289655 925994720 372920495 543784168 903401135 219644155 88365988 963200852 898860536 750552023 754272528 961444130 917195853 895896473 937417248 722900381 553209170 669275266 975523332 774181684 100556345 355300851 628317593 723585222 83032828 740167947 891602238 855427211 493416800 972486580 649610866 859977553 737020247 761375480 238216672 527199088 150495886 30224912 141739078 837642065 40934874 790183250 124174116 891903188 344804418 195936462 16915492 73321811 734266279 408047515 805308263 788547398 242800379 891097981 418061757 438705637 806560787 302766220 450227875 918924421 772027856 363745930 796681343 743848197 834206433 146199201 234941768 799181899 751170335 891178944 357243987 751468668 75711699 624586815 237338447 341009395 874241293 502977559 769228780 734630605 849325686 957431240 827402123 977522608 727799278 260223095 872379632 923245979 896423130 852933784 688339573 137813677 886255554 892603608 876682470 458239589 217071266 910116531 924469584 657338354 827316303 119081988 458218731 901556575 814077643 982228803 78398430 271985083 600024546 528836494 861827010 808625740 976651774 868931497 320588801 858956021 899368328 486545458 942768170 273999003 58894633 508573349 833707869 997556898 766046287 778502662 897213989 779494131 479422221 811712428 619509200 742947403 815617730 786819842 15475969 171867648 860732862 320545725 877187194 173372317 835767145 815206071 962849492 574207751 617779389 735076419 941953424 791703231 542366722 259499264 790687305 833940360 982703279 946608163 872967699 302683773 388161974 858969431 831118896 901969557 605793752 429613655 752807775 850605792 832155283 188847424 908714981 347775939 975032063 945002219 929826953 946740590 354796635 261623172 765061682 914721172 939682229 987526881 501086857 663340817 188087352 963669801 588617657 262761006 980537743 503665374 865810709 263136686 962520298 216357781 926507040 795703071 275442500 526155018 789238648 659489124 976372991 915308718 971825338 823660345 226713897 542685395 493750908 793494043 9582702 454721198 997955969 298012491 886265771 990854101 485812476 751009895 943278559 811534351 177401729 952717834 977096703 234506416 230412530 945642730 787025455 20673148 960527447 774659703 855739660 399254684 802215435 147931011 960915962 463245899 350547170 19572775 858500001 454090840 956486705 466161559 622216383 501490158 541862090 358648490 201717136 802118760 325700009 177339083 634022269 282555785 740663732 68383423 838824738 880537897 637649146 829364384 777508170 854309354 728672413 355415798 580495039 898468087 827304888 1763157 381815593 368180594 514774926 633655705 966877685 754957450 621701887 895296993 815812799 896732031 861356100 351939014 967203094 126188914 742796538 756393759 158955847 771743064 864242446 759534267 815818403 945399257 477624360 307412583 792330956 459595903 738162972 744712507 962676037 761341770 936949335 445370900 122837985 983694015 203755902 920489534 801453140 638480385 833150634 904987127 985396162 765819166 210501040 666626214 956556993 854013096 682081396 110311376 964153028 751293996 845885095 505948382 977787946 995414955 221297058 814390151 997665970 873644168 857746554 707110458 583992351 508439760 211023571 952139365 168259562 848949480 795545930 859603340 632263412 959978642 473129890 895273731 962461098 204070501 864857109 647284601 896404304 993567375 692871994 270070800 99286536 918427171 771107317 747769787 771778701 579559251 771217401 763244613 787855656 960098669 309795291 265842575 807631798 368503309 509108780 175037990 930883573 920255822 652597724 47949239 674896978 883334138 836107734 847397821 274804236 982429845 842217260 398875646 846193613 535518927 765383717 970885203 838008378 475941644 889873237 779556172 732708785 877539817 395524414 174330103 43335181 778351791 846730943 574616937 522522298 875981683 429474126 194240917 923135377 770326164 397200510 948326860 896157083 868822353 804412776 3139418 250796447 870555849 968647943 865355904 813858930 431558188 912080617 2680927 756547720 743700826 556324516 774870730 598340815 862926585 15993760 939454612 176956591 964257075 510294001 770303485 932831696 604077369 964227454 162688714 962265517 171156831 920473200 790516434 818499919 734953744 858465198 813839374 972259558 862644460 362126591 657997927 991588760 929932384 767802979 909028798 304012041 344627856 863232171 449567476 1673319 936695312 940193103 883923237 932894440 365162488 34344675 311393562 298082873 439639653 369021561 95873499 613635347 417257245 833193410 815971847 569410460 581580661 802528177 771268934 155151249 863947424 851888892 744883931 434395318 766447570 564343354 683389954 952612713 349960421 796819986 842898827 83662252 554573299 380574340 607495679 68847622 357628734 716162830 256852552 741686100 833269523 789778365 732610434 797678010 490557371 477004953 892307252 953213428 792028880 693494806 122214517 994148263 581588178 950834839 464558592 559781480 845727583 91310473 328224481 274392855 795762005 931198921 766535792 949364194 37979610 951759367 795658121 957739676 195051869 672448624 61248552 414226518 952290562 777152783 930994988 756534010 806954691 932782874 779265188 964713030 946747309 550666203 144796344 118661965 806296630 765583593 910025637 594084732 826701159 880123586 835279343 103747164 828099622 496619992 104044870 477153485 555105211 320638563 130727355 968466251 272414417 618091253 189497783 49318155 805954066 597789845 642969907 147374207 355095429 944658755 951321923 453880410 501913998 315594080 866937394 991787886 333040921 826891778 438753269 966956625 242651192 525978069 673168853 771826493 93452547 505983251 818474690 341600201 68513469 390291630 955441172 721701779 788646541 772021669 944002651 915988117 690684495 878459263 759093518 423157595 327557250 755927193 595015043 867926753 224720343 377470150 738931045 161532065 789959370 534637503 125953397 451365038 143420880 216730548 304337476 855255270 999155465 846767235 761538923 680133925 491653943 959642994 223279273 815656202 899399412 211237205 389135882 2751009 788358211 133570569 798159284 333117319 277663232 855363398 952901059 769679067 805846966 992368550 837821613 814336688 142927547 415652758 539656543 744314374 990550376 790815152 766547382 989839677 998179817 417237369 104893368 182570019 188882022 753006276 746483116 222668901 915148355 159015521 272893407 955326940 836707624 607329511 970244633 468293834 864988611 792236161 651357973 347460061 458772399 248166220 918994140 524014874 728121613 972144164 908998837 35749570 56149242 162581562 898476333 849943458 251952259 939081330 408215152 783942635 121625659 363497613 900293736 650766176 761314583 964205661 642704049 52929426 666024480 57765838 776091675 854884432 853669562 924349896 466390218 43849141 672890222 266842723 904866515 325958738 115944363 791148304 862327901 672435709 707153241 922436030 724147851 898587969 356879346 460362397 353775655 844954763 285143705 950461213 826646427 547442995 90971729 943805980 644894548 898991024 938335283 885597916 227594444 986492454 969764363 617952537 900735155 743429177 595520327 878036862 740374405 20566651 143655217 473708678 676894188 518324266 949962993 242942978 643047981 143539089 447262172 663750567 987943132 335567659 404731475 649567666 845882302 775210410 916940411 371339149 230823550 199557181 941730283 741898389 886184880 29907294 948623228 985159039 604680099 886464541 756537821 994293578 958576445 508636972 422540782 869809812 906656558 888489472 763089394 881040875 156241364 56251213 933115765 61447100 809605623 352706586 426063755 271314727 908970225 901540388 947062329 355280030 785511692 915547277 797267022 319487582 546345042 902363672 977451781 741976124 881360092 116347107 605289244 964025749 466694848 461736369 549183217 746274497 840312815 796183612 680565772 986423960 624648078 930510675 995898024 568788653 950738721 206924788 129452763 593746532 93314751 830122687 980217441 57266923 842458154 763293462 941055847 759964780 762655607 638916545 239400049 825740184 841310239 475513658 962164430 923800776 748957184 997494377 671840438 648168686 484047779 854253208 233722336 969929803 916690768 826247374 941449908 179972841 394331167 792954664 444438384 757195729 730582907 827952576 475864976 872403332 119387418 846057664 543812409 953224944 211013414 895377377 826100298 819364583 944771717 682387305 991822116 367143282 337602696 831708501 960262314 805016756 524730090 57529475 304830486 402003939 860650077 919885162 231765649 337339585 978466625 847821210 751259956 893810376 467668821 388946975 20443069 904396484 985945887 826236895 511425333 714718471 752253218 915717870 161557523 876789067 573067656 213889515 862184291 398565651 354378656 756317989 157785817 812971368 898469300 981184565 767336022 815884917 664412391 122034086 498561966 998731709 99902610 286440869 784721833 899096549 141436747 718324613 730624792 877554796 754237450 881787875 775360404 914376516 997062204 48610233 805982028 175975639 221160943 953984547 859300993 904753394 419797153 982185148 279425877 952035053 96518429 816513707 619298043 693988634 918538064 244892631 940217199 884490079 803162984 859681902 943871258 189034266 401362929 400558877 905669187 165030814 879657805 677507018 233334540 56702078 340999725 109680468 926333469 703926374 11014223 818042659 538557438 753769799 902456950 749608505 890169651 932126187 112356080 459314670 483172078 58094581 584098170 968060958 785542280 590264312 518084150 844346738 515592396 666001523 990246383 364339990 750356494 187336506 541165381 827035837 392953776 542337605 853833387 129368973 952222215 153854885 428469046 812396692 861510525 759699988 954757723 850637954 857009831 887322400 816171252 875586932 923505449 822078644 749544694 45355589 918424006 995186403 523034823 995763400 985246358 815917208 140712777 983507053 819059318 314319330 941324037 710738461 399284555 851876173 185873293 33715024 995636674 891512218 884143160 600375988 924579565 784338364 818553823 975613966 783091839 916826105 584889508 540998206 883289637 836091248 386078141 844344123 729128182 281061504 887999213 783800333 978876724 837064763 475840060 93816783 986460450 967049553 743605179 792052349 282274645 931188209 856496979 931817654 924177614 226711890 15963078 906314538 737020247 65482492 927351573 23674048 848344839 977146754 398157167 789929329 314788317 758598265 468585082 765518286 75589629 19837483 595248235 792294251 336714178 805305709 282636890 78096246 849972873 699782342 956677235 736324922 866123044 339568181 391175561 559664549 676756920 838883908 968481545 904116552 821669889 953821070 480384461 74464675 810599441 939093842 903190933 146420784 279958074 770584148 798939077 454292637 688509565 981485941 750232660 937521787 751105570 529324926 833684909 598143077 203814594 112886561 771092715 769640516 855166110 261844025 885845478 262764715 798521003 498784520 820979997 920011490 500236148 431586063 951213810 790437020 631496457 896625180 879682383 614858161 853332931 840324355 826297270 987005060 567257346 437308196 838398140 586041051 753849765 536700994 326891298 955167545 432651444 816559337 924107252 893044311 363430047 808537124 979551425 520122382 280901695 218102909 968502627 946990375 527630299 744677860 463457093 999770423 888164555 751433762 816138973 907301728 256723277 752758495 315939267 290748748 50640223 945471112 577899441 746601973 862166050 828948381 256406482 762700144 943069017 973411032 50191053 67442552 659011162 924927434 80186458 834417572 974838775 472408196 555070991 767545309 205748574 192643529 431315736 835252637 573407829 861282749 289395150 865996527 590092480 326253126 58351350 746915865 940948753 627206342 872171456 708638227 751365733 945439973 509815655 933788271 402983271 790182839 128248769 462048015 61930148 850762968 319556429 752183503 920828704 430713958 133303173 803957851 24158639 387020908 26868249 113098422 595387063 241453216 607434408 774716067 797863162 982350493 921746856 709242638 271919688 26936751 223102405 956333494 653283365 917216977 742937871 898049185 905485646 928429513 107428817 913497148 25452830 815747302 882666499 262078121 343191726 971495046 987876827 829907531 311020890 505639698 290376959 996295711 645400701 737020247 883211837 511863967 852215224 883048928 861306862 416913379 761418635 925893164 240155742 803325153 878620737 659243513 923994179 895340082 318458449 953987316 862439061 489800022 738104731 306987523 173251042 326553762 811291055 956660825 390753619 843811345 964357135 430001505 545072329 694487954 877545909 875684380 784414162 994437661 152868416 506008922 354761064 899106677 484424862 212317703 277205692 443005121 597512632 845180431 782001419 986809342 301199195 480965067 394724215 170463483 768778655 775237249 844700328 493633143 121518603 189957824 798437665 534294348 722106834 536535389 767580387 139062308 794417727 590489747 904248318 989197387 603633161 689541175 432326005 451453788 34580253 982559687 737020247 709656778 549966021 846368579 785885379 845984120 98963202 939242365 961258620 462933669 84585519 492538248 672650756 847625601 547343385 873535582 890936046 194624694 914263093 970270256 860815658 924042035 136645488 19121461 976161808 683581311 35955803 761364251 445399894 952411441 887318485 99748008 902897231 186970301 696270434 291242363 895097307 697679981 902257667 944814413 919090960 900788592 753077109 798582443 864337234 799322554 282207448 42067121 428698726 954266196 520383596 130304508 739001601 277572120 126405198 827811783 509293293 996481481 911754195 684292918 445614097 13253675 787116478 981198831 958521002 830028276 742666271 402308863 812242333 980731944 820064432 423886966 329094937 109461661 657412807 737336927 647776632 801590457 590916293 999573775 703739355 861768568 932929916 830805803 622234276 864496544 999162727 969094306 135253727 364267541 876185148 872416627 176605 989172305 627921746 279669479 96006524 961679482 58520226 151814784 128279237 520012736 981216808 544532169 866836509 827975981 796777287 340004106 171771508 788813657 832640545 245347425 591479525 653617650 805985977 860196636 287792260 197908512 585557763 124600281 690339985 625092321 773595631 233273648 110092522 403440501 782191646 579958507 199037930 310746968 654701105 795133334 93764518 910190474 947625655 640544867 958132642 864107711 923673503 875656911 499533010 879723304 167353815 54894983 363491275 761341830 749087754 644106998 207087947 957998858 612501972 127030286 707106956 212490010 685844678 920777882 374135895 658759059 417441160 332715810 985422502 190314469 832329044 800829304 952023875 272187358 739604913 988240000 872145841 148926735 749702910 848542693 783277006 892462063 711468412 396199629 686227102 778305 596867219 933016518 831070290 821507553 253712652 913291569 765088487 823182618 126166343 744741024 473748051 103334917 168417856 71427589 340397316 401443995 819342980 290728297 971353938 100799988 147863958 510844364 144677358 112588674 995617320 771621914 775981539 900963743 860782383 474914700 130920269 81693174 980414227 470505477 421760046 324177014 897611810 389360995 113593417 409641807 586216784 848073531 825503820 875151621 550885366 670078016 770995526 120667264 775924471 937606740 871223716 658245817 971398524 900094983 966380041 303152147 999317401 832144784 278385721 902584566 222070627 472949758 529144636 867476258 518131563 975398183 525138363 627074834 905383480 928167409 297097762 744921849 988020351 485159515 767492153 71962301 954179916 751423480 863798407 478705301 995323845 352324741 442768561 823550215 755590360 447814051 126001796 938668481 998400877 690326559 633295447 793169010 275481184 933373836 609682887 477851928 898204473 989253585 341492196 122700703 119282656 695876090 139579805 717299818 947075708 690788078 640301485 806773814 929626060 668550220 654154738 464717255 719017741 902877258 989002769 810220809 977947058 568228273 941063462 790051571 626178922 780434988 382707565 816239134 837778786 774992773 981723382 608814934 169687874 955836524 588501874 592996218 737279379 528900971 847143091 836083678 769993905 762573820 831640155 775204931 242812813 822186895 87243995 467178026 71733857 210506413 248736281 923923017 842647479 228117808 848803794 931842513 837896517 835605505 218816528 740517743 414210922 798667556 319789024 852616631 321490361 977927156 414635279 781695111 861191337 575695027 857993976 589841591 60307468 573352539 762408626 371657436 775731322 653772447 660473691 48699499 890447533 926846850 810485417 563940471 441822346 132269319 549176684 437332132 946017101 147623757 990282131 80088620 909709466 264238839 770681653 917456380 127230838 449278610 993828801 103582640 865924012 21499924 89700513 967228773 651781071 747795626 261064112 84589649 729340061 821235895 763937377 85280051 743290687 990298633 951155099 810029233 924361218 702415294 949637309 819728438 366340672 63441270 755264468 823584175 7105422 960865451 843590777 285513442 445733011 472478641 703396534 188268175 429352490 989694785 946339349 204318848 39584548 762372956 903983926 173444578 596188224 171546019 432991471 928814358 236592733 936453277 829450060 778012681 831584828 960254185 11019443 965131637 870814032 912400562 755760316 575752625 759366046 741159175 388588096 736899639 796937667 770164251 999222452 394958481 999562595 142268454 844502958 103125414 369893903 433264006 911573675 477670904 539992715 491086293 744039586 622679682 145783100 420949818 845760345 645806659 736939839 911127878 676672022 633177878 882068175 854659330 249122562 813791430 794172803 850935226 540924687 139045980 766585989 681862301 804436649 933642061 513227874 278735517 949790110 923322689 57193787 158423439 744786516 944580530 323541249 503943683 809500346 995745282 432767284 840463006 815045257 884903508 740494810 619515349 941738266 644725463 995304351 913637043 425749073 125565909 277895589 76250792 427882229 763325602 806033956 915098809 298578269 445747065 199343425 818067498 622425095 838460421 157572146 255295249 840448571 533170267 295635193 885367423 609816096 892931200 838932866 439818844 880454349 308662317 793807394 399978500 862464133 812037499 910905715 941358933 943079374 769724539 134908052 669087639 905775781 211059482 628507846 907728060 526989682 143194431 102394869 793473634 953014552 880547386 648178587 579983520 392293362 724407216 956417070 307433386 841253831 770138635 4963134 580943301 148075223 861716776 821291995 612062154 510951774 975642295 950387904 389975352 986441575 341950052 198756364 18567162 403493145 598656297 885723716 89624398 312237873 628874921 63575980 896483295 754595426 995682006 596079288 800231907 743727658 809039799 958245491 803712023 516169819 461866259 71093179 993984071 124628267 506436003 474366655 780495972 881947499 211355701 989866187 340536730 447953794 884578082 863147163 833640173 763550699 795637318 862767737 781727990 136136212 298415252 726153524 527750572 878335681 807256496 789553789 790718199 698390537 979552431 869314101 744236701 696531214 607949997 583156083 39216897 874392405 297863717 572893938 753495365 973774021 123279287 301747959 751699237 551372454 770314334 632958499 221730223 999270086 261328568 381524119 668417180 890933915 126880523 797477418 812052810 797961474 825446762 258679040 338987320 17805182 797823213 966397442 563745749 647828657 556275606 750547700 792484877 781936216 648976747 962498858 737020247 350667535 393103168 957372657 178388184 227718129 729667894 720566331 951463509 361151758 772887485 144129003 485055683 373721199 270925556 373788165 441465369 902760080 534570557 837044390 667985802 179292135 503124781 747815107 871228537 928705348 808457860 589454974 251337198 754888249 915944464 235630122 975535618 348814233 602463992 851729502 574373570 960970625 650691641 263616910 882723724 703719563 761392597 790883018 860689137 888954902 965548011 359616997 786081320 7353799 340200290 325714022 172943273 639202561 495430249 907908149 841797294 296811745 968622902 204597440 790851557 577602300 925735721 613600015 498116720 798987560 78979820 149204926 42273437 477000491 387971547 975387995 957643477 375195626 38214726 129914926 565576974 446236388 48108371 750665939 886658983 267919201 765718475 450032557 570323 868105781 77117594 613937369 918103333 462423390 619173374 444830595 392382581 648877731 484093357 464856603 884653145 569421444 868454470 835873977 982776990 81905466 431244297 809008902 262020193 884385308 880554686 986029838 747949121 601664230 161442916 464528752 970060169 854288828 792424713 51506111 986244662 986002665 888384640 117034628 40102108 945427985 619543411 470603907 827439483 965618328 740459956 409113687 646529120 461290375 317961951 165748780 755668466 789912983 771344596 955086024 764767185 938656792 771247693 868273290 16894475 84796336 744980779 193361410 815731143 678648825 737020247 294068991 761725085 214697738 953640671 851882383 363451811 946887239 106656495 104040640 744449123 889952668 998531711 932285236 752844895 923346513 554872103 285946896 837014373 957741360 249863632 886629922 570680536 596894038 884099036 202730523 907438551 874450357 917776686 206836464 829285339 865731859 25635172 429444108 371375096 740190340 145971744 67733662 767307942 948444266 751066019 734063702 149401442 467387758 938595532 605797042 57398713 861055003 857053556 252421148 28957896 453937239 40323794 337010674 620506045 743455060 936382833 759825529 71869761 428375306 46764671 950492094 34295526 827148995 981016880 714304010 737020247 939376343 575195821 749563634 444786715 967808483 277755320 940007442 793472230 747537385 621570601 885066240 875748389 536632861 2407405 335416362 333740783 628132322 638896846 161275037 520048654 874203816 905169145 972494064 634669368 28941796 789888172 909778608 745344071 480525082 876373125 468900920 703457778 286796952 987921882 836686884 860510700 687300981 974188684 11004402 388276859 981485743 990657051 772002453 155479889 868778118 860788308 821258049 110932308 852067764 33619665 839331657 97976939 334943695 483626792 365917336 384759401 913970934 936252074 939505332 45532011 694449217 982476295 988130346 447228203 39149316 186091174 333346513 993853951 785452315 951179256 814420555 613882421 897574153 789541183 866251031 390314777 345771279 818351686 781873554 516779673 462682024 306137736 914515960 383262955 944502422 63815183 8863783 619443427 778426590 668416130 378246024 180856032 84207841 437139487 797292784 262163266 766768704 775851980 136155237 527497866 132294444 738280048 688188060 885523547 951481304 81894965 489077227 821546431 369317913 740235436 868914261 841109149 400205513 812993670 854283172 349760250 974147400 57808614 747007360 756132870 462063303 346747470 922973406 236863081 178355424 829301691 801666482 370765489 697459517 811411841 984816818 514909210 845247287 393252591 125123303 412671945 440894056 16206322 388211059 993599808 308118954 553674391 579846823 196977618 997455166 913434709 165272462 986075186 39958206 706864682 913041774 495841780 106531781 543600882 937378224 496932463 998449049 109439148 759225498 806288285 490488701 899315639 798941773 779889643 337566400 900148735 564130588 873610677 960769775 871508448 501718555 252220775 839553750 103272224 856892659 747671124 875696744 280567831 298021561 100442449 737020247 863935402 707508695 209079007 983566216 828679736 411080352 800273881 809930258 162637353 850096064 800927718 342121606 66759853 80778139 9766335 531867691 436143478 364831529 871578902 547197727 855118755 444587732 745695895 923925801 569451262 293400813 951618402 49081870 479477005 816885899 617267919 516841555 982924193 791707936 803649925 835329401 384482918 965248795 884388358 604702199 474825752 56598337 144824793 882878310 868012783 935036697 185107473 205845803 731038003 575972269 133101714 642129358 854472423 411749464 745347704 688238150 565227276 142170024 762910526 700581747 559617478 905589629 746714994 820968279 348693026 163593792 936778389 746287780 418457462 334168603 158376768 743259078 933713934 936937199 834539585 713803559 887301505 513746601 871097644 840926436 6610108 545981013 708767629 972405203 387130303 987536124 643084610 799113139 106899051 836042272 608083160 495843115 909925553 806145354 998542442 938337163 22573087 837663631 826815038 704849073 911571900 407718565 261002413 680257834 447205685 478880799 257962516 762876401 641142323 351896988 959167433 744016450 251878375 91952807 288931418 823061141 975913663 912138007 75366480 757044813 688440876 995494040 624096610 777408546 28903634 917592696 810783718 780966034 177040649 867256884 783828285 543972135 799714839 414438568 312915068 141908454 80401884 925200071 885314867 957835084 819150522 809642698 821349898 919271809 290040525 449569119 814804268 716286676 720242919 863113504 966988118 578625199 613948188 641053261 813882524 903741156 341358062 285157561 625203919 980071762 37666069 668682359 735970469 699296498 47807648 996178462 974681099 944125983 960876300 638727787 245702778 945089125 612625167 805318226 674667379 799449087 764257820 867721090 153561879 155106133 554584960 47196022 862529556 320041318 761736951 888331757 439592645 691374690 854140144 923742335 219731267 689714930 955051910 90339296 964519523 755637115 249006633 649910191 186818129 97521587 975097153 878764635 16617902 876170064 976460952 32454624 791888065 622540216 785862933 999062441 773599188 24479641 42841944 990767866 681049433 965896546 523237686 543195316 456079521 325077761 249148289 146290022 921640120 648124169 445138041 876603940 248591895 906120286 225364145 974539239 999934443 8609306 972701122 23672171 874321736 709082482 3106930 479134861 79223864 926127313 377290333 808478368 117535437 271730771 794308210 49423242 893710072 582498214 185356498 348848749 828779129 863426122 968934881 182215828 301606350 953305522 63217949 452467240 347757391 770278975 97345835 166266273 68150551 616160599 844283810 939316055 939907536 756661454 365039540 531789189 897592552 865112892 889970285 876281516 366706790 412543241 25614329 125236684 829925166 471701596 790280836 752507363 351335256 914027782 888035825 993262309 894020777 241324230 963520815 911551083 71382323 891204615 214355173 896884715 883658143 508907357 906336146 853469678 918383288 843662830 56918204 951039186 738118308 516303576 225696356 928384282 924172941 999564561 709402151 862362458 361521594 861337396 661196659 538986658 813070966 841071769 427945360 939585969 790984763 481399185 997820710 591009919 408813335 659793449 889405555 817170129 775194459 564702142 654345448 9364163 984868537 964547401 318490596 706070567 742983124 630963002 839424595 819528794 946919114 349859519 825778252 253898529 858274492 812396465 972467509 984296132 899724484 891987088 243857946 717611780 928748347 910009586 794210811 719948995 218121312 786442190 433404361 710864666 737753771 573851072 990987151 793032254 894281353 427635062 842287253 420024493 425969598 913213136 532034915 868504046 757383058 916707169 503683485 553129103 762078887 993281797 388953459 904868805 37061336 657397398 866123304 22811385 488715252 619522372 938061593 758069283 489675856 347026067 930143104 814502913 803523526 523696176 781216796 864209813 741066452 950426781 641351000 642440808 742551967 843023960 186538149 669727944 525792629 363838420 888436290 694566739 805768582 800974599 950913235 809898807 458198069 119597505 63404902 425973831 823003760 766355807 87268800 857819095 831596606 714783029 442885776 667209953 818168909 945399748 782089144 215375470 625012864 402873935 360822003 765941935 68062550 439295060 839892254 39362035 10784751 863365392 620281855 757958251 272047711 114074887 869097672 80788429 722593329 991641005 935152004 826817824 35645837 966984805 790034525 904126624 759328354 862361869 132599684 162093740 553553406 205684137 748093130 562901737 786913273 25140206 468354664 909583118 852392423 964659387 242857131 3674572 132120761 574185773 133174040 943838889 876583272 412872591 593413146 26467366 835439905 656036933 897669119 932179668 793673729 553951758 469604341 27075413 776494947 727317039 773875910 871209549 834547560 594934347 949826451 959581141 260098051 806131170 949276950 867350388 890900096 993765460 547427305 762139722 921191820 744841343 836216780 658137660 741216026 601081739 129860847 43441601 784760263 253527029 91980394 968268064 331079220 691852656 873076234 772765413 903854317 599008234 990197207 919477009 629359602 179690611 883171661 638642042 735005328 937561610 284458154 664950073 902359128 867612168 692542492 190258234 990527001 911696576 772974615 78414364 805154662 713999024 481605776 839179361 369365548 943848949 158652014 998726443 763058275 754348150 766006154 260520126 169571319 961030504 866836656 938763058 207895614 293225514 36373498 824007047 934506005 864291412 589776049 607513544 189629397 157955504 744809345 925882733 288713954 293006461 676728358 848745693 34565148 644733352 737020247 966405766 829905810 904037995 676446058 679974158 752361646 89288037 968952923 872733362 801384007 576026742 966572431 880878468 741033482 363393299 180620601 991013276 267292534 221666202 965309743 345305553 899546242 867632294 426196454 746281045 852857907 604505167 914020120 702391101 430323831 773964741 246005077 294540100 937101780 934752805 747273031 550938527 107165011 497768239 314264757 160888943 522975589 801259963 848507512 648286437 649347037 58875738 978106441 937806277 854494727 938768958 959316135 386681826 986044850 394781191 851560748 783725469 181324859 566772070 749426784 384988310 837114018 957251237 766429644 723226736 880370913 757440411 826539121 910570726 804494766 848485791 24605664 739899699 998909469 441428561 77909968 373419093 893989225 816802748 850599180 779354384 758209522 977020366 107999991 915824345 784545856 766497051 511552133 868475444 923758754 928034327 129867135 96036862 992453549 250087903 776361797 796640994 244403682 535769359 60357542 983103136 949615164 759265177 637245723 359566612 65222037 671862576 497962881 981207349 343154968 167591852 180152933 295721495 435850762 929883642 856019814 876176267 890334029 922936093 335213876 741302464 482350849 780685891 256070146 782746446 352776093 954237663 530479843 826533564 737020247 109997244 511021598 860713560 486420225 932800568 208497794 949136625 302308438 293923727 859466365 665617594 16733462 670094686 887153593 939751915 917992585 391128401 699961985 647819229 675141242 883769387 218083729 610233274 554391493 183788392 647996488 791344031 473127778 762964378 892352401 820632442 491574618 971544222 881621383 433273392 149503318 13061296 882060550 204289167 846619171 745544822 617577957 50428757 636376653 722000205 259952259 690021484 972287934 999560957 424011240 965710645 635880265 450466919 944433075 187765472 850485268 816610155 750978130 778870933 635118158 642616898 660273537 978636054 82449905 889276966 918313942 976290618 183434792 64884704 833502550 455437477 941100061 447118208 965404610 564166451 767926640 389345711 859497309 88983305 936619405 992790544 800609169 621400017 270163012 104549441 711794901 927089059 784087952 458948294 303161693 65776040 893140044 818642831 879823820 961388616 836954453 892818082 867159953 209531874 624069968 894070324 142335124 200166109 912361519 172735106 164148887 787886073 371807007 947808557 991102141 699438219 319748588 940193801 500052045 863950008 820023925 154854025 29100205 981820526 323690633 930921303 632508935 778703187 816952745 890312803 154194273 880818795 805697143 813726044 830897910 295297117 837923074 589590245 949804362 846153966 839081502 356898094 460939476 424895606 789930851 571765118 988678775 770305262 776861205 339340031 20234093 345728413 897208820 616010000 815954078 745446932 209902340 47141272 59620270 293694936 192401011 841783653 374938081 819307983 725916019 886070260 175390703 983716431 835846391 563077760 744253050 774205654 773617237 671365882 988235501 350550035 836078588 367832841 822817942 448391269 492926684 693060376 855561159 924940751 243409719 904427022 284685318 889309385 891909441 385981432 408314227 483236561 886314434 780865255 175329745 817064024 120721202 548920750 475612465 768369131 686331131 773676904 913617252 981726547 421244712 992997086 548784103 964282844 663304624 861137029 397315514 645845397 982723341 819254788 981629240 894911849 999464584 871381287 55619899 884782344 862209136 747067467 918990737 795420434 834161894 699846154 750385403 355301796 473239456 865491340 791422202 102807323 466270164 777831957 823013834 175908052 981405288 855828635 698683093 30477630 753147605 243564001 684375701 979479372 599644213 653768270 20732887 837667858 627796331 914366995 44374188 905701634 542577488 867413698 662447645 809099999 877650594 818073639 950174728 3406734 135275635 326776293 461985464 99998132 547560707 592287333 968501627 764966285 886258052 884399052 640700319 70323921 17421203 686956892 836553286 932154920 867212440 200947268 526163218 161217646 772974675 795851885 975220861 246616597 156964606 737020247 143013264 778558347 334426060 803913878 778712009 933379900 972077297 953156411 435941591 659003196 949439066 810899339 248588807 98082382 798774337 662377338 131120534 492637399 990677936 869800184 317288156 919393455 787416635 65939942 863638444 206178358 296401866 202957974 956571665 600972655 597792522 780179760 140216287 747268689 802097312 748691322 416820970 831582641 934286191 305310755 233352923 633236911 921043023 444151502 823961273 209229580 958146144 42523089 452441055 971611309 970205953 747417742 976842736 76478751 916498262 88707528 348919123 836560734 884333944 774239514 739282680 457008380 944402379 606233517 446060953 888191934 733244609 924654635 307381271 15103591 877098239 197254492 989886669 939874113 805405915 816914556 921508019 636247195 831333833 33642926 961276212 999142618 243356145 961339254 968760923 678330154 960332670 991330783 50772207 811744270 422516750 761476474 805692753 694887815 927965869 835355637 857107015 916109433 971106082 797080314 253468918 774189817 526477432 770804254 591286542 121551854 289046569 562240947 572278109 261880243 187090147 773752812 728299924 194939275 780115190 909171012 549582040 453054697 925688104 955332283 690747503 988467592 879953978 191013374 926526133 691846406 227695791 796196305 882430340 882582739 776939917 353191796 740085902 487393841 396708187 707921143 939396499 235674444 700766346 888305332 262466496 364470315 811004950 435900886 220930630 826640313 569161761 222175260 788266602 253801548 149001919 932687566 191352098 127413455 428080220 463516208 213764817 774345970 554836295 660360315 18341179 358640908 762253474 507870402 956160370 967179660 998638273 378099752 485340384 526662768 782873475 788774334 418628895 729874889 167832028 935994333 812811644 993911079 497026843 956051454 500177677 588781375 990423814 883297684 621167674 97739281 996739777 778397673 844732871 845460571 358250714 956793701 541814784 639625810 787989614 773128763 297031566 984994498 951795507 760167390 839480368 4715818 952726336 204954094 678299448 888761484 585549288 431014350 789518883 930758286 597090718 300153333 481141716 928784381 852204930 597848096 809578570 243519751 644772658 288717887 79482332 817853703 397964696 912315289 608163140 535668017 895576581 951698969 822306250 749522579 322701215 984148846 881644689 701181564 835084872 35141626 572542914 944029195 96179808 878831310 477215864 871723384 520844102 607958905 940857069 481328368 815077757 747314041 767342737 596806527 167973741 296881612 818641431 116467127 861311581 756573781 38786478 874336386 28703702 918157064 923898753 79181542 381045006 199996968 972551264 195614166 561824580 405141400 862250703 71618398 373320591 466909022 70999591 963911262 674891127 919191975 173921112 964331508 935262620 857095808 592466548 872472224 190372738 3002910 768707985 986163800 937817405 850968166 369979247 756197378 659463511 202933429 173571525 514937810 862555723 997483660 824622410 860797606 886465442 823474769 128117538 469927383 897974478 892623688 957881809 996977441 579888850 647855446 749080806 853113078 789161303 867772003 836010490 393563039 913436858 931887874 481936702 905244264 123475357 823754587 563512463 33681965 573046683 995588712 890343409 203528370 565433658 635669808 867550725 936371588 433366429 73918177 939342082 790492540 112776026 523787547 801309835 677030555 950722927 118390162 820210359 522037684 689711989 464812281 321437546 106075633 231733716 655134723 589519000 848920769 856972184 126826588 143932510 855750887 562185274 926226911 768056384 237296926 513774068 944782111 35217518 495251925 812194208 749422382 943848988 769218255 816150864 689934996 405665992 760646650 423934531 713629624 945360838 47618339 413146639 81180448 900532974 256577605 176425016 998064750 913693152 996357604 235205081 878288458 605990749 904260847 703614810 962389607 715186367 719033436 891728559 757975364 931479455 737020247 521461340 423067586 341414759 789124682 879983082 530487493 856884078 835430338 862657756 302842289 12671093 566044095 762483920 337203494 719657906 877506448 211197925 537780171 995821658 740889093 60581456 692987201 971051040 273147113 378908343 951665809 819667672 680753880 931698440 656619676 813978845 395347358 214477241 911594409 814855335 68801974 928120755 713644742 208568760 799436611 525590711 242710330 280512942 434383700 282491877 207084853 949329627 892233168 21014020 991914090 835125943 67426618 474966929 429502142 941092255 922970792 952760165 829203524 248787433 674937023 388661521 438198730 788643951 736378689 992799842 588145840 484356157 270376425 998478537 913947654 491386435 763604211 14675669 612241770 769020430 842832084 948499015 481958697 782710752 178059057 421144030 457571866 784551180 882211001 278258095 2835291 431929517 283683731 782827764 320879314 968820642 322006145 106278170 802450261 887156477 643792338 933638510 763551779 837479030 952065268 227321913 936715752 156495204 987042762 657028823 986435067 954027809 747691764 949347617 138749437 918443542 936460264 794178718 767032271 443635708 773608193 311822657 361836552 486279638 575241129 116955795 949577918 549889839 823428809 488276983 964363622 790884803 805515616 186043910 799914155 594594442 746527908 439292120 811034384 889818698 984688759 916496988 86172063 908559797 627261738 696137040 550402449 916502582 717161545 804706625 797466913 986127323 855291046 220046577 750674826 732024336 116729955 742728734 528389875 910289896 83873449 961954128 726796187 285667436 103967019 142203556 74502696 204056292 39182289 877441953 876072600 487963297 811498806 683443893 659333860 206451958 913101375 534742523 653344117 176202482 380807540 723902231 899255194 614250634 630267778 221205153 363813425 358320759 373144179 819856312 211579391 345170781 549660846 605206252 928735982 138861478 619705370 921880799 414839617 930942032 928450328 588779994 749505215 894232147 938566802 880831877 568440526 903069997 848736407 970844910 390767722 810495046 151273860 287639208 985810114 942947596 771220810 657430882 247470765 651371329 560932487 729822463 550825627 832480628 942658484 840061529 885010011 420587649 615113576 233350226 973911902 992145653 975666919 758397596 884979852 765789700 846679055 815458072 774055662 810373446 553123820 876719769 372785360 240278703 748895311 897919697 647110334 883165390 310218528 797238208 755965588 458398805 797151080 949095443 835699534 994060774 789128489 445949465 92287558 894000992 737234640 828685553 456658225 969109550 465698182 223874836 737358868 574011168 65863789 913797805 194005982 342989380 546645490 101180926 611369114 847415012 974451945 301743332 352685804 73373444 738458351 369886919 770789435 477066838 919459496 918007022 530718388 758972266 745274822 425304915 510229123 542583698 880649652 357658681 741472563 328904182 309116112 184223195 532879133 500790775 991214117 97386545 643904871 186072829 856079935 775977713 519112733 945739263 415871999 932525166 836005357 725684995 994923070 342309363 935628249 856152592 806991346 843229219 782837454 906537548 600737950 867253729 651753828 838266451 825923082 802086656 557247743 999818512 849269750 853427315 824850320 792866782 869307466 781504062 148261606 580761882 212764329 235065381 758883862 539895882 323972841 290076780 891228356 787929505 844808025 890757357 784373563 817689178 866414285 316031783 554230905 810570306 994734644 173620074 52647684 831839605 468127794 45395050 997138472 315003833 740150572 913344445 806507981 871868452 13623018 128057991 865296204 717964578 36085363 308091870 879368875 924524795 459431906 500876217 784728964 741350075 949594211 300205709 539717201 195231095 736137822 518166684 872884854 350118320 826706818 944670279 515387203 832743877 329359126 215751640 183597462 812406494 74678201 890864118 3703999 854313545 823091067 252585400 249455422 360209756 488794775 875393864 134766054 997715404 111177988 822491724 509819069 285165018 572210737 897367590 810119798 769776526 859407016 801305730 954871503 522728117 54115365 916526770 538352973 861751089 303198418 563353814 738132570 959127756 901666994 883600474 349696387 311426558 871609478 431921589 131235869 437125626 746300940 883659859 503501124 75918961 202790487 768414594 510186912 883564253 517605246 744897666 761870245 202454082 869022093 997111614 582599716 924257933 894883188 108462415 847702061 953705415 946597608 920650773 146073925 367523930 968813885 939514088 762919701 50694969 835107969 776841466 887347961 895323084 141879562 851693720 846100332 132287646 694365962 529754098 953804171 198569536 83789783 346648426 909146559 882669233 536240042 877721310 608645232 982931883 814279385 385199414 952679136 674003727 986920539 854867037 360985887 882034023 478968965 984581662 822816241 641137644 332192154 171802146 983219750 970627727 34102440 916503982 669620485 600629420 663234683 892594248 80922306 595575599 843499642 136640932 745805179 103538665 754402728 910515456 854019132 782219265 973712312 798824862 792048273 165029371 866567846 165573697 178773272 585004257 699143770 883097663 88327056 846787024 879520798 507201181 385643294 76962282 461030626 936998744 977342142 817420566 130926706 873021711 951261251 811888757 695860398 147518201 808157212 343813115 450995387 843944009 304563346 794713735 857170434 870034357 907802412 945047939 828024529 951861011 279899814 639275230 951356619 799300574 748030788 527568493 194690269 888527928 82175661 464989871 819516245 901715559 996764827 557053606 955310190 149479472 565206683 904630063 329831528 158734100 998773833 773703657 766881704 871475405 972884581 72793934 825980018 365724072 153011356 924182483 68352772 369469990 736485281 977714108 735975357 644844316 183822696 162689480 151453233 761660942 279487078 942816450 174975014 319410665 748605581 410235952 535315098 817085972 745154137 826244972 811481569 805508693 548578064 987709636 835815352 785170784 364568089 213937949 75991971 913621688 920855829 51278129 892747739 843434528 847258159 943578746 871170447 565810899 904536781 802574430 969659457 862026912 473724300 456995931 63497212 743994871 993692768 929068705 254665576 124335328 638559185 148467456 242455395 959572145 609862438 299320890 449976348 968356515 819934512 500045171 721594031 901691959 80028341 823068235 801609563 115687227 671374058 410309476 512347870 127174280 630786258 89099992 916192539 927046096 268914378 761216531 752701576 786137335 908941584 694638664 802558586 509806632 945192447 862757311 824472415 634160961 707325483 129024666 898258326 416351369 383882807 459303180 765890675 45521349 910745538 335089418 987074879 774959463 460377533 412329220 679323407 730652889 659624546 854214917 777227971 456265763 890165777 81692162 840401569 909898026 983083317 876615749 877521681 158424386 290619539 503361122 554634847 947912828 933655585 774094250 995144876 456463821 324170243 289594387 861129066 929349627 504724758 832795589 745607385 359414573 754900213 519168534 976592597 809346942 754903963 844139466 743526353 716338462 982841622 996603786 614707118 592623603 817132315 894855851 816258252 773158969 832848895 808055636 403464008 693635466 946899158 501529766 915366072 635250924 253829403 764440376 46984745 984868831 399171784 958645244 880943222 631228379 993832396 99773914 437407106 770647760 931552790 740722200 872646292 796854673 46954473 54936365 909103364 891981846 89577140 954014038 493438902 314650033 793900465 800976104 955388804 797551528 395197841 939308735 994735898 990732458 261016696 931666759 742374047 391878350 469056844 675855350 881245295 868940190 45227837 549815537 878983270 953196454 198027560 867571747 51287479 980016604 741595041 892779994 65632846 429131081 37355491 923844889 444094310 964097268 18735972 883290070 459091726 693718956 42124385 917107409 854038974 823816189 670122811 623268728 69624930 858638627 137555577 963570013 859237399 442862662 585696626 508523214 395769770 793243601 749543827 474448862 884623486 372456511 636933911 473713987 912322791 900305074 759864494 593867315 369671940 537369806 995927233 314675702 859745991 979440237 923875260 986251398 210787016 232707656 686745294 722093277 997546883 958330033 990704957 665498645 262239754 906703508 973296328 806278499 471890513 933754048 20471994 762945024 937484515 487675530 475710155 730157310 123683492 859072244 798555709 896485086 646195136 685072605 130150145 731245473 937521676 971522699 393666180 873387706 464507965 874753090 837265236 917320370 310427818 758028745 763757365 962404183 257335826 940972188 749404759 257877026 339478306 42773611 409384220 186207461 228270941 27073080 737693139 924117828 757017429 577613463 794637200 134098761 772340913 142831004 300166261 894205312 546333848 491684181 753364237 370954223 706722907 832812173 628222922 602130194 731066447 330869685 715269544 520569276 232489358 160472066 845585534 374662430 282058355 772800859 202487058 995285058 738335200 953662265 252248019 253700642 999550880 302816879 621614122 228711414 855381567 893146314 925142229 915245580 882238455 581932739 824238143 378292807 334005561 842584900 817398353 147800903 828430671 667033352 638659105 700651253 907388477 211336308 406177861 401458328 866308768 655056539 814853648 894116195 646174325 219446690 991794959 366453812 915074879 760186740 971682508 182355975 72266923 654349398 739613442 467038743 345052560 925306159 214649679 888346394 704802788 801739837 81654 158962149 250762501 877152925 791757965 258805956 974095740 821992542 769973738 18173374 737020247 781485016 675398897 680334547 976290733 880783056 476201840 803956364 60340731 992378422 878688110 154019441 848385689 25955520 891570374 760401455 975380530 585800137 205177224 887166045 134066738 752308466 791007710 890993251 848880662 549377610 530794861 913090616 120700262 930238039 930491083 107009768 486453305 223123527 934627193 774547779 811650429 175321401 575185390 906720291 592768276 816833770 989574708 779144312 793142761 214145358 18079495 349668665 998656904 882663976 852267888 969165973 830620701 460255278 825520955 978777709 813297561 6974799 799964120 890349119 830671613 520137512 78380579 264186141 883565031 390626056 838569517 762491352 482694697 148979119 50397338 996821641 128596158 741011189 575113597 73361576 275512234 547878980 364119900 34777043 507241503 170825135 461686618 162737237 788050746 910162214 875511756 845508094 983429285 948546538 211282547 948021395 230411338 925269767 74169719 832951425 786700082 906456990 931469455 904118318 687921922 175275826 856960510 947128920 608427812 524685264 747371502 898169093 570939761 381779929 940156790 190561431 597889166 703168825 408430691 942527384 944287811 891495295 856479352 982595048 832822699 993570350 894918693 906648240 478142732 987266619 108941356 775102455 809651234 822367911 497830279 961724073 656124305 631196594 886845639 991290451 209997355 773914379 166464363 873275534 746006759 866635315 225585494 394163114 18571308 58863353 948198063 723528986 906466459 934384125 553084052 657008925 752142289 810353658 874347418 288086731 908229645 285906659 755994167 278320692 207345190 748741311 845781515 179448165 273644785 392573532 766431715 442202374 760656752 990405958 759816997 486786037 834877152 896065418 744839739 545476468 752160608 131976250 972735329 934197280 843704546 948893237 828929945 870465919 994245771 509204319 36595238 515819982 814146026 676794948 883570350 753339838 991576468 891237620 930995032 156841550 829449778 776760228 421453169 887062568 933448505 145532982 370148735 496158439 173214687 140651011 852496150 687898428 255182981 953158861 811662388 846938703 787184816 555211316 403115255 563000472 156372192 851814435 968388927 366014550 889338255 580849777 186108897 283140254 330089936 822496159 958821778 656495386 922976259 866928029 545334038 792185881 762898447 911861225 847393498 138147127 831008910 984493659 312715163 893585659 788274971 930661399 965432803 551184912 818948021 2478147 225340055 930786677 928296234 751398702 445858441 147194447 814312264 515444853 670860723 908493076 203691572 874076916 478942991 424583580 8172835 638472386 675022180 857771513 837210811 764684698 495895659 793444760 632074425 894820092 649067178 805196281 266494550 691729409 291316456 863811261 255658647 796623544 882455543 955841615 807091321 568270862 161549598 342500068 155997003 856357617 535381953 613707222 802828562 192128883 727281125 49078645 443948659 899003171 567677723 103072811 681470701 12417347 105852520 914158121 16315189 163988935 850814443 18083009 319485392 988762702 750548294 853233417 176927345 254423128 853655479 824201578 849493514 944296752 133635102 800990782 313108392 833365493 213518746 899667518 787911648 839182603 968364090 530965561 466471980 610852627 853192369 709604453 912352293 926161739 878221862 803949368 439445545 841282315 762605801 818478833 198488880 880880781 606181176 877033870 991417918 455865359 375355207 797445507 493443829 927113280 67282996 222719341 421248767 868966412 898979187 816617050 149435850 736462971 744307445 933241975 713200315 960792005 80105493 84969537 884705369 206198206 680770641 764778969 782361743 679317626 243533818 438942127 415745037 573036954 532149151 873874750 897518956 944713542 510690494 959369069 761179098 337943122 900704572 938990189 842205923 866054046 368504016 224624736 912437821 18720106 636823505 891470756 894384079 193061406 276261054 258319456 912231783 792033404 239842757 752166108 281951836 939890623 161092590 838317318 45959917 741464612 836722130 362986682 841718887 671305635 833327720 918014934 818561578 988806616 784484960 669822467 784505184 901115053 278927380 846524799 788433227 975740049 585641590 979647739 79948226 964348861 311261556 484974655 824638463 380944668 110521148 972383683 858390051 850500200 302313549 64560629 800481477 945379158 834318817 829957105 858294784 569966472 978297966 564413744 152890137 820604087 916900086 737989561 456943806 579178481 109213575 233563698 904421652 639139553 626089673 815413260 392345719 45082893 674447154 928380299 673308037 483670053 397326460 227974274 851370569 933307660 981511164 959418132 105680878 814250909 521099057 537800038 431958140 823197413 543129180 909137317 20194661 163044367 994436418 868032961 623828580 775569882 318167633 119580344 441888425 816221115 192600579 917449824 802911163 802570598 735868690 32741517 907962740 479393746 859785707 117640072 975390107 525577351 853946312 674759366 280603189 834528171 289328893 755346830 126265169 855838081 999920750 878087796 726938348 373100173 980259914 767949110 855597614 610832891 275947488 952389760 569828014 119789153 850920284 712371545 466378972 552010985 74886006 791416566 912510408 935474927 810881924 639256719 75093294 739606631 454257211 241243664 755305474 831694959 790569578 811524821 950510137 221906316 988438779 710976085 330980763 168469191 607758568 898968255 852700252 788410568 777432514 848725827 617140350 986414579 771545090 785593164 644962354 137880086 370844307 870594324 795040331 646222959 975990310 677610575 589530132 245225826 218373187 424138418 943108063 856883057 76789061 798793431 244538784 723460028 585521664 455562941 313419423 747086906 87073537 805692381 684634403 973779043 963900001 863765381 988902054 927012083 609973970 75961019 434601867 313661707 911938826 883444250 804877803 873606942 186662884 208617790 179444996 116273552 413407137 465673335 569487561 882589773 429597916 453680583 462178568 871002560 618562151 935685062 2711128 678239495 699899811 568678865 697854942 953512333 82669032 454657569 934721513 692620223 395492778 780165113 859682432 869942896 191379950 820152644 813924596 778345346 815957953 841753381 991187485 881506862 970830359 888854838 978241488 972545345 734667391 286364579 405499127 489547048 641810017 807901485 21585646 875697324 758598725 431879324 910706017 101488551 798777229 848849789 114257245 697812381 748526440 763076584 894662035 793195269 907050476 969404708 768793273 144874190 393501121 767503186 311749728 331367627 610310424 281305944 514606777 933145469 675205088 876637018 406613548 914367636 926826905 387443261 790823558 951907605 949599575 695143599 941544223 964337455 243360443 957586470 850525202 631590945 147426607 937267028 949372613 923786404 792361559 804417293 873276926 924802312 892165845 946052751 809258428 217064581 911976125 919977896 460584824 368560240 984409863 972592011 41553345 700072069 844132914 808289067 759067211 384205287 454966987 335311324 560282177 44215508 938845893 830574757 775456517 220906140 749664283 701921878 972807734 964999433 850985537 154649059 240532538 749973097 583748062 930638620 946983376 567055897 916328268 776864935 709273973 931637883 770584047 504809079 998513670 792529531 386412490 944813121 756301389 793189054 897482204 950436890 514295598 868865690 992432354 911302487 450820056 164608292 692951885 649478022 675214068 907015027 204893191 307339434 336569631 691519387 965164294 888428889 348014058 912324272 867459156 155290562 836560671 770999206 918676816 855091480 889515325 782415797 847823269 503996638 970804660 796398131 848917669 307256251 491989644 795583504 273147485 206016835 862925251 273210377 861352818 996004709 200134421 861274539 578544980 452971850 347156624 944063937 950093265 160105091 28990693 484739379 95500631 57642262 320261807 768334634 655672157 129681248 725784004 747109081 507026396 890456794 645645192 816649401 890187681 971468793 281930082 607006967 847215122 898526701 712221703 254056335 886432254 133943049 469093814 369781721 775760737 383097384 556518287 924395177 641856216 848330873 511794389 880380696 930785970 922373372 812070803 223669073 417437021 777862850 902712262 106537605 78683173 111990963 923293916 958135750 788656237 832675977 421549209 853254867 807086873 464566331 183136948 868148165 511333271 301128985 622989329 682866976 910021098 947147339 531194870 556595767 853879826 578980006 291059021 851548017 861669343 246545185 315247879 25037578 942000883 198792073 356302222 176749551 651811615 771586273 381981973 991996910 938105192 731812090 796972890 944238013 684916148 112720452 824136224 154362346 838308206 717552041 45185499 788808524 878909307 752438804 937966544 835280048 794197601 375460872 769662868 367190639 770354050 839082547 933822795 74369131 341424041 369678766 234462473 185333698 382351921 991158775 165371447 776530695 572380546 776061665 732863129 610177949 777613501 881972992 789899597 300013471 444412229 503210328 52607624 746919304 255429290 10021796 19793370 136686597 745938561 46822598 775610897 97573646 532950089 165129174 841659005 560751429 924741856 74920867 90829296 323915030 352044232 794734512 151822903 674655399 15298051 808601566 320474195 71552924 876958963 856471236 423072411 797064429 268192056 305365180 271384332 959903061 875841962 724865638 954455779 860855085 312239342 941854912 245021691 755210309 388766413 457712980 42960430 818655370 946481074 977000670 95876359 840167861 885243184 54341568 886672244 371036210 781983905 165286711 846283586 129772494 994039026 78255398 657232351 762206693 182150199 592471478 977549926 657486059 858814199 156235676 825868779 346610625 523956897 348320781 559988199 770387152 236017965 810033468 488213696 926915110 629073377 932430862 593129556 649908088 117022423 981922152 857294652 992995847 759022722 634299234 989539721 773549432 565972177 694682560 647925566 632275959 543440896 913985008 987980773 771288350 866465718 600386025 747346262 744444195 368718128 804745083 59569092 996689590 881774974 446066602 987465402 984012965 753679071 469297771 918447140 852849673 762654976 392390799 103891091 807063160 820877345 974743754 271865015 925449654 226924149 756606967 934752308 896972338 135792412 820172495 748074240 198900995 911024549 975681453 735496163 824567704 806526923 986160338 950586773 604292643 932972215 838400335 662830071 261159347 942500701 933381938 721294039 944548785 989011776 887003414 149102493 808135942 361261358 335875979 784060470 925279299 809238641 539167482 905639354 741398141 567443092 880074878 794292028 339700986 336207909 749779236 844385492 24903147 317740872 783089852 507166383 76088672 867909404 924273762 251387204 754912396 853768765 880508865 601437172 348005173 69340722 258998653 808826424 743282737 877488131 777888520 502882207 936187201 904306012 896043144 516868768 826687812 744216683 929662375 827734554 859169160 190605627 307513255 698349718 828587566 162175763 25166270 101082386 666317918 181474009 910702675 159057389 780707409 154029572 935318136 958670432 867865260 870882518 966250628 982958960 658092481 776765960 991103259 935756404 811954742 747291166 275352252 913849952 522203731 8453630 816893340 971749548 791085758 695459465 788914303 820361438 900595829 983114797 833719338 132851102 349835316 448364889 47197517 976361657 809509319 216167916 904073416 923573169 368974686 805230808 754492231 835986372 141247338 876563653 872868823 181642023 230684265 772697829 482772707 734446108 73617883 931165508 718696935 288834862 101352560 446465169 808398776 828897678 997502452 543772389 105138447 766397515 752338626 753521116 812852882 60767865 860968690 930102934 835563927 923782710 871909943 528945567 307293139 992905678 274188390 20711027 774414713 730012259 860191113 380907066 537036244 884118295 689247631 792861984 537327827 914187304 803507253 692670179 852855755 614859468 776518946 70236493 212571897 505821558 949940201 581782078 811792657 807637956 770073304 929644914 68027953 801952493 728417663 172428113 936696699 463279856 909809903 824783420 963559225 28456153 36909431 875447228 54410485 602175939 136991243 175797204 506716560 772626837 258060970 789604734 988209601 99826434 835091211 774750112 770764136 746309658 71168721 333652623 721796196 791850424 768231664 935064874 545067231 640705211 628375585 970633905 443119335 758399754 856248442 984089458 282491692 910927819 882400067 774443627 979867376 2721625 30526493 24717662 761979791 450643233 907443956 955275352 535061814 647980591 982702611 814868636 483143074 640715658 573415333 905569724 668386930 743792178 621446261 751587459 650691561 855870459 749021051 976265099 37556130 890897078 81533932 805713658 947544969 810826622 272355039 331471090 283718920 975352330 990053421 527210120 952565088 109714457 593283752 475461296 789398745 39591078 598011980 119415923 892327137 227123622 475397537 834856261 773968904 59409828 94839030 974994653 808180431 810886697 163578783 64524275 783716250 286420883 183421245 19675943 411072557 324690234 128486774 3739571 966884608 764605736 289393243 949555195 768123179 122711144 44102208 806663551 12528604 916368063 737020247 629836850 97216757 828425391 427303402 778211583 310699774 793138960 620993660 202180140 863189105 869702583 431650409 763778370 986630978 20759422 701051564 248578227 877352591 920266923 784180732 884705275 152906483 265202916 553717829 499346836 780860688 971847445 306341535 306859715 192162535 7528250 37827816 965832926 204136849 544829325 908519783 449541678 957674246 762985119 293482770 34431725 883746870 401238743 878811452 976397984 241421115 495857593 818064604 606176005 770265723 90254942 56646939 479602433 120843971 225340691 944189234 411809754 218339211 822779379 705821794 161341128 552193136 467749093 74628648 428716547 840313984 654384922 238227587 837368119 953742808 291681018 370680403 758290628 892787711 614463956 971932314 565077282 637701452 770405430 574122252 299221080 806210389 563272672 932073300 950926974 662575162 396782099 843332655 128301639 49284685 69060562 935942354 375515853 879414051 959565415 205137193 943447645 928762798 281789433 964138384 545109094 968320216 801070763 369538925 636737319 769764225 483882574 956163769 537056411 215053915 809537350 776071247 362811585 851649821 870089072 791684655 103481559 973729443 870458701 777324265 802978200 755467399 652659077 863564157 845430408 766293083 625891015 810336093 939910476 375012704 706059484 232424552 747535206 687716387 925013077 317987278 797178276 947561181 75249206 349048970 895626089 760999428 782468185 847910185 958575588 868275961 20783851 570801673 345849136 656551739 281459055 262882822 514097324 55346790 78097305 804387214 709934030 767853885 988825220 960895146 736906836 304485055 908776771 691614570 753810780 884424911 306814766 14649440 182102053 616519134 476864018 735775659 412329920 766992034 482706278 960398793 563572812 932827637 899422278 899159615 430236487 812618677 191693124 985040664 853634741 632697983 116731424 787370756 841407792 493034769 967138397 833145151 783001321 149345712 729966365 944217732 732504917 17894724 974467094 758235730 868359136 346242785 921759050 918888510 950812467 78085148 605692804 193675646 58789456 196234862 949477619 887933214 283559645 442392420 2170530 625599946 166478789 676442292 864350522 972707382 820905729 216971223 881003855 884913405 763344928 433352611 765232260 921775243 876179022 991899196 92703571 967864548 189905824 527073293 262406095 831149999 955917509 612993858 874398696 489860242 535303802 61165739 922407566 527988729 653822088 335927727 847525001 204853472 886865344 398588522 446742062 391668426 882272101 814691267 425088001 787808496 612853582 843791618 677599690 891667801 270651117 322514620 861256944 612264029 822378326 184426062 466250225 319296610 754959555 841653314 775595720 383326911 974510075 940558049 848342814 529036360 141006020 37227108 359714664 51356834 435613311 890548126 920919729 813711393 881016809 134436841 132461 419385331 354077213 38084022 854439835 414075431 819798939 933496139 137335908 184344276 853934871 806535590 810563565 662274829 957807120 777751594 917535919 942522254 309733323 896298952 776176289 96598918 937466852 519892743 955872487 6675615 774587460 205599475 453696856 647373277 407066251 899865145 101088600 782681163 804044382 742304265 283524665 862228198 656221552 846448749 494855528 893227466 892619509 189236593 884266317 790863957 208374799 693698101 120981311 250348513 614672721 922843124 795369637 896548987 878737256 828386887 828341426 55579090 777517913 381639296 299552677 321685480 893984006 731172132 12004914 741601482 938851123 408147647 445912394 65164513 851868770 810041873 311132459 880175447 786991540 289214170 65098028 792274677 73897032 626094850 423167369 373292824 993653779 742664480 960538396 921456697 977641794 158281317 775384864 802802357 903492121 646224932 706622935 491953501 748473200 149571058 800102448 511087680 856242464 353216517 998096453 901324306 328605121 220228401 813086556 332593958 864553503 869996419 232719028 817068819 926197877 992345720 529581988 606746338 377019679 590231375 865261206 715107765 922171987 992233021 973094722 177041203 917850040 204357807 107153304 848602136 129130515 952917019 753876911 341022041 77992598 786209703 344732891 785810248 674803245 381635401 395429988 956935697 804182771 208943083 966986718 126089433 769747220 979533319 258572311 955814644 930936666 486107833 214445380 668408578 877836020 959233682 543397623 862131512 955454951 90003737 84365420 855211646 909008050 887184423 974093448 902251489 326860838 537305444 202497992 997444302 935700683 531190918 910217241 222028230 564670839 290169780 880946197 947428706 251635515 968079176 775387760 610128993 791518675 974304968 887239454 243899759 741644855 125677720 270668669 553328385 992366029 925401805 729074469 828362036 907766276 643519102 605287606 886044601 394717238 392926482 456299460 995316983 865931708 865780650 999534691 589025790 152906769 19205470 992427874 441629773 428260407 969046244 773343730 837167590 245688411 297305500 216882628 928020315 863890621 114129648 153452502 904776815 918461625 841113797 599017213 976750214 824980020 779139944 909624755 955590786 518336760 521170166 388678838 935308112 446748695 791091034 146403390 984740903 698775626 468427973 184665407 992765919 510195356 888912695 753342050 760832537 287181483 65877599 867301257 581099065 914288297 186136711 16459258 669500638 52007385 141489098 808128772 206662162 186285727 760917926 861394101 954648621 556185921 683634004 359535603 240301362 528678621 836748685 145947676 855566615 575683063 905615553 329124159 79350297 102864967 753216552 45346639 818105749 901609751 253828115 806590662 819366294 857796534 330892817 151975010 756949786 143644164 966639618 154313912 862538486 587012391 814580879 208360986 933717398 617926125 756143653 884563825 311062285 621548167 4531038 772239527 197965516 811154922 946702584 830148996 862102392 984909243 825666804 571358955 912455677 963814321 891847812 234699258 923009541 876889959 987688020 529053109 775341121 755962431 556532627 840407738 894490992 798148216 55829580 965253887 737020247 901050076 794438087 283549449 132901321 710678056 929890986 387452760 666007165 767134106 990772211 865841653 923291196 522592889 878446449 879473330 891500335 914302929 820040274 788032107 482063420 508303123 688833041 508197336 162573820 562191370 997332308 759209448 337303418 888953433 826082712 641372920 795627136 795180724 194364647 907476099 899394568 791339179 999323533 426823042 53520431 93630263 737020247 567632439 253073562 808437131 181528706 850511771 860148784 653977442 748183307 984151953 418612569 434357857 238628010 293576603 649389657 804909554 359263793 389611830 531738259 401574804 681192564 534558042 506083882 656990979 838868131 111150149 700016522 316049503 737615445 482715307 136245696 928130582 896583827 495838792 930478058 555088307 833045880 988851190 961074079 363245319 498606001 806513877 780916268 830792980 873180352 940018847 22879108 209901002 907440847 392358305 787189661 325384868 21457494 416194621 806005409 386881050 299975032 987013679 906998720 448628900 125633785 906842669 160673517 938936467 531763902 774954070 463454989 943134391 67872897 745774777 232684687 580066236 994578020 201047855 511354701 751745261 95424241 374393599 803369306 799153541 738592759 917954124 788793268 542116903 772401219 906563945 404645486 520755215 277393370 735245568 745423983 915898495 828689469 422554966 651576624 675631089 96203211 850195178 619960548 889917366 889984528 888763022 182487659 947566691 933633798 57297937 343145213 869713127 676985725 597213497 992945084 525631279 843758352 491579293 715760763 168120282 609129796 821680462 615456223 39378401 120250005 664074858 458276683 968360983 672849378 750408154 326506598 739738329 589032005 524447718 676112027 801485867 744776609 557570345 964385600 826973879 757386246 615819630 248345719 934492348 430176710 76620939 538471302 383568385 824267485 633204031 720135992 924367448 388815790 955752566 866112166 618362953 832501572 879962247 154274227 359401494 220871662 811513125 241619284 754873545 834616309 866226422 21382259 977387237 197962229 817658023 748912558 44804955 233366843 481556251 981562691 821190174 3416850 567815626 948838677 963853082 191534595 827902913 292493482 868822077 947030617 846579089 541747167 13132947 781825952 673172424 460300839 782023395 153747953 459935613 677416738 628427510 970513271 365397305 815720190 557973945 709659495 820837203 451328969 914180867 434763397 337645468 760465947 875589904 448736647 223664327 851838786 727759177 230238028 778658878 234814204 307216605 255224203 441849343 106999424 209244124 959054844 880169356 730514719 277648658 639580170 876747555 552912121 726421628 462022506 391093267 945813678 778717040 300109658 140679763 972700314 967810062 517907802 521651404 811852752 966605656 793722015 25051067 638939093 641808367 209332291 836999264 948514107 588051784 715364908 713864678 675656582 801289128 898644874 658042641 968103026 225131209 211745550 197110065 466661301 870359527 435416207 693575012 747193320 927369696 503699735 636869702 968904841 359458851 10290270 126111305 784762352 327702337 834460748 308677225 940681264 900959526 793971453 909047603 806662457 431471188 891827241 703798643 789557872 982234467 928801198 978709553 679937446 1897450 280382515 700743576 847993526 820574240 327621179 536996960 875806980 82983416 860890985 807922831 993941123 866197604 772521728 255582381 379914989 982395626 677522076 26526919 778575417 348175323 715377437 903932267 651452988 810182093 778370356 462252830 207451023 258336553 728687258 952292650 382764844 56446773 815859837 85343267 969816787 959473382 895992018 164938814 496816272 811691354 835325045 863721396 740675780 564660973 937028655 865061027 773803997 838605088 189751554 852478599 751993174 5099681 334012845 2875073 916791759 860273315 131915761 638463669 981106573 656264264 926827517 265884275 859599726 591150714 424623473 890047396 374829220 862203543 838002948 945555499 837281349 925283500 858617518 620419958 485501293 860660380 786738579 786921457 961606638 912309999 389405468 655609392 771907308 905044880 832834122 943619192 750035877 484006209 996424174 82240696 634895051 789150469 828037430 736879032 632182835 10849017 895454016 771657990 789194947 777241474 998607211 861994717 767257049 422661607 101510184 823123615 941561304 308810033 97585390 32716131 914433496 406061416 346159329 616663824 172124156 936696972 816502622 70501682 664908158 513628775 845535690 433777893 824232290 995575259 226191425 493434228 859704187 689966488 234306941 975056126 881526915 337590796 185155794 221543458 919859069 938789882 947770536 471679134 838961957 924013620 842935034 863918702 503839910 762611695 938748077 595889640 745115872 991855377 997251269 852017976 965094530 254777359 939550886 235355992 983531255 577113762 942409402 239629686 236527401 886314780 768133853 393819705 845059275 825790380 635359546 739902934 735180985 751575980 330093143 822824867 433328223 657259952 832341824 775188254 968787280 626790394 845520475 947049161 986591871 766774632 415189651 993430288 333903108 731747382 397214451 789242171 755979273 813476698 272660351 956333173 583856032 258217749 902551850 854422641 20413487 158256321 950893528 726292769 758791822 591952025 761740861 833833590 770671848 911805497 636502823 730227043 955595883 993309129 948797737 862924934 976810700 791388261 119991490 846883729 822507236 744037645 804075142 948965215 950707670 602140977 109446549 331883632 773167308 916942200 913279417 872048981 594715975 9833482 39953717 924796886 533498234 662778656 758107737 984156114 822442109 758556245 983483591 934113244 8589661 941918366 201828491 966410730 418512276 837282088 929899357 721135927 148024700 458265664 556606456 278232417 752993232 801543764 235220606 975410008 791322793 981566747 515915253 748039759 664439309 819611110 961806443 979410126 958216294 952160918 926956437 555875948 533426099 848228373 342177869 968089736 162678549 907015171 798577194 24486201 349105453 486992895 670219458 368982728 605211358 811951754 703381930 787725570 543626914 912565572 212426571 877472205 62942934 781242809 458172113 911068666 392861011 184404689 877391054 125362451 346805169 294152124 992464154 288624853 890288349 123681286 769096777 311174242 871523740 941757733 755691888 932134039 977009495 825228483 649314956 616868484 779316381 824371324 531769906 941776736 841121356 879854492 993623967 882144841 217192977 824606443 93805512 937596243 878219474 638200390 978238000 302241071 770072224 388312666 815803261 965989104 746274416 806836595 54342769 456336088 467581724 852349081 328478284 882182266 848464463 393493846 901663268 349079168 737020247 540696474 267847121 142356359 63575205 549191624 570557079 129496194 499651454 871727224 148604066 932231214 674723787 999593980 810633258 984266523 603101009 999712542 869867968 762110062 794469451 991932349 238390968 232215862 507733739 951456258 802960438 90295453 185515456 755724618 977883608 11532690 42701677 739510632 972140574 957044127 346510001 636533181 46067385 898587199 563041741 986490864 539029363 365517545 786803498 902013339 751280298 499031340 136362095 693108742 143163949 878202356 860348730 561264836 795849659 227836138 565153885 414564528 787834950 70949567 906979925 784207185 411748884 819072668 925549060 798391127 764053322 891014419 34717788 950148774 910881213 142475858 943993923 989219353 828178744 779978258 500097208 670946123 485114717 845415597 374926080 234885472 430398958 933673277 929058348 452022374 918635012 540292866 369042391 26998699 519791701 940699436 698292747 488945825 803405289 39555267 347457676 323914561 260512374 416892459 379919382 816593977 720460103 372226733 936335094 892357947 476731913 913926530 263636357 908757424 206853433 948038615 724793371 912876177 820694227 708278326 427634676 799101100 133568186 975638041 498232453 178729206 88451424 210428380 910097577 323285399 3188203 244291508 882735065 786719992 379996860 727581266 955593341 728198214 938474000 825527356 726593730 723333635 201458674 416322563 16163967 575111063 189592069 989466985 913324847 745031984 704059833 769918155 998363175 857401741 68288647 754482774 505955775 226159871 965190454 886448062 327756979 746701227 843623582 821667255 770525075 931259159 859044582 444962376 861557650 308457411 583864878 715584167 890798474 201227317 684076648 903916655 794948021 817852339 752839315 987595954 33965148 879708749 377064336 811150859 687967695 336242897 72761344 150696308 782088704 296612261 744970015 848247792 459388703 692806276 960719061 962997709 944973191 210825039 410497647 782477712 5846783 122453087 627796484 516316528 503309571 555594021 928131687 957680677 965348300 190440079 999411331 641494723 624345338 812812182 381470826 928685507 101359383 779266931 991893315 361348433 788739177 902158078 580653752 929781888 1868313 885611951 933535049 262100484 762505104 553334430 834458105 148433815 591225846 759800162 472695371 856857142 3320559 516055726 223260987 518237637 789700073 95254551 815669944 582420743 982834307 585248394 484239450 572502018 967226978 699907011 606078226 841603344 974893624 299858436 900566840 540360708 581909135 907101055 921115555 710420675 783277327 997602822 340915225 842841413 942513006 495782529 549093294 992377466 724608792 711206841 329278744 870941365 209265294 108443509 52615216 873326031 523622319 262312579 683555262 263515331 117401961 828712984 343115742 118341886 601449551 557099588 799449101 106785724 539299086 969725848 925553720 868483855 849713747 903645132 299339717 304781444 174624490 757536704 926038504 146244396 307031686 906564938 521381801 476034403 394327827 348223453 702953949 981761621 611611686 796325174 855564698 644299299 769173982 355201518 860716985 760147416 51677905 846912001 999752284 199519891 921013444 341795435 528512272 102067211 769012776 716860516 644721231 812621266 341250235 161828462 801355213 300123394 748283614 880603969 143551539 993536667 74458003 806495968 787073893 837298463 85142623 954676428 798362077 49024911 257551687 374453243 635293469 364965276 419026717 886210175 760823008 820002343 427992235 798653610 282807983 785985943 852024658 874480432 521893916 824072197 827570004 372214054 773199890 932734929 113182802 54295677 864963533 131075012 756663227 159438251 456890992 999176813 572979317 984508119 856636371 951500825 230647994 60676371 304591816 803854363 165004677 694983569 354485734 270264807 691511992 903767127 749031502 205301785 664274956 115321615 815088097 671421640 844848720 673289569 854506271 401419519 357385364 475894945 830917968 193798160 973325431 429924422 734160929 856683068 191170525 962088376 19994704 96038202 737020247 328202217 934512475 1503857 701890992 899376015 102690506 406670959 800342734 989025472 754234757 304606365 744890738 611096558 65900972 577557027 988075029 892954557 833477864 813847434 705120794 246235232 926794379 370293529 394166810 332093162 951730325 755583093 323062718 419099123 908926169 841620924 899396712 966971735 465249217 63361728 639714032 815395965 771788646 169369672 187419847 85215258 412055821 929622744 205898239 953623491 386779849 523146021 939374377 191424274 838055868 142533179 437041041 969838960 860817292 137361547 737144385 866889456 755123106 600185446 438320693 817318668 929149142 462506905 891017194 865211926 133776545 36975401 881510152 746903221 539180065 773028770 638824860 30604505 885118336 663839210 833789430 455390064 323182955 936742543 643081574 241676806 587092189 819587536 245508093 754374129 256176091 985910830 949583740 767844647 806870189 957395008 804434791 435956058 820999151 838442380 893736096 215714444 454347056 71834483 383208536 468476469 819981425 916868702 25681167 318470671 506776832 744122107 855244881 963871552 141214363 973194477 807524767 879311948 894046615 799881356 902907365 947685586 240909649 994641711 56943153 972718184 76289971 231466989 97327287 912180123 667669702 574606067 176715090 998733987 379525357 247035076 573175936 490079460 748631023 740517907 756269623 219962603 209743428 877127771 807115402 826123772 853729206 587092708 304208018 47654237 739248342 934314764 874480071 921910900 290728611 256936130 833088805 755970987 623112963 667654780 576330410 599409090 655190621 390053267 884708930 541374575 983468377 950884920 966587875 390493726 940354615 900228439 448583993 709824272 341232734 153884129 826257830 303468798 737020247 379375469 212440694 891708713 783562481 623647833 419754906 118052581 301286789 982343657 551157714 123190592 245180551 223369712 818833766 920022184 933819016 817018473 997800964 833935899 984565789 831502901 286512788 755007960 878576208 987494421 750466041 192382696 408918453 315167650 266291744 867984594 919373196 807472201 206022424 758318187 259584643 91524050 754030439 777055263 755135766 897364766 182098495 947833071 836391118 510399228 163142127 926373123 852605681 126251748 67414123 799838400 537788293 978190481 153493338 209027539 964079150 836985478 736685229 624458707 480636174 56386778 594153488 381231919 353332447 712075000 741162020 503254804 161411182 799511388 739301927 77669591 986832332 162313132 861668088 129837381 869547961 965883095 54491548 249380329 757641342 961405555 268222478 895335606 304768690 923681481 893669326 888912046 879789457 333447023 62158224 743060712 462379630 403246261 628314660 199549278 827577484 159898739 954373646 913721261 642510212 860690677 294046535 883258589 958267244 957882384 358327470 903646589 966093351 742447522 736535752 811912276 148097823 824642781 333972792 892648498 171965166 596075254 294427713 990935148 856509492 540426857 11470139 839493212 794780778 881363825 623979672 838244660 633644315 9423877 705327745 814734769 775550304 558289985 516767787 988730161 509255832 20062708 770354767 827511634 659223773 796711786 359704720 538132374 737020247 396135191 759410568 881168596 10174249 23187292 312556669 900842377 857606655 696001184 776106817 405928236 967741655 570719546 645373524 569842513 851467438 790209119 994039214 605399234 873419479 899547530 773597573 744717682 363312690 967833430 763516612 85811964 131380697 169750382 795460163 858147521 141315688 361373675 855432134 889821597 561737717 814442766 761908769 959437748 741519783 644886539 872679878 585196329 925457615 810132205 916230148 240901061 86428626 551952157 792665223 971553046 795850541 708036088 704558653 266387713 156664968 952645341 982246663 415614570 701623774 572171325 214437058 802980143 444823050 905704308 873429627 726394249 38212675 192285339 746843981 973350164 801047397 863625341 246914522 848807891 32464089 357789879 207932938 843435957 673346002 841476455 822465390 73071778 957045632 933601628 928238609 277557079 408199301 352417833 313560647 4810933 964058656 934210809 820405043 41458023 390341774 340238171 355127774 17940621 480901222 919080618 857887818 307521753 103457076 809480553 929181853 965718402 186925560 5985475 157059994 841832020 866659819 769903749 684311119 917370231 930225923 131458051 990155905 466772612 966145153 901437102 940261481 737241656 510292099 770767037 318269508 893561094 716286465 340449572 674594922 831179042 596051364 835616606 568440105 885070258 830056641 530471546 145835644 904592076 498318416 893117262 891741006 47873412 852455758 880765160 527465146 855850728 990639190 907839456 991972182 100012878 67183820 646470334 999726208 706645334 298496725 926381090 8109389 326143095 920083370 719710020 876417345 873154747 760031375 619361473 832338850 740360213 396166422 96965123 162116284 540109252 749159286 510710524 687971988 162245389 807512077 483450384 914471254 999448909 873078409 845505893 899346622 322644713 808783944 871431243 270572316 830666535 347999425 905112040 986817589 842237124 679421512 903455558 415546749 706412451 724609702 381202049 799584753 740298864 8905022 804359309 822049095 895653651 272837099 985098543 886640895 542708412 441486808 447574337 857719256 997605503 901848602 993350539 537642950 745208520 882542375 354871409 993528366 853264971 145501674 745260635 186743995 788683939 842843168 397996945 453594530 330585282 788748101 808908456 841330696 853183888 857807791 390201939 36520055 877841994 958192581 704499334 592451639 882174944 348584871 465198501 798769209 972658422 806509287 829886856 909362671 285184951 831451766 856874635 589956553 875826214 358198678 982006791 377474433 963316077 410950789 741765744 565541515 623329865 914331123 816029974 419243859 646183882 391160901 819377985 99030807 530257973 236547390 864518265 797723682 499935858 749307600 922164985 915640425 218946914 892853532 788075847 976718801 453922462 770451580 210572474 639685243 43195364 862853286 532571858 965656633 514862174 784367758 843401580 779796640 797529564 978271238 737020247 746099135 111353342 931550266 383516262 750132862 900296268 153467313 965489568 813475028 783250618 738834534 988684320 890556131 362896537 350913634 959053000 6106537 763583887 798099479 136153290 361514677 652170831 853433266 839696934 885022257 279538846 895172355 727431365 820817243 499150949 942849565 752811520 154934157 797401588 725942904 864575595 367963599 910358333 897876954 491138666 810357272 839273213 747916238 906443779 51611427 780918751 46471557 179738200 758092708 933957520 81976540 819210451 975613467 781804173 846238076 947303386 240870331 582848491 63517371 890894639 314093156 749747023 593207775 603750596 475805205 202529291 500051516 12783118 530860378 737833951 999431716 921555368 803611507 819870444 404885854 466696015 566026044 117231612 425659916 212217977 829807744 125792823 243117643 809627955 962840532 836600944 914406346 348784699 584448120 607614513 273508986 771674539 190780479 803876825 115992791 247353729 653552055 574186224 257175612 557906665 737020247 951399853 968059003 802883549 916099929 792964365 796899462 111040578 531578269 963497871 940810680 546255507 35788973 912518055 969450134 610329275 773373884 497235117 381291256 299662593 878766356 920242646 129671617 925075043 504756231 836819481 827201418 791422261 504867756 997200635 38524182 244366053 407560889 93760003 202721977 180428084 569017562 981763884 157164302 835723056 787125883 274007960 740205211 965272929 818018146 299879101 900638173 755467746 911505624 814616400 55624253 773853129 692054338 949510930 582644600 846771088 920491118 727611990 28505419 125346614 991921461 913898328 509017712 33695125 834978301 962611409 974204788 317595221 833635612 38025043 992194867 128101587 919154881 867211468 549095456 308599254 948505751 161126374 570822163 851001092 11606350 511568299 781469192 788970535 46764905 871073547 8639707 736531531 931215297 821995343 680505206 824381021 153992127 336582446 903099863 32341753 838338025 938143570 912828367 95929198 759776631 127928789 904388582 597833709 546045900 706948962 958839827 563345034 760789420 827329692 324891155 942202 348832314 359808133 876260062 505996377 930381907 232566472 912222990 889671633 417575532 450766918 979424981 773613463 857578046 524388520 982119485 897181834 952889329 169499528 917516471 309745437 478224504 997994740 952145983 833012282 908908812 497898075 961077997 903292610 449882149 848354685 759849631 677729414 106254441 859002238 868392227 603072399 286492428 441149686 582886975 451366112 515590549 809803058 916592244 906062402 33076419 460932917 757386353 302375388 987812601 822642859 801120394 970074310 957570048 486286807 136033889 811648602 936899586 981984363 824457276 495265005 609048885 459104255 844790812 912671730 367376218 47191482 363546857 740752272 876133319 825063113 631864516 994070856 380059949 892527358 749949334 928692807 446753976 59897457 436561014 748654541 940513827 948711125 758252494 889314854 945933560 704948214 890198293 990270692 367703339 976188566 935374029 611217505 729191063 396222479 857433637 253652328 963588633 391361381 800938286 896512463 854314662 803742744 804822556 866317766 950913587 912238428 131972895 299971536 867122871 938898447 918703098 876358149 288202675 945320341 516199973 486994501 499945417 26822292 28319650 759348972 751019056 946663553 823899699 804952979 545263071 439473171 582138879 819239951 491948357 971812645 746586018 636131689 855972948 996762336 100355829 444352972 705599856 26401903 933138541 954132073 866529561 995447875 121808148 331779070 911484905 505053461 777265271 924245853 910298521 878059070 378326698 468552326 314084711 871269295 63810719 755167765 772733772 862967123 325456808 650438648 975251995 999970115 626242038 729895328 753689398 989967100 76069821 899668325 559042905 864191095 980314967 230828357 838383487 835340752 454000788 67593532 415135902 739176677 751845196 373216599 241409531 797580073 380016016 905023431 199161114 940452050 877225359 351626102 888011172 886675601 854601808 886232817 188248047 283168560 843050416 512145318 803034363 892561860 428461579 196563143 710453842 919089299 620453010 409031886 973747841 599706784 430396043 616631157 817939014 955109907 934292617 823136852 808746826 561247070 920390807 76378547 784837166 866028298 359897530 380941327 637345297 965689831 835359182 885099702 982390915 168711120 377635274 582095035 353885441 934214155 851478712 605073302 209288953 902315959 587681070 855934904 959540893 303248242 322638145 767725526 214746774 262877931 546439345 924440028 933542077 755154244 736061183 12153426 702916381 751280730 12764150 573829401 622791313 241384067 838695595 612121599 965835430 666649471 175742013 990205877 482645543 391519474 159126995 739964265 446851330 506980857 982162055 202746687 351318086 767102041 654519255 585634438 943734360 386344323 311141151 829634462 753391758 513769447 912736734 378401029 791359343 473578559 737602776 771219118 397309834 130692646 868435011 741618949 835497526 884248595 846591981 713961073 905521700 123088393 22576228 781524178 835231248 845901435 928268590 739064686 688661328 474917052 610489869 92583331 781075521 946357215 522251008 181748886 609666815 866852209 863484521 59053213 897242791 866566676 667273939 417365594 815760224 492176831 329948105 916379538 644597018 205947349 511407347 766298472 857071748 817370559 400757290 711080243 923067136 64429575 278926092 3300897 1726948 100117557 498805266 305337117 806175514 586160962 686031361 565035879 395838650 968943130 680451662 654696331 959464541 93191025 238616725 867543153 814711397 792281196 743114636 809646030 945413785 358876251 737007038 491132036 849502848 928660359 251048847 873322572 505912543 979933501 902573100 630659321 956533914 868624594 846771895 778817694 671817359 876777128 821784073 980570024 741403787 917740256 921558124 636227005 674989067 12371307 111716190 289910278 917312347 295931095 614088489 777283983 758672759 633009921 731626794 993109858 283386317 984003391 841059244 684843146 334473272 744294139 969631843 613414686 562098767 639036044 581569808 351680060 389623159 860259463 580746161 749968034 263639406 995670643 232558664 834193954 959978037 447061785 928888624 975364633 294224047 898980385 735517167 339088778 984545629 559285604 901175355 999489708 745737654 958746391 444082199 856011272 851213667 390722720 195345345 858829442 362636283 902789842 950161120 782911299 884403531 833492297 167737615 193816041 81329407 568715424 559665257 945088728 40696781 823243924 823278278 825830065 78728095 448637328 363779348 223690908 824511827 161662969 869028464 988030841 971610960 298583943 893983925 825339944 831229601 830259568 777788943 879871252 745810386 61333692 868148933 964401546 815565864 959553154 897225389 974549911 895959895 284320646 683107067 839821427 858818746 991315849 480573582 213049502 816328362 66381138 327657214 841877578 428450212 499399869 917826605 996719601 740683940 110528020 914424037 492077106 673965861 600877330 873827562 822713088 707757300 589684811 890850504 917937518 800255712 615500117 443000759 542655334 588390927 188532759 553925561 922278778 176236523 991043956 79044498 893483683 489439774 387570457 473267191 550515632 248716434 58587272 943083287 570362387 871177049 547098426 917158146 541692874 894150687 239950658 743506172 778547242 146418489 460895121 142069716 913227983 956944705 472323897 710332518 770624711 946213450 786442644 967755981 856834295 988646356 803933533 883818230 632546708 893930252 957657315 975329336 415566411 452010631 854679985 881106750 757517718 989652457 713114226 817336134 458126747 423036362 368171785 785215930 142869790 166819257 303383557 230209793 660182611 417398133 926879643 843982417 645041504 53713782 763690623 150412239 917404715 623654372 218456115 457075054 810707991 188486066 738892893 942657275 979228479 998220934 618732744 556475780 199145254 826736560 693328373 908164214 935196241 746544190 216507801 911792975 948453346 435176801 655690581 904080689 159489260 500708524 457273567 395744132 392625959 941409695 599560031 631712698 236640574 656617673 803897538 739498367 154636543 730814900 851485625 214463172 237531374 880474879 405971182 847054106 816501990 821230347 109528863 863000061 877747923 976331610 249137900 878801907 995647516 979776817 17607900 606094251 156985908 774281664 248281482 948188798 364620091 806196218 909841205 927158815 766560790 245933405 528091279 830289845 769896322 24645669 785898726 445200670 900465194 897950856 947067784 929946220 543676225 525508339 339800373 219858871 546796689 557296872 29189384 274060758 925881073 306706964 921876224 330345075 963161880 165293484 912040138 575632444 28604567 410427428 596254667 68730954 784584804 834071012 907080017 622432044 348974834 715430216 186445619 250726797 605446891 982718233 308469253 707652886 861073968 879926449 220010965 382831004 278674678 893802848 909238610 503549283 889255806 769094453 712857880 17659276 739350811 824499764 597148035 143674264 779468719 545319706 699299089 164095448 933035581 981731487 37593389 710780237 853324771 993817883 734556379 867546466 143434816 668747648 988082050 581731814 979552950 993907171 834430772 809463522 193645686 725616545 882098063 974674933 841029679 756755331 579339639 223367519 994123397 520866110 926110755 738780842 798109477 897712976 545120386 887786767 990763015 984963563 55075322 513427457 980566241 829197982 641073067 26734754 514454767 165201344 395717873 872230188 339954016 850871341 326962686 783323830 850910171 743816204 704776261 963296068 889169733 977465528 934046847 613921764 873739351 770431745 342133202 699069669 832539170 178112486 25309823 244521208 211445780 893659054 466306093 856241748 904437329 812043118 826803728 928848844 723736414 181741734 187349615 368094559 760549949 860154942 954863184 910242559 222210101 42374689 830932159 911009969 466784227 269779741 16788410 818620828 577228993 821606658 356487940 857198620 727855937 809081002 65770060 48862296 629851805 735748367 825129677 675069972 115381359 201506037 498126126 272574447 976761347 994210054 589542731 562054599 153659953 927237337 202791482 902447020 998798653 809716175 976641732 429206485 829465262 182849693 59089160 711361162 72492021 776858282 169114933 960588495 172639045 201986066 814920366 942935565 878277811 900073903 855700100 436189252 955048491 876027860 987085095 9946994 9051660 856327692 657732532 761650174 209013131 266718003 540847621 809628359 340706774 394963052 250518977 934818808 814656353 804860973 890389710 583175472 578719527 920347282 997283776 807395636 109118959 479116705 504418250 160158792 774879969 862242442 120268028 139540787 844365370 27411141 794161925 56509458 746649502 122105740 629352668 966994444 943718292 190670144 783827821 851662904 534860262 981054151 837541027 952261638 682301583 927285566 204436716 776843931 978546570 597143013 550832056 789091662 955803397 853523192 475564026 805391041 414931151 765997114 529511000 407818019 484526356 748656156 987731985 860650853 832729575 819638971 84553026 751580543 728370551 974513534 808894752 983481071 948958940 948620942 119340766 842848717 247518161 133862633 641223042 771884916 661185440 659343644 825567616 779173758 919555259 939111419 480066776 828344292 776450013 794394138 400433617 774720106 90073516 701760308 555124740 941672530 938645528 395211669 871628725 888915806 844983382 915389598 99806287 93501356 897675504 875118101 399176503 751115624 142810800 535502646 756790307 755863786 455600280 717662011 137604150 282957768 564617068 340447025 766825550 488823318 726091102 250782546 919437417 861497260 954191779 27441248 859388014 362959721 963775086 931616215 999498259 729119329 383002833 624320737 245501814 698020187 290055612 948792091 457055702 838089575 859013938 974255720 818572686 324434811 889615599 622449004 96373792 815215219 136069277 599966480 744342383 838931092 174805225 889968210 861599591 130112367 763131192 914986157 797123833 911615904 823934466 716901207 907362668 792769674 114536749 156546500 628514531 842609595 191979563 864677842 661223276 353251045 452932224 643820768 398416801 179661098 328275969 936158046 879294361 823238191 397442679 23473324 874794861 116739518 551661263 826325115 77526203 794828201 130914535 761056822 959352694 35543140 979659676 977212688 742927253 682118569 458636251 854723039 872029569 891732514 914016627 619421763 976576809 896214643 273790945 750664930 773874054 737800891 715935815 193475679 618469128 983399882 909462792 902573705 30913388 590286343 403078067 871772400 407602617 513168930 368508950 887253565 768330450 462770612 748904309 564994964 771236212 545443922 837570835 298651816 997386775 991656148 18603500 910361790 6371021 642504977 455090274 779738977 97401795 777787660 752691410 950865709 678873613 789521719 134439261 690106536 923970713 731518156 885373633 502226514 624589991 363795874 157743519 337888580 322234887 968085393 426792728 240316038 731103435 903925393 846153768 692508523 754587327 313301837 232631037 370942969 984849928 298988983 981322043 255898457 864498328 423768546 869998238 704631749 937677026 667740773 991207447 103939832 849942730 450986492 120407164 836810242 979237107 793167716 440724959 537606849 946138638 520661186 919558248 927435055 420700333 354870287 684998141 365739257 680456409 317568821 975821964 727711023 788109529 786208506 857264325 613326785 72897884 957279228 475681437 622116993 929429753 763733493 917438236 650894457 983229125 887642827 857621457 170405882 886760615 501185525 858327931 675667455 865941780 795691149 707776750 856223610 100097558 427362189 457145736 439959049 861813213 182039287 75173066 917407866 751426852 990287798 892848028 845159516 428428221 4534769 237669611 340826680 384079744 750185526 478117968 989197570 676844708 787093176 801532542 259195300 979077054 843677979 41858962 751355039 425322255 607217829 965384501 752524444 524181509 856133335 917416783 802636148 388679418 807088297 929343266 615639313 344823191 292260663 704395388 888638710 722692532 886628117 891119576 797771528 396089054 849700924 924057239 785555307 12480537 894143869 536099283 440976813 812439071 739117247 766047542 980007293 666760494 574104970 752290160 202005606 393004083 856114269 767112361 821684916 303404957 509368049 935063001 914391805 457736037 739490444 830980901 484767727 784671301 688401413 803209769 583005675 774027661 298556574 82402707 7903375 992666377 615780321 743711004 636927227 992234473 896282418 859012575 933697134 974049086 482620862 370447757 467814130 860506843 801978840 905393581 786035478 282727004 844359273 163813551 819653845 906626691 990370967 967262677 275370254 738533268 922470313 786148042 331844455 211077783 776750246 862391361 872245714 560748596 700958418 830753658 770744988 832726271 652314210 789775131 64664486 485258465 869939121 215933422 901367484 768728724 476173974 951125098 744494857 991242156 394303447 389908483 407646325 437104981 394911095 353017109 470252242 942682228 390639230 39535117 762835814 936318099 975437162 845193025 913248546 872152558 189411119 743725947 221178278 967227381 856805028 414063643 253331876 857894661 953503831 68963990 910548478 773805984 359650918 938925768 893578004 600431995 824449492 879075591 649619460 910468528 334647423 814262519 983289894 903834305 808984577 487590200 981762961 796760233 743611457 846100354 752448463 590977985 787420612 83444786 750629110 86705180 60643617 377230140 359382188 956890056 863536244 761915485 778464153 96611357 299714629 70965467 255082241 946130725 519524575 411827571 821680743 213493085 707309242 362293483 956054289 893841399 753782283 789601169 777473031 922649920 947953820 378208485 843471026 129610787 853354327 443904612 231321393 464687374 861570600 957555567 776751538 670448506 774404873 243134952 674613308 879891958 842298040 982924903 884085551 445666538 550777724 988170493 438186334 295645659 440887713 325917955 816062349 606063165 653021397 939454715 365553955 528059654 84060212 363640653 476521697 952878025 195616523 777051880 671928107 877956599 759457751 319026139 97637913 907047200 594511954 920149736 917033513 329059653 587317510 599925310 800315051 454526162 916934435 738050330 812057875 358098621 766233260 753332977 265451224 77041503 935468652 737020247 737044114 640595996 128620864 187296026 655995156 853291205 769109369 85807914 990446311 967941095 860698088 974575195 922374358 975939342 507806822 155029342 722961960 397267514 394163642 855581559 724954841 582871886 978632029 962086625 689387495 866154826 124485548 766381098 799501205 825858992 770181552 977067428 951376262 599396474 623429075 157870760 996752580 887263937 22873481 98622376 852307969 773118000 270486273 926071088 973964227 429226887 816456834 88325035 863463920 571803589 506770305 886226966 440339193 297241573 627062411 14716228 572912693 693943711 985708251 972576278 746345759 831188232 283105034 672332197 869758093 756073757 547933769 33435739 752656949 470652852 95657020 208737053 771792798 990919744 289688460 824715435 745859609 225154944 667462057 38086405 842127256 657954019 445655198 850364087 277850104 311831067 291853374 842444059 886968700 80067083 134311228 883225529 967055115 641006029 947289760 651360509 850202265 56887029 791765505 540764056 169644061 547081376 799667914 843167210 993532837 641939521 16412928 862305732 862530296 354906829 818804779 738244967 634694325 728411027 990913959 902431283 424782307 80430836 739670277 819616909 681265996 696434083 748536751 262617108 25759940 899309938 301750937 970128395 705280687 937752086 796674458 8949874 743726396 340635531 454630813 129925784 421341667 37163202 437268732 874724808 195201322 604972144 942135257 343860942 746253795 867408573 963796809 162447117 777738954 907259181 268330938 995953490 516198056 826287273 945719499 750204164 975612155 705843439 862970287 764928098 787882700 785375254 122083229 598861288 441177712 560752649 630206764 706210828 910989326 871608090 255167476 283172415 909819200 405190877 972252030 954287830 128307276 192684787 987918649 85503602 785506220 325002005 860505469 871678736 896425562 870665381 833309075 107991123 462218191 479354351 899132680 922304954 955796049 15361340 206157989 877708888 765846575 789089212 755937479 993605935 167733796 301550566 210011109 906156024 737020247 845653903 747756284 824646765 162813615 92789032 907644804 863644477 750324442 234792947 856514453 925923214 366187480 42978680 602767129 762291600 376226414 559477892 855289623 875081277 972538882 95128507 205972257 659894264 19526020 324592686 667809747 998821116 932604093 891647541 100798810 615319139 811715517 180566921 193266937 208030470 865215765 864690258 431844742 869700507 173043972 628893695 128690193 957389790 980239372 863733919 888781958 604869094 938875627 278131867 905476990 965510796 95569197 931623942 221839091 862428834 860991940 79406131 554637745 402498127 773324445 847929458 770911406 634222540 760650114 888814398 768645278 232102247 353659027 902267517 351850470 704467953 294742558 795904165 15686600 307488776 797454487 518715599 970963473 858665272 335214929 820320548 406210563 683855737 514871266 892699685 440355117 761634581 943503251 858509717 794473764 354868432 272728710 914951904 656227664 884782761 640716493 144175353 982818015 796241594 968644982 448547280 993098305 593402726 385866115 50397299 876585969 574425502 515941577 346192343 999688028 994456493 756056826 316916266 291995532 297436947 71024551 567744367 271553262 793847648 197853017 986084393 439958184 778799410 836809204 100342566 551921849 764239438 934440315 766656274 936410512 608212489 708126488 525957723 361708425 622397668 738494469 698746137 123898354 292044685 901245519 20781502 130557079 274701864 824064855 872384874 606173003 748753732 853656856 381342913 864245386 295403239 758782769 776552953 441773255 86408192 796228005 997609308 320833534 886406686 318826803 234619342 916715595 812053494 771926757 335532652 360551107 764885020 895601433 461154694 127353928 198331782 814343237 353757367 754965317 896955738 129470411 557130568 823714092 604887580 672638185 796674136 851515307 909112526 881081037 869597610 96119283 983016879 955157063 270740271 391187100 496998312 958869379 369007041 2300162 30767636 953236479 869983292 873984211 739804649 928833418 914473824 947067406 858792156 782158344 429628319 898303613 125449686 984893823 5301427 70138551 113618908 724356102 547403894 961609414 458975810 816153094 241222555 810449614 856068490 629621165 928218382 800464099 800820253 422564616 99358400 641841672 981776467 546349427 375652743 99454119 987426044 895181317 819324301 895256016 911126500 663810111 769073887 408372143 880953252 121153191 298434031 485037593 865628305 946893751 105820979 184372056 879269021 179029482 578424545 647351410 644078013 86565553 736845048 830522172 612739218 987124759 903859230 220845843 871534984 957143310 579323536 402159724 396970974 817944637 457124283 466092775 946528760 579649233 773556520 490892534 546366802 603392163 989665954 815164836 703501665 823272997 753566622 31578937 912091968 958753464 959662500 316693073 874602847 765978773 797183037 64625804 872549489 812197519 276471078 814213526 845481314 46058956 639660944 769148517 762206018 409181755 832327483 749580781 749391812 917644316 817490396 755769306 897369935 857648498 855043707 401848663 289630622 968575931 917483937 705002257 352139761 49993251 834968311 840307128 3795264 533159007 641680824 563695907 810970661 497091744 948965900 510723298 687535742 447991567 972820235 419391146 988122222 758958528 855699255 865950928 896840514 294257046 819690631 912242420 323551373 130628965 26055872 268702231 616803640 879330172 844388612 820637033 857993168 217099251 856391951 200240833 66767445 891505011 280409786 888557408 737707669 313632845 918673159 815905094 134541876 401318729 991147222 562131950 511988393 828104023 110129306 889414880 658459717 208623485 951115370 603723402 891181528 908413271 917064585 784415909 238447158 796634233 982249164 932910809 667879287 396427035 156184919 51569696 499327524 728246540 952143088 328121987 734175233 873843710 869536858 784430496 756360191 469580010 955967425 126068413 895624291 969826822 901925140 944640819 767474167 984760340 785601765 91407037 911731721 815027795 789140941 847390781 919007449 374901447 904371892 804788219 486943500 76917372 131242884 797264815 40344061 826924320 320443777 737020247 425485809 884814147 800151111 739440070 892392406 471965984 2456468 685364411 791617192 926827769 653463346 780983173 314201939 904640055 665597079 696959112 859351974 475850731 890966323 496132704 886098035 825183002 64422131 936461627 530385786 635070361 781778797 899716806 108492198 840423846 829103504 492443655 764756229 847508676 835817003 508896096 520619011 261178940 343238175 27989221 745519830 926570418 855927977 977878036 660098433 860864269 752890640 770681929 852082129 881401297 504417652 953276294 776143456 664607778 757516577 945495983 973502183 870425050 874783155 578279949 979357245 486484080 601659786 990626149 564760740 756910194 487048328 101501154 365403194 585809711 395453448 96312428 95777001 287100799 586401405 514966063 757518046 802647373 925728913 744075865 553874122 615528797 914221694 61515060 263369398 761856520 953000219 824074916 390315651 880307056 244928893 861849068 37520718 737020247 113094509 742020453 228811705 986601827 845074250 639010745 358957184 886772274 794304133 704825277 174504975 341267965 718216331 561939311 846087975 851338045 414439623 744176877 525327770 914826186 939403940 895065486 338659716 891474741 336457560 911277238 14121557 548404978 206128442 412666152 814535542 804655044 315464999 806090805 941192692 956316959 534695768 623487214 327981882 789671840 304524149 925452966 856039780 691097826 868290136 745157284 949382209 347713526 320980703 784395719 864774901 699656130 58560726 73507522 302615020 45102410 620929773 859490900 861919913 356977840 517958361 426771508 824111100 966501959 789516618 642793010 585471762 767204898 497491961 1662870 787424638 356326008 990947323 340241357 953629828 170761644 177296582 995175303 922593679 718726593 760777505 792381380 971056583 817712171 993169709 771153489 939709324 883671985 994284753 28226830 856091073 90686394 282655234 196634848 213002163 784399560 832627652 902759967 817653292 774309758 991102833 968723845 964866410 992568227 219428926 940798432 758940627 564894809 793684283 773381330 153914165 939998088 829407351 359662231 476664975 915969704 222147386 965495773 523727955 386845080 848573477 40170891 776709071 752022656 191923553 856738666 75132167 988299851 90318849 434215693 92252744 793109513 913552851 755250564 576042231 990528742 789350961 707750678 851512338 507005838 134535365 103531167 970152608 976696142 860940690 184910972 766099833 995432985 365956586 817228207 133902745 349239174 510866040 905787763 870852369 920183343 425325240 836181187 289909607 701999670 747829093 793012336 816005579 401255263 822383122 759259054 814879219 843500974 738315137 757691619 86158931 496931054 889985384 474733928 692993729 877435577 265726794 504849032 761461342 518200533 917562807 662225520 364105242 928846215 758962291 971960156 631095576 785124719 689898406 536391642 741365097 503474754 889785171 7852231 788856329 963699914 892933743 248503186 897680458 388472648 890778619 574875494 315811687 535474211 537419550 708614230 907308962 849831160 764097558 892687413 845915435 468532587 873589079 869937464 242465801 951750227 413921228 496393660 400716015 96605262 848738908 680216038 197186623 804125567 976863211 209764866 917206206 236012006 982739258 343701016 953793558 932854175 955564654 755240834 747593179 116957159 852450044 83887459 857107527 747988484 173561310 737945073 706510184 162874937 835848289 875494655 26698374 902051161 92881188 163307691 923604859 747606409 865272968 165772913 875214123 520256474 690388991 949498559 782495667 845441112 563566221 675166498 151644826 522101787 186538830 4094684 977232465 133164750 315891778 584373914 764267024 513904622 608387255 770226702 160535928 848781893 495728667 469980492 617240471 807408887 941445667 581298955 970167481 738508214 784743153 961870008 929618246 122981102 508985951 206367387 832838446 550392690 622318609 449198588 875548760 540354940 801217764 442388309 630338689 996003860 855128730 843617809 476279938 339170822 870553260 838274449 677279174 862314891 844989436 148551705 138954032 203987913 292548491 153744804 771036295 227555159 133986634 864419573 184405252 368800685 159534071 509887266 993872614 184969443 482224145 848106153 547165168 847374273 679192685 304772648 884219960 563280611 264696539 787606857 502422571 815827738 818058996 905798339 395785082 843377726 872806875 704257864 918356129 915568137 627616350 78627403 434144466 226599360 564407336 850701594 790643092 317459209 977104231 23388902 272251624 979279855 834770256 159368433 136612192 596142013 131668439 867940826 851388916 957082676 170362236 832550193 911546689 145387692 785686068 504384049 965640745 279761765 783023009 755641732 244002235 970318030 50916078 813679190 511323082 631599524 983231012 873378836 393125538 766898927 852794725 989245434 346904696 872074564 810743244 973957135 28733488 631415054 443060537 333253448 489796274 652761113 196388914 558695497 122698477 749394238 968411707 942386698 206654438 990302625 921123281 820579020 924940662 722910017 473711654 235124222 72417798 816390543 16148968 501529170 777957729 123280608 474121943 994326469 265358542 606540783 128098480 36326902 120708139 287439121 867754533 166952366 985219196 392181529 45276805 382944551 434474470 997404287 459323461 215314194 450859907 709924205 764965150 805381600 295580254 824347431 810277929 827363398 925293638 335270031 527050522 612520133 956888380 764446508 752923817 540611436 630715552 371962224 989195999 86411208 535580714 621213107 981851928 631385016 666695151 194921601 773173491 370751853 745418177 259617637 779703000 253495433 398597550 578713577 351156667 218359149 858379330 594944894 85382609 864605328 752560058 546935806 651338456 73087257 498087582 887197075 857696721 760692520 50542177 797059485 832519798 800828787 956318670 466968358 895259133 526801028 819118880 783737501 220115365 894697240 358459890 962824651 46219982 667236296 410412604 482376089 803344422 117147519 971333064 323925227 480562884 897898129 783901979 908210358 143174937 843361228 90742260 664352879 513257529 36147552 495368300 951790316 260986276 769589721 991648435 975533887 428428364 668922772 861755167 920691751 333495040 621099100 911455975 163160575 615140800 146230310 607629498 682152944 978227907 124362079 250097670 564712472 968380955 81620520 890534039 244030954 70457062 933845293 654819018 762294947 460137176 397156943 999285340 765418241 764408934 511554265 692228829 947795214 740699682 507383232 807247325 539866096 575669772 438859721 655964926 372686546 114412307 986723353 973137102 147022009 702189504 541255906 257161587 763314926 747641393 539228825 994879857 775034022 739233381 662656257 171334427 437118934 838845926 544216695 846373164 787990916 878508803 352855253 100721069 24419401 664735060 354199161 576008424 804030827 958785358 954304117 888768797 920907405 35173789 210512412 764386560 154005356 932672333 942649403 844370878 963861454 137883298 486819037 760865557 79029818 217219819 858417773 760318361 231980672 326038643 227871809 621094246 769220053 164605130 393294843 210960026 2705296 469033654 78417060 866287168 827132198 886244396 863010467 690924966 309900848 789377982 921839749 896929915 689240140 208322108 920358944 17752837 277523223 633353297 751445652 974129464 178212867 725936271 828135953 541961717 36161952 885842151 931635313 329220645 381343121 902372226 876628781 759429534 666404281 31041395 560635489 822809635 922668231 897231099 477124590 32268048 832056335 750973362 719757016 262543882 972313932 130538013 462230324 374386475 832298122 873282802 541096607 304159642 919823049 805419002 395430425 832810772 271773653 867189754 917378258 705172916 969648019 779566529 451719324 694504413 45556061 793257288 941859753 965242195 567414111 858844931 994827883 995102376 904144425 798699358 920296024 458706582 482372559 525150209 912629255 613043866 824396127 794068257 751860221 22120876 459025983 988880552 320815981 943769535 31879300 609403149 948291513 894456082 776265251 75601852 119621130 293875033 768087618 428664379 635311983 181630424 181241331 566175063 392334939 925257276 188179605 131191238 774420996 105939455 816201691 601770886 967588080 579155811 566106111 143867558 547864658 284889822 473066001 615580066 783537674 741091642 623164283 705623179 964896552 738335450 760144546 920226463 303490379 456600217 349726425 177887731 185724508 520804518 528333478 34327191 897058782 945639374 996858052 758247405 595513318 798292864 802208688 971088600 608891854 224832692 498540138 974177284 935860992 668311810 983464718 414957514 771172594 55568805 374192176 991565230 530113363 749435211 260238501 934916073 692154996 260021963 797915989 879087366 831957986 797935533 758699896 596968300 149626409 861288660 971594111 293580854 117061056 184242168 876224407 931416202 327751698 415236224 961602613 962100405 125936779 273778443 909956737 158015881 639708950 62595538 991953391 273389368 427385301 462355339 415954863 616750564 806498026 900011125 927142391 71659053 551484271 648528283 934688862 855308156 949175932 84480632 282479792 979298096 767466494 339201337 221618713 263750936 43325847 554452510 544599012 168321878 499023788 97872538 925715566 916125554 991767364 152286482 925142461 719485398 374105839 949528727 90432126 792532497 529121638 752977641 449370442 172671714 189941299 216274634 623618211 909503409 808013070 871396584 121845730 535549257 463324534 370266183 251263616 858825644 916181850 808064888 188792587 572143289 313021324 428991819 19805232 997290689 765938962 280830375 618691902 774192973 791470858 867003324 929632472 579863040 501008141 731697926 768289019 877654043 844341341 850475132 350230737 824151196 132448149 817696314 744342447 421529536 919064168 157781164 701368092 925763994 999850944 659842535 146280908 573344604 739245803 140103643 798787475 737188389 568539183 50094660 832501056 914288443 926694926 752236834 759394932 593339177 748583439 487794491 641715110 249492229 622532741 546736849 403931997 320171385 91556093 786767501 927909973 772310454 361587581 990939083 610576186 167565028 191964712 76932334 769662638 268483420 990949261 482659285 988646596 989079122 30344821 157865484 36938538 712630327 761403667 986173746 875231534 570940889 566497459 990467272 282399405 980189334 698015473 40524258 932768469 437553153 983294755 489929999 888282278 228994882 506855122 839106071 307445572 971663902 927231669 546556994 260469308 644868353 849657254 485856217 159338385 759518312 533013900 438812474 851451337 423892708 607223042 145901296 345904533 932076304 774584813 933849433 764865750 971900470 662430168 822101014 75128623 764204740 567997900 788616653 893911410 866202751 588319460 836709868 615022907 752993738 273307530 946642439 26012981 458430222 591654857 57630929 952769941 40581961 863884621 430182882 785880534 361089516 846733730 955121284 28387835 453649459 934028903 795802328 467187282 273511221 695234898 900133731 934057602 770997026 967799090 421941772 690597782 692048882 326436964 462273491 938989083 791437892 7560112 349332972 919972036 483876716 953573578 959109351 698420808 572828418 892327261 140072228 282956242 372850663 752737175 373469695 170224672 643270613 938918193 190765661 803847632 396429383 785805509 176240370 628539208 492579859 686881420 917557087 210548849 936960790 929501182 921869320 74086814 206861082 504446018 652694599 781894749 988838077 982760044 119565301 706024077 569063021 957652016 737917704 550220234 146297641 917291612 33838015 770723775 121499481 967130028 820782105 241265302 762390226 971207609 476263494 959505231 562565966 893706445 977974951 692949428 3678604 488004369 302545078 564227359 571838273 963883628 230760679 837966872 847140237 580214036 132439406 474099241 954691630 315038360 752050301 654525496 925843638 589612957 960406699 809183857 920431343 609319369 799044442 867303342 366145622 764864467 928819139 925893872 985230558 842700043 367328371 796749087 493089666 430242160 131081278 871658127 353996388 539306215 517764594 581116143 79479597 216700017 994010543 830017679 892072382 852750681 290724086 639033297 911992334 350310883 23028579 767966086 527489609 743545329 989434968 652449360 814101610 330508837 746221442 856382983 831114588 775666556 915928482 826438131 439523159 116689303 512810628 953414022 562038115 778835327 203571602 452545180 649481841 250911919 962410100 617327487 888555777 692762107 566681974 221248237 928951009 343185340 23685297 898394063 89264584 956784796 805061713 877891070 685236091 933287324 297298135 903220606 924775845 376590959 309740096 932588966 941435625 129926177 406559033 779988347 227475199 372754324 194602058 954742758 123275614 448577310 795247881 920301680 818540104 883059291 584998792 797344544 282182170 751787922 912192933 533344683 262732842 332628550 280004351 544164941 267606285 898654718 954359316 767254369 435281944 989915262 872894388 470521506 741678185 530410208 985305158 986508365 386304319 792423777 18308225 926035117 228798093 986298943 129364624 962667708 759947830 263760179 818799526 374505480 999101830 954957817 146506289 768892778 71051971 385798756 947157846 912727776 766286264 981805347 877688568 628135738 166986935 216083697 100242138 925480582 968181290 449559149 523864063 744579320 89906077 431285517 786751334 956722638 355736502 927042962 717970052 243141513 952602596 851485851 737020247 884345532 956501002 244117199 919360217 211991614 968590328 812406851 976780395 137315264 236530818 761983474 489149388 849914844 751745242 399004086 933811716 879397160 989540233 174258370 492888263 796361024 565662251 955905248 847309039 957805680 903374884 196534467 368829262 891975577 425369817 898677861 787695567 561947992 264800343 838317194 877329274 816772239 945306908 161619052 110898935 219690728 922456915 229405888 818943511 861028960 571767595 755947121 262418209 624635084 271464951 922599802 143600941 555500041 105324512 966253406 856891507 884236613 784042990 300134160 905762678 778330908 829025116 155106999 971043735 496492105 706460719 456857632 737020247 541805118 520313863 852844227 657797907 122100711 892147906 455986350 793287691 899467735 151025787 790682276 813363754 477735280 954742332 483515581 820658182 667001003 787018704 151313893 826747242 29623572 768361093 832156118 738574945 652796072 781563238 613780450 979056542 946629528 768849648 301930987 223855280 788608095 16953347 566347803 699572974 947314948 924375458 524770572 908454461 898974609 30717621 296484536 938849672 762433068 296451142 737769575 715156662 620015671 849366910 853095867 781294035 129528365 47273399 514136265 952267024 274318579 771885380 86715953 457320997 124086328 602113758 186641028 841671724 804093397 950956507 945936977 18365713 473816094 210978395 784547522 864202976 879335448 869590594 912973946 799789511 912116777 572335580 352530035 210637798 823945005 305559976 226962439 286213150 112753590 965200167 802057921 762566091 848911285 325870344 818949752 742667702 913530434 808886900 77220036 872166024 885268945 691837249 406955254 281051406 820497874 265442865 493057426 235429658 614862672 322418176 899361658 64362511 9783635 898388318 99506675 30098892 938429753 920881648 759977828 532112274 2478557 569955195 712546470 173630991 416699102 868933192 567180137 881418250 811059909 807095842 745632416 75107275 549024852 757234731 906702057 808102038 611698887 845179499 713399567 683778183 812057440 347955052 507412351 670602154 730799368 156342506 819992852 844244640 94849607 30845456 404361565 889079095 550046996 766419642 141824403 680395264 557181302 226217134 405422275 786072766 591338694 929034620 920954128 223343194 48808635 250123238 487975297 233718768 883056273 918523170 46124049 647333692 619522189 51573519 431657043 316690758 643440424 979644502 928206257 584853614 840706383 412210602 667936301 474217703 840235499 942272086 751001865 675447874 139464151 717834257 788612610 898896621 878060804 222399765 403225527 306142490 804303716 992398602 265907614 34248125 953096160 917697839 773135835 847882370 69690638 840501540 409796101 195690889 325961589 988488631 433322685 311167232 677745995 681179052 68000639 918235767 311381068 759818760 358670899 444135171 434152848 764495343 74442996 34344620 973678888 383220280 514201851 979976723 791945754 629506852 897826733 802060515 819383142 888033466 935330087 266814535 303304872 650360609 977006710 773950567 619332252 639266875 717709241 497559705 584381485 814709064 772900381 813739819 983353831 207533755 99390022 895563087 966701056 40155914 957101800 797436878 928771453 8441724 948991516 954758871 764315500 516214761 892389593 228291948 22289966 924424036 842500461 944354977 634211117 752309694 459223372 266234241 744781139 835858608 953003469 730527005 301057303 577989954 580483407 631949993 348751977 549010173 940861494 97440035 892498940 522911440 240700302 405188068 485543449 654618655 670065218 759601184 412849714 809124001 109642000 218363200 227851358 332228873 138376152 956916672 921733366 726471690 709699940 990818992 898714469 505912742 35172666 979267332 993963841 977992709 6535835 654622138 135474581 213185836 840579419 70110406 158241125 823899853 920513713 946303949 378007201 913419772 450205179 720860323 915615319 308837975 460012612 57868309 72692263 399453991 815995137 808762999 132088274 967116245 454725141 652497049 482274933 562652406 877577127 123451387 932137072 797674796 308041218 765596542 45985580 350265797 893187176 702587440 517955058 38068343 754148820 894636102 397900478 799342729 990394993 132304811 733646484 616986790 864953318 961388695 809357541 758557897 357990362 475214530 854077092 983263635 956596841 840180079 257645610 873478307 960609316 960765282 465459871 241767192 361260437 706348580 744649161 681791116 204094393 970403726 850153416 759571700 450979200 744694483 964854370 960738976 678607630 339440654 77254728 293673133 788966561 88365010 952450621 304502290 741417340 661863535 866038993 505444853 857883704 606847212 459673329 850421634 165406283 614332158 552122174 244330405 374303873 690546990 852650450 959889575 912532565 268128080 914869155 445130800 954314279 97964024 382821147 897417444 968490978 332395799 925437898 817303856 203770241 796446742 683926949 772996290 795209975 770763181 116810838 755856858 791446495 904341439 472256847 124849088 264187551 429998132 359965062 926890744 123850092 308268824 707538265 570876840 37573032 73749767 950368170 164485638 917982839 990835728 997516097 881125184 586787207 906366517 942143415 999956206 436801994 455544821 744879385 654202012 876394467 395128291 927560189 319628748 645580002 38255560 881710517 637582067 345998859 94557204 465694381 858263290 985704555 183536255 446408442 717825747 943672519 902805373 69769516 799609221 797205399 928421114 848623161 947196108 965299697 547576591 814180196 896445998 896853921 868484199 787563405 398737609 854527264 11737507 228752044 814395990 554537307 748512114 288722687 849422495 85773904 19546634 503897617 957248552 998680900 387386177 429655715 984368094 888504874 695469141 795475616 978935399 922531170 763354347 471025435 904296487 620746181 331953018 317641858 479316547 979187560 933160001 355285943 886632967 697113865 849284277 626187325 994110544 777965679 600713687 354547698 708115413 789461809 743055181 173843058 840871137 759244723 903644064 869688247 582879773 960020953 947077901 921991976 174346093 504342599 392133645 292453093 921545607 354979248 653049457 880992095 309201829 560226369 824557091 885378438 826166659 772648571 98696026 594636109 931644796 974467658 87395488 871344131 740655283 464064700 803324863 739426911 421086038 564096537 683580609 225923043 88690620 849124756 673238807 136379824 780334415 308777332 784564948 718756171 348400056 593968248 799719970 475255936 245425819 826679977 832313206 505544526 325104624 633350977 32074366 816499270 976520232 964067060 755235720 825235659 748779597 946849592 929502415 964261830 698779528 501921402 921571224 764866038 834338526 546290106 86271180 312407745 817058215 776895408 553661035 852665185 992198164 368671094 921310881 954466362 970223380 415069274 950153186 962876886 768528192 185778654 577388454 872206881 816888316 859185148 83290272 865256565 115727906 902033735 155001617 755564180 872225806 529068540 25282949 63478680 509942170 730735897 294381110 813031810 291141511 197490906 578493121 601338366 884936643 569239954 650661894 824194615 828348958 714463804 51329277 327588006 612940846 900736905 908957606 841682811 846537439 508725559 65352715 994501009 896012130 480111089 546726902 988670419 783224780 766764117 929578793 768007633 4592115 365839294 799420024 29667300 139283757 111085761 387503883 210173815 354715438 903648613 748607854 173276028 963401924 951725411 931107631 841992079 117416513 961020740 770835488 718200163 969177556 57495472 860694535 386424530 540702009 953996781 810748550 882978615 535913514 518174963 54070748 753041289 125374572 120174001 752049295 502781539 96274983 223101062 224891184 247243333 885793465 779922859 987230792 706216484 232537226 941932100 587458376 956527728 21610989 985485875 743200019 567937637 787877207 967667374 803951357 827121324 455151996 669416191 132386144 900939956 838164742 588113359 516494143 806722860 301783643 805266743 260145132 846708305 330464364 574765356 811098720 952055734 567639948 946712348 45158234 797907073 933586103 56546871 367246747 960080595 568301237 944889445 810942951 991373246 173341228 973436099 718973060 783265390 743513364 447890535 137769256 88985749 824566274 458223966 834297043 941610675 945846108 851413909 637897808 225933218 777179748 66462961 745323624 890474635 328826810 619651563 834463190 774799402 894913970 421100494 453869342 225008010 271661915 781072132 381883871 435705000 930031745 921929246 888026736 673177018 987839543 227931746 217187450 383959070 906865228 402540282 952121953 132207210 317524650 272351369 512578214 741836475 897389855 568350365 749122859 737020247 289427392 735034437 945397130 766987003 369805494 862906264 121737143 802815637 889775351 880238480 784449597 620576248 786307251 247913254 968997976 981182795 629036908 995273806 326274151 930361113 825432611 865441082 351008352 811300390 795646526 564209881 617661678 934582886 403849719 269700353 116895863 736134225 640512927 907405195 67760784 896226025 201560711 780379145 499898786 917826338 791273747 342997405 622740604 538130485 323019698 75589569 575512011 748786831 749548896 281791411 432262902 355143235 168340941 847085890 240011174 871113454 787619642 927929829 62556301 647521815 262897815 531381693 769460121 842658033 991961019 948829295 309822742 415933214 114022244 932099962 961168781 574115633 21264293 473280886 794006299 843200758 174532164 815793566 878142778 816495671 570213309 840064122 272144568 947361946 365521420 438634870 333425338 766081338 976006896 599198230 507902559 971922488 248650161 500842455 788825752 147938079 907691634 309302316 121381398 574731698 773768390 676254584 894403514 941785340 23765109 900445146 707706302 504332644 954415155 567093010 943682231 303223585 412329170 735025953 783507843 577254764 802274916 747566002 933094311 769944906 909916252 802619545 871445620 972365186 916473137 272441759 27641108 41018659 591501740 932324071 893370936 961866988 949975331 475706250 548540187 429051251 537164628 302550006 493268305 50052774 928216002 97026799 849121145 111058020 976762432 819378402 980915975 822623199 825067169 809233069 988519463 915753500 704752659 178637261 896316767 844218853 947163450 508184088 959251624 993027975 638554193 798127195 4106918 163005539 767131474 930356106 524916298 301058306 20866203 955022369 552206566 895089333 760875992 984312922 456378659 864377237 529645253 737020247 813038001 331144432 711217984 857349970 892331006 603403373 300249855 973782477 981369238 76943715 909288022 598232076 68005256 172743757 307544342 829088095 847556822 566770763 441378755 392359523 903991530 931997539 40456554 744005845 813604004 802033108 400475972 923972027 353700019 639028532 771240882 43669004 742877547 954429231 51678551 537827502 199027201 774267655 566861879 941088492 150588807 930918141 684786304 845729131 865400756 9989202 944733864 825817830 678559713 779245536 942763383 161256545 380214445 969254032 144933154 913313285 597227960 983712471 787969837 794182817 968549536 916621301 758482064 750171808 286089313 387754853 835344198 557997767 982993955 968233076 859123833 911488424 367883577 918154003 42803955 469843497 597711637 509844117 834954716 895566266 740439101 655098098 451536774 932442984 864445298 835731471 263851130 93270073 980615142 931146542 275123112 847995880 436304730 871053190 126647091 540813121 231284319 232403318 351385799 443248258 599451083 799869596 907686432 775004215 210493511 902646952 812003166 973303787 558168578 201883866 826881924 937687439 387538606 195933967 898596333 951125248 855450333 611694321 692047252 874342951 468077186 753864008 694178533 335590695 990073124 961438845 749635255 477029983 427208757 476748744 947221486 259641257 932198363 496800708 905578519 992109479 287119001 503257278 947551417 145110377 877579243 704519164 981455829 971763306 811804961 989654253 222251486 176838388 976339342 941743585 214552047 849355470 473220363 741111565 37291648 877748907 475167079 328791940 999609121 911643070 784434093 494668002 489771607 881677668 69045844 739664720 345311524 738792596 573699094 966648750 934746354 912996143 834706500 969403991 963027237 908551999 785277431 896570578 887472836 986371963 749128893 777134858 944221053 288153430 842340234 46022995 798634241 171687602 546425352 790221072 955281800 748223551 34347469 762134768 494102736 313914876 489216778 864571410 812119933 60004760 812804654 903775493 74502233 828633662 363347100 881031748 536454048 502418087 467218185 430041625 69051454 811632528 929354443 869632236 548099061 157436288 409789226 979745018 960236437 937100486 318244129 814979264 807645786 775580201 929615795 658116285 651768520 789790181 703789018 18160088 771713606 678053875 805445068 160078671 194731315 382158106 938395824 647059271 881900201 992499788 243852245 559880082 218430450 719122382 411336868 803141560 849893340 745797487 816393671 740083552 889260712 908088794 495749222 966637475 929774579 558659061 386638969 893896897 57332358 408620656 660097002 848253113 511765615 810671498 317995953 817897890 362841166 338206501 668869384 253768896 852616364 844000640 116325956 84058007 380416248 984537696 944105990 999798727 655198364 104601396 32837534 335329279 762081388 325688123 913736786 271768094 296473069 920123966 789832727 8850522 376782049 749906009 698006642 88928748 197422049 192455432 66224040 196786217 827082676 451436539 879300000 623986264 150214601 573660150 421778898 139034777 344739024 21095196 890315329 806381762 87945518 828464184 586593596 896261659 330128197 738707249 860111098 349649636 805930502 185308045 565061858 764387266 316229440 902767873 827519801 988690699 916119630 680694236 499045033 10607150 993197105 757294207 925102912 531872640 33342809 275315923 57256399 572398724 593805786 856781384 39379894 908602323 533234119 150877617 724367793 153595281 505275872 10032261 840220211 175610100 594125964 991593369 833036050 837706128 988839729 664231013 964427270 965140124 778499874 954570395 346358166 812215302 201616664 836517985 945364476 476821350 117976216 907437605 532009751 603649951 978400327 789324879 752558082 276963552 392617326 925542493 633022783 886069505 778064768 903209390 621857932 385221779 872050612 842703552 549692258 518478849 876280732 165542961 429617307 752428750 889382104 783246357 153906047 689293609 309373892 949799442 868830954 312553502 419640798 885446015 752749338 190775609 849095980 893400823 971633502 836113453 87352945 264829041 800880230 766697403 812066684 571032649 405237909 233430524 446525958 778903253 918002225 350443445 989528581 927897679 942964896 648676128 607642298 103912854 328566565 328301745 928345230 150870428 844580909 953727079 946548961 693866929 768825781 863512820 922906937 303165897 995082685 954369317 947556712 785132003 809096167 732591144 786434281 704407762 36438826 881825486 931679684 412446956 499651717 28481661 696090716 7704044 545350692 998701660 277261578 343984584 588746310 650442664 561825580 755261149 812672276 765574111 480023337 41957967 108126467 593511564 566208290 750633263 420109161 105362746 855488351 985241570 921533614 626837721 496412156 965854495 968155000 402290804 899359488 744717642 863022731 921037307 21146247 634709578 823839575 157662422 746415271 462428164 798864828 400444196 977185515 979329630 190603399 869510017 656868270 973300130 802275096 856681589 887650616 962481561 943906179 935625318 296119489 989713239 369287532 63261919 808883965 587944772 933559480 922406040 234114866 309989159 181895423 487152138 345716068 813387227 304211862 273023409 701841363 984278475 176748725 709662104 921073396 463484012 790111643 903700203 227858256 288736816 940588627 918625689 760691073 407559310 320225024 843837922 457083981 144154297 348701170 394292915 902762400 974764415 748693912 949554432 589536174 371681072 774734059 526124580 203121430 792677311 817100433 454100573 888120828 76686717 839769642 791982295 976964451 765918768 106115012 1273828 357302350 742214901 236786827 319616756 783722846 571382972 777662974 143598454 102701755 382522716 252763746 967490128 877118817 558291685 898437824 921700259 744112940 988146904 999185062 788249723 146380130 983149202 933425885 302943106 788436897 958427567 566314353 355795396 830109748 917990196 738857427 415265687 370985238 30586854 152658298 644679833 598431452 836680922 643521821 592631837 723228985 913725192 913073837 459244239 480084277 903680929 305765796 899347442 738139291 440147555 90147742 929020363 86513539 949807014 778199913 844056035 207250706 528656191 583105246 884067491 955333441 584024126 768539427 53553880 878537631 797915707 608695736 480348760 793622463 819523477 933787177 851013737 362216283 246518923 360058611 269085502 133259315 753602796 348130799 883951941 167307090 123847754 834780955 363370102 626565715 951545690 557437277 911398994 215970508 875452576 660525452 694908130 766574860 846209087 972687355 975454572 741481547 867421887 297736040 971899682 835946444 318326631 141802535 919217583 923787346 763709511 654171649 920050638 46776628 961762783 845990434 785612500 955161992 620638333 613721109 852065539 933724261 117613774 889301898 359995228 562738985 987743212 487461250 861425745 377209892 538189463 718935861 312925788 609287790 703078684 893804773 859059114 8568910 759073552 777939746 313058146 590526768 665250810 26599949 153129089 959578281 869205259 106099250 575930173 247361339 717398742 737050695 768519756 334933216 856833166 847039455 938355867 935531373 875864008 249709810 230846370 363444228 272763900 281511239 276278896 242637427 898028291 795765570 157145369 467170163 76371702 835980824 518335476 216329253 535257034 839172658 896124222 288257514 8142312 496010592 816825760 20794106 507713117 821333516 974928804 453804293 814043100 827960797 965375262 649492903 943116325 978313390 312586062 537075054 964756422 379140569 776966078 511676337 829694043 774839292 689859344 971756589 737020247 904930975 644713621 817275330 864054754 957425540 685252957 801542814 920897586 163504332 374323252 138817688 648340082 909481368 260153720 590209302 771994597 706391456 963063225 105684208 596270579 892193363 268254330 814847284 359707658 447995823 737020247 760326485 613776174 97184265 937200460 755258010 761063660 476957713 743587825 988695958 974419353 605983298 458036625 956008623 620251689 850321490 961424327 31213790 62176414 282566154 343005904 214724842 882742833 806301368 61272145 624546610 940190722 807492645 289083556 860493311 778312854 413489414 945911241 354974019 776386121 33340496 609074511 52999878 906611747 942289118 887024267 976716939 748804706 293063159 803747353 549708834 552741051 757301175 776864581 917602679 430030187 851732951 173076416 289851163 671270636 312977885 989497453 981480181 908149869 926659599 923173395 890328555 751606493 885848594 214383232 787834787 795441084 317390490 378267057 705548766 986558474 477885026 768337854 888052250 987160870 360625053 967584636 723766715 53115848 438956319 878052028 128380386 219458180 418140184 822376641 94014133 274047932 700516596 194746481 923932220 919768243 341048821 187399172 283515026 822531523 782257662 915496175 387917434 663002688 812944708 945881345 830405377 868663354 789959066 970887128 173009521 792936991 924442675 281872885 262069304 809290286 41651386 922455925 842534958 939179503 526338806 841344922 460477906 749108374 600768361 857729702 737020247 975504911 761324053 710670697 781126260 671776884 698083445 909334130 913715076 838455572 399251871 77646051 855134685 936487429 847907947 783442243 173299660 387455020 427065446 794026523 970324232 300226924 508147249 801865658 964264276 146068456 789679729 61687795 71683495 887326851 470135960 854167136 756894910 992571893 988017876 335504049 994029456 927528104 685288388 412623500 968610623 179487808 765713175 519767159 572750243 844897790 914284109 949727409 851793551 309049977 574550596 942914310 121458242 891481631 13375783 399861990 978093497 810485252 289872557 193265387 811981924 586539612 948671361 739210600 269983675 787042831 171985988 987259249 695806472 369458001 761086381 141244173 884632204 890111307 323544426 970723309 812961892 251511659 767199458 791084969 906590741 523614246 918991168 910035202 462828065 310938456 989857776 400977178 787357995 103118038 909742796 964924057 639315874 532770249 207003157 287903025 136744542 298516302 925187327 965012017 776972397 802021536 762374068 836812679 910259264 819726330 968365681 780491149 983648955 299009332 945126823 940508524 12856420 962118881 196075890 148393855 587398272 859690573 668110104 825154200 883578940 256978886 542483543 846715024 888940120 240489843 839851299 902802846 317989992 588380834 667752916 162270137 316503239 76731434 310941043 671696699 844961198 85186630 30322242 403480595 466692359 815812061 909746304 925785360 424810446 888405045 811899768 265737940 575575068 820181738 858798204 804275284 758519212 818315909 283982701 835443878 69176211 259647171 448353324 446995833 719870646 781277758 759623149 782329702 946339059 905379493 633472471 913733068 662124097 523696730 837475371 830443733 650892775 535874685 49795592 688899714 679867108 720273975 909534540 707057884 683048733 519543768 17433666 808727970 781611298 926797037 975309711 904975563 767270579 755007281 826905485 818998633 940783874 893625042 655256160 677428247 790867963 344749377 906275032 400848341 751354308 203898964 66825344 129824776 636050072 825072093 959483866 877276336 879943463 999476403 532766101 158419004 858936878 959474551 963780584 900724192 863924001 884650375 244680514 962285000 696275297 658058190 602806813 943535253 892421940 462289274 454221160 425098933 60335472 658832685 931303091 748304076 212101651 77901799 860003119 662659051 414711791 993657594 1884350 648457869 794416158 424761423 980288530 953062175 120485109 450017571 105441236 762162794 82023386 88562781 521523289 869541866 311990009 835688844 737020247 990986200 451610543 569816103 614099667 172304468 872619138 742748043 953037393 29248394 916782483 215293354 799175096 912522354 665460684 648926572 231878318 73784976 864458781 643936071 744864625 643490758 731238455 80266559 477298436 824407812 65309130 651642052 925982823 824356820 813363059 321406771 85180174 673702312 925775793 761314761 774532844 748653716 46719630 725343200 889580862 996872347 137207205 967567424 112129577 700422164 660565920 279449331 608612358 71149284 531368529 318184584 75454809 521655054 694770823 737116141 678160074 848182952 744800925 16468072 378183191 853601213 956622636 922168955 531948093 795906341 588341126 704436867 823601979 86436279 665436056 348957670 793773299 558407592 954441153 901571547 745583099 758381770 348390232 370023747 824180432 752560744 395057467 842374061 816834577 759302135 947248998 625092128 999751439 731628189 984173945 711161588 575165591 923549720 381802516 546701365 914455734 560079088 517790144 847048476 508264115 282267093 404381478 781900097 53340708 817629651 890552685 837130404 783723869 595616886 972031729 883900651 439804963 108072194 192325099 886989411 952047310 884020012 749640826 838458109 672070688 580251570 503098581 238636985 901421973 103495479 35862760 619377957 816041504 578334103 802752992 405809942 723145496 993924976 265401101 909732289 302498339 936633123 2624021 45948527 847076794 788084542 573069977 865679173 536619543 861639944 314200730 598450000 971702471 936135557 775997607 996170213 233782111 515276665 747239393 352725782 842511832 911907139 210024782 494653015 276319838 873096687 833825813 285749066 766226280 342476523 11536608 673870190 297346007 946623375 839297156 946846370 659447776 683052619 999234089 247437643 889034267 923606240 985017332 792486155 818092124 121087599 505501588 896321566 774946616 922952457 766938687 517370383 898697240 358408281 492183944 792028451 998808309 386003695 704494090 562145669 627959697 662263977 525507911 906460526 753231304 806198096 910446179 772574189 202419089 312253370 594472928 782666190 832336026 285693544 979236115 944894850 915912408 169165271 830380188 813505656 686704085 377430800 792163825 563854082 499493968 963651579 512605649 745862408 95995279 431522364 699434558 400941248 998653409 310435764 961639565 877153119 828491350 957263333 671064 694415002 823312358 829820291 777227821 903181548 574793525 934098360 902968929 937740566 852706678 973353950 148425648 878827853 214714342 888064542 428127306 836968391 897238566 975212227 827652801 74315895 921148149 211612645 357908610 692191756 218058035 919991337 775686568 746033637 84876974 13653998 415219985 353228035 929223489 611708454 758286262 847474487 969867398 777944111 989156790 200877652 603641779 630546957 862025766 928255941 845527384 546451308 366359937 959694643 913827152 831040896 369321158 697274007 961272426 84808189 404847254 881004633 991512100 915346138 791798150 334577081 182067522 988280446 903674632 869130414 371606989 497493903 832107496 599622003 903820859 900594208 962568516 195380491 232370285 160971840 233821849 64527274 848040417 349363143 915581558 134311961 198867507 889851345 932000871 749981904 444594658 949962945 188315144 234897747 252883360 681785953 76157951 827728424 775215985 932383352 84825724 132095937 955130922 32078277 840079592 567654889 83307385 904911087 654318774 506240383 326413891 853805023 440430935 757060609 508410428 330760271 409693022 349397932 984789732 776792687 842738986 3086812 980055352 346479328 812011034 234294305 871811460 717527818 998436307 63459228 338762058 115801459 202427738 597261215 927787725 888944761 823546074 327743823 560695878 975144389 847732559 218237338 495320336 811679022 922276270 681124367 245029388 49642501 851581802 954064478 751652327 883785661 973667679 908181368 65346725 559667299 877780369 316772447 837171256 612419546 7831281 880482307 681544967 742585791 352387919 593759924 855484234 93035799 774532284 894997393 751144539 99540361 645882368 933042352 896893419 902263555 432009760 81875874 824220931 351333337 587064706 605149349 975525528 692375076 849042381 858226659 318727112 802756033 760799255 725077384 255393668 894827167 291184391 852575774 248063430 233178913 396685482 823450673 848082020 821902462 366761903 776595164 755949299 881381277 687223659 566239559 851361033 372136195 336539376 873345322 721755912 889034720 447957606 991974156 37139518 84388389 749309008 78905947 481785321 124785206 358221231 955497925 835593218 898756549 732446789 980558693 871000387 703881977 986329545 420355059 790361319 587271785 941901422 987603328 878006293 142256084 775669548 686603013 231664631 746166221 979974026 131225166 882099155 572515838 855118937 918455063 782358131 787560429 934625080 237898964 500315672 328386349 959046179 251403438 20066116 44341885 589682134 470721123 775653901 290822588 659183460 704883864 211528419 732648628 865849042 467633265 708784116 679117801 844661655 937288088 245520851 809108105 464852812 792810695 908377366 930713315 529223973 297932577 889679867 671152006 937359365 521306923 141993055 838681550 756509299 429357760 738664859 96213388 861351312 799826217 758415358 820239863 114264501 788475904 331134340 968724800 573678089 899971755 822737502 747705126 892834370 802636790 649463873 409725404 368234310 920879687 315135755 904648997 889738521 969440963 863906717 355744680 842170280 580472333 796245761 815277766 528879522 830467651 931966388 1377956 829933993 449414859 836360296 699480373 20711832 449302143 944869723 911683526 694580966 918916673 833309716 459133773 748860768 886422590 144934370 824536660 574009966 950213386 757091211 816049704 928284742 50124960 111922618 737020247 553154665 866557474 490804360 405456671 23483664 651862669 307962300 948281350 256157009 895800731 505550031 183634958 526529652 793690069 825945179 92533209 566633449 730491225 913794796 710136990 825996960 849680792 531776221 36856464 942935194 871281119 364879845 912701464 497522999 472588399 981537725 493830210 587717318 593286188 799364104 524423468 238614441 789169809 61227407 345821878 861356753 767141075 279187975 980182839 445813532 777616020 984245435 931753837 953714143 148810613 630202712 787678341 841002753 775900514 438138782 773285707 594781330 993605857 260120997 352029530 885586696 739113657 914125481 811506546 995206789 86492463 403518158 808182655 962350870 729129612 465385104 155565317 594433201 915637060 620686346 331942323 358306167 989293926 314289690 927622668 535857875 809969994 891531323 953210098 877209286 734905084 895232808 915271200 13350924 737835730 969941726 231398142 917716394 988779880 859229502 895755645 173265887 987611268 269796298 959816939 887752757 898250844 802690071 742294133 870432837 918424488 921051238 732444922 523885499 101491923 960223225 565296599 878968819 2512360 933869476 232786652 895958794 952770677 874091500 605585386 942228128 737862590 545598040 645895715 619459396 550235877 444311875 407593646 186969755 720497657 990090631 857716627 535804444 795475089 959887021 774346492 970049496 628828636 590536343 438587598 94257069 130218912 788206001 865886653 892567773 622448704 12992494 715107666 854548904 456312284 905181685 45486533 975398298 811386744 929150775 242884480 892703370 471224313 939216097 730726122 763485011 75456095 744935834 109018455 879729491 771532512 802127021 248022967 841333022 552329986 378528476 131258208 761526388 346893626 405157640 342938066 339426497 912349835 911030280 565028843 496703522 792723837 535065010 602989672 380146229 820227526 992067565 816431722 732695662 824749799 955616781 530041587 173272173 392848448 787535330 974597941 831691690 786412526 185368498 884627014 54477155 998308259 832636175 796236436 801431725 942386987 738846712 924516455 940773625 828921044 485142706 924897142 456185291 99004883 327305085 996610589 38989530 747790190 30772842 983109406 746249224 856803719 345696848 859647150 763524581 952734458 338622334 196214094 661510476 191901920 137804216 952018782 684449277 738170598 861591450 271008224 423699091 652570195 862389340 767983712 992730276 587821224 576068204 879315160 40750640 312530576 938695947 537650717 551888833 738683702 781347410 30512131 731525484 7958278 832198198 903970924 751032091 997975840 840687320 982484283 927536956 875739039 524388955 524806464 559164598 960662921 294515632 772807899 895285238 423763429 553854176 373539480 809918615 889844322 153652258 740767087 912907365 855754285 973159390 326802564 412002057 823595359 656838760 940945267 415545229 959035107 759496419 117797540 477219599 948092895 913454795 775228047 982684720 786308442 784588370 697292230 4632140 659769612 445715185 253858147 930610728 625882240 525583533 897312294 818480144 991206299 946334493 804943719 939544580 980725689 686780215 648142548 909444786 847099410 590855010 2440659 275315836 131295442 429542308 859176288 212596716 898679859 521965355 457024387 736725730 925046062 498176819 259339163 867338018 806245986 889119178 740408888 812150603 525847016 751303652 820102346 289791532 777073350 425739448 414378489 854920596 769936653 378850972 255489301 998739721 464214603 487550892 529532706 912991904 740231216 996411586 308384829 755648859 192707509 821680750 537011733 725899778 259478380 57290800 328737694 210635574 787349520 902325816 455057656 312405932 652543705 439313621 100778223 713210638 824334049 760267667 48712705 675242544 119968959 739624567 817446936 959690936 348133048 563667249 775580515 921440550 993848941 254641468 4142815 811182588 332747981 803237304 740558836 862123671 850458749 305226012 275801727 140311628 664892284 57261914 12585562 214570132 325335964 922473872 58520101 247407156 184439442 970828143 756949914 325794348 740654512 629442108 739922272 779762906 482669354 988817356 848211069 301136310 604540713 923411865 81404982 256611536 369824455 491994382 532183643 373888605 395059291 327346309 203543106 206627025 466193660 899289206 771354885 813071031 395749335 893322274 998527074 215100524 546926664 307053906 276199518 843025628 677926893 647773311 366298145 765909502 753397930 440726662 71325532 936088368 754155040 752873432 916158385 788843653 60549347 481023447 859857038 840442892 784970629 14777353 583811458 550979781 801672018 439575512 429769499 957694114 511158141 978576063 904562881 180759578 991050143 335036691 437253142 763303628 951394386 744033899 198422620 732797170 356565799 458806814 947059690 719191981 387983974 794570941 290730008 403419566 173940114 767412397 72909332 148683887 696247384 40888836 229594320 212634583 242374857 224258603 574341987 602129831 723043592 77824270 975965038 946496765 133133979 748109174 874938063 189918681 113843231 933506417 157924592 796899294 424293024 393827327 153699353 869366058 91806331 995620463 788237668 310089017 962143511 814074988 155505598 680563652 944834223 853316030 863742153 837182711 654078427 921980035 198702483 166015801 925926817 794982927 961537287 309117529 877555717 30525071 119855155 745083513 674619930 47986964 329361191 368016637 742471955 825242390 503728486 568179091 287307922 917590723 109158465 765309832 954498654 787531960 713123855 675480982 817904410 822639093 124744078 633798190 81160342 832522321 889199118 222099898 622168769 149333491 139043509 978565684 891238714 926674611 982403329 459086611 316601598 962544093 917860102 405373045 796053948 916300143 317398554 787315140 936896928 807148801 717537295 907830696 70323605 824341995 241460540 890718519 676880330 955859625 970218385 192409608 962460859 852387380 459383711 451490163 157546785 466272925 783931354 183282948 828172784 365436129 894655252 900277314 388335446 411933061 660387568 806288553 161248321 307923278 68147393 813705876 996663211 601253083 586210727 766075119 59995618 392827567 838615558 944606549 814443966 371297676 513322094 808916366 911693976 747598351 952411648 993574476 880864025 917833405 610168112 246893185 183991467 934737877 742583946 429355557 842185275 978937172 619898778 547306357 66512819 886811439 840656590 558308039 929618036 671308839 439930245 366918949 961437172 15994180 414216813 552913891 744984788 406377532 874822765 788858546 755986782 566691337 298366746 566132982 136533473 950247545 523126273 812019189 370839073 986104849 479013683 840549376 447009062 831667388 836383219 653753547 845980660 66195291 602874572 901532966 919618005 841637486 774083915 923712838 948796759 743141907 764260945 856717879 615144849 765425653 935355262 917366787 999646365 430969169 909318131 619941749 145260246 624606127 521176076 43255521 200344380 997861215 774806627 332624652 761331536 707672622 577311584 797899938 14435958 789131824 536631708 460784556 738970680 879461301 833431340 940498075 536521669 796812569 743226997 752165130 987294367 263047327 835634009 400835316 391692595 786133203 944955202 759428905 797310159 925203030 885919534 458140951 881549017 811510235 92102635 363633045 288845406 798625349 879625047 133558323 747001686 995632412 846932204 246718133 985050835 917922336 381103638 74362628 939827485 860563205 963414996 298581288 836579139 684706960 924346313 922905648 617712537 4239082 494566726 431411647 801253778 888650919 841415491 902780609 981898489 958647321 661556058 135954710 763178212 685705202 977615021 846847771 846837448 835114368 791340365 94759875 744955608 744849864 455736929 234489302 68410067 906930321 163264209 381546266 816207787 626456082 983560784 947366237 521968133 834896157 760613578 903019280 757192911 969898658 810242127 71805178 936710749 724235146 993934624 279698688 72069686 950841602 394888421 987385293 825143310 49160807 573918858 164306637 969811980 891375315 893237735 475538613 785403106 676641582 466710886 939716319 818128040 977485604 266761544 919732490 968616922 796440077 231984868 436380658 991381179 790832109 969111823 802809573 708589727 878405228 27250472 934487056 895519316 102399157 277925554 865058211 163462581 361285853 526124625 138519548 484152263 656854729 555023390 541880145 696756476 784562077 57669092 285475666 928384160 585697207 996598400 551545600 479870521 961944396 824501500 760361866 848583905 653555097 761083824 248108578 633902598 597960236 173425876 863287972 922201859 883478716 902200586 386879871 20558400 207144809 980667857 265027470 901312456 512904577 465056357 843906122 315460212 819911469 358857673 995420908 427640478 889373028 991376465 134170966 462854361 791012117 908485665 328698349 855156014 731359406 681514849 823174142 984943423 784435776 328758883 608689277 758203281 148460989 945758872 290342408 630526620 364826599 487852130 830410128 382654563 898016895 178367989 949592375 856140940 939706539 743084227 920322018 593767 105431434 100114482 868478754 855083947 282360724 298272232 121691572 964255456 526629702 339394467 327031593 760387089 993842351 171440101 890833870 39183504 63470089 23134371 73639028 447343 951515951 506868332 680915000 501631195 894891690 254942778 646168977 545773795 136630063 797319609 931587849 168456041 815267193 29738114 918847570 171251769 758228018 989456223 166761605 793294632 853333808 765291943 947116593 871853152 718669053 768962947 249078478 931727881 852082887 330543760 537363303 798146489 755367737 959297922 840887377 876557314 953380575 754705649 679375642 147481156 956996177 276097201 761193121 980230698 876494665 278530705 798858593 796125102 525011008 877984567 594850192 930254110 962965385 182049145 905716580 866680851 795870275 963165516 30142985 905656935 996183249 914316453 747841561 979999525 620006212 871407821 824037910 708365941 19458700 178103417 907984923 115704670 966163910 745075380 712233012 618809340 974560515 741878912 825527935 21938184 625557603 753770649 384080923 842486395 906538621 525733728 972713263 759186795 278956499 847877623 918189459 806925971 891673129 963313269 115447608 643410973 770960224 829242010 189130414 970273695 885273374 76572013 670384132 756976616 924548207 733033312 171192993 93405600 809311137 979685121 883675215 963839100 73629861 911188849 572633502 339975735 660905017 314573473 801082190 377715564 33418423 965057152 356628961 149270900 740189572 132896047 209160836 904465424 881652718 593077832 873286542 780329614 395107783 945367982 952922738 490072589 986491887 699047306 893710924 440824875 377693456 453087979 382179241 280166715 786310906 861895284 344256055 974458195 304855939 918088469 959452266 552535179 81533626 915552984 955285195 831157362 814466049 837626680 540024374 873156007 942566194 882261402 669156147 810189158 1330955 170337526 31157014 529890199 843921132 292890227 159232898 887562338 240456736 206724881 501012400 412303403 856702013 942463229 191358266 167272753 375320216 211597865 918508039 54728069 738109440 869437394 414525314 847968454 8477340 727097359 919074576 873282559 227024122 962015802 310284819 257248121 924182284 872921944 902751930 822723192 739806556 869338261 634633868 867702283 907084714 196750470 793359708 879009570 969539924 232794479 932937272 858309362 759515160 277125258 799678873 522399412 477621553 673698339 806616766 919326454 379191075 605176272 672381127 745602813 964768110 708135370 114070672 639206779 880515407 789148419 763456948 762093962 88510903 622149007 849628239 895685930 224991455 935568755 955183400 833688421 814920258 833520127 865800512 396159619 991675327 764722825 568961964 767457719 529756677 175818944 564756392 53686564 127297083 814152265 17381138 262422407 749228278 517399344 952583294 208842547 778651779 870415315 97900123 991417925 926562408 885778719 915042539 837185061 199625478 195507886 789146714 915947618 131570185 240082629 993969905 984370949 604024161 731167285 810180511 653356574 690150384 390582041 972418484 558583004 814536137 236552593 778047114 608361449 702307501 850229811 793559804 234458132 257581912 804351558 114686772 877663095 822364012 922809585 931508488 718396884 119605457 804664425 296539517 116824460 825240402 764221692 520754259 897405544 258459159 596146047 572517159 604378432 754072941 67850491 957783042 678226263 561673348 963505687 802922395 887867406 817393285 804500488 860936921 226799132 308127791 857686092 86101706 217421278 751016256 383439773 824397444 390241773 168203762 833791025 817382054 932248290 915939031 757981447 951858557 565985860 854141514 709867602 103855414 850544088 127571659 663498728 81519038 502344427 861560120 899383649 771602931 401284187 710567887 24403276 776020904 632510091 772682478 62821455 752368298 755112376 792634619 838611726 991473200 223894190 820862267 357495073 798215503 280453641 939799501 268790186 328434352 104614274 668172598 792832015 64829513 884263785 731140186 570801845 922902740 673722012 326788128 806539298 571535498 62497846 522535313 733674199 290426911 772260952 814634764 972239993 179590123 692476109 919500595 866017951 948682683 861208562 510934367 830601969 835824096 634442994 779569233 673468184 866607843 680012450 867467124 21941577 638581571 719843330 921142810 964547761 920942483 747013073 54322017 143839608 351019119 634298180 836618871 328327304 749273041 672748827 153074162 777430913 15548813 652951886 278288255 783999243 226299975 588838937 352151982 166919333 832839445 676871911 72723399 851576149 31446735 311952674 891438476 644365019 798792533 474447097 916082699 532451163 74219470 797096852 955284356 895729769 234228666 733344555 768225155 831010268 836395120 911160971 528209214 966873189 314061261 151156371 984191974 889351652 152288324 763317919 870598864 664787823 540698994 913500562 153541246 655317169 944577947 834945758 133098761 568980080 676074906 612683957 405821877 60367158 126665338 232188443 48109192 81906216 516912271 850548304 173249193 913221847 984500703 998680840 119144411 957947594 812182447 4170991 888958932 749832615 545344470 971280245 33411778 972494501 552287162 46722886 973168600 273411014 830621265 676937004 997414455 686874659 175582369 121064947 927661871 85539441 901180549 597341810 138985776 456373828 901768457 242516403 805673299 614192049 560096374 789666239 696440028 566552154 822473977 985276469 964692310 670085765 772513321 221691405 825668753 833303810 674712908 884802583 920704760 765650140 532475250 321846840 29767833 801739822 563092918 538464131 673916627 979186450 982932863 500390426 893409267 777916642 617906514 216175037 992135599 608656077 756248947 858237798 906853405 218729256 889353640 900260018 917065165 775235251 778404968 892776097 440425035 829005098 867848613 679153236 877775322 820076564 765933061 922323230 638792140 341643710 382196064 743549947 953283344 822132912 322182426 956424867 853779711 784837635 685754341 148492475 950349582 818487267 782058720 145989012 804296933 744626674 294440170 746571367 862371950 999984601 403209621 479602919 266334634 824015404 910365304 457215581 712843760 874988665 814556403 752767168 992136728 823597804 837890511 786573918 928223439 848390282 517322172 637432620 324239938 867668620 856298886 945478225 867322431 692821255 809074128 167923354 365179144 737020247 940072049 908078059 887354342 884261067 908347574 835630743 914661608 938857917 281121366 7631384 610150878 159054392 549203923 304332977 742251907 641255244 786365330 880428235 920065735 527251228 907053188 420884086 964377283 7286903 129991911 453755630 188422657 32554386 783654675 843471795 12444663 75777524 1654085 908093978 792012116 491597808 745390544 125881869 463854854 284210644 82485191 837488264 674434874 719979514 366065005 946592445 986614592 995989430 863330495 620160669 876531240 526597643 792582440 761683688 811030509 561288917 486853668 351671786 262900084 764388124 433700701 703495013 784934212 239043772 750823721 879204642 131024570 843019393 176639544 244762283 130825731 964726305 598497452 442082167 335571409 969266450 945899636 275322937 933788273 954031146 797488727 769779916 773760266 88401474 772084096 527201086 466132042 871527210 190187519 997083622 747342448 356945479 849040531 986231933 851092702 873585591 184171353 46679145 835160829 850010670 96381050 783413973 805846744 89585825 170131146 885692949 329400448 385131855 995422289 890715978 629246261 804469252 936528823 81356426 798591206 899666076 815143747 992251584 153925386 859817150 134589074 772377010 66659872 71005229 452846885 452537289 889471329 934746373 57749399 800426235 839829281 124952258 980082440 982852290 584981581 156109438 999829738 186804415 902579357 183526284 832033354 207696288 352358884 873061081 847017882 666951848 946994994 800443279 881501749 963364926 838602230 117653153 872855789 700894476 147712187 52125618 807504033 326897597 921744694 728275268 776565478 85868274 642997764 90208301 483069406 877140334 401025818 366445264 800957355 907396985 783557738 507729002 203378634 706263063 704876280 692803333 943861296 790902442 509275116 784079354 180486080 251515116 789775042 440432672 56079567 155977382 995668742 391787941 178150658 127948547 699215758 783747252 861632743 945537051 161477437 876100583 713924122 217036073 219512982 818163742 660315784 946946814 153653596 100327922 422270348 241604073 202578430 695080578 73688532 395287938 386777285 152164080 424361338 185012846 881026860 897911351 909135449 434003090 372853234 776571760 183273324 969936582 431396065 304402380 381445714 443962690 464957377 934986350 648649762 100770348 810278875 486129483 945380185 806538061 309761435 424638032 866384699 146999216 98780514 998151112 792834152 958111309 439625000 335368133 576205024 638803159 784607792 519283457 796022384 130966696 974503534 952830917 472325078 687294026 800530649 95008646 854813733 756021757 561390898 901705775 928801952 904481118 637162529 907879239 5791447 801256908 923960428 898814876 536521593 233188074 319567630 71235827 953314607 317789683 216221051 386942518 798348053 866539500 494960651 89825544 162358323 466781299 924245903 795781097 879271602 74226879 608134068 980768961 254256795 211512585 515161313 727967348 823867723 310259548 489231769 975635477 938871399 788226831 428008641 962643501 971879620 919640235 306792751 976772550 118787019 835952047 921193925 677770222 824287333 350707938 907749186 868644735 865582033 799198954 751278079 908638308 948019254 865063923 325272095 608312689 989505566 463796341 823059853 910773836 787807038 162367681 453772249 744700217 5089614 550560955 232398842 686189414 959028595 309800361 811431749 108329494 730939277 949450578 756831058 280360981 306338961 233540951 740028930 767514371 454907542 864806015 176521578 769060086 853569030 460450441 793345705 409509034 436880446 590043739 381862513 834642899 878371189 216569450 961745478 996713873 394036636 813441290 948580974 488268195 479379710 211359309 124594318 248151315 109391079 635601156 754477856 334540316 510387758 808960895 997265759 621093356 864743746 214790080 746025434 392120768 561544195 456437086 458717669 968011458 123672117 864634693 41532875 324847379 45773252 697819917 128702283 268356072 686704557 993206604 461758301 364831700 13889579 241505829 857250098 748096928 839171980 298802552 767296038 145646332 970498130 228814708 995557328 939690685 720691561 972461909 436526694 376342156 906347547 863085035 975432013 588650004 325068586 892418647 423510355 918189655 385885547 953310944 763256652 989973904 699358544 952339382 866427400 706976145 789389382 766273137 786824187 958322392 807924992 168112523 620407410 938138440 996243491 90689815 93265967 143815033 499528104 792944368 723470178 6851504 942688151 657294942 711076209 89122013 384404503 540854745 957733615 409595422 907955698 63715887 346919744 747018235 788502238 552295187 666418378 605554179 168550456 266698783 748601664 928409452 940940993 375852882 742400305 891003299 953863777 528829267 238945434 43627825 791672344 192585213 601565833 611332789 248702938 992379335 774112172 999018655 190510244 799033369 234189469 199865295 659720536 112917572 54234560 722582117 942689745 623975998 842590843 165852615 545156652 844386207 941995990 887023852 961453168 889895314 551854675 170576122 883381859 879889851 432139166 753771674 405733333 921499327 283688435 807864479 98099977 737020247 863640351 177084986 762192998 734720607 979771098 670654509 472623161 703104403 898029249 857859347 701185972 627122279 843011142 871232427 490486515 113744445 979435791 908824428 574410989 375288923 808656087 861081398 674347001 21426050 993387265 110640737 790672731 758366774 488208154 944184631 113799173 923866884 544823968 90150714 199554039 549035 208925528 773005867 886932579 177731402 950173256 956169592 547123937 929593555 750089463 7020992 12191613 102833878 871627669 161701334 17990322 511995381 942539874 94789929 258779972 50086181 802846596 62851949 327692321 224509479 329846754 869648089 326095541 53389694 314413090 750833372 628146830 602178187 358912467 796785462 429806389 506090237 679549981 47718700 282325146 538833981 758545732 295508859 16509402 971078364 351033447 584314234 321755911 962258168 142336754 850708770 20183093 337288077 806023051 864525624 60788568 583838618 826585029 776457071 354806260 887329176 979526709 878279655 487289649 740216458 996850660 883773466 616536456 797799482 912942562 890692318 340723325 879086792 901845039 161332389 622891522 334315488 987308918 883178533 900761752 582114629 924582499 906709901 412560973 39732650 102320566 772153185 569101674 935193030 3559551 743128421 936790073 301456108 835880365 219581272 549905027 634887629 966404959 523370350 493735081 813230180 235797141 976176301 957928799 539837497 845777574 970114828 222940203 879512030 112201488 588643189 370460888 14311011 492147879 783295286 770365218 598147774 822093019 141394254 233505311 828081870 942533389 711572349 235491066 339430184 223243566 764650993 300438215 539732827 829097029 615937883 410414513 10492202 854597160 506980998 797600233 514400914 349588772 319730326 14622378 722685557 332865415 875404544 439985676 759624772 244619309 859828926 739193159 811067761 445240787 130422812 919982852 563633037 843724039 754028314 757281521 49274661 368865873 895578139 545353509 776535250 251128224 2028636 944977765 590101457 497562638 120164283 244624634 868297210 947934306 209741306 873576466 988277888 777885425 916528619 737020247 623059646 948979045 980099954 515023625 359134966 795059175 746833692 75435183 999415329 803465616 800219215 753801452 973937959 921081144 416718527 794913262 820854238 447276342 454658242 261248875 285925951 999475548 607796082 903029542 26367542 851888373 158846885 625192706 502456802 167860862 786924318 816667643 279686254 328691048 557427055 322890764 99393538 982698285 936700440 692050335 240942601 561765916 869839546 944340865 745923846 648737787 279436935 477974509 70521716 186329458 925430218 928660282 858328944 987716919 684764640 542407362 248112862 953229451 373129496 955773142 666791568 35394955 891935284 838792868 880725203 439656558 815030023 847728204 956881058 960814539 473530052 807317484 360265711 560855669 993191072 824774914 396568757 829595159 112578598 492909655 920135594 940404980 552934052 110422202 711883130 224239981 526584647 948537327 362471915 575403546 961990849 931329700 849653854 887886693 714252459 769923766 493178690 901421760 547846061 569450847 896167380 308897069 390499237 278864784 882152080 602697694 900256084 844677347 907207257 51355091 712228063 710903296 517804042 844783068 584323258 972332501 230094190 894959502 98889854 817027396 827957400 697714498 854261499 47620213 918731708 783848837 425945632 181760430 347007724 497240561 988389217 566026964 984666450 930993579 918188349 241509533 285759095 682273424 797926215 368481528 388922661 485776905 420090533 86884982 967758568 387428089 986218030 488190133 898584086 816342227 537270153 89282840 310822584 583855513 35639618 976933278 997778561 62846111 962799877 459006812 511799830 767146279 771602351 207704528 19826674 209728702 592157567 944480363 643443035 248766089 165208625 604389310 162941869 792933443 126382924 37054318 700772212 6251778 336554169 911081734 389301252 852574735 886933660 595227630 857620441 976695376 305758864 698442830 28852775 783864522 831444602 644178108 866348560 460594110 807690573 809933194 858068822 186841676 761789171 214812605 874467865 961629583 761200193 806298834 367913796 92769775 499796871 615245174 415377248 457570910 345331047 775717419 219767396 61062753 158919702 460788306 903518151 810376271 742761675 985424775 99004797 447258221 802566473 382131949 110841207 742469701 739267876 18571602 478892832 969320771 815154709 151257181 765437601 529246834 789271322 995851285 244282600 790281430 155485861 747265088 183658965 863409497 771328020 824043503 441929749 844177182 812335277 63811550 934754601 921023657 267340170 923409534 450365899 585569798 693279798 953961853 600446391 772761418 671144363 74460436 791054589 544552393 921900325 523542218 668108959 918386127 792115873 320194812 978173313 806971811 828358778 539869441 380191972 476936597 853463362 882533253 415824456 20305862 338630171 940499853 944725288 214343654 969676662 140198299 764622303 244841953 826069138 558634992 794693130 4857249 974797373 913052086 935655117 767825079 553529523 963966643 49629687 821775854 434042259 959775037 973829716 700742172 250408821 813483260 851233619 997545595 966087463 614643010 814496205 582706742 46919300 423064956 612729931 772092470 612182301 821609918 934243359 821555392 847774645 950299763 962152995 888716797 316404690 976104951 106366009 123697827 268376795 977436613 132418931 604048453 955726524 768925460 361345071 350442108 690664500 929496894 758379974 294999599 508947474 369095456 710105182 744079489 243984081 749751962 137587117 808265138 332419774 910559037 945721543 950124004 774972863 43694361 781267515 213111404 914225442 825414107 981466218 894923335 865773506 802341005 852713261 198969375 197984565 111142299 744969808 801913513 288844800 663317023 291543575 808543001 998107878 722727669 484054723 761242602 820188190 853784456 953494394 892940424 374939801 433291698 472134565 961247890 247137671 990021051 786087925 818406211 149421000 859272666 263610985 659187966 985743767 322196127 533358661 798146103 821824193 680835206 722335103 742097409 269417778 31438392 821072727 739015191 755064155 4493978 909491263 233740514 846084429 962469994 729109270 313705922 873027674 616710965 402190731 38548883 819329811 802764529 115375552 830575548 690716578 106166865 967319513 818930805 264247419 36049169 939311684 773125123 743513328 744729212 57811771 590826431 994513093 461286706 805641172 843709679 293173128 642699584 905587174 662239230 922695073 303897211 854513128 817176467 152777648 859544343 836397137 623018953 833703436 795518881 979295096 775609015 656574135 801666368 779135951 72880853 495482030 817194559 772099158 713702746 564317204 965340290 861607457 990599998 535627195 30408439 687535856 917700005 884871429 804115016 208065213 461348722 528610731 811243567 824544861 175678929 623194666 613039517 370208622 860540636 145448671 667748294 778905411 210582833 57587519 745356541 866544929 965389071 369994332 328444364 738199605 778711913 804498202 368960408 961194326 837119934 908938219 760287132 202371231 966055224 564826684 805266429 831672498 178673148 822219734 572419955 845422492 853285241 968697197 888449503 771454459 317017321 965790064 620576804 211891450 833964863 837271491 800383560 630115825 902342429 279135953 974536304 560817629 765456899 327238642 831731379 677694110 914944145 948752881 619225407 788068809 786369302 754066688 341813622 313556777 148121949 510075191 846182677 918069523 338049282 234157571 214316926 882998818 772633879 933751180 838462497 647203249 389231382 757082304 804771366 504364881 583754907 945814433 784467295 965854159 745827235 937576498 914630333 198213030 833411458 990051248 254281579 761029294 343875393 184383389 767248643 957431706 573743091 922748343 130485194 956642114 667139944 909671355 987214968 759591235 833291171 968568661 488807511 568384970 888587158 191333503 793867167 848902918 115355832 969086984 798907508 873282792 918922513 693077835 873708076 301982143 725831036 895075109 724080515 196107837 963067953 327059905 905632522 971436137 264807756 202476145 44185917 802500466 540576496 235837143 563962223 412097729 632899858 529836988 845422806 537792260 924354624 835994031 566045434 881221928 379147489 847251577 926052936 907302317 744338289 655551885 949104541 140919609 924809761 805955101 10247978 259353577 360562011 828117708 750373758 956619735 800366018 805703115 869514713 813329198 250996823 568621719 898681789 36879842 916600507 798106456 219737753 548516453 865708865 241847451 748632273 835073067 538886996 855038289 434535646 793750600 218827558 490474321 854008160 892045325 749681938 747555163 781325677 136586044 501431208 413117418 957708819 610011233 94750751 791035003 815388898 69243857 825050561 770364012 428182367 987435927 865518537 703012747 862187080 882994129 678267413 685509846 163287065 499946088 154884357 734144889 706068024 876808571 431810551 14757219 870667405 309111425 954333793 121189807 199322016 62559372 207083391 937068068 383555805 563414722 388441961 824348977 641362541 111558405 235762508 785738646 883294842 640319465 963007402 542626309 120581777 904358682 688427891 653930949 775422580 455050671 745487203 391095055 822339147 741340769 241402789 523504457 257982488 207308184 337636775 994087674 281281203 1305735 882173114 855053077 727867990 917907336 137900045 933570006 385378250 253972657 854284148 881471162 914733125 762630908 761047268 460012620 756166637 737140778 782872658 784141162 717014708 921291589 567615977 953836291 948067458 990154601 71994665 457206799 9827189 609846376 817219093 323925850 936330912 239194140 175337163 824493568 866385311 878904124 40700325 735410398 542423054 719811687 991762373 495064984 7124222 200348381 775813297 304274030 649745168 790303829 889368980 597307854 584742434 476744389 539484367 181134756 851364879 467389269 460446047 979470109 838023376 795490863 926832306 494122381 321932381 172118144 805591676 356186382 127610395 144353153 754283725 848345782 908216140 911281604 915943567 280659173 844861284 832559515 565910325 873524941 519100601 796805285 52186302 463783600 463624048 438291094 822587251 28937827 877982280 14477505 602659566 963312560 983143742 274616369 911788331 522934952 855287946 154881358 442270455 970206395 991956034 39386856 866043385 759015269 908932094 722550900 871567293 940749943 753592227 840207816 815327101 526955849 19631897 891650515 193991735 32748133 486299274 230676126 418925039 925208275 741090827 745505844 895199189 799589031 449207603 756880328 414340229 830783332 878306605 106723564 869311408 415795235 415482846 860669392 805213122 544114200 498568153 996201555 959210421 976964079 813504104 849006585 750279852 952683192 845538065 827812550 989179689 34502785 973272230 108305621 855489103 636471518 811497804 753284070 836616896 207435662 806525568 91770634 973007696 550840176 455869305 603426563 330587096 282014714 292867635 598990510 279707620 769420105 275602247 292505247 318783615 357733946 974894449 270974311 893092397 773427633 298051632 603812561 744628465 422916019 835663150 928678704 465097938 605131623 849923375 116978230 858252181 889944705 880737133 660383487 95277884 381941313 886561162 821675728 621799089 200088645 597648774 13603809 950713681 954109415 96803916 414227181 89319152 213957313 760308059 235086103 150639453 843591694 812870968 966526100 737465350 827188741 272651668 762598107 250517972 219348679 913853113 260174997 173753280 530789150 905303959 282599843 153319982 262339695 442308474 990744673 803118649 205378884 982408994 871406601 273351028 688056662 519455346 215950216 333149856 704458075 383097841 827501300 470361809 285722289 374778221 172806921 911207858 419398325 372474914 798944490 963640379 767254388 798421038 821299960 778429423 713437042 844918111 776152721 537496076 867362959 39590192 881833516 350229080 48344147 886025321 220816650 764642076 961250989 806367711 833420495 74326920 574823355 857698462 352633384 333721919 896841873 391693632 842969900 649267902 545075449 862095417 457345554 542754953 476001852 863390299 738756031 682183157 912369652 423340877 323262856 727558811 59584972 980089660 502565217 982367467 632075706 461829984 524353766 254711423 817731128 270417565 772696196 695211680 877005939 677651563 330267529 673870616 904418947 927306521 371565637 771332925 288939521 853686248 691037514 684182916 800454335 385805521 901010411 704553454 323388217 376611016 793527391 751806032 676570510 689406338 324272352 250088989 470740934 539759258 594143571 861191290 193870060 243908850 896839385 283727024 509545771 772518225 198693785 934687798 827229232 809964462 872246897 13307232 816016813 888904287 955836270 478605271 803415676 821355787 14967482 949090676 779304543 686237291 309749131 19115472 73102279 749755105 455781768 909172510 761118391 44285335 693449019 115085742 938484606 755126333 378755014 930535266 534997486 888503448 784242787 785199607 721269190 791634886 935043266 388858626 486710022 865201760 533468213 746314896 839248535 843202066 241641720 605048561 470154847 883079207 968681456 850959889 941351989 844336209 686786056 562803741 273577555 946318656 706170595 831190886 761427660 969512639 860060588 164820504 934609973 230769764 465035156 832979932 577643543 663096745 35994007 930140715 55280634 723856165 343894993 813504115 638953539 210776427 768209691 965813299 815055651 873197956 352773113 999359642 784616338 47324000 519158952 271557700 566931674 888711921 263559333 136408108 430792714 724486228 146315231 762729314 180484083 799871248 884862062 973645931 827275575 790124460 700099519 993651115 279893553 325860627 958259544 918958850 885822098 925294895 909833442 468582494 257259465 862144484 385769525 315512262 922373193 807893426 815778805 958217851 389092941 592499235 868875387 252728798 795600480 822598096 439194467 839263411 597423080 129903445 671248778 225889695 974333261 999660179 844831905 535229764 955173649 796739911 946844983 441255884 985014867 762016074 547615004 941864399 28356779 633184790 857596660 997360606 154621557 968689185 423722619 889194688 644067803 238795703 724346640 208658366 828556929 588616336 795418449 200177778 72159917 865107891 348396904 250236663 807302142 821064055 790846928 752982505 907031457 279036846 524119797 722421345 998610184 746374625 55629984 493016875 791862886 799585079 675248289 274731577 70238688 906090993 271906278 953767903 935174890 363584201 966343524 134759464 89026560 463752640 879614645 830942598 723414808 851713716 470131467 367111675 751128380 951169220 770188584 927263225 758305382 239340017 776897953 843708067 29402906 916955440 286128673 941904040 840012067 757866090 690569690 772386132 791838215 187310225 315029473 766740242 948507385 770785322 817031831 941852225 814604601 598594227 91523700 141777091 915872899 782516114 86152283 748511954 858414448 849432346 925140857 782224149 906320858 755347016 756102361 856377340 605987640 897819508 452340627 235220498 713725624 536178877 763500484 328106703 26051596 378278696 832362686 787295822 897079812 884256860 551883279 584913440 939943484 802633751 902406767 857717788 775845005 69271942 780800973 798832293 551904927 565881058 815529011 991102201 201047772 56731002 361696200 760316580 539480839 516079375 484723374 446056021 913367943 736608399 155745953 299978128 683897403 826032033 610460818 698939308 781785884 646171600 638690588 915228019 893126312 279886608 819321463 458948867 122281391 941720957 517511333 481434330 366380972 625865965 972780679 891535921 841911313 725578445 857737603 368908418 621138288 121197185 619475444 669372041 809508260 644090615 786366654 22273105 874607664 529220869 848221232 233466478 584779446 618265547 829450981 35654061 115661437 857931621 696331949 738298671 878563012 988056845 939502929 831194674 150714577 761803775 821926364 92071687 427100239 811012772 961822906 390860578 943193435 772054682 786424546 441741574 862486983 213508747 684310044 942871211 175305427 830157142 317328988 772827501 841394832 494894929 602269770 465623491 753576420 795329098 248457996 151503765 866877745 995184269 912243040 299038888 340088229 8266507 544772113 30244194 823866818 873721276 891231401 267276588 500195710 510894944 115895799 864446109 370968421 613869241 597152855 347715333 898567066 637331352 933988470 382860107 675853750 842742948 853788178 598384248 968422367 517750704 595639440 778924491 986984083 500114859 749241891 841894858 622786537 750647823 146377214 81233623 906451349 13461601 991008291 838290176 353845700 856776511 913660343 581136080 667726847 843295882 835434654 996047242 583557110 898917883 561038920 749419278 506424216 187759953 898415439 411553082 941760725 149853717 651372558 911516625 537936352 884803991 907616356 54585214 202376286 88359096 844337432 546040883 261331736 781954865 776303594 936253055 848500024 920096910 952429588 566095534 685185950 988962909 835026857 875895293 159905915 333964499 919981099 965291653 193554782 32415771 344332130 586038569 937573586 54831023 828910216 969513176 680715923 624154795 320750022 424288599 618531366 132894926 578416386 74670971 512547450 778979535 118243317 483054784 995586992 708893347 923502513 859947776 846073076 788147828 967936739 990703284 766848126 852898624 891102383 235242534 780728462 39032295 601646158 749192267 558489656 683576804 113173289 899712474 824074166 244309036 21622223 948805143 147898135 146462137 954156765 727089024 855757299 972087471 112740095 866533168 386428753 607121525 328056416 838982490 559253749 791084969 805530407 978051036 203567560 992911578 767620025 746884930 881562353 949489551 471025007 81350166 584374249 207177873 797921238 581293192 345391126 752225361 662510456 992785052 842625269 786974317 979561179 473552279 537184841 482560543 858068740 893127094 181319513 877316550 861890967 999260447 85993254 419726161 113991849 856485078 901736850 654667584 227248540 737020247 877786371 600033382 508166636 748390588 969503066 510276750 625560219 128620526 939953271 719784582 238511502 759306576 227672160 665628989 252309746 762070142 584174391 660054337 155162928 748860094 525307609 819222120 44968034 347181920 177092264 855468451 958661254 783555201 777257699 834462542 887320186 761170644 310527318 139522574 867908600 919831947 295844615 410829922 487229415 815092854 791710317 382946223 748767864 752978955 936277839 863609932 985697843 950385378 769874793 306598743 768251503 558530369 876184507 952949774 635185309 936829322 622189872 223949239 866037757 380245654 104677398 317701630 77722459 792642683 963792978 600395181 285892079 67377479 801319326 800268762 853118334 248923430 824787714 807372827 767168944 910532114 778824708 189072805 138059962 580471289 633917623 952111913 916779645 264234946 273028057 259468705 586800309 956550841 835688936 857749681 375687017 504804513 126540955 885973931 892804192 817090369 489382683 39267168 886180500 797867701 988518262 887750754 712844590 333076644 857079189 880579600 551110234 970277376 890579995 208562559 439535323 235577807 676803060 939996444 903145576 619955729 697387837 250552437 833913690 731448474 372526173 507554843 893232328 342896928 169188955 907093882 751830859 978586274 294334678 602979214 563663815 311674734 306926441 994226291 825280422 63790324 882488554 187429631 99092771 800200684 686182439 670957271 204675631 868049507 99471296 110398929 755520862 739822384 807158102 747744972 738552085 781639577 985203421 263538473 857829852 978081338 731135474 337830818 988658305 1279459 687075670 354747212 785100217 891086888 377869614 968736378 57207888 359686051 961732630 734789162 236487040 865702365 849705001 188067730 794555838 567995527 447191652 487507658 998873230 978343503 476115332 794273746 971035475 981700267 747617036 357860760 657571214 84576345 576040901 433367485 102080934 584763835 810407801 768004380 889596316 774197736 266999516 805070560 962625434 938534697 903332385 519475806 540133594 904120840 963843003 975504829 918283121 868807794 813397681 998215745 979573684 683486128 835420551 237868630 456595977 407237737 342553180 693378804 833191268 919377128 659101023 798052528 841572742 7883651 524938372 356051370 600914847 510963310 944046784 815853724 889720725 872797251 967010466 872769551 206903139 945861956 932844267 667361444 462230257 29916294 979067227 180324227 68096137 881827528 728560301 791904363 117592539 895551626 933141499 754432741 311568602 816833755 952917336 915031705 282818696 148388783 90575298 466416173 906155103 737367644 444967148 685027272 375294358 741621258 731853784 338445257 872880834 928188814 913217753 810820300 942101998 286863442 289142628 481599041 295523590 87398705 671854661 168312532 755299335 871041914 577189159 939055006 761812334 373872107 738602642 379459232 670436153 806012077 256782932 683850618 760103424 916225066 913712153 167747815 931574559 195782315 108376484 340834955 884991325 982258358 859024930 52793776 983841135 383290108 748230848 584607330 866039575 288342312 754711585 317307769 499748755 936490722 993903334 36614059 791900724 974586441 17243554 830770786 619212194 393205293 972010673 158976709 591638128 984163976 612642494 727359976 875293843 567623883 381807322 954577583 750492292 350037693 872404127 211800575 446980759 793607480 27346968 873968872 492974691 468202320 970778749 463830376 72429888 787355102 834517134 562964169 973600312 118746873 133029172 622631502 420685701 996570499 860563913 158919351 828119676 413680325 614275725 528239640 131697774 404631075 518366005 565539439 610663670 960486231 915431921 883219495 186286510 662821295 805354467 796540334 241674923 903242574 705754138 635058941 356732501 669750828 975858842 262477341 326745943 777171724 913179802 757627916 684336146 407817442 472442271 896529516 532741251 928575104 927737852 179052035 836306187 234740898 606431316 911967134 867040486 767277324 792216145 585894411 871123096 196293207 889737999 559722654 797028485 733263475 923474214 867910838 979850133 996777536 934299820 867094732 323688507 772971167 796389786 184171966 548327520 893717738 744962102 259692682 732416273 696190707 745690835 350579906 862059908 505921539 793613229 772919795 13634360 570993954 982474332 382217846 996708464 259138706 114996885 305147487 175001214 786383511 923169051 531756684 888547229 995145101 95538058 520893980 418119856 504441687 762741067 819697946 539050265 53037846 749907449 937972358 259865457 959964141 820479188 374989501 50667175 32264580 445119182 558669970 697626466 292482028 587097141 896364982 806718558 936433725 498786650 995822196 746280266 659957706 561201623 914593967 973731274 925975195 62985293 977980433 525126617 626726718 815660658 897672489 129568086 258171136 896040863 488711661 833119581 611879452 500603185 942822331 681218848 111073241 403489589 382803445 836153020 561407449 754991336 822872525 927533182 828716760 962494808 436611238 486594345 836909781 796195904 203416572 929709669 335051377 962944428 838132351 768187310 746731026 891966433 919442991 287997084 743822154 950822010 780315079 970902597 884634526 509761916 316100207 268876951 442301729 981643429 968840547 622508424 201569818 177632240 790873634 755920514 839264474 749972337 821791117 478589988 393140549 680775002 168064203 706142127 861029592 458158506 935227586 768772930 944875654 993680287 659559836 635276345 284812865 938468964 506733546 572351418 819746300 763676201 580227283 442483812 421056550 9652060 99421840 872798891 876970271 52478511 347080720 791391885 788002713 998399370 766373125 699488826 62491201 737646922 551123274 3790842 237209175 797030908 772500971 743913237 43152423 983285251 816068778 799771636 946975398 952472868 877065187 622256252 723600600 995692425 454441798 119300794 850204204 787961099 936082645 843072386 595819131 27121677 943256194 991466146 128526008 36599779 928768723 605011710 828001920 482811976 621900600 992583389 472163089 626844281 263171131 932188324 882638596 805497113 763387155 946247451 815289232 9267302 878748750 780640935 311745653 480707353 665510752 802494279 875485195 810094236 954656998 796058414 257546392 693152885 429887069 970670238 836834785 952713540 783578859 393084239 463955150 382504623 653686823 151993641 858678820 923367388 373558520 786333588 779601856 696030564 126412480 495115541 230788107 978389992 738962058 679171457 129392920 654088559 946091754 886214257 649815394 890762620 834125021 700638815 789481719 873806667 263262642 361617799 108596524 784363931 937648476 981260839 852261720 397713753 540758507 854631585 590911652 554317804 13180863 302496623 991392547 832676532 780451131 29518803 609600426 987709767 4108979 845102421 809652983 377756083 384752389 975849576 557801527 603855196 833499802 185715066 520346874 490654518 769381537 873809334 873323882 258458155 773015629 797717910 147940722 501211884 350388465 749443913 129894750 994387542 911971225 538033701 728778545 195832385 865282358 772580891 829461035 997520893 269409667 207100552 281149787 806455202 834229946 679530271 382293173 916876833 740424139 955387370 165315793 222270862 26558490 877396315 767532576 779546889 779584976 858215671 66988036 920981456 904286079 841925164 811799135 179993011 170411299 983337617 433750892 974855440 48866726 925954248 205381522 751931491 870635284 762429201 616269570 460961057 228887627 919199678 455398869 64959519 90919078 713720732 820582800 520318907 778624422 806310216 834338464 731875616 900259069 440151443 947040735 468501652 29297303 168254758 769666020 775162702 753152800 944147520 403197072 439560669 923609259 965810528 940149793 243199456 454616822 925350892 633313998 902811033 112140242 843535202 250740685 591780184 706922613 915489323 472250200 962095405 194753033 447773221 943589555 445630470 855455064 548159104 14411135 165629315 90826564 510616884 140278265 738024686 511584063 300318798 176354070 219798051 137433496 953182751 818518691 515496078 536790320 54402665 248691966 946367375 559530010 768367609 819621544 465721614 238068218 946758022 827105467 782093975 922740307 905389544 685230673 258619606 799660662 947863250 651173209 477843604 761147968 818180619 198133048 329623795 804342078 762395366 900037881 571676971 604709395 199519062 478067915 640340140 172510662 228138010 305497462 967171341 980502093 812122024 998382047 622515240 565813713 118748146 750944535 254606002 323872811 753888210 798262281 347534660 537409622 760191997 288762980 798329312 701964092 674990516 67806663 566359912 949805425 889119523 31537068 555507910 867938617 96587167 753318412 913743288 415387509 804121988 807523375 965485669 956184192 835671395 375235292 72485305 986689569 114423812 759616583 145548427 634924557 522248878 258147238 142091282 930028675 776731164 965118224 879404011 444207294 89702265 874586220 126104661 271777819 420030201 841177628 294350825 774336731 646553510 203923544 878282502 851204217 844491350 311399900 853984543 744040381 821732023 898673119 919413952 731269866 861511768 852313058 454394132 845430740 280311471 346532814 422435221 955680262 201378950 769294046 450830356 760169126 240358652 682835253 527815988 793576931 986347970 266458735 937732964 872160521 829896553 172936090 752362618 829587742 775508966 991834250 656424297 410265568 442478243 878194257 548219310 768403109 983640681 772844781 914227588 683080879 961291492 779020726 806022211 969862828 24408334 432506302 956167892 603765711 595978398 450329355 360570361 18405481 559965402 498849075 617131960 254541774 282882578 882198131 257034044 212016012 884413204 514709731 630815614 379449605 906626781 292905470 778358891 162892518 213501010 391656183 272160602 672625743 934683314 624481373 602616080 420931907 295303648 780048482 997195478 646822620 918867235 966106725 216461391 892876684 697045615 129461833 737020247 393658830 772742322 800653342 676530097 500906504 908312222 317682513 969601408 785499306 599430239 811539269 902773410 988001837 857026281 455576580 964833948 453937700 805433809 904480273 75013808 94574782 987959366 901578072 823325079 807481321 834926529 928259356 253975451 195937590 975876734 711371536 352387566 579030366 179821431 991210801 945441710 82220806 666370731 976190529 958430129 259993601 822505713 588464713 607392797 328420230 755912497 65330456 880244265 956364230 982077261 636625340 827478214 469030931 982762883 54593533 204021127 817059944 929664415 884869660 749429958 6432794 105094902 791463509 703870668 835914093 75756508 860793182 893573237 221919644 324446818 205614025 743030435 165506559 282844154 477169865 214500022 162888636 764482286 197978498 598550174 788957312 510542403 809310806 755907273 54943746 310023845 951526045 815504300 980221278 883317618 762736353 853392365 160564627 313157190 778954817 909823304 795505819 862428554 590433107 114605601 842158732 898858298 786364393 800340108 493774426 484777897 994799253 60055619 676042738 758553040 901400005 885277104 962941255 931308609 902609596 902471362 759628432 879474256 192686794 892948563 698956136 853798898 385242088 569911847 750478591 400136824 854985334 298867951 374616139 156631564 975197887 889633898 512583252 563041290 199800944 558872740 441948788 835564497 293284184 842499680 412884517 557448490 741077152 814916390 65241543 973361314 502472605 373822981 722353338 932452304 927602194 717160269 962488418 800509393 243429880 751327698 823592881 351161491 913400965 891946324 861849961 958914674 970722848 862499657 936093043 290910777 558598404 241261560 850527341 824130415 939441192 802038023 963369577 496205456 38570778 277870518 924242836 271286774 727486751 549254863 137695017 192905581 89625174 212710058 898593144 963319286 895429576 830985099 793400399 659513564 805059693 989992794 895716483 514006550 180387056 867279008 184961354 948130596 42281563 933107236 248386268 624055017 111765873 485787372 71386700 998721785 273973039 984385659 270985143 904568256 958579189 939961565 922884823 756772949 89701009 783799573 910724505 606380499 899414957 553109116 942869668 808558429 891772709 960850973 665827447 763259656 39149001 65557594 993003439 963149016 474081579 884795511 908386319 828226930 138435100 294927958 863115303 228615035 762487418 692316984 890527096 691060730 61978246 191014108 198962470 754974847 255158588 280138885 554653994 915460931 929991069 835472307 440680905 380549175 965696944 608461260 335095177 823823347 779830880 339611338 618440653 797806616 798862489 949350696 379917880 211999940 479179536 987228173 953235355 797298672 815082162 83045933 871995831 810828050 861160221 766308149 871607929 36241750 969777815 557209259 218057351 654206991 804485220 788580096 60312268 587352276 931919851 363658583 388164352 322383648 331533812 722148949 17739376 724864279 826596200 612901432 856277155 961247610 807876734 946955615 528073080 305810672 851333933 738050570 800178719 850073437 874007028 854837341 131201424 315088828 812110972 669641672 992834965 913613741 185943638 959408389 961743995 3617512 549258620 699496089 530257987 921360238 921101460 870114735 385186660 977966961 679650952 168853048 988750594 917867949 421189662 124413090 964510822 99002525 549894558 822936455 829165215 913155802 875586693 664586404 254813782 824943875 879120700 109830698 430358703 342986180 872443050 941159108 918276134 762425196 744129882 998305638 903780156 774247074 57969414 64429092 812043735 184717138 996158607 892344412 607342262 974037879 836443454 895410795 495405419 601708617 610874017 389287412 436074447 581779336 885178302 45273755 946362949 851195957 308456599 692492141 895908651 223864354 625075299 115362446 883016671 913830897 884808659 25296661 328175480 546909983 904213962 674128351 5495284 458230692 621819722 128676773 956719493 152354908 338812360 994580374 972597478 958428892 606984561 976497457 920487347 630200335 848453358 185262101 592713683 44284452 169548496 484281604 368935513 984443648 952034775 814844449 557743998 275958933 669070898 686534120 717566698 492176046 198175882 117366061 356462200 954076507 757041686 779265167 838953722 229007378 523092120 390608970 671495385 602366995 485268992 408787646 641047810 985409069 827483294 992134581 572113821 154226917 598392929 86756446 809396399 992955983 854224425 458651483 396907097 932437233 129628554 749619991 796767323 400253486 924217259 998079253 824489040 870904356 744723186 805214464 777898384 50630059 863818673 487593683 797518384 928928033 732545922 868097365 742493984 768519512 387791594 999375861 856597761 367745101 850076011 630395225 870506276 543509057 375635268 640836935 536202955 21735419 879904029 458702943 788325502 85776939 384783341 738398992 789629277 452637861 882419129 796703714 892252707 826602862 555493048 650536643 831716958 84310029 802838156 763131899 696185263 461604917 780581450 756595116 938517023 817758249 150771243 19710536 950987277 506754861 427951510 783293376 77164374 881242553 886092382 573935454 982168446 226948050 589901602 446859993 982075145 801994476 785534360 649902735 954077184 872641982 880356413 999683184 978708883 231036651 85404541 223014944 154537852 298376352 850330788 107870655 635254356 486093935 606329206 760765161 453909243 427438750 479135434 164245080 833003019 925114220 285274511 860811834 943899686 944300149 964731574 130988546 265537160 856805462 931956770 176160394 370143837 577393422 814232425 344032539 184792822 694621561 797982221 897732528 772610683 919145072 53841313 755428202 998189053 586915633 216383508 401178845 993796455 851058956 457369112 169134315 120507968 812518574 117345080 308123570 266796964 273312439 292390754 648296488 5249366 859186742 140242503 817389689 990632503 620100538 336575548 413961766 72875574 742920683 874858152 719045780 526294210 761912918 62798859 945528592 7592602 810773315 146259415 793267814 213483706 788839309 784243136 214090352 623654162 354781646 940666111 879923172 890710323 319416971 954027237 211790278 295251975 886086360 334651801 436160958 868308715 828268860 423784119 844284942 416477492 622407431 276937877 775746413 696798087 878183558 368426140 872250674 128802692 884477626 544128386 540778201 983723226 507797194 901043346 186393614 969050657 900727625 939405031 458414482 423588877 313477777 286312528 999886333 793987616 836463994 612743598 667999084 262425963 880633228 541283257 772225629 620539481 590488888 853472462 796051946 136338575 461042283 851011360 934456283 849155326 385354826 950936008 115062751 506435659 208526251 448960925 28414690 851370933 52544700 223046797 975298359 301093271 159217325 884075622 954533579 259295676 5268652 782884128 94038547 115119776 673453375 327044676 875640139 912251689 624016002 806506959 40326559 769032442 268847803 635931147 990565998 930758858 164288529 767736218 635397820 742465032 887796705 877072464 49294447 808827059 800695656 806321649 410973370 311248094 573369498 980529703 770593119 806438038 919565281 788419573 111261981 803009838 820895096 926890400 66718479 440162083 213403292 781261920 841664682 806903078 27257185 133909817 123409828 485511656 950944587 392987585 549933757 428846950 996837404 766718060 388788343 973228180 931416106 636404764 960411822 721519530 806436021 617286874 666701093 787842953 584638715 114238106 887203183 439980388 469364038 947886578 890617239 420037674 699290559 892120391 839098400 183078605 169912813 806847084 409292948 57985992 801018875 152774013 875013213 805239139 458236248 188918243 285736985 992703190 976179927 901277835 106496452 192286914 346427378 761764435 971080818 910162574 725205712 302377733 758966129 834475376 725679316 528087822 263924713 890516362 985056528 110960559 146655707 891803115 365293288 469365571 936068480 883722711 853311300 117822021 823808860 971719436 969922519 861541991 905930643 975375722 404582515 835955522 55397649 886449177 704148651 209687882 792101275 437925146 25193664 810011007 950236940 890702466 979505028 225668081 824698185 107156318 971673625 779240500 919093720 728976198 248933525 929701823 83071253 41949824 812385775 363485392 500249587 537390238 727565129 598734690 771970438 967069470 502350034 112856931 546430750 235743098 920242585 840354296 595663726 977022336 413693156 48099408 771321579 804163025 873694004 849721486 896598356 870732744 861195123 757686607 704676274 958542186 843028338 866350712 910076834 25784760 426801701 628640850 507870292 759872963 519943444 982564066 512493692 721744314 973191936 746410617 743050965 854581000 763323288 128375393 132499622 145733982 705653176 13402969 821890812 896127019 149554946 716739579 814315359 206134445 850543091 840474871 70751442 60648604 421353715 44392245 181673013 823976750 869190566 921432280 743810634 414208290 728792955 304148640 998237930 898545229 857064847 744376554 234981052 184149419 742189028 924295287 737020247 752670004 131753877 12661870 20791372 859190919 739346719 590470804 526902701 427595958 761865150 832492716 627964858 836524378 5739602 825665044 96766028 153663486 739730569 195103573 316555223 942009211 620407624 331064331 788670724 281010914 516355840 708965550 892120090 897853061 726933943 765700650 799241574 772176270 911217089 369247022 457014313 758152612 786566803 982463575 103410929 749752428 777905613 866636565 443479259 992044343 209973656 181309078 499172081 799754025 384611867 746913568 502038572 673344865 416842887 817503096 119231244 87794456 117129372 408571924 15811957 764890065 169963582 793764378 99206980 862682786 871986592 301148354 389261133 835064347 824008516 780119450 575350423 358255949 378798247 867756327 930294153 896301023 80026437 902019939 738266249 815503076 129310356 367592885 883996058 732820268 641419378 374573531 998162634 914218182 486627944 970809030 839657826 831054261 990543066 940700428 940137065 798152036 892182341 607916255 816957675 68667451 782728351 256070124 838575938 902105327 408690931 715775313 859670135 909537329 895580529 914750220 249579314 565979466 643244941 293837444 758838837 781981593 725319064 837955514 821209162 723169105 778036245 913042163 592575608 770700274 678135165 261271310 326285432 905570785 334056756 813981599 591290426 956991165 388331353 48723402 889746188 879465758 513964207 149150468 29865981 859618567 760463124 645025185 806251564 740935927 775784794 137023279 944729108 239739384 805633054 724731303 825178615 153909830 784445608 755747826 335165418 306360375 650595625 784910433 793261005 406439594 960139889 913849101 553166785 760926384 944977823 851381755 29883000 802925632 885453913 237988478 833412803 124702987 202258259 679268728 226545399 929877601 834433549 851612203 460343080 280726932 687873391 787359590 814177855 873718636 601829580 491622410 409076537 414068989 549630375 990728080 997524704 781950521 238485009 836466791 70168454 716678572 653923972 876188306 868429882 111566758 95127446 949927569 2157545 950999277 801844214 798297841 954372086 857382476 6864855 922756879 161640517 371568937 774503641 112853636 752150185 630681270 889406842 833244393 529606064 19260361 827161358 764642357 965806536 110665467 911097742 173900116 49450885 962954577 809859740 979835216 730958039 148765691 292314969 498525717 766739328 532404809 518927696 840523334 434785434 407080575 783043464 932944620 415832861 793719285 818241175 461803519 342685539 885238617 677213713 843292320 799483607 976401214 995250067 805954815 846813229 33821919 102538109 2151123 753370450 917230180 835313481 350638927 986641232 765755430 894455716 931393337 312780669 422858202 462315773 815789406 125072872 230056513 78279471 444435964 836012226 15138030 559512726 352243282 295558150 848800855 770374485 45849566 932249090 765250856 661832674 859151930 915783579 328545915 772021625 947028938 962496167 473716928 93317862 729011748 893199218 925184641 930260475 608693339 762570124 788701242 407617313 998790621 802164711 303450734 636438849 682675433 491157527 472437220 768901923 184513652 223829146 794026163 920447440 872195485 244560355 582939903 127147353 450518287 592722175 137955963 836757797 582700714 426629968 774982264 86265185 223226663 744922978 954754414 774175116 855880285 946201111 696703105 211472248 580591294 997599913 795086170 268340755 116907444 916363104 826984432 145514764 801058667 540547514 750342127 747750919 741455012 806461187 790750964 610490205 857840413 809170943 944754050 530915990 892746644 230322614 945430744 641122698 423386022 775186842 835490855 112950579 425503386 918774503 752583050 842609820 922397027 165887900 856494728 994726108 663464220 791309639 638247456 822454699 572224348 976487027 64920540 841578990 282197525 610234333 888778646 99837447 774711071 197193699 228041015 925638648 732935738 427777745 941571937 779853328 557855532 917585126 986892549 938416859 202303868 985643398 901223657 872713055 905996660 859560453 433610580 905282428 171668381 861118864 433102625 762385807 834201204 734133666 514942608 848028695 817397417 883254554 974448261 969707844 884662282 166533856 680891873 961883503 70020276 293596434 870253231 569411558 413698829 814275071 706659753 978427249 658203659 551726905 744727793 194790297 516110861 351372899 433546541 141623497 175848309 821951136 744356834 740400659 921752125 285144246 568838099 920365974 196477270 336529385 722644218 885118393 898328028 178761782 853316837 365411616 824274784 423980111 920698435 613757827 568979938 827578412 272069554 197812733 921530133 651364531 805275632 45851989 826666356 898474074 812354000 11334978 442269124 588674544 100128858 584001747 842411347 168463812 291136231 888211266 993686445 949942793 53287088 829727354 152918849 679083341 754981385 919457228 307230194 891119077 666520431 759913894 946737904 924938327 178078956 887811422 965939323 707777558 700609190 314983841 865553812 966868301 990266391 59427287 386580174 525473367 807145054 818419703 935526086 761581975 744406984 794401909 738525785 87463619 947963394 820450705 132432409 807139339 448541246 865343960 960999527 757957157 605095432 979445791 870625021 324530990 605428929 688961841 736431216 916517086 684432323 49678447 786787799 811320468 302032902 748227282 640360174 499522362 795901628 657143608 881100038 141363692 989338564 389695554 851376276 993623563 601527780 490152523 516373332 793047966 792775315 451040166 906646735 875090406 934494046 158656556 263475243 56492227 894679635 837126747 725611045 844406711 286391645 902428234 915448126 784296557 759170025 852693425 899788459 123511555 935615707 952107825 978104807 695537751 44318980 233111591 859612494 921236719 462908282 750864096 791082848 104782731 917096276 929954581 805563331 473093556 162056239 439791219 259973973 992319225 347262459 817698981 848188056 440648202 487175770 575322846 387555702 829798252 921065956 593722895 742805554 618958689 636759677 897247578 745012916 209447593 774955232 838464900 929964549 884006992 337385979 949383384 908936678 928135068 819815730 858087065 784888869 474586318 812397015 939960502 377942635 772597873 327260952 486297451 894650942 22081190 335732944 760114001 393957614 957651173 936807314 839803970 937319018 854912599 758031795 180610142 223445340 902993428 495055132 6217375 312272650 644889792 980786406 516376203 992211439 241814860 774963562 847405771 886047113 843557967 577419973 142254111 638851385 124401268 826622929 118099347 88033456 942061974 946615993 774185586 967455095 524506056 862314019 633893981 973662893 737885765 699302734 899643803 270123802 103308364 201656447 746583902 442877716 486629096 312112552 845117425 421559475 20204467 902621033 764220733 190804315 264856421 804526043 997462270 538932103 979283033 941096745 743221953 467885675 64847813 34080125 673657592 742020562 605272748 935844023 876143213 387353094 445880500 341772036 191461190 791100938 349366477 539170299 879132462 918483363 952820390 759738278 998722338 147644593 340944517 835012024 84049897 493813910 745607196 370549327 474692501 301489966 37596848 860246793 236150944 890603339 662458657 979390643 895166078 628785479 770091726 205744285 833447699 829057763 357601634 574762212 354340085 129199196 454424914 834050492 42859190 866321327 724723942 964480417 994732938 888413631 881232261 942817090 800157881 194999841 358554354 951856218 443758393 541839810 493140678 860119880 430157608 767319544 763588873 194682128 844080593 865050726 77314117 277163097 996319598 747844322 733977388 201973130 169814868 621344972 600427429 965080550 901261164 789696594 935606706 162180340 453247105 613438121 898288739 738893963 779011063 903887079 243180733 557073369 732873222 782755383 874545273 861194482 737017122 547895570 775250168 737020247 52665912 545045006 933778949 774729171 772550199 889744566 930918466 658104216 907957856 118367148 743538369 985427394 828273558 81203639 865984378 249292572 454071973 910300590 891677792 145571311 978110575 581861211 206287466 219860009 301809344 980627283 994591182 329490664 689217112 336329500 699679306 801753646 350666582 865605830 882206257 951907369 635224100 53070142 680505811 602005913 946946955 797991401 149865937 975864579 488870492 589809171 531610993 685607006 786487729 978258237 922531795 798979498 639469542 813807298 423434747 283721187 753577596 664784181 454503444 198635746 64948757 435773162 637743332 76135379 464982659 42384461 762551492 705492106 836977359 827330280 918557340 465032292 518750297 807564723 818569848 803989468 339385423 232632952 833838381 655610391 880219119 75740764 25521074 395868467 345617770 160976177 789050337 511635492 323280155 750945707 899101543 201770849 240494367 966599511 85113046 899259460 994112357 823197474 598509182 998611140 486979707 58320872 759019570 950182126 422929520 742943164 127783136 967211393 680890898 124468349 166445575 294194905 563712237 283183274 612597748 10677000 978796202 753170665 843552978 758496467 810553251 270298625 281473108 466459191 977484372 361317198 502950837 65636079 789446772 666326445 185282903 696779336 756700791 956264765 953310065 67264258 236699020 925802732 791861083 846216497 933230137 279384581 277182075 919314606 812983370 95075150 253183545 387971669 495748680 391666537 825868612 302243749 158645952 239040648 272623266 684383948 916384233 680053509 965052869 293685685 320549480 364912289 473914598 768156552 812097295 725233418 870053266 509276054 180965276 841711190 744629515 739742946 992061535 834724728 134485062 769656468 712101147 56642186 682304660 26681113 134117847 996177617 608797088 462181225 866585989 613119702 973111510 749696704 195338459 861057456 435776745 737020247 854860333 366346278 840128974 817791753 845226283 900299380 837273583 379382245 89926949 192417276 754748940 903091001 964846779 954613549 880053317 955504386 155271335 676116778 837681086 748345387 807071506 960726966 406508787 425858388 807675756 22724479 968529004 171952706 973918242 862251995 611708068 346845271 480011198 768271421 868635280 840526504 123961751 829154719 741426023 833267624 978320746 266647330 815829116 787873150 693418591 295144649 326594344 23927622 965548545 245712120 988845015 362972255 863021668 209173687 714464050 305684276 760768468 927902905 127815102 581873814 251123147 530694108 965795731 966028543 854878216 48008877 883617775 604003093 930675180 4191391 843729115 802801835 539494841 895620398 329129790 116928821 797474374 263304071 952174337 571317001 331585641 774565775 971413302 975285313 820129664 561154696 892563741 518537702 251075673 814640985 68371652 344360830 962879824 828014172 840363440 865047978 294686932 680043615 22239889 936434091 9024311 753483489 999916579 4461532 901117326 87228545 867382843 217511535 743176508 992713597 225330123 299727389 821809193 212449119 984445088 160567972 215941193 856923528 680933182 981979896 102942553 395786677 594840727 468236645 923416804 871990614 989257201 748349246 735760768 995800918 793972366 779269171 53960346 153884325 863301143 964108983 983981854 786092323 777985280 947343609 52145459 793998323 716937593 78150149 908841381 519198859 740840884 993519151 46489568 985587505 915771822 104538759 671902914 925633922 474883296 891477773 936174041 987900335 921336851 820192478 839696175 206181599 989813479 942522952 755970518 922994646 328221503 68884777 844241190 310409371 402690721 541898867 967238380 857648307 427072690 836329119 973079077 537197617 952273312 930473424 859468639 262366953 641757057 922184006 981322808 769537873 503182503 574696000 968982222 754025912 785248678 991519629 864084605 929310738 968471464 571907902 575892282 510620403 973953105 867143894 92666352 69430605 801597185 298337197 836180183 91357237 296382101 956801479 934520840 738696876 972361137 787784203 785006791 477485042 616060133 835023476 921739441 270487976 690238972 946840114 119584218 794907597 841104526 904189787 821442262 806068649 714015589 304642581 204681548 725237525 123143975 822294939 813471985 774021044 896519057 574510738 887260575 968182566 725840728 783877907 893562665 661719654 672027583 252859791 919267589 443900395 845585788 885492351 188596828 295879610 888662286 199769966 833520120 39768666 171787488 889613555 312835841 994540319 854632753 925124355 760319022 868950375 427735191 795517342 858920864 11964021 924137690 1610251 259112344 774781358 181514611 824700875 880884178 978948623 982654982 423122664 799710200 38244006 777143995 874731370 866065908 28687963 521957218 367755595 927471531 426245639 841927954 804803450 758483997 608537920 801815681 592698327 297854899 891928008 36950462 793421707 631703381 535455907 741456284 945843525 727015081 379641099 543934061 954144199 902374069 314422758 222721369 591765847 421758453 870868861 171159799 798817900 921597485 162720955 70784280 517530430 57553877 930719812 616810355 608845591 890585002 282580510 483331058 833189162 326244950 869288002 405082907 400799994 753981518 950596308 275281549 765156709 961082587 460729384 440417122 996156567 303842603 566026039 753243651 958716667 833976218 501247071 1201368 433098570 362840063 421607464 208275832 147995000 433818174 765487042 461594726 930385108 639451520 826679983 828634101 900863597 807010004 545958236 844936696 429732029 67775581 907917320 755819581 918231958 321510332 36486028 534698514 307596231 986048616 676670894 990041627 579822304 877367307 884065926 262476070 864417872 716341924 454510681 976114490 854927293 285918226 956540369 65030254 869905036 793226402 394490294 808830190 859407063 877787092 14721899 138344905 96202264 862200003 346241292 990801752 718859110 6792257 426302692 835185450 782166484 917791369 798859025 832667514 698280120 1592658 30090473 849134683 809602736 638577200 167481760 985328191 751092083 727201291 508370329 116553422 828303953 935099017 675705641 117219085 993054164 552638249 833019305 888305994 165973177 885859147 484467964 732588538 71380461 578411426 386497223 33315550 736407716 543647492 176637955 373193562 157398801 302276119 985142248 322350285 880526012 960521762 184942052 826604688 991188201 921358186 853911889 982340875 776004510 789390441 791661884 986461588 167120915 152593295 518355778 940399463 45788479 299588775 881750777 41486548 821627356 480359299 942640123 347583001 140970682 636929870 804215019 723221399 962792595 909077815 391267472 745784312 353758750 760401930 963275382 877126589 756828375 496050782 975664031 748022302 970438859 833371727 105347742 710302240 107448639 887281165 912859470 324822913 269169058 903492674 948583880 727030417 827895913 691241353 975146930 48878328 936131244 737724395 808465992 689108343 759807551 844850254 766989476 475839729 85136983 904962616 783087884 940253939 874794695 992871096 142462575 183308143 847111228 211521602 155643734 833929966 859895087 166340427 772256277 3386790 759759780 808852969 542239726 815408912 250065788 102252293 799355581 937451946 553648391 926186672 462620401 746089752 899264456 86902010 548865000 943317609 60674788 622184009 739296755 906764543 38140675 856021875 630493502 629657479 973298207 883583735 853399338 532038882 900349486 772051219 726873071 853848780 830678096 712252734 915929565 322326825 909635316 901842637 89745195 285768693 489753347 970138067 871315169 973370145 840036727 715076071 821485615 981139165 891006668 286446312 17889551 7151207 251335083 33788679 717731455 160409787 233801735 982521763 756370661 838837705 308698537 623040205 424688502 224089360 610846986 246727160 749172734 416635311 17343855 111346858 576969020 577383349 983248128 603524743 15382108 80263247 879963741 326405509 241134949 958253775 576287528 161342316 877631583 170575624 665257177 857656569 578698595 790690304 351441768 592924087 833594151 125880518 846043997 713309092 239394697 800868517 496336831 816364670 440523169 901543944 672468315 321240287 834248459 738170422 582264817 770141721 139391764 587688361 601470614 744022400 903330512 798146567 969850723 810987466 473190162 923529556 626726314 339091302 860923897 7664209 982303486 833366260 797987863 19704497 892241526 977060975 694826680 884343966 750400021 636552228 510180284 969438959 733094940 486429415 920117546 911461176 365208213 679278067 143147210 975825961 154685585 990078003 784346533 651395064 223604817 864285889 474207751 916010207 893023328 878149211 827607820 550047962 358804271 709450183 985659469 921241707 453013014 456045577 282326356 88075584 423445770 889855450 386359053 971378835 167975348 130918120 245709300 993431193 754400048 999262429 797475555 800808646 121218256 748640644 614856160 799692823 224920450 856002442 934605078 819383803 207379551 904777228 661205061 994021946 878120882 977599839 737020247 970341111 891899344 852032542 287369386 137778631 26013462 794699801 142314728 875998839 914578324 696390375 616818100 673754282 516221489 749846338 156488700 746504480 556261080 958943947 970543399 905531011 887156451 459069339 569130046 557404525 251227431 822502594 358257872 797018701 843564407 864767121 849136487 231742873 60831119 961227896 176338210 876173307 924853432 886070665 962333295 335268212 810108934 642075961 771266993 709741133 933880150 838708498 513494903 966562758 914667532 571010100 859798730 507064360 816761815 632291337 974345753 790106068 938668136 939700175 209543543 990429366 112919853 826570306 391027576 60820113 901859488 907342670 885556416 637080524 971384514 431676091 455482422 954266560 190149761 883691939 595830945 628610991 845736188 229584226 718286323 918212134 693440689 7052765 785880559 958768623 830742634 759163443 776808976 840733905 925927800 919550739 468784442 984744689 100681011 910174333 938784141 141201005 413902571 971160766 650148596 836535551 640921167 822915541 797619082 938072127 914070021 783850733 876629514 871029254 456643427 161018909 990909315 680974466 756775010 792756255 211571835 187346596 880257383 182996392 481531890 162077617 701779452 888298178 222559530 889662160 842016387 871516604 599466887 112173754 205315591 403100590 390120939 850094379 343420602 632698321 823899614 990884967 775685120 397134632 765804290 952324039 110518631 950196031 876034536 898960447 904666033 438595766 544608265 918624149 823873058 888846686 601514535 881149482 308776564 815402512 103517160 842682908 763416037 390205142 492243402 762967855 902946164 715742745 597991495 690705771 840587153 960197855 510814008 964143725 982551768 435885466 176284773 352494465 990209634 921064282 530811517 840203387 810367853 898612007 481088249 485189981 779042062 864195627 892590847 3097452 32976975 722380252 912462649 548572035 523021681 906885740 106661389 824685797 122896034 975671419 484071006 540888135 379836322 725992270 507818181 750895509 819697044 316473878 775477952 622352000 582719969 956820480 916278237 821116670 743678184 927262922 341891838 573178362 861547155 729054686 810731125 316016052 868086384 937806771 208254716 702039361 961492679 954169559 883620361 288538802 371242994 890212279 651248719 766691912 725167397 661199806 821576845 768448644 136565606 105443496 306347887 51732358 263005349 770602989 934286125 956416021 751858282 15942846 147077690 878779645 873746894 417113525 382505630 429107206 900758496 658667184 893036138 652709671 504307976 601714971 100724893 748462734 851978068 873409071 672724156 15813518 77637799 208952189 900221822 206263685 850703038 842615519 213342799 740631848 441904246 818886131 759903849 296801825 186748149 826217218 764325492 441045716 822930296 843909191 377247367 130578886 645048435 999182372 780835183 763101718 863690430 880897701 89160455 926789448 892954277 554775973 582782135 962692276 405673796 564798776 632637054 859446988 901843129 596308411 495799087 162902851 630082141 680884948 210898656 469605867 944088507 170887126 127748182 314623024 48024497 874054016 47637579 790861584 335913395 934898680 943821366 939574899 168497834 201794985 914171739 746610849 557435095 827130165 322470106 936324914 926839805 140565464 813769508 926846371 830093390 930088108 810747650 891158136 674681607 452097302 130565543 410424019 726581450 407543679 984881407 900595049 38499096 450076226 786782879 300383978 716622551 847982261 49191258 989649888 853487825 824659281 936530291 377257260 593508172 791845849 965461823 104775266 454702680 958600215 914830709 805442480 11319040 928445363 641165313 783906107 902543729 309899147 582931318 30695690 754534080 228021246 836178256 730121423 969513391 742703421 809946733 640109768 251046184 164213737 665260190 914142003 684652964 745453798 882385641 890870169 883356800 983912992 410526528 740581684 890798490 863585501 555571305 973503409 954559200 271788673 873940777 506461173 905084071 758652769 314861227 922333497 772924953 804200379 682640055 875199271 428840495 657088314 368255360 864442271 779848995 477367505 961853139 547508104 998673368 549333242 93926905 919666598 104357478 946792202 731145665 506689228 760309757 437907698 502398496 544070588 817084081 883229423 188384528 479380127 965418274 891461357 358098218 803130694 783416315 874889060 735639831 983031821 856877348 175792113 742485074 844711039 86710842 813962235 392393593 975583400 866565419 827075367 808522261 78785822 983998974 64019958 880214182 752308228 193680374 543169735 983831211 833443032 875834865 300303204 930574121 839563406 940483589 787273346 397709656 998922798 857544193 953043003 181729604 148028398 699913278 984517505 267706922 963584576 929354097 699456289 941050584 397310063 856240319 593054410 492387000 321532434 598181988 910660416 160155240 485890027 791541805 893733360 990959807 75623855 644512381 981784533 114592204 56451163 385758116 632546656 256691447 446932931 866255493 742682456 307102939 863724703 814366037 746832406 845623172 815997894 917577632 834088039 683261236 321900286 119190576 253882945 802175704 410158457 812855605 824573955 847407638 29405451 627502738 800119226 873820517 195694631 700951225 860497388 535949745 809430438 972707544 982019263 695341743 352470771 850298162 526720950 703058983 40587096 812155161 780296955 905244425 656766861 838578353 260666681 837285913 556003620 82165239 971896629 877853530 965958760 383638107 368988779 509289894 963874671 410125545 479581467 8546336 581754550 864048583 995130260 138541809 392655978 782342772 922946743 621904932 766064188 166430192 958189970 27475794 742821437 977847208 332809770 479350573 906983895 788120720 919116777 873824967 298430808 879008850 158100383 949025128 792009252 855421028 724855122 996091523 310662984 828079903 961251562 97749880 6483919 774031918 957896750 812609576 654740797 49969265 673341375 943807598 743273518 955840976 365945996 947406714 981726985 658498317 397277264 355487398 986764745 887890338 568841496 579887599 197805634 940707165 929295798 17925180 857570408 940539317 117452422 842120201 66814551 994593270 484785785 338072188 794228708 935276324 703601840 785000467 447237310 906097046 951231446 360191278 80249641 918705220 669312242 869900891 961457236 858686009 990074373 988630862 87674775 860692491 318969873 673230294 313611496 233664126 990113828 403611737 847835490 240678220 818179254 804343580 647728444 99754571 481186248 985929383 961003824 442117686 289289748 332897259 610054087 366587407 816668084 578366997 770720266 199869690 786036981 947137101 995492546 940897064 935747002 368661496 286382661 987725499 903246034 721399189 575943077 814561048 365805127 209986086 705175512 997125345 523323479 937279229 60317688 696336649 782260152 475131804 754698335 997794002 995185443 386599195 807884833 677069135 67427072 194690514 378087776 255578524 958411494 236591407 813975323 980118657 680125802 165258332 836969306 773197147 541486569 796084276 739072246 452439606 957444538 744361123 124600538 464161028 434725218 728461489 391726674 181281954 507851878 511433606 426942636 839786670 969594287 112620218 923664428 853342775 13336980 844737836 873865958 757253528 496219747 463763539 939133975 739178120 729410178 860085069 754650047 861870057 869544812 676323358 794471041 979271982 131064337 751763969 841989167 993496250 730975705 999414660 919861699 447176722 737912240 488343209 483191857 112055212 32133883 759884413 930188326 815081679 604650429 981674028 89564616 834599880 365293402 127318229 622647134 414442357 382742590 159126180 187680498 967359806 553482160 187738708 759806585 679338775 930304205 131845427 815818937 351855784 145851894 901070409 61061627 780534293 775561527 765832762 729012061 835349954 877124787 565016888 12364237 472368699 972835047 551737105 928798216 765527578 285919446 196634027 251962086 786412434 623625342 867499163 351801874 936835768 121244477 858270270 702918681 917511757 68890257 917230084 737020247 953418954 950968504 796637214 253141044 186025073 233869968 23847117 503150662 834991216 182102317 776818578 801139481 511002432 864661242 821865128 239585795 912238198 808721094 890344212 739449517 960467629 378285463 66719092 797359621 802688194 71921633 388148451 499222034 63314061 928564098 989025993 795851539 900357090 864028242 27158807 921741005 898565824 201620755 637906637 677809572 463891245 947143796 942641201 226047970 210105601 989914547 12765914 816921330 977144355 823859423 388190813 748247087 383723833 331683564 679546308 356937289 581676918 566588701 729379015 850048622 886091999 738393881 795881384 857701388 927087706 904000885 832559881 754273996 754433616 884155644 915780767 946920337 655989267 892142609 655167756 416712948 699918501 984398769 766446837 727197859 732265667 782907173 817376517 756550251 872498984 774948917 263463327 293264827 176319971 768289515 925809124 678389791 989032343 300614387 6179230 756115989 891476835 820802584 980192237 752225720 975651257 150797083 556032725 768474194 711708830 180059196 993645504 355003786 397567106 584764882 825735480 893068553 742641082 64673015 987935677 766404242 150654702 764510424 977398212 992778512 961050673 552795181 651096423 831021060 73031093 960439641 940173446 833762619 485609950 946874942 774583925 973072669 559412331 932582946 847542730 10570394 889284960 846173061 693416350 982615656 829257646 923497388 819068496 978412886 58459708 908201801 520571430 613807445 345903729 20589880 131839149 369512711 651149522 651109629 769863674 444543742 764187826 139892448 341954359 796993446 197987898 333479080 337497653 855908808 864715555 860958817 819199727 675585782 42282485 955786088 327113146 243962720 612854329 272683068 122664068 857923386 713179144 149325341 619382083 863254332 572882550 895244521 572454360 184817183 946799600 978463119 919514164 563016730 651147331 712756395 155218234 797908860 944127436 194124286 876766136 953353868 774993527 176632193 74381418 736578794 920998922 805942637 936140972 730368433 742428811 488686768 317410363 114541935 910540152 752436957 937364120 598057403 850887247 927096058 962698319 60984201 406951117 969926544 721135055 784187037 847874810 814753656 24646046 838701290 926875165 721773953 584890643 943621295 665645001 11960245 737326207 429158450 747595500 786716912 800267608 766673683 301047914 311842810 450463859 656438925 583262833 769771462 944144307 702437665 750970967 775409014 751371614 864482918 870420900 89336315 64959362 980474327 72095318 803460104 996317023 916172516 337652393 761533897 272260718 257975309 284083950 789346430 927963989 919611000 1823029 959315783 532129669 979586595 944127025 45562313 555024103 926722226 995706145 737020247 643055284 792121505 452463081 225623552 375498191 482671612 983041090 778493290 112073225 933711454 960554276 740759367 746133776 443357651 21362825 785126582 165756850 973378153 595783420 231500311 158243027 936685956 836826042 950836107 742227345 154240461 379397755 956525719 826525501 652269726 798832501 804775011 924925944 812386516 822845004 908013375 995628547 820002278 988149783 633421562 839705147 938754883 357323096 868745194 345857291 685709414 266879022 857936476 685202126 52760641 183450228 542427647 531789094 242434783 435538901 758689868 807733977 797381956 580871790 13012480 256158116 416341206 980101539 1604433 453403676 536732454 801324014 635033743 884868952 752999793 826476775 84171623 903753262 302026477 814038547 202339613 802299225 975357230 93698723 511890052 764132858 875062722 837977612 839682760 457256286 211016045 672884268 424885009 814036118 282403928 246122354 500974257 708913251 890375719 565718619 387989408 97712239 986325870 366459860 180779836 277723300 342270347 339971029 383820092 905242114 125042697 869098445 888206226 572537499 773895731 374100646 919245607 538418664 739157023 114054033 425540320 509956454 186673620 305393724 773671887 588356827 303124577 798645421 962602996 182813868 404198948 852193428 147608647 12673844 745255386 101831885 994369903 937866782 845282256 406699084 511565752 873509778 860847282 872122993 71573888 844717676 720919183 510166838 977948710 826418262 81303831 856740408 717340628 598399291 990722152 957582541 796225563 888222632 821554203 679690732 985407312 961166357 986094037 332279043 936878225 947619533 959534936 801032519 594658561 808875116 799146369 871871583 689218712 342825433 390048371 3652216 25075793 751378139 851213392 909397485 477467317 944016978 636484954 494636920 984344083 328424313 769311383 941597199 791392767 211434988 902980315 983880890 863024420 202818458 806727368 989712819 798606556 354951516 782029933 774489434 688677823 782324278 595376799 913968056 220646230 66022860 831048789 799282735 403250834 790399018 334533762 974774882 537057170 704291477 648322999 782178924 657104649 789631380 286775055 823677463 403912525 758206335 651426780 727191822 413285112 833390430 593823339 821702510 853379498 241420293 933032092 842601904 437298259 874179785 512536064 818684341 697732398 972905954 415765375 860518789 475642479 378181272 864064763 681962983 805645700 530714365 482476588 417241956 923006410 75605309 86908307 877545733 58915298 551354499 285204919 903653111 579909245 825023138 935129213 700837612 515935977 889312553 42860519 990312203 552473347 864096341 757012397 769019393 32926002 441943814 552258532 709380942 859949255 914226357 613931438 93433271 909409756 905457590 328627279 961101148 752529347 747769779 775358295 903718387 909360086 860905657 16469218 773944519 136391991 852425152 850536316 917992689 39435755 737956690 887443295 355298533 319322138 756426032 253953268 165689325 994640156 277446116 670975347 922129017 14014025 698206834 924921512 926913527 849201826 916148601 212367523 464126241 891611208 378964190 827772370 827687778 839761038 909841684 357611877 848684807 39863874 797325915 125968953 816220809 770426817 264363067 997510701 871864228 284862313 921029940 25718605 321311283 228164743 704048737 970672911 952828076 195388615 232819955 623311869 468044194 905972844 842317879 960567861 282467191 529826056 844361432 742899663 753167108 32188048 870979602 788833515 334267932 64165137 97707445 398448598 822994267 22961990 660032979 971566929 985083927 814633020 816558900 306488557 961985854 971088206 853664497 998250623 916804943 707580334 641844861 799481518 888958557 830075947 793652354 961530825 100178164 661353897 833223861 788617174 890664604 812916764 949755861 774541368 567231537 331713851 52054565 867145709 38079826 260964114 192166805 170757175 726345386 275762284 900073076 209218954 694510824 39845376 608330562 957563556 183806604 831578123 931108087 745942988 838276469 398099574 220729528 638833969 554237915 568949554 539974048 945958172 694447665 765103195 992075786 99848469 744808803 148340069 148915879 986320134 372739339 355658158 549815371 581414107 64681521 192399966 231619267 491628598 459713337 129052812 846983548 809107114 767024879 309062800 639057529 997501589 214230901 819314624 755410145 832906938 110023473 568593043 793109188 870256649 974040126 114846205 146755235 206506790 801869061 104534464 484986715 480866846 661872725 468919691 843320684 769716681 337727815 981844140 884935904 48503740 25722429 755709309 12683830 501307100 909195948 907074151 988992540 925688413 868534921 445378410 401352437 48473577 504963805 693359776 765999971 789761565 584041060 23649109 390012461 855179283 32857652 772889039 760074878 435798431 860367021 795268729 779565834 932986296 829267852 76265500 932026827 957548163 646479322 454262206 915379334 742230967 769599643 348223309 343942786 167924928 108185026 203064374 726414947 262591270 935820980 103692326 891826396 852881183 845203984 791479168 917666699 152931730 760323436 758501248 489163798 787336246 841729032 516658179 915625230 618678131 941267636 699993796 266914775 96842691 216992503 52872051 934516023 934723707 44844105 846005976 890723640 953325957 102669126 746547273 147814171 997712040 520740147 880157591 764000991 845616147 860021451 354285330 784862234 160257815 41797672 175802704 955521410 969956649 987988601 827657693 305513489 725215983 153455666 460548992 432915830 309615770 984719707 841777845 784105263 737020247 948538807 363348906 397783635 34540553 746162273 160335613 946655631 973811242 769173155 956964927 887045717 926454563 771946230 957128957 547292000 826082245 127866977 915206864 57066670 307248527 965059248 747863327 959303372 681375247 423112419 500984403 381064338 793234602 855310839 834409894 909261921 779676193 763530258 768074395 202544676 300489591 745165240 432128562 662722627 171504005 5142654 873416754 118089937 851678758 637194238 788504675 545550307 902679107 881767331 398359637 773552994 823003884 718534902 828802823 342574771 813942981 519982792 15200108 631104324 314005684 591723531 424417032 758697056 648916772 473815688 553424444 724522113 712030474 161583606 572279002 657762877 968097403 622716754 512431968 102961290 743648488 661214286 658104526 748064705 656893957 468222366 885006200 108292089 89525625 940485172 815207876 66428350 910246641 956882851 321305141 902729659 452330626 62099864 909325310 588776854 910913903 921981950 457751555 785112957 626899059 991849502 430574398 923903919 895995683 811918196 516461393 866645672 806272382 564741084 350061347 555721308 249599192 471200864 891047400 232316426 620422649 762980114 644726800 984154937 17556036 947539429 180459511 757011328 884773202 386165285 230847361 130174666 781380492 867187880 754810541 490707500 999988354 751056104 951339808 375353653 41189158 726881825 347701568 455960498 955022206 812664906 761535144 190772021 926207755 678514604 783279024 805854233 852853548 245852972 730112032 762649692 372422822 140443117 785397083 884542324 832719568 749114821 384273350 955486487 76692944 383509182 53244995 487569498 966782478 183361024 823562722 136983130 206066701 940967449 151768463 814329280 478389233 533021707 513981730 340452135 755895785 28264156 52736360 789115942 89632489 927609367 690995036 320924645 125277922 453173651 212396962 921804377 978683498 800781039 137019102 859650876 413687293 203423299 913878358 222735691 36214635 766227142 894640025 139485099 564440143 780154834 935756262 695003508 477445412 897724215 344172341 917448727 316978279 663225417 166296205 773102748 180682830 995074301 627478833 23051944 478338152 13346953 836938202 82554434 909738925 414574654 930525412 925552961 123071586 729202570 918710882 180675259 978940819 431872041 985865245 522499213 359506806 933365416 974738011 531149157 471547567 271649481 300388930 54257686 183903268 708762179 966046372 971046541 824752613 610887336 254330647 365914711 890230608 288151405 28088701 737517085 375510755 675091006 743375486 876731339 535032920 752251508 993230536 469377329 205318685 380628679 975182261 289474377 915312419 320849263 905472893 587422002 594434537 189422953 603598460 217122841 788682853 874907715 851305374 373068377 221696308 745774005 947338766 822809582 803531711 682679795 944044942 256650584 42102788 737402636 827827762 768087807 711457876 601405060 99501085 378977627 754738637 565219992 796749522 942061862 813469158 963109946 321938836 450750205 799767923 11106298 771506647 475925184 54069531 487884064 813743730 105416020 707672114 778056327 862977066 803865696 966857532 503918301 741285133 738147772 883751543 976470151 615482385 755601131 457961193 761206161 443939863 998569230 4918586 862231974 35926963 920528190 55603775 600288960 89118178 754196243 775532481 418689590 939656033 164170539 222422097 474954490 987866443 566572961 797318378 990393097 761627284 265605821 136596390 658655011 463153901 711058590 847477462 895683499 793846825 824315005 972422740 901679456 657009677 666948588 752914021 994494553 993513033 297655445 564750358 981558726 962252666 762246263 886488168 87988212 993393307 119223753 920722411 771501079 967471055 935217347 463370757 932651323 106431299 37146428 392246420 115534258 771846019 796043466 328830269 983124610 543296633 767176337 524774435 946755530 829106193 426572831 679639214 882072632 835256525 61312757 338660314 708874743 905983020 839087735 759624861 862724056 788443196 88756486 723229016 942489867 476340551 20203416 316136218 66573990 858331915 360037049 194791356 718882897 726488687 624030940 407405951 976088598 230402956 394399344 852333817 217392077 808596111 964452721 926531696 196882412 938145766 833372470 918969066 845296777 704348453 951451262 660065492 935370735 927114359 371499389 754430164 864727798 265014663 557626745 923025261 318627271 827690288 449934928 967863342 853535477 274556006 686897375 611565249 185021353 998843528 968282807 333937302 470541820 703649738 833579218 898503208 905456511 179426591 545690064 796069683 24967300 755178409 757952905 398183709 969190675 791071639 658190307 412047039 874625629 842086415 736594298 406803997 582825183 991991278 133726840 369133046 851469971 674363005 881174704 716763832 811200697 97724927 990683639 362038889 104838680 809285927 642621223 838185793 898955450 865921403 739511860 792943990 941809109 838400148 224278059 451283309 207416056 372355700 827921532 535558847 268857369 529191306 487028259 801245393 326546566 931713631 695957557 777498844 805451153 977233758 966920751 833965621 884984607 611248841 865507445 818800921 695383448 154636996 264385708 829109313 554039363 512763003 785533162 374491768 757786519 838220331 976793850 415200844 500067615 904156088 848418728 577555690 161622978 840427891 413112862 855983873 858557436 890906855 494771900 828732493 359682322 556322536 498601712 776278774 56506291 647447012 787704474 938271516 948761652 54241434 986459834 667683256 953367234 359018314 656490782 646966495 767980322 870288824 752681373 79454325 505095150 566941326 947964559 965544323 800026944 220510091 678014497 768252310 790310077 138043464 248871844 660429387 478107343 348694470 782416076 76554089 902500008 776896434 49022490 693062202 977043446 123684815 937106431 931311919 848670277 425605434 979457698 965738390 40141164 969107601 946283098 911376446 342333322 737020247 568813496 570525367 362469709 661237471 877410596 364847570 148571390 750839135 491423635 982584588 174888262 977978845 956790471 939007729 748983322 714449718 931855712 389468638 788627690 913006682 210614114 966122684 21135596 891185218 169840328 494291422 927200401 604205716 932049915 691794138 881250585 809172994 983193174 950373551 775646911 967355658 722959410 814126852 422549687 677290936 582734950 119914174 254192230 796891736 702742803 939595186 762325909 923338388 280814208 929647265 954245714 317549685 789764839 814619579 532035940 202569661 450553283 183036191 111765044 960676960 729248510 412830890 251517627 844941303 945475650 905550610 385855093 259932277 322866233 906009336 920412060 920273480 973904717 781780541 895168040 227493226 937786172 834323958 715122204 750584649 907422500 948055764 786896956 989434594 132827503 282189168 881539673 78545656 194852825 925122136 527853629 372136176 766596031 460440160 98237649 126340888 146150225 181414144 12280994 866113266 495680259 446899304 369491660 336672066 797336142 490435687 813729615 553819440 825751045 921807826 864024390 833193724 738461038 357207144 942612651 898608519 543913704 771758509 16062043 848579774 21131925 301792763 721919359 913681221 250154944 841989920 195576158 996386610 849609771 390147013 911643760 776879167 772996501 426288239 264360582 842610253 414167909 845680121 581090814 973447575 485796085 249649356 242575716 863997636 675937725 688152170 816140522 372367952 993551415 705640713 818933429 883172162 919457080 906698046 799547662 62927140 386904389 179321579 445221280 498318496 525063988 360172362 953916874 115507552 255058838 865978278 901548240 800116498 742837031 536476829 846317488 228048438 338735435 868754847 656469795 204905360 786490236 235690345 259550996 868373321 858461107 649235183 841853277 208130418 343249781 598492765 957759149 677950199 718108059 136597315 551641993 634382856 862091662 945784673 978029439 236857291 869525836 770144545 969852114 738746951 965247171 10303490 91549780 571022618 802653237 798959750 954195115 852654942 798191756 210256933 845630707 902326202 877290604 871918301 402945091 4505296 724322307 901077420 511786364 795606013 414484467 573487822 810982101 283863690 779986332 648784334 193470124 917063878 873627190 737020247 949277165 534312451 857304500 924785150 748570505 465353152 390184627 888162100 473960873 787926438 838527332 961665292 304983716 206479023 876162114 927178729 178200875 743469078 913880223 850739696 428481161 515794350 921687723 553398902 179435660 752717386 323154642 788415528 855173932 784158455 890381273 298652483 507080200 825304827 851760527 330897611 899833876 283152724 565844825 850109848 814533860 619259544 776030617 78207349 701580005 817158194 108237046 460278561 942986479 435933917 915556889 892859669 892099580 624236933 714651968 842760255 834676902 173485312 82137478 851937841 927740794 817059166 900206513 115450440 805012856 847700870 942420114 157414437 661474147 991001340 553891392 806402399 432282726 792427215 463011966 547810466 771251597 49413342 479949570 899666920 834237810 882624468 816699963 742720460 897632347 949541545 792401849 210076164 474911074 25251742 914817881 442240456 551321284 33143102 788629587 830737446 956303932 850205310 945543498 798427839 435375462 716214497 490780003 670812041 833035864 38344226 860440943 550184055 41119865 238497309 780946516 990906229 863739581 495854877 85476664 374839830 853522739 752348641 990815918 898248583 890688867 637867750 568120876 7399270 998871896 821051260 799517561 945419476 559469343 841414869 686907272 731175781 297838447 51618478 163077246 855581157 887446858 841545533 688807851 786278616 242343593 103044195 737020247 183832031 661774199 914995708 143614471 841461477 240238747 3217394 813652196 449726988 642859510 405060073 124366402 980359920 755746144 912291568 166007835 869157194 916863940 215442615 640738372 844052939 312792205 834203061 330008935 758307122 163876001 250763988 488197183 797311496 682609035 973738374 896800467 352464634 689897863 433304570 27012253 988359907 925545952 415773375 928417730 971427218 174744136 437761816 799034515 751638183 754529302 752215243 784595562 815249999 953387909 984094646 889007943 846836723 844818723 208940256 923028991 446140102 917344095 647613122 314426647 700070826 324719204 82882350 737251364 776138450 505352606 75830975 962404634 161326088 118194301 510201172 955836371 52189754 608118392 877995420 36417505 44146717 412998463 971507193 988088921 957812657 518537050 899976884 315006694 749367034 267246743 45394215 105441783 916832743 760327006 900655533 785104459 788073084 424224326 957279138 245122312 843232133 575427589 537256677 887508504 891829834 903681860 314666425 846317318 763468791 150241218 194131121 818930934 106759750 768479983 429076828 845663598 806839825 9748266 536665131 819472443 626948024 891000138 548147862 119439105 958149029 94956773 862163058 899772647 931550347 867142875 781029826 947593047 55539096 758263456 50116403 925680933 899473335 244291799 793276742 388458769 848329922 952441676 271656248 839441454 694703560 687757482 141059220 948515521 979169082 191865644 764717889 166581383 265172241 890830464 640158288 299563632 819479283 129711297 916538865 289885752 849558672 838464085 369567590 719446954 826828236 692292117 736116732 254064291 837083250 745200941 924984661 360795154 633126887 190114407 836654099 741448344 741508938 835421840 854959228 173378400 522859255 860179989 935842862 898128236 346240666 820665168 14777534 907780637 974861025 492091324 786997510 832457984 221848671 770414299 366793635 371220624 269923776 111240320 164443088 815256157 7446177 104915756 204862727 462211933 787079619 601411278 567067507 294445167 771804819 743595880 589533278 232998282 820426875 259717814 859258457 458379434 926629006 916549865 607007536 193950930 663640521 816839276 234091823 864410018 977228496 738708010 342858205 529054802 837757071 61946304 408528948 803797821 811408955 787266784 296096309 554974371 985580283 982211635 920527545 361996565 304859616 868647408 976267167 961090698 467730456 147821072 967129941 834633224 962472347 303554233 815705593 798982470 380332191 410507234 867299314 724615774 177493360 114193176 655468809 821678560 741200711 744611542 622149412 466054464 16503143 461033012 835751572 213536510 122412938 775630850 688698944 108793754 610478711 810793450 652144458 748979439 661567444 961577774 340285207 805719129 149313835 367372783 778175072 971667696 674783817 150901778 369896186 436644859 67461623 329467741 420693851 246108856 477561490 911761153 752098125 480604543 864785625 970772737 97518781 944251518 518450016 737645948 825871653 977688143 12558769 940969669 561547462 972129688 497057738 794399187 170902630 799451290 120415270 242932394 991024113 87246188 933510239 423489613 813339428 945457641 974821755 839311625 315694020 470580227 661399160 822430207 774884502 476519095 706839717 993195945 418968867 819107386 851200267 511177669 407895775 952026841 844347380 887151136 45418922 978420002 737020247 808429989 837563430 996987107 829027844 381616106 90210821 681737674 288248690 108436266 469794904 914243368 616559877 989328826 623677959 930304784 999392921 646859338 544702181 799514374 421193173 892185589 760972142 789865733 844391217 775808406 935580200 889591811 267631599 574601608 847992296 552701480 935531763 669113656 664112628 882940951 817102776 980749772 536465579 799910750 10939600 330178212 984353575 772327003 368397976 732535260 694958625 974780990 747628176 717427817 713541079 838720523 534944711 851958920 865199853 488081884 951368422 39886846 915336731 755559345 938676749 362277441 994879133 271477380 198890395 63787955 807809498 930152960 912207117 981027719 72999441 637860687 622206959 291872954 813138870 213669894 958753558 365625391 215683128 750929329 494700203 981206923 953757847 194242887 898429227 405131765 85883799 999503304 667221653 51725440 590682060 561459185 58849358 544071389 966821700 692244118 42513205 166874342 978428662 381695334 751018191 592242066 636789243 655711323 367391165 496928828 187080071 578236475 828503784 18413017 681764985 719584404 935996605 126917422 106673641 995774945 485951186 530726268 462135499 861258257 180597286 14322987 951271051 846223216 289174385 834598319 142890407 847651133 835964356 935618291 533855740 921665933 212855769 847276528 271991274 874578049 784528562 807124845 737372332 778476752 983568617 813421038 902502258 609222198 749317448 879911300 103571753 766607923 260414389 915672600 994931544 430446254 871963395 787925439 437376969 968879580 961816731 799962442 864291487 807136122 835925413 892723307 818727636 506230130 48459438 522136324 811132782 741449863 511606576 968118153 971196177 640339617 45815750 552646682 566002297 134517485 372992545 308103965 282028753 969317883 162374042 504596140 811333840 918288205 800862850 891542291 808656981 86745033 541509281 228244550 751095573 645865759 33303700 791998667 164086792 737020247 738124944 804873639 764731417 243151720 872243281 952289148 369215385 787737871 81124394 992825774 89343141 308784361 872929375 287968127 341880627 782039409 684026557 519685901 690716388 820749762 655436209 865143434 58958425 901416810 765974101 440773626 138906321 209172327 836116691 271101002 851447752 691647582 866662302 745460350 352950509 768267106 788458090 657020039 67824517 102759168 766162263 293362626 988198224 78390787 833305444 451330659 639986675 852802199 831637685 745276525 917811603 988954976 829613142 99765558 760616184 746884298 201867003 856666661 588739299 987985241 850980182 365018216 735278645 217040934 496739380 29950007 555641152 456182434 910919296 712983010 999524294 683123377 287208162 818316704 562407329 792608834 183523536 946732556 355899264 200816014 531226976 742233487 331859872 923691354 911778575 491570745 995786014 861704212 433648057 557342112 757022119 868174808 244178889 145138566 117007097 163322738 211009022 691910245 170999174 876817015 226607570 667919705 965662264 796168732 811495667 982723164 305376478 954695679 371467625 965344140 462530845 846578361 446310225 64622700 471057667 509929101 888866618 443801337 636768562 793722981 778473957 899321808 693341375 920961824 869302435 889299946 924241515 900994802 672796373 922597153 819842586 12854523 121859925 777152324 231311846 206521797 806055273 431620618 360917000 796261262 178744920 586527424 759643666 541466723 146153895 344510142 222916642 777771360 209889394 766595990 112053377 109159997 424200745 842333482 919596352 886780640 892544120 750130163 801571124 786392730 58745361 763898464 430968018 999160425 585339224 298473316 390579230 15098065 30954910 807322766 341411850 974784508 172114888 951526978 379979984 622168587 655088491 781951086 867028690 782456903 519075078 337415043 737184432 583137190 386856147 578950257 505695571 748123192 730771935 921583248 924898254 583575812 171084476 122872100 368243886 933455899 526485295 256185316 788966115 484305230 907859756 909793017 737521921 1959422 449988765 800532599 93258830 101054991 435290893 769004132 927045965 63798578 894238702 194194797 125754643 801828382 244311428 856276867 653511010 805772985 919995547 800435752 563639335 962797567 887683649 584264738 828520200 96472975 521259167 52437896 930495509 789952265 542635657 442189275 294934853 908690066 308758514 730265170 320783962 764055742 840689944 503193544 373432177 584251422 584550769 813574398 863568624 430152442 68038491 52135193 833777285 876674753 323312119 934394243 8319994 348700976 945108697 990859458 572375150 947561398 913812517 993913935 879984913 972874971 789708855 943507854 745580827 944001943 88828112 642338005 865393634 866880390 882700194 737020247 946925492 791746832 394677717 655222323 900078623 540846827 311199715 384129992 845835830 120720233 815251386 418764961 849536333 908534809 579013463 62522865 825228153 748867207 182073025 158975647 754268329 593166646 498915641 968337360 926778402 737596417 800134405 767709748 747760478 305830908 955539272 858562200 852291541 916125579 749252952 365863108 119865767 53563318 615382702 871849570 668892933 468234878 297346648 680412188 763555311 201115335 790829344 992613851 989149363 898567353 77782077 520602718 599346999 450272887 632851999 264624727 463725906 305151575 824545570 830279877 563680452 275453276 23071352 911617409 532770020 211919599 794399098 980327748 836110 34765634 737149022 389830731 377343464 746648459 926221064 420640228 597486572 794784899 858015471 124998079 375151333 325883100 146320721 886226026 662231885 398328191 742266894 480278778 746702276 923792572 448360418 811962769 688185784 42419844 90810228 55537652 864239413 376351989 696766843 703536581 40904389 984089778 66668619 449804321 846795084 950014722 649444630 932255137 140982979 378813479 511989099 897911714 998584877 918343468 894206368 759236975 875142770 45433996 764590417 303815845 856555405 770164088 425151938 470739710 509445198 960766867 498262465 179107735 843214219 208448718 328374097 979168827 868560369 604218411 817544116 145634731 981129531 739111807 196325558 888353326 551379515 629571759 947392291 752455075 908927040 979541004 872270471 791238900 780946143 698407447 56001950 777121699 221070463 225872987 404160831 262481407 137434979 384027010 474019158 742548888 822322711 533452344 790627566 795206433 771066029 877769388 153735203 301107448 731328207 931006367 637927806 882663757 922581500 783883279 844166102 616243402 790501810 792686141 204176529 253842110 506691051 931758695 466407459 437279555 961135674 963778578 957323136 694403018 843929031 611204774 935905705 181307238 751399294 326828177 590583139 478572336 555325254 182798408 470480234 268536111 978160008 892040846 702673176 420527473 267241754 34592374 271609221 242586773 2517899 506420418 830655083 981718277 813681016 386460767 991432105 429146153 303725094 920643439 559529568 90129801 981806153 669935397 665135824 524745554 354535129 250380713 629819946 529380813 606150581 946408517 693387331 391700249 666823040 631005092 912649385 90310163 941140958 981663855 790789054 844257370 349057505 12596029 749766624 976185013 778216730 87563118 231357844 983666440 630390192 565145469 710679469 205205526 115533810 899388031 882957152 625941883 868989877 944708548 604116040 662763065 918501455 250035190 738326112 129112969 740500798 914378918 245529004 920758103 382715679 314980792 426263064 588116840 979393498 950041063 815700046 918494216 196056751 599377532 879766750 890103728 804817514 808579681 985631322 946683313 186054340 418155575 349781783 671900248 986882422 63582370 924665345 426079342 842453776 762270138 996445794 787417492 325931473 376168069 986649261 541135444 612083311 743990147 769336567 778000614 661704241 218607850 805320266 890772757 808499774 349879258 933771510 354356626 641841881 934909888 868018554 673932155 230899366 995426878 838081771 545115385 805089301 869769857 235892266 506004880 841329492 624541571 755177641 971361331 626680281 922998256 981049932 462548827 46350711 532167159 265251527 824221620 725886774 234741413 862294661 498207282 64995365 161617639 929873609 533490671 689385873 647916995 468572553 653061478 757011828 881342708 455336707 901483683 322804353 978672454 973054907 441693742 350929999 656705194 504183099 475297635 270361937 405991995 473242915 986106380 570357843 583968846 926209620 793062275 944677116 382105975 324138779 57048259 212536701 223155588 433502511 795054721 792491729 850271156 528273683 890491183 850198471 238041321 935418426 985026513 48544783 951662527 707018661 805378063 513199340 901750891 270320267 917224947 903312302 903383775 543221395 989009328 809144649 815566893 71079034 810693755 238207909 546103661 292458038 782039611 983499187 424056661 371461029 90176204 369977226 853825022 870068260 232185403 828389725 158963571 852444961 18734108 835144429 821927221 649463273 985689078 932168932 426977565 699762147 798668957 81360788 187073651 197856540 901196265 438352647 316422158 896100815 807994715 974211821 738995761 882825074 767867944 170368437 795616829 708569851 866255130 399799574 737687539 52884557 584637839 182272698 903154321 927290685 196807602 976738046 958639879 919459286 520453579 905583878 865232971 205977375 301442308 470413971 922295907 307204529 147672224 437078511 55808527 635652577 295083035 751522933 225038877 164163270 277430580 103136932 883504954 36666602 34872541 7502870 878293913 788790966 109449623 835723398 864726326 805654087 756016123 250349581 760513678 908331183 685206113 942114246 741734366 804537412 890501253 896051475 912698385 926699373 797594350 143776940 805584987 892742401 506570819 778718835 199308922 703827260 939917250 638002817 266675430 180132943 382679327 721471136 879352503 47285174 777408080 690115399 52694226 360542045 175200092 816440308 924215352 342308577 453999950 855354828 723743480 165881457 383181874 945556615 659534628 753459273 895351255 865141713 949006192 872031659 717169715 977986702 797123726 755542057 657680523 172355326 971066320 766347733 383555692 737517757 150040722 868103905 295929845 821753068 232844102 875463004 849278282 840333233 199914734 910655688 707672880 90880778 865015321 766776333 598020045 19046321 791696776 716525556 950764918 810735183 790617223 844936137 779185491 775945839 307608677 763299615 256148152 157629811 84790677 457247837 933302288 856007955 975689502 767707776 276507247 191047474 812181459 827546955 894518941 927243242 100884114 243718008 155508362 95770809 780953955 927096797 879991206 288878313 661027654 819179228 153400484 810000637 797753190 214806035 544464630 144670465 558451844 856018516 468633609 153104178 154983898 303706543 392684639 853130312 911298035 793929705 649903203 934822060 131338232 673860437 532982953 891098310 745663614 903432555 540065375 790358458 738248838 895476120 995672478 630354516 996871477 929583694 562013328 32398269 950437596 201257251 352738157 623025564 75701514 452056183 931218914 396866956 699428186 307192831 551975762 958709482 857469687 869985097 220189673 794041675 296340359 853313868 882630889 404203776 5503146 972123289 857339280 922575249 983625342 813759564 822683614 621621509 920462474 677122195 806638992 823566434 974749551 818288984 897798113 892315076 115840719 768888450 836339221 336446990 747930320 797173060 860383970 582717723 803430995 492446928 827284578 527872450 807517969 825810543 978424102 861072576 818648503 837689686 859855401 762755674 812500458 768959681 919947656 267098509 169483113 105671100 764799983 413799461 850571128 900986726 728959971 816871928 417498532 750370803 149357339 813434495 876451447 411077088 344988106 876417381 766358100 909934453 578791082 763384829 542694351 810559781 240045224 622063945 832583353 797729946 858725148 974132905 76107203 665375209 68593085 869044462 980547858 956505361 812022794 484637080 640636077 807543431 960756821 199886415 230043964 614247840 151328327 847902985 932095921 737020247 836688737 343713716 528731171 57880196 868960347 965413511 746918027 347568183 825742250 353517306 632603239 101133515 216642865 847342973 809387045 848006738 837949521 750961653 464958724 820613713 816840025 987226084 71491638 740658406 11914957 580425554 882555370 561943947 548437798 830546497 50854926 891891839 737020247 878581661 59196865 333151811 739122914 885885165 582112965 646111348 993629878 475174588 830909126 840407382 926018927 375376350 887213088 828692586 711898664 853137433 344501723 893074516 784519186 561093774 171836186 661741299 526446567 955232057 961260000 828459563 45963542 117847939 614678420 367248148 540438691 520437522 997203996 291029500 822098282 921411340 132578268 446879475 928914531 504990867 895041230 790171648 204116176 648466629 854744297 889760516 402517361 873109446 983092452 737022023 127190883 478134382 117553280 966395429 279415763 789293584 281545648 238828046 487628622 960548385 909546066 614003233 849146074 780117505 190177702 869124708 536698377 174283547 335231323 291692662 938219387 377178283 928776568 976307123 755273185 916445514 841235113 250256516 992432115 820395613 611508922 791235093 844582776 426278722 510222288 696041952 877196242 854359116 740043095 219162254 910038346 874325687 751656365 767918947 127483929 379580393 742442207 754177903 412924511 993642103 419576230 998416203 23564042 661031476 458404468 862357422 224190669 919789233 336963009 669841386 392793914 939370833 952897296 548019070 596030750 903783783 878252583 691758264 996117792 998389222 731901414 908326873 834895299 278560439 742690518 777685408 796119350 818500401 15255139 231626096 688913095 565765877 860237848 940252110 569504284 473552955 939771658 941620697 744273136 326673746 430844595 254625433 882524548 958519601 958791585 959270596 916059060 743409421 769680330 786719990 815922741 36582280 912444435 771487165 190038666 317745477 524169695 489430853 997022468 900783951 478771567 781675774 801061786 503006356 882423590 758872844 662908924 455098842 777945698 770665124 855260030 630625470 976242767 671668492 632405741 938188757 920845419 843071876 937922854 927075165 481692010 931350127 828409900 823974053 32181470 846829335 23497052 925926305 35835194 356899267 986354613 639311709 746740714 856611710 600826875 822517939 39263798 4674592 829328496 666620919 833407822 928544321 921482747 124982509 994015958 765064148 409529060 187749934 962546389 566262472 683847346 118199897 996715279 558766532 784959922 921494874 328524209 20526761 775646990 762955006 134605173 202787672 884721425 525400520 768028706 983935814 744533315 933129392 979373455 849189992 963377860 293407199 912595186 234394050 964407355 878806149 968072093 217616734 815067408 436884542 939995251 593212129 189079644 318622981 988498976 502028156 897332725 898459835 552975541 212611033 515137638 220945482 364788796 380335043 796796839 692290615 825808908 982921022 488016173 309720592 937754620 821016202 334884491 991663239 182021788 840723034 208459138 767914753 709817164 56958128 952607056 798082386 754496185 727784016 871052249 631658289 825026302 870840179 811959092 930800637 339690851 910024948 887815452 417003674 850184450 305904720 261946685 790816498 855277188 631913621 736225546 931996169 697972721 521615285 243361652 154890825 983291880 626170126 816341983 325978122 947568115 216539617 917813141 313334991 611140715 881874007 892602713 748567930 870993570 973712428 745761939 429539462 172666025 955875797 829773784 744724218 770424023 930976173 738625129 926468327 614195391 977306334 44317806 49547392 812264810 675061101 945317778 576796558 222173450 840619136 814343534 869218241 541303391 764427225 800637343 323124745 165337918 795301177 770575620 240223680 946429908 748115444 627766194 150356488 166584368 86901314 941334245 760476505 501828956 435084200 968280616 127440690 846718755 734922520 764870660 694874224 808375323 690919025 784556486 609941549 578229024 921038909 405781818 819428070 946114554 513961908 259060373 138224173 142681147 777366349 865240183 888388526 910436416 70481241 354996510 857236947 174709753 216217284 654294497 221996361 825278212 928221145 737020247 987736672 787503538 407551136 50889971 96872044 909762761 346709690 750183536 166049296 585274290 924690223 332932629 855662800 115039752 890601410 718253678 599870289 737669345 123047590 74691705 163942875 767228770 796252189 902828673 669784218 911431329 993335093 780487356 198347858 324048981 837117881 356044152 948306242 700062526 398557059 819855276 752167322 964269155 835073945 605099459 87193051 756202751 860435966 185757687 228606289 981084495 839127045 567498442 251440523 931216056 167870275 283822425 58116 813195638 995623878 904420290 354494224 779592696 883627797 922681360 180669484 112996814 420178225 900771198 818914340 962543313 939710834 823223179 330687064 151906797 588681679 492359588 379332860 305225833 488042123 809382629 969077746 180005023 547879445 692379351 913665932 858465322 984383937 777561101 871042681 142046081 181557540 12362012 806980270 100252775 758027985 915012660 850480245 945892026 854870802 214703353 526651885 762985779 884013441 903369500 846461209 868197800 982185115 867645422 435743023 517718241 883736322 148067015 255006053 978795948 561169777 391642938 615494278 827158268 348757737 321880215 421194343 899595832 905110744 577326872 702412555 934495693 322823708 517777515 59151664 315439543 539395964 348106963 84508281 194896767 881227920 908828562 762808136 738276733 42340957 913729600 662071298 776550322 476478579 440518462 743821744 889891380 715504077 435249267 69097132 940273586 779497539 967950702 217633913 193079974 703818045 799814480 897870091 407998757 161018475 117541152 454019661 673629067 991250502 21221577 745935151 603669258 765776515 808246032 402327969 733208662 477290972 899426722 523100941 833751533 987179146 936977674 897002441 880090842 314985895 628484524 368610460 19558450 323530185 786171693 988940924 997255103 34654519 885170102 149826221 460085611 917166642 518939802 359986397 665366662 776166378 686010842 978090847 802476498 803226387 775668426 737020247 722818607 866219853 606630630 940122716 84320135 11855909 966485197 662914494 981664337 201770176 936446936 649957856 47668900 421087556 777544318 776659502 754676961 811269830 627313933 309214514 862481835 755174586 993832844 983520733 473748936 31795923 814171290 985352604 409994246 752033285 874176916 873765040 84430676 782755000 772536480 914382129 297337967 981735673 997273144 878737261 248437969 866580431 941694268 591380884 995930428 110207627 813458137 941660473 933563119 743974669 599445282 535999718 773846906 989874251 724798059 774212084 791299075 795358925 525701707 777925234 994653319 760055610 328777861 132799531 813225950 752983707 472111667 721908656 759075000 62765564 368886275 118329613 852862642 926106126 425713292 738134178 148738691 897112249 323313079 367304149 415152395 288808672 514081647 873223668 827633937 547024831 954686257 790667868 487320914 592165236 873089674 977000446 177995010 945029889 983172157 910441792 869045836 845799315 981073194 625399770 415760366 892169353 949245106 263124008 265138050 868239433 897009925 461922453 155559101 620644397 937833217 767343909 630532073 274251871 843199138 849781022 916412543 63454056 352358377 793474668 774181888 368578011 127055914 866003006 821895549 642518042 356605989 318773513 315350744 68488665 158382769 325377645 122236845 250197454 886616752 980614678 996798216 770975484 823556256 857844553 576374870 429439536 219647170 863806728 901712985 503337252 723318223 618094825 742381276 914850130 846889178 577094176 120950638 951110711 811072568 794521985 787909490 15679521 976199401 881627582 802328449 748570757 331321527 275217136 899598182 856311970 522701927 438922060 329974707 806634764 881462784 402981062 946405943 303367190 623869500 108265132 302077503 529339562 410041752 443569044 759041408 557998840 849309126 800198965 759736448 182203731 741311781 998179507 898928485 784821800 865263231 979947472 867127729 912779761 747781976 162156424 11826512 618596127 969028646 453840133 657914099 946690759 745369987 878997925 639335561 907925739 538677935 422394898 936894 497908291 615984039 941949636 853765542 987408947 470678944 140671004 169611756 844271741 819489662 566577340 516252858 900245228 383620161 878287200 204868196 359781114 921658612 279672005 47344259 803622966 872785943 776663929 800445380 642378589 398337277 508745360 259522863 67515999 310790297 6224825 776378717 938546775 560051168 845585857 753188888 777510482 920907255 21856592 979152678 347068820 362894512 970820048 991706407 242247052 747087979 772513472 928676353 196890174 686739102 828662002 814967962 776703571 55506447 499325517 914951269 680826721 900530484 936501251 627552610 848975573 767185890 982294440 199577666 30582576 170249953 344944446 786661894 980665932 996473192 882018779 943491675 928487628 594496414 371495616 751304193 696654062 549781344 16829250 592385801 43728197 812476956 997320652 421822842 308844996 458433175 41004814 814420664 974501413 959555645 901394671 366197684 867645702 822538349 766295768 770202217 941180866 763886865 970566021 986805368 827024390 508520897 215019922 449846623 26558010 283648366 737020247 235679404 873054850 195347976 650066236 462293165 445085399 36784998 489795438 875442501 751855893 449044556 232583887 440918901 783871386 726647436 567394557 141949336 791909146 621719735 83579532 814526695 146353662 250102224 838714694 578456057 643682293 760824155 75102269 653773570 866540895 912509314 623820626 478892087 161013389 806621751 27851382 650563683 922892661 830291673 515228254 769778436 858618431 816636991 289087845 577132866 999788854 526889194 813148977 967575201 451976628 920791520 578954616 463038191 976249615 653533803 435997523 388619283 934789103 175628840 440454328 907723553 748532189 203546957 779963515 586700264 854327672 825961578 786122882 69531611 161133544 900765155 787611034 100377698 882887008 83545397 59158228 395880200 982948071 889512673 643903387 759454559 391572847 364646614 357920005 989784443 440085451 607325653 788378660 884836829 520036120 688262537 434036314 632373943 755952601 330368276 814706604 154138935 738533897 667814856 873404162 948962177 992653439 547720852 939491285 820852963 966459089 832077409 932295989 924448583 981723365 421176872 914143417 935121655 718291159 533995249 962226250 798691139 607485174 631945514 768341150 624584750 826192455 905283839 758429756 753788127 880467592 110527885 530447070 395016293 309157375 931129912 994982189 27165857 308961773 843616503 782701717 65747689 879672233 189105468 796555909 737020247 1717810 355452480 901813934 555816360 791614278 583053513 439820788 570022940 785557814 938136573 767594936 661676766 438861323 581296711 163990783 860479567 982812371 6490599 425357272 948665324 580183877 882279740 579384364 315149776 392934456 867624629 208189773 530788226 256777446 411420413 860264480 865006064 566830727 580785889 936582451 718078012 618929997 903976940 557653756 158537427 961557406 958589819 181133103 542295745 300120596 630761469 956051430 655267435 146454001 813247130 634113490 516019400 749295112 343272050 799682044 127466050 721226897 820672825 318202172 992511847 838364618 653166277 87311086 996657910 53356417 436232157 952126724 100693431 770298083 347533787 787099225 885008960 821928787 917006663 997998071 829060330 790373544 603132611 670417030 891960286 904531144 891339525 217341186 31143081 751605260 994299732 915913776 875222304 556466465 932626372 744641036 262884812 832167880 879815740 911949047 831488169 304963947 783589150 917130637 827343598 868205509 490527331 71244045 587365202 783140103 321307495 115415404 39861022 995241951 646268045 377398906 213051559 627705944 717071259 958519651 977518656 880335966 312952244 451010610 636714292 744540704 835053752 471879291 799364543 597094936 927752519 206884400 954998634 294963958 7059964 431867274 466404778 915367478 489340985 334176444 683478952 887485303 158337420 40523257 566028169 811914821 69161512 837019030 386969165 608494126 612147784 123690704 968006061 117660085 206826082 83831060 467411204 886953353 860070156 973331506 666827249 401534448 881381638 135965409 740400762 209783434 746857220 939137754 709958828 439868118 974544758 583763712 159202651 24487512 417819111 966286176 862839054 997275584 907591683 625521945 519788905 849377544 964658389 1764197 207626208 565772966 414659847 929424629 165478483 547588975 182610542 127843706 568047033 678567170 781222533 933228848 785753024 777700821 929991840 190117116 349972342 108589184 26845009 782109771 944262976 58014763 312344910 848704682 671374482 465487796 755055542 883932058 42907186 773040494 907030385 84028074 607154727 545786444 793070047 776053308 723717813 369535613 880793849 748910424 568908702 832141827 901082646 466355222 995573556 212659238 824654952 696033962 691287672 370406842 471847718 429248210 762530452 190114427 305622214 817270567 753246663 589969888 387777007 929178515 327651631 100405526 951894768 911614876 731310188 635921855 960263890 295157271 148610745 916239815 737451722 616210127 825496917 963800038 898989192 188670875 413188262 345992655 831476050 137987638 202704184 835416250 918252210 687116280 930732908 10997404 325803362 589420299 922012043 557349474 988619916 906538264 832351260 867448850 236533867 840297075 964005361 145520198 762490245 647369117 967702972 933254373 847670433 513385720 767703427 197475568 312040335 642780752 827221800 871023228 848472439 836184338 756581813 825035030 797393670 380063405 619569553 865924230 869881159 787056233 878040751 871287181 445916532 828977944 179644527 313380702 935554258 589323673 413944331 202079487 779784054 455791871 302365439 809389663 98724241 811492527 621197677 553106130 998198229 139524135 38285822 935557851 935692783 730945617 218998499 635813670 208520905 248532126 350556014 853054357 532813456 197575001 970125201 947518392 986705033 200615043 982434893 606148913 396953659 587013134 739575593 641387073 80889148 854081045 888529867 804162964 92066312 937399669 768624954 973293059 630748611 438110610 971451074 203135147 159887891 913225716 742504291 51694279 975561727 701779599 216849566 996340546 228008528 764048037 552718642 713776856 775681797 112964400 510459046 710140768 905812283 370132558 742730992 782680051 920730150 667485280 780978943 719521297 61863623 693967530 694729772 167192995 687377900 474780548 255183869 999012690 757438747 773311980 897617709 888500426 657981306 882875810 155425780 115904041 506049541 762116603 658759205 593962486 840086729 103091187 728399257 815148128 488409480 978648179 941459932 425063053 903365728 774187760 332850781 829917899 788107045 617628423 87754657 957905903 999713771 162310261 769439842 496740594 617919990 146691276 288136764 683482857 897324870 769669500 596480444 960008780 818207840 517199031 969833435 55959021 989713126 967775216 336353774 131694352 882151781 948514567 856713564 779175384 656978069 331538857 231922640 545516393 857823647 790022896 851463716 777796393 540483029 619743756 425158615 821534586 529397369 284167414 804703616 950953967 961717397 9396682 199092652 991739070 947020988 780973745 829446504 742784501 874877182 444058723 936672600 86682900 912920372 478801523 706653123 374265588 899565124 411971626 943543620 232861200 691854583 760601611 639263988 195503620 26402213 940825082 532594839 991429197 772944530 488801337 744993569 700032403 831082900 88487600 139271813 992098574 449613840 969967788 915171701 853970372 837941065 826503429 794708538 798944606 562126221 785136596 786457468 799800404 65961264 774882649 847430382 300298717 776664508 671621592 841544310 457991409 333037532 950455281 882802408 812417641 905277076 688192412 372154173 715275909 249384786 876382803 2041619 477516885 15604890 895305108 973485980 921543762 335929126 862628138 884899125 851043006 493392129 44072504 770493889 690177331 148953263 769195897 460158864 762470894 893061575 544125165 791620619 774913306 136913681 771060842 943366762 271124434 683871174 527370151 798352012 981841119 311792674 989171408 770064962 887692314 846170596 877322135 150174153 490148316 918066918 789522776 879289844 776266499 948747923 701126250 429395452 707400542 703668929 946335781 599837987 718981075 219786424 484878668 123754791 797968695 914114729 491261926 251611375 108494024 961008340 221780710 609238148 332770708 855759286 374362304 668584935 780333831 570527305 911822041 383537786 274083019 738281660 93020134 533257817 330160944 963791831 254119697 471527546 958678102 857927483 693902187 347050548 278558402 586677785 946694140 753175797 810350117 93869179 660406752 327951370 355876098 685216831 609074101 401668269 647351336 266173705 339540173 936897019 963739243 457560164 866276503 785927792 287196557 851970546 588954270 9536044 834992398 739935840 352915057 982816597 867690286 195480503 907847826 953332102 876413792 379427449 751997346 648400430 179296813 689999207 810764211 850867819 892499556 899001353 801813104 926958139 953177341 847380565 873407742 11539187 231608567 312637375 642569202 778545613 142105060 466802001 83885542 658948545 800600387 372142037 752239565 294380803 737015627 737390100 775013770 23284545 899546298 945248329 526163578 830581159 923107017 890145582 843433631 743845925 953522251 460619588 902401056 469228673 753514225 781210794 855677372 769173697 877590379 986821829 693193 842148979 417666894 656775136 785012977 809515316 9015668 461744646 980607302 836534347 709418429 807921717 467241764 373283102 132430301 890281312 822195667 696178224 815070688 982663570 802405855 818842913 754570093 560480911 479415296 259571332 854462147 863469993 486082832 859896495 504348998 335313048 723732020 779372905 887435726 941121819 256956296 329334527 759984174 937645029 453250519 947044008 822557431 835939863 175742440 966248803 446332978 354934935 751164433 817903595 930160827 999339857 870348720 946932801 847597765 511794949 139930053 245750949 897248142 351234370 889482555 762991887 221967769 739696618 378698725 800365356 966857212 84005051 457411057 107693813 998189373 948955087 985585653 624023303 784829752 961281695 658805301 738496127 728642408 727404987 750996116 65364676 771420713 860712013 907280107 299601632 739033743 763482456 289754141 968077997 511070588 881013510 786255866 226263588 231712216 525809920 856845944 941703394 26583937 503799368 200847210 988316956 912362281 694338176 186158276 190306509 513426976 756463764 378005104 795883486 856215097 380095025 814585988 404800594 853976009 934513254 298558875 334987408 675820765 826843124 518961327 938369783 615515862 972061653 758466446 75339349 476844867 110468947 948962262 549425821 637255947 662083548 902996962 792562732 372476956 836882921 895012752 767779474 418280181 968643545 838488743 975530929 440778923 633443982 850479078 419677504 614918290 177163915 908074915 934190670 821073800 240139572 170227851 279603837 916845876 909327238 942918570 962668523 915145145 720477865 723676374 900543280 996320497 755870800 240851834 616465451 661551420 514342311 488165695 386403428 252442023 781313144 989408773 648670934 328596068 698406651 747864472 785168414 629254999 426833356 832248360 484229198 976832262 903893251 881399401 131365749 761538564 817202058 345141170 792028107 659891200 831642680 304393724 541626686 829618432 402711250 843254109 396253586 159762382 553040942 858372254 755964797 829117595 751759750 977211553 322354945 531132807 803202414 841856765 903399907 951963080 611389686 918426430 593145347 405947298 994534483 691469128 87852591 837204692 20830860 105986043 692416666 96305721 836110207 418156033 659662362 451048552 881525707 524860588 944355398 179701675 304194297 486415847 636642403 907392602 918195044 664597683 882769069 375402505 429277938 745428938 710771333 642376139 856395415 839992731 836376468 987207236 910698409 87580719 111372069 860151943 745913580 772308811 529225607 754297604 758564470 204074758 939514593 619634342 813143322 350987791 768856983 997044562 845675685 269005489 440867781 929214272 898626949 814731896 186497740 756268876 777284600 716260862 769409494 66853353 345230060 796435729 491072873 19421741 50662054 585334564 895131234 236416935 179427707 966859579 609397883 654330716 925986365 890802650 637789334 954022922 265088027 921581266 254861808 664939221 215103362 523097925 416157327 502906687 723727602 789944254 887822551 794045717 846618727 746067695 339682087 992401874 962471206 804774486 823459396 979773289 829843698 67049867 771677332 688521023 666706948 458524485 306515456 465469299 530146080 951161479 820837797 439578613 856318225 847609446 808751118 484150872 833708222 958257207 821949003 942344829 924156595 663906317 543086192 653621456 467888856 919240594 105301143 639208602 977563121 908592182 947990586 848759874 531003340 924077146 754637728 241607793 868208971 24730019 863243589 766200222 966451667 970168825 23474019 880799149 938390163 744541846 926851103 695337146 884606296 82529806 773818729 327299006 419998248 925868785 745323394 913512503 890642094 405983407 632601860 553086803 321223869 723592310 748935558 787657054 931091120 907988306 716147778 176135805 773931469 113387939 735192164 548613825 820228791 586023017 887741199 67362261 248031892 795395537 945003884 924631309 55381080 139154426 852116460 857559739 752667548 572504131 737056534 62130483 699137973 478594427 853702746 342746766 87973591 845229725 258904789 951166609 343324851 366870030 250576301 376833795 559022172 243947569 759240775 856047876 15030176 373468088 462891283 938443165 916497301 73264973 740915733 984998902 906134352 663012753 900105370 679743367 922037659 780324190 707555844 989666298 577266159 810629137 963291897 902945400 825514106 4928115 853481794 888319220 450102080 955286217 977267121 815249712 522121076 35854800 35490278 469859848 597435150 107842363 261319835 19780473 353314260 692134768 551784168 282986384 367223413 67923875 932875730 693717159 758729187 115636747 980817345 966962394 869039426 111730496 760483239 860365539 245619887 288440996 919013256 584097232 351962379 228192685 790328022 75302364 916321162 960133648 799753381 747083516 737339953 158673128 623423956 784610039 796605792 875796810 879280651 124341646 814568671 909721067 272036250 970548384 380954056 498660886 305740042 19555176 604504207 767235888 855075500 687252660 997879318 891385593 911406492 908311915 409075458 179021732 432569772 380043094 758941878 858320813 111238805 414737290 901447381 588446724 820630952 872523633 523468936 850545757 785153651 455715873 99523461 831337396 792020262 268963032 999494161 943268462 490168243 385675717 613860315 905253254 890064241 948761054 739491302 774200635 925545770 9147143 897481023 696087760 768316292 942981640 122669122 839237325 840200054 913704609 926339846 696227987 675025670 771306732 417586078 201401015 395188521 543691736 784685147 855127838 525099584 992488392 703101323 803301802 619281573 717353770 841671541 971398764 202545730 816497935 966668459 849173333 226905195 777160042 792015024 932056910 989036020 790770650 967618392 889383169 783596219 279200711 814382860 810116981 996860674 547185989 213924508 981725696 852724554 843665650 981740905 796289297 300443185 853783050 417339469 847720353 317680386 308597503 762415273 857449339 645389708 729848620 773284894 863444258 853010342 739639283 622782131 407606033 891102914 768348063 773858452 951511603 128261651 140928513 752147269 820317653 377544928 934106714 957606645 529326374 446955695 767525045 645157072 855933856 975342234 603334300 235502236 232025914 961573788 739923598 627803314 834071151 794013862 712092828 368092892 122821126 190202741 710870425 269009105 558775223 692556144 741249205 100398737 785709448 818892553 35491956 448426826 906479777 370303574 886958860 897135192 559520580 478931264 728925877 805501798 480748193 135976804 905552284 631239414 832266651 876821583 934145157 635302022 610590413 868807773 655014939 742232011 518094012 684748411 520071383 949612364 550425263 61590264 784867023 602523151 757708327 490678033 87112009 126565460 378722170 873829944 300655997 198409490 843616861 774397178 387848379 653784932 782525103 470179792 998079917 743285937 130224580 852896364 71679292 774362095 679520463 406931628 966832648 548704855 747017607 141391318 762881215 976647966 117722439 266882238 287878941 244188519 731900337 192682557 834609740 867532037 947453288 582388516 461748813 989798826 944435919 892282528 367474244 895209681 576002928 843125074 998400246 811633907 501065748 875069284 601478528 44849949 135081927 977546901 172541169 768161627 289294889 781993514 677442490 348453078 912891817 245829426 585341781 73853465 186193872 863397143 942084280 908069686 366614483 858574134 242022489 857877533 824260361 917676409 684055083 66658012 136334507 968008890 790246260 989068621 90670658 782249393 767125543 73604194 346357683 203038465 804909412 757545073 914266868 768825160 897783776 982167437 690435164 882833705 681527411 697612004 796580907 102953177 785249148 649080004 985600127 656634945 927806788 780621990 358803887 133465154 907195803 486108284 970153108 630219805 920961922 890505206 817114117 100392818 771534511 514258172 779436513 990889410 839635627 513168266 801721198 385265609 771149435 955153756 400102981 798071377 596068609 197872632 701088038 819186241 29525761 115777113 803668734 40763780 581177880 877282362 312120452 423595140 772462654 771621784 726568005 567313571 777189257 626533172 779997527 778038554 87560011 88608073 107325401 478211252 4869526 843044342 612635863 758833347 802940168 780750907 846292161 627550927 558880764 768324221 394823830 951938472 860825034 510473168 365069197 160848691 648101926 988714504 357633551 511246810 495861758 986973547 468526748 833542505 71531874 823127389 247181987 326179182 582046150 800561972 771275097 809351209 203769282 867100153 6705398 121600 567051142 827428716 324736282 143026019 850984687 482021775 934396701 33806929 439128893 963788754 953416740 756092902 552036404 601365121 189443945 432069247 918376594 890870617 846461569 788972492 957569244 792128323 195907848 92541648 989810112 890426670 360601527 947174604 653509233 425992330 190860383 883004296 133193684 836585472 335687912 522889618 246190924 895068681 402470695 246996424 378764042 464040825 838433487 628128131 175877809 926360173 103350200 595699073 781405990 86401684 832265418 937851322 763610766 726947460 773892723 775256568 271055573 624641333 870060368 718427223 470114952 137720580 883841779 660648931 630412712 760485580 843190385 957298364 289188507 985776539 909591088 761504802 822562224 479019281 320518308 156809848 855586504 376132885 994021044 963266174 859268992 639996966 784943710 188824863 814070301 746568105 938077059 409119242 676031415 927550716 983450274 979171389 933438259 181666492 952838229 459462077 617625350 760515505 985060295 739968182 985588929 457452707 964224326 107682087 94851447 976853939 734163187 871174353 479401403 820940467 934544721 817755112 549876915 954885384 270530402 607851009 856841908 177212422 757329499 841127367 948876564 18120313 937312678 479519945 991283093 921087144 807124270 388196641 895287811 993380811 128281913 828618500 678427626 842958094 844964503 816733239 432026618 456324064 957454440 895755737 696595122 611389737 957795746 686136561 148152097 988348222 887833609 68318166 65189845 272912757 869900875 592445589 558006804 574492173 236159152 518935270 44200921 795856069 838699730 515180332 97769692 303991688 530391369 444457944 234919388 892545068 535063849 506322221 21767490 88781791 706443860 381479806 955695533 831332184 544866029 426857479 326767383 765053965 545378750 908730988 478726791 739117290 158991688 798653601 876258817 983261804 792079401 210358186 778659350 25113759 982239010 808612363 835175362 811099021 813597924 899316736 473870748 974483839 962314852 997306223 758238517 484773441 6923845 931613041 300548329 744551294 803707355 437418347 258114162 825180877 262564799 725994470 494622309 153479528 423487530 793365982 962760727 490847592 752819839 39395243 339527363 789574024 560700334 938991783 14404168 359282456 827157793 814886957 886005697 797828887 955667461 913488280 994518743 356871080 36646455 123698509 279293415 795177008 950084600 824099093 339034380 862482402 903961558 806401281 718139837 931698439 449918016 9445505 783071156 593912120 830809696 941934858 860780897 384270837 848964981 430695389 710902757 408143360 592489281 843415253 444623409 250225281 710600708 925866922 972680951 983893274 605397120 970044863 906408475 744619841 393357391 104486106 737020247 130575137 972890027 172938181 772307252 922041063 992866155 569617452 765361027 400427662 791932110 961730799 912033977 785181301 176132129 851895225 951272065 403397049 982638410 65338057 883321691 749875707 250054196 756448610 353763001 628538068 657781871 389834782 684610542 813616456 370934954 807768279 430258040 747284457 93109899 878086596 810101858 642109329 722144212 506284860 172526916 669358252 293266206 925213761 909598734 9070976 368284502 855665594 366103605 174371839 791761375 986847760 516345877 652375945 902572648 716802003 483004160 730434272 744547494 145886707 550404356 184261361 226191722 939898544 953658842 774037347 152081427 71926616 178568886 290094291 664248686 855795216 673865449 47883808 861555184 782829630 709406705 894818460 271110490 117060413 862108235 771684859 507141436 936858263 45129609 654390875 586103940 40418388 204254122 548295311 814723020 995400093 628376793 814977918 977839787 267915850 556511842 546073184 864779193 375456520 998629632 591374543 110275131 709148610 814512922 931653919 822180481 847098875 803833617 148963459 198174015 136332077 684216666 119622133 896134187 352401266 857301497 481174037 790546242 417836043 680942636 978871262 650112214 677703937 981881623 970655677 960664784 916255864 856190777 16732886 123429141 424411454 717455695 678009794 834040306 870917308 687913237 772966411 946512923 961745798 678637429 445232000 927451608 445964722 886280891 477312795 204333218 108535461 897741810 388393795 880637638 911526468 838247273 786482439 542717447 876939032 774279784 506888885 714924892 311707199 959443365 888420456 683953160 917572898 902168864 883717842 883659180 573917106 781543924 983528116 693232131 419290316 979877622 821823341 750990838 948675279 280338798 20845954 713706164 229859460 841890082 969824140 966348065 914800803 997240936 992479459 753643038 847359355 980099411 802474492 745560678 850546518 865173239 547612088 981929198 197068901 627804314 943602856 467513164 143607150 802736171 62042456 181224592 811136917 587442917 794697408 956190449 825661214 325988357 282135816 437796094 407834454 540058086 965649427 182083644 976525382 62380623 620595588 845604879 419546632 849461775 474557230 845977362 501137809 693990650 765474878 696176594 943297638 824342208 901959671 698855477 796718001 899532338 921457950 833861994 819898266 151187710 322847282 973551482 365650662 791806668 561722560 917022914 762413271 703144305 4218521 851624440 801453043 987315167 14733892 303131731 753972145 999807575 912132380 723008461 783972822 352796378 997670180 74116436 860736208 186919250 937170849 933866389 501526103 801514470 805228299 121968250 828223879 288156557 260028516 130184786 494489939 181190208 920596645 865372890 837884761 223636625 642875963 779941371 510071361 922421112 466328707 751391750 760787484 803820368 438212341 528135225 454217966 765665651 767483542 591662608 870876921 973497229 737020247 692256916 413535101 982555711 954523088 962412899 646628653 164255077 828787797 905932798 472668171 441390418 810334298 942372513 169993696 475020980 418957714 602975111 408967636 836981388 294159952 228668673 834549406 789184147 772824546 206918424 632148039 940217846 830503659 786893885 998579908 752477461 779155927 344381551 495641735 378143786 846709952 270661159 308595994 331990841 316960737 899624697 949734546 369446941 291322408 802377333 912574533 562077305 414711026 122222489 390626136 907911900 102462212 764041585 100831593 822249792 941813384 944308757 528075675 937061597 318734151 375946459 644214029 683015604 981868993 899032576 858138734 174004143 801981945 843294334 160898810 898830530 809378831 978750015 872960263 226628879 482995643 127854304 284511384 615108002 650186285 675158461 909770703 581497693 761974143 689412016 870309976 167259657 174946035 942459107 789169730 775992818 258122874 646954570 655874444 929802140 97995742 899274942 833610908 878669164 452413423 909201972 843814395 261654242 911960388 548413109 709206685 559925894 985201491 808191833 716317066 722738987 360411185 281054741 482063105 796995083 909844963 79930096 333697783 186775040 706311806 767087125 524059022 848551887 776767586 743690907 99462619 189723204 245605182 66895123 226946800 730029880 938161984 832187792 897168504 472587243 263801259 835147422 246253012 930321919 411236964 544395933 979241623 945969457 254477612 466640820 492416462 529390776 225148739 261724594 454046720 767286103 848159980 744940215 708675310 939433992 448373914 280873685 121967678 111531194 695560244 878055101 966997890 23252257 574178383 852054270 806982136 121110765 878824501 970591080 273636882 537045763 927709519 362508020 38441463 2588555 18199798 282958281 89176500 738220536 780255104 786054890 419894851 781464012 126083311 126115277 752272626 825713206 451104057 927090073 13117668 792809765 146376302 949258461 844400179 808740777 628802444 577219621 972020514 697743772 999887335 681190035 931814243 546401855 531495245 863914380 525509839 298886828 316673331 842941972 304928688 232236715 974581697 580035818 529042501 835242763 544782077 767352797 872448980 335512955 875779588 997339678 792176079 777350078 945474247 668108452 804056081 997504341 512404382 860123820 851143098 175476109 579509309 738855270 947472488 909336322 924606652 926750276 355669589 36171691 582141792 46702369 917176931 365883842 685702946 913713453 760693034 238394675 810260871 940422164 905725097 826306852 876964230 964530016 780770534 232118462 71422916 417586041 759729712 870885343 158594475 230420731 273840309 680094721 466313690 326889204 789742165 977292796 738904064 755509234 869906747 783064197 19905309 892626427 361172369 13645740 913335844 921269970 967497572 767042818 892980850 524713924 247837850 527929406 932317105 9400055 484276629 287855925 841208896 94829261 903512214 893697320 361477136 120162580 82739456 774577094 112757369 696812650 776130758 529321131 980384342 824161665 492337791 921531641 856383181 774303534 195167452 928976063 739896430 595056488 742790054 112220404 968998153 997167049 154713103 846417209 657283497 911330920 958203706 618467155 977317157 247784927 847215800 30084294 944448033 744586273 994131053 607220818 440453079 334628377 196792835 197714936 731963554 937346329 869186685 977719628 940028354 788563457 854605076 681537794 343471015 337025873 555774485 655457969 582950620 551911545 586412864 828329760 39312050 988263132 832718154 789264448 306156505 10343969 943192692 87164593 492779613 911438471 827155300 30372802 255182466 765471777 616575728 369721603 934024239 985090372 457407925 917026241 796541913 498745460 745935138 900653883 358248911 298325982 757508044 391052866 806478894 765826649 62412496 893794106 205098794 9037773 981197095 761153915 841642810 426799377 752919615 754109671 764350886 478912835 373441859 397114792 881112854 893982419 176060582 131908488 807890582 813549637 93291251 123926816 987554007 359886506 734929590 513385448 338375041 944601828 770830324 302569151 613918737 569480673 687870564 888563928 295100236 895347566 344867215 737020247 467671222 651076087 183465634 800567436 614332947 995975652 890403071 358418596 879982656 883703468 854363337 101052663 135479269 397803594 890851751 484279180 331185444 440161384 960571364 427172319 386637355 622491152 905541524 775110394 987198601 820642036 762603906 929516506 264406415 957928918 422524941 839575264 116415429 793626711 882143657 844679654 946897761 849542653 517919371 454893640 987105853 846751513 799906129 656225179 324131181 144523701 78513181 611444774 274709632 917281013 367314658 971484848 934520264 287057644 532580463 845053715 975599162 745121451 564299998 876018463 745514152 284406612 50015732 382694007 614607692 994320016 195422268 818328911 236264748 546092126 710212553 349997310 532516793 738249755 921495101 484620242 527139352 670268025 960761569 82891685 862234253 761514628 851629280 639246298 38738233 904602203 153910940 453065392 129916014 861365262 589674440 593482835 287922777 765295456 250009670 974711389 671452895 738394936 54656276 740825896 472078760 142643853 992679367 76513865 150116474 960689080 851588807 80249761 87870713 709515828 379872252 836894803 586460176 231906869 826543832 853860590 989223114 558689655 530398862 834364532 186852322 786864214 870884391 204629046 902317556 767691434 945481253 141689792 131788951 883174248 34715394 785863895 803377107 903385902 722695746 412794103 975131824 443629642 998244528 679937049 93097613 955381066 503696991 788934754 392916896 794284419 161450157 432540665 613923840 758556920 826675580 784281957 284564338 9015293 142150789 918956685 765240870 998406062 155639601 583633270 612932981 846258457 899502239 817135488 809694186 228890553 820465808 896109053 929728902 286916017 860637277 935081269 714683099 953728596 950911213 314217251 144613197 894485194 917483381 971207082 916247815 360656291 334388162 635034488 569912186 90482637 661278849 953262651 890926650 787431566 295738053 956957674 719784012 701616154 262889885 392970729 994821952 946606554 610907633 756266893 884745094 934683137 744130779 815940855 703568606 532686156 826540647 446754165 910635259 594854821 400740184 202535629 767235296 92240683 111553090 103548843 134632047 955587605 191447830 941752277 908114708 311656122 105203061 890108893 964376472 292692543 186566043 323556370 808383000 159600712 863245938 213799528 912988138 323738737 767971784 753183775 149732092 978989917 147491716 89125856 799423854 620354631 15686491 84620722 429442734 978888710 209719505 770027491 859751443 901131072 755762834 928850932 361994927 992647523 836347006 357068206 779046058 596689174 988407842 570204969 759965405 323254181 989407013 502357127 839728633 563268941 47435437 416202894 148102726 843179029 923368344 962663624 936414879 450352144 988455534 643647693 547108797 691243585 330773246 467562509 302748508 856055956 488917786 204764694 873700715 927364237 856628494 586043462 860736428 816535576 55041953 905291375 766463014 800051092 213308771 303680547 474534212 853605739 629439215 410880047 259141440 286034083 991033290 458107784 923347836 545773368 431774168 979462326 601829366 594460404 393624256 841283034 533699750 984890261 338622332 929891310 70472164 964010531 283051509 882034962 83489911 946813997 596146151 62233721 186506644 308201140 802553385 373172372 944522228 425393122 728585272 404992345 244553961 129889510 275903946 999206977 18837801 341547211 593658931 867660913 351474470 370378431 900662605 719152665 757829802 945926832 89395512 846033615 165277368 102232355 954075262 134863908 884543989 743167794 85228063 159266482 548475359 302940732 688616360 880018203 929139213 748689853 972800325 89182748 445010017 992318139 275188986 616655552 753752369 505271857 796420886 966948025 608032081 993123110 675056767 464510927 986582434 863815304 220377153 741716992 809477276 947002984 565389034 486586010 723050146 991741342 824840590 931682990 793045178 924748280 565538056 801437749 436780338 421755879 741458920 18843639 881416585 880694302 717350371 730046934 883342414 423166598 903618863 235034455 770895752 757187875 943456541 933819213 827547941 307192249 148595246 780024270 785866789 158640590 304216521 781216759 904488545 832955538 688850687 899383994 998791779 948764256 866909445 998177286 825647602 472351678 265333457 399618467 569679784 886361136 200951036 909751835 207064299 863716762 171074177 161355862 986253908 901817995 123081866 505159508 236195585 489731592 817240355 986095991 256667360 979392715 719784910 241968869 970185019 728082376 985447393 753840269 894598886 498277658 18670465 745424856 948452606 724373159 462020683 975638048 725253489 879931377 865246917 166852122 979847855 20105613 888710912 660936051 818240128 912958946 701456339 852213474 632135001 466411697 168034699 784343552 461141175 508113635 462710970 383624782 97841441 535578761 925397953 339888603 816623944 508367267 904108707 545806273 180459137 207097039 791563489 794629386 859647302 638607811 874199448 4709728 623201069 904760448 841129458 442894103 7346532 826274396 723051492 582131257 124664874 834892422 836498304 112300124 302075913 812883596 163416999 498983873 112248387 766850652 956499151 27838473 578590720 682565486 598936603 808233433 856933699 998881202 563426823 859961608 857499630 597925326 821119810 951300147 949893166 768012427 500407475 922084616 527730830 956963233 269186941 998608313 742345979 425627552 490938717 567245610 82700296 969940629 167002 415700236 902856052 675354429 844453487 687527776 915900097 918701265 121695634 880084960 969309978 752815068 972263131 62770450 97938994 817034697 681058456 541509428 290212586 879261662 806275597 858544260 694511994 828906266 357177718 820041359 165022519 316517226 866694404 960547728 816644668 852877250 190260032 622690441 747968443 88095091 961744808 852244210 246383855 908230869 900910510 236641172 164342687 947008413 600240712 803256280 793595991 737831579 829100482 449675616 500018787 797229012 982774350 89272092 425788124 831276574 610424380 538223896 535031672 919908388 487145809 484931144 912161784 780276117 407041205 28838697 694705280 927769375 760895367 730499594 279701852 632157342 607627576 977613881 892842078 937859620 992682377 297027434 561757911 549988971 18255119 850906482 73263910 216213133 805480221 382683078 370613406 886970244 956861580 296902403 885133790 83686573 325512919 154649322 961460063 947061243 194346539 986260419 410913228 438685099 332288917 987077065 868604265 526427241 261129362 888771404 944607489 222696656 640075300 802136321 366601899 225984657 813071136 884930563 806061068 939287826 747238303 285697988 893113218 158947574 825248530 138178051 795289467 958621184 67723518 998508897 669635910 782117364 995459642 935138729 888484353 970432269 119661281 857873163 445664462 795012235 886371396 530344167 984265103 819374489 23092628 970930969 882838159 703186017 249505257 861685076 473421586 915493017 843910977 788388053 988563976 860411450 287474794 143381465 729692400 793284854 364766609 922415220 751046763 490313522 143337497 189862191 779859341 780779335 924417804 830421330 988993433 765222450 420883761 84962865 974645901 890052181 677396254 907226814 398293856 57973718 313917636 822197527 947101896 471312346 582450179 459746245 915639660 223428257 423000854 824594308 336572889 962381311 54776740 738962218 34176272 590778124 424721680 599658784 790699213 93214716 961863807 728620720 765152381 161030547 377329645 947235106 453272613 837421940 850492433 993923381 227032436 35263831 8185334 969626319 131466895 171434237 789719995 280175424 994657702 418664559 350243954 880406587 997284823 439364655 303183321 916112141 938793797 737020247 840083697 690492089 777909429 85648616 59514166 860463554 898413125 28512608 843857623 202770651 962786533 627325887 387569295 997815147 304493602 766872813 686775687 451164293 222022066 840016357 932019805 826666992 118520469 865554460 530864190 438006611 862866575 464867680 632701792 271478014 792341768 866254651 551205031 260986842 616185161 647211126 808917047 889728156 368416150 27848625 841504624 448876913 912666028 868971665 919325785 115713331 135824689 110373421 784294400 100870051 304114515 941094533 938016435 632462117 463410071 319551893 782858883 854786790 908134071 495770737 995606109 1248645 124235483 618625660 785337257 977878793 967913180 847650625 776835068 187394805 539130340 356530690 994439124 527474972 885185593 796976682 393196476 294783990 324955503 757612838 773167297 753184520 90934343 665385863 803224662 202608183 909890722 258482833 365036529 559483670 835772694 101028316 770958050 556477966 993618227 928392074 782164728 979674462 522978263 353493162 933309156 954893983 990610538 805840202 744934429 16124395 807635539 911067591 837255993 903730720 86031129 211126057 163677597 785930385 531570239 495546476 877880372 366354582 584252770 978525009 831650851 121055582 292956122 818549066 6578112 314620570 761687647 743773091 67586306 206650697 805824192 953639935 299879011 292426210 93457080 813566069 446541395 841256506 992103038 801801301 935695284 850484479 906821442 975858703 391426203 829833808 777555778 72557901 332666467 542598932 551538752 848038900 910702462 14463875 838991178 984543622 910057086 169683261 744257748 858103665 433440283 726178905 186855601 715697690 249511970 223834679 637861292 394976844 591875478 929843639 205285865 986643692 13367918 967511588 355379084 599255733 281326271 964987246 485691840 212261851 945472936 6026474 765810767 828648969 910763968 831710690 205226652 42670287 221861176 126418927 585519082 834538409 601115230 37535677 757296969 374963890 286790180 128883520 992136648 891387630 385482057 740902719 780955320 99648043 35743772 53571266 739045619 924647051 998471668 739185586 817451647 562397793 135998865 62618492 744449022 761089122 751244828 981898642 921751614 485060788 390806828 334667420 354504794 850198797 914730441 553023615 91815621 928725624 976282778 982044949 784072188 30464724 844091794 507026540 532547567 182786432 686699050 900566452 593391388 505945008 99560342 818361549 513244652 993161178 462386852 967578126 42585725 780925550 814742265 470565291 299361435 866971542 864153009 232355392 664983380 409833964 352970634 777895927 939976995 771119481 789433681 763341032 820444868 865649509 161997903 950348820 554950058 914468210 797849924 308783281 671370982 438954685 168408545 827791435 839958251 833391512 453806507 647323012 813208795 256589715 855586685 737575376 5902655 809804679 818330542 471800042 904447839 31522369 976030024 731196481 882750777 221983280 844511766 424936869 361901766 887666229 29026136 345783101 143411766 462571565 974156682 373930763 837879842 761056802 895934170 945570394 258051643 989841230 648052287 614956776 742519780 980510087 992420219 303281881 488271708 439700257 164685847 887605683 830608786 802705975 73817191 712724557 776161208 304131971 756506659 828124397 605522132 717390111 785157596 870094494 60834850 938229754 683644945 266130209 981946617 545497454 727519373 910659713 680723575 183095191 422281365 202703997 426695271 812986500 464125763 352167406 764983109 778863359 991521086 749698350 968756140 914691887 986135508 958306425 813884286 826404028 643004193 866217536 939299074 362703716 483255569 14622981 847248568 792118098 755865417 17241251 140990297 805425710 288123712 305134000 925331769 929418134 348671676 526587162 115423311 687761602 756225438 938028446 810464660 824162231 598021924 674833264 348517690 400904507 629472845 843081096 961926598 106646021 898650498 988034896 624512005 523349635 623764011 76168233 527361840 621631358 911591602 437186711 942965775 6893930 863124240 902658032 801641511 961699696 884957235 789197161 768603945 687328357 890109099 684516814 146537628 851675714 184818655 725809554 242300947 704522221 293066656 578693983 92165347 224518163 744085010 549020668 15663804 675737120 69229537 714617919 890836632 53891430 646240132 828175073 117570790 880267043 931990683 439577271 329095037 952510043 785321013 841736938 403653338 990948353 960332411 805212748 591237041 928245372 368212545 178119642 594356642 800896203 85706442 182564075 838581126 771712012 983384984 991586003 46090258 937046082 850557782 284593323 739294122 876453741 978582777 687721110 901162643 177630660 130778220 682452709 126282946 821839983 765360266 906975579 559555008 753462169 220195073 346017547 662204136 798429753 198346742 35936434 267141664 81580093 26724055 776378351 283717597 57327183 467395370 759169284 854627282 846443586 832111416 318853561 907657260 737020247 864633098 655501816 911763473 271128075 778100490 780402877 372395063 359628206 902878892 749806166 870218726 897044114 420980632 934061603 994151691 946027865 800764161 312495623 853346938 105288457 886447747 783202887 879930078 460009527 118438570 351851680 773502775 979092691 191337626 330712259 907229437 933533021 400967449 305510334 947951675 200294374 872510252 524571577 468236296 767578140 125618785 606996801 895116914 200489643 38860951 461881362 949146258 504873531 979643647 930224571 268915767 408679739 935079576 309842623 25745815 317890217 808062847 815211972 697475971 853769454 579268612 754849586 997602744 360485340 766517322 982918753 705714496 933632338 21364903 790206934 366877064 582228545 858352677 166467049 916579885 897674876 780040169 861022689 939780221 934376885 945650821 868763592 837833818 323715640 32349984 218748509 866404251 882164332 609135663 863928596 611381224 991318303 771762497 927130090 966748704 752425138 769500340 943728624 923128483 754595052 859925191 826677923 547632056 221177546 51041886 771806060 541587511 385849857 833867379 712031755 27479123 459031789 829410709 39902275 21027506 921665229 974249954 351803854 75146886 907481833 846330608 38498593 60474379 332297759 458465117 838960979 977752661 954177092 158815820 509186104 929803249 220768850 975367485 837028656 902796833 568092691 206174037 745421726 472592013 481667078 620874353 356877255 283660074 774423227 906828538 761121595 223500660 743914544 247320693 205812125 857779629 833146945 735596603 409900391 151693034 85632330 289886342 4513678 818164235 149085321 857835143 940640107 922261893 768473482 830337378 363511732 775632228 48424967 814749899 100117103 360547917 268759080 840806313 852146494 868544493 195432078 742106344 955677155 934979532 928593823 804842250 940953856 957084401 505269981 42179185 895820011 739379248 467776483 776070355 873769593 766910680 998250306 312258927 491643293 789420106 923094272 83940985 778412543 882650703 832505038 512810483 858397600 852574904 892231365 171204421 323949800 370048539 325051742 126694735 244175390 325330368 933574987 941085399 880742697 855855852 198201015 785347935 815189950 923338112 49850443 743205280 835006653 739056291 765197229 831260795 115120404 768639401 249509868 771491927 672530720 994752583 135680582 702056567 577167446 234277710 262641756 808805657 391433503 856722072 715838535 859929002 163309612 966953177 917286591 972727276 964072621 540271048 834423237 764928565 832190856 928204695 896301109 165474241 527011734 743029392 724867930 921159679 504359889 30268420 457377347 775088302 948646711 106175143 68773331 439715371 861890414 783295353 86322672 36623413 135888693 937667652 575707247 718538520 314885729 547448879 448545576 187293848 830510698 140713493 843973296 755871329 909902025 351029597 937191724 893337423 842487110 804776346 687823076 172180432 325055855 844108072 311936056 120501243 971204825 722383845 807163287 976338721 762697359 281109923 847431164 796214618 799535515 51197846 838001067 44825082 934219240 893193858 671581683 997463779 976319664 959086525 63010775 718958186 938499013 395780895 985725384 489414076 878655081 412485541 868552661 12147973 559365986 974107183 544190929 668205765 789658339 644114295 168668035 768734977 606835324 700955443 318345501 992913210 151356343 847533923 912442402 651700434 795427016 529323431 839090337 78898744 975743949 403249020 880896572 868839789 259827781 881768520 858374326 189169971 807348699 279711019 855398410 595837689 852941581 765472602 842761921 644205659 40773217 25136631 922437350 996401002 710413113 454687013 844984245 709538685 707577334 812164472 901338842 912215095 960972672 630708865 885774431 556499530 829686910 939825615 374771670 988520015 883038546 609029589 578544959 992224879 755322335 742657441 97552280 841069186 191714989 882729415 760721365 818053594 136216599 255630 167335158 779131390 923280624 922291957 215825359 509835929 452477448 385205636 186887486 461805825 847291452 98855883 861688611 25202340 685490298 217189880 313574531 109502118 328024987 832684951 702169266 462292797 954870415 499760070 197095722 979613722 295264222 310055430 924910559 181801606 94997877 852968407 929776657 500776079 872333936 865428336 825766570 945081371 372188980 655033325 765855392 517535494 321819884 383010941 2166085 720754787 59219773 466305640 941326672 944889956 897202321 160698717 745044097 786518537 936279917 205957810 860834678 748235703 118977632 935988517 885224974 757642891 277608674 478773139 309414459 882477907 902437061 790921244 160693225 706901660 409079435 250677996 564279627 737975674 780683012 116620427 575530294 970028945 508317446 639031205 854469786 99265744 993757758 3550063 730692547 875545953 743621975 564660996 755916220 397641237 920761951 297176882 813732222 121480881 628556597 794261284 304171160 737688982 157222156 765949142 934195711 931384716 878466366 851235174 188658996 634615755 28725539 116247419 158157096 645068346 148751814 695337542 750300394 929733644 929094780 835818774 138056482 700409531 964404676 214493962 816632572 291401060 801482047 945458871 788476756 753066208 873270883 515463584 742617369 582398451 14341040 761012514 851560801 828039681 710186524 700485554 146783683 486138157 878890141 332613039 905454308 867068265 987723576 449645372 278561811 752928474 416872308 349752500 497589820 36119925 825431357 225200268 994542179 767760243 556884083 840133849 960003940 788568768 795141858 507338008 944067172 706438865 995731306 542673237 205145898 840318703 738180706 392978331 223571334 622462933 763660554 950210243 649326546 300287525 342741826 894589162 238739985 834612103 832167953 763481967 207938690 692167389 400146795 758063200 221729054 995221925 736499146 441351841 957722963 415981091 833451752 749755664 120264616 980442323 129710215 583938772 746145508 87308615 307490235 94605580 760484 910583201 954626730 260391806 113002785 926770691 975906018 807732452 946319091 519004752 417959090 10359604 864735150 756023113 97232121 741628753 877828541 978218290 928945619 885478037 729943084 863194767 986089541 788669192 784854008 159853381 953977122 916342914 879558723 746892100 334947791 969423793 583212326 502167292 762495398 172865167 840382242 225676469 871165575 803031389 857728175 428125791 911146248 568696788 368188613 382272877 89460487 778100510 694574226 859869727 887190127 905487782 831543097 663643643 478997367 961311701 441100862 810238776 396613458 806365647 344605626 568295407 481014814 912192714 926644734 857153010 816791607 794480899 614748968 589821509 913750338 821487488 796470618 340126706 955054556 192804779 174923170 750935187 872119254 599805919 562242442 862341928 884207375 608786939 170374963 828875418 677580210 981683283 906567455 909207008 197995820 846463893 732412634 328162571 961151672 833991717 655972187 976785412 573323112 790143450 860445396 257798336 878343866 145222976 802463179 535341465 322847058 304010939 435501769 311424664 2394675 916956058 787687221 188773898 131422141 94423192 352816247 603346741 993620259 721706919 987580866 355906023 757630807 442698163 488660448 504347900 72656887 845289269 788754755 778464012 960237304 103995953 109110317 236915764 15521436 252769891 639940302 158963761 819931226 592659375 432089406 927226246 762596756 531630292 382924867 51624941 72062745 28922388 957750093 925842250 37438317 645863460 882190896 848092074 522984265 929988451 192095801 810829524 298297942 426972383 149054971 740230270 825473137 904747273 851531903 789200016 561718922 466906373 959615833 85198216 892060143 964386761 976030384 963840253 302526424 929031327 196109022 960550136 37664476 404124929 136664625 79433938 285724407 534376557 188232105 451732699 739683789 762960225 48259843 780214355 809901641 868524724 591286834 529562331 776585830 705133911 599558058 741653819 687659020 87598481 872038533 135057217 572787074 827073385 855313740 432219233 70524514 909800329 432481771 900485722 923261518 202925186 971205415 350048689 957844507 929690890 506392260 786365148 650750692 237410429 783876766 267154205 263645100 523890070 935183845 600623797 350190757 751383687 447109637 111429145 742983616 515824945 5992376 122553801 866830235 626142212 258068627 212614024 657932302 966249106 791133757 876865094 452975790 501934608 119213012 977087067 857665042 79394898 750216267 260092461 500381283 438460478 15074267 868958134 782203671 959573359 737473167 973228251 838928748 359683050 945548026 790690075 161142306 789030755 999330028 407362602 190907169 95843027 973065754 670902856 936602306 423779939 660182379 405436546 943867806 866456747 215091831 455197953 497042894 608720921 859251949 185527266 800065140 173894992 766738341 857783595 495488607 910863735 599559989 520436707 570397567 134431987 818017725 848924448 794435235 779934865 913523853 896810103 674460745 943995651 154623431 771453163 24710525 916846126 504284323 236687874 884875362 972362734 240614509 94997823 753419642 820782330 73705973 762985005 982094907 910387087 742425722 890076513 753152680 982860696 898698684 791766445 497358129 993825390 403561935 9168021 572412321 668733271 860363102 283345112 805423064 409704872 976797989 958123393 347676853 925446499 352597427 848754961 41446355 94762190 212552509 44175900 765119471 912195399 754572249 779393322 749296721 987071999 431474961 349161918 698154392 921153665 451245479 14089411 698173123 976931623 578028225 745414065 158671898 218840423 292035933 770420970 376792451 88702031 629903244 730076403 772168006 773225116 973460282 424817641 756152077 149359059 19142768 954471940 899576602 707364812 813576580 543223345 592018129 86400523 520405918 856310569 812524346 971802214 801521080 940867764 181731698 204947225 21400397 590577193 700120861 872493427 957005745 872183946 764327361 816417301 787888320 441001231 375841686 127143254 765837747 805038805 50239441 461612678 981225519 698036270 869385530 908785988 946223346 972797538 690701681 463004217 603472373 580352498 850132667 477721636 101353708 803622593 889725631 231681488 871109816 310706215 778882216 429196287 331814124 954259572 825921788 734868972 865033588 893486499 535879296 405401394 837763607 999537116 788811399 899184911 788215564 418429771 912168645 374282322 989460693 825734761 773526950 935448467 818075302 548827682 763512825 637666410 197415437 882131212 898295417 772761155 967164485 544089938 377337743 984501977 843962192 293915219 978004816 200898997 723275764 798620542 542668901 951675903 792462977 790746536 951534130 760809431 616512191 254510866 283846022 707783536 910789151 828253144 996244545 65111318 136116871 956321447 407034104 635062858 370248665 635534772 339142227 957959 638683427 337066219 872761526 956883208 805872557 919165531 456134095 556920154 788830544 280019530 9560827 972393342 941462314 839396064 411705898 868895743 935578858 623209712 872601021 815414800 133047117 546832237 139592772 559505152 169027580 795342162 276099530 509496077 117139263 998248791 909170530 205308177 117455626 637585249 910045860 746784747 101079852 818017196 6192213 781016566 794200158 943254175 766880152 246188274 895970757 657417722 72601185 335046141 86166181 888086921 868056033 755763117 642403958 885342986 788879347 988142944 812138081 927405064 323117840 216803994 951144712 595473339 713801229 772888747 692902499 769929322 272444857 511434523 968312256 759701320 906867495 864903402 430692035 754729192 827319365 575334320 762144905 558039392 949775172 763234811 807716201 834822209 228959448 201789523 983121861 727398295 511839374 45261509 846536301 157416282 146960004 991076773 896842165 896963779 98926356 107014673 913807122 189247740 985126897 797036924 837653638 884487460 833579591 106926046 835025140 994753564 17063095 872581060 501473743 891768737 399431178 798574636 136194985 670401198 746759107 302756293 388784705 444786073 791365352 334357477 801537655 32765030 760643486 327655426 879711867 761745833 856650900 744444146 952163277 64566856 663928416 369410360 207018904 117885707 880832340 872054525 964694770 996656232 689970300 574601864 472323435 774275894 584770041 960273888 867648825 840330180 427718744 579581707 939595361 63117037 640536196 15318538 756477510 850523647 734538940 666425063 560821805 654494191 815994182 943401975 759601087 907264275 910120721 772579725 885921960 957115473 35017572 972504195 798173034 988418795 794705757 553897652 966718690 868786348 936581329 781174413 232106747 769110077 861388330 97454372 894560876 615784504 483257801 293675388 995347396 949017910 934521233 14313002 143895932 745643995 549171817 317304293 447702486 754208039 881873459 7394240 456030361 86375766 984111768 127459652 200590701 992710200 107122177 835348924 180963081 157680366 885337845 135819190 821983773 838552118 53472743 737394407 451200022 951661661 391432800 627792646 599963940 305499961 793642298 531883460 406248595 149641168 164623769 940437619 810314660 383391965 899422817 892772836 938357130 746475167 742748779 888335872 985723701 158251607 989491037 772050944 919751726 321486287 307754775 159482393 426449490 897623694 828870300 659896317 887992551 895050215 462283842 912174057 880081192 581630470 409230568 716978870 898058321 959108045 835478933 455596600 841233970 309775054 865958536 802198192 935152035 711055214 587871219 679688291 936874046 694738172 18173881 914582715 205562454 120070696 755878557 458270553 828009216 734986863 961680437 818998080 969707979 593887551 891626950 410316414 225882271 373174726 203169068 792557447 717092314 421782767 755495694 753241033 938268701 751852482 809251828 615201466 153183890 879065702 325311999 900658534 649089613 42473807 33714206 896120467 825342303 866060344 759332074 851106356 206490096 767321843 899477941 424529488 938885376 826995428 592166552 804401567 334879444 859040487 679994304 310490711 457615426 587490936 460920673 895659866 87057662 703911857 77520843 329632613 870729465 479612393 808920472 482225900 818670722 961193307 649892357 842703125 737020247 880669034 198595757 513055124 19052478 239375795 815044247 105044496 782594770 759157474 136247688 747572202 841129842 899799700 800987390 219149156 886527264 217220316 329177382 710456468 969869533 33406252 571105926 249008502 632333887 80792274 715073989 908077016 235244155 586845340 364104775 816169623 45007089 271008754 557940673 957348359 378143638 983575841 845096909 785246618 120122143 256679502 318532267 720183503 88178631 295783959 347452327 661836226 283481593 953303599 796828003 814449998 242892401 244572719 706602342 794219946 474525463 528485054 673945308 871720100 121523286 857261547 440562959 743187453 410490727 599781803 886205835 484829218 197989335 563430233 796580356 473374756 933332911 839372150 761473364 977178777 695538405 549185662 290219593 570106826 806575110 405106763 750940328 958212916 933060220 102484331 256744375 988969316 864143505 891799576 758612159 686395162 587856611 81555695 720416847 617582113 969329373 977196555 730897353 604850961 301554202 691268999 436942813 982412583 742532151 28380499 450872171 867689143 133160979 701997001 978742836 760800558 836407457 445270793 320127298 813987744 788877853 707332258 807978679 174653342 799065189 233877927 903287999 553463475 664522449 669608648 166139228 42295137 237189917 149471124 280988600 867235589 339538692 215365615 26857893 923147690 905131412 269995886 575070457 131360777 203563933 853954515 469528108 677514355 945030728 952410019 907824091 923895033 549861684 915834714 551214180 820071495 907912725 979697535 876103072 494922323 162175565 570624907 748013150 820330649 82233296 404718261 330334875 740173817 717829113 573342025 955601321 428814170 220705025 41896326 237121591 961678777 119610065 791367830 200801907 913150281 303988253 503019734 103263607 68062543 324739980 981013957 753468499 205998835 486806130 634737840 471008954 33086182 2088113 86318303 133434861 990628741 790147455 760294602 876311122 982399910 800628897 91589233 287446749 257958694 290787601 996501481 532642966 876188325 345738599 782342500 709710523 253672759 315452116 197970055 883876911 66922223 851964913 877861484 49029849 961328480 841800708 946542385 838030520 965369119 784350145 808417410 894241052 894761344 700083573 732612034 954591330 915329961 121865290 750097917 563116370 893057676 759872037 889283862 791266703 810297655 911685761 767505603 719118495 799273962 118404278 777319404 784434672 107799930 921405232 783449571 874893014 766675365 185672160 346013954 595755869 995803856 65394781 509250625 455279800 919944384 39941570 948693946 784626680 295108213 408670275 944691884 834242065 506821811 757128881 800305984 967326716 632422771 729825286 551896225 388812596 532471994 62444021 839888013 922197223 837915781 285512255 826910762 845423937 986831610 126246804 668950776 987017531 361409800 510988034 495782273 965386162 289431422 399713259 870953208 420131920 45596199 750325039 792111031 394676222 773757927 81807985 145485234 869941913 788667610 970275410 972989815 260797764 981656904 558791800 615017474 170809294 898677310 191833163 373259798 235827984 827149442 444780879 767334982 969392274 333683932 937763806 448419050 135089844 54164138 874085629 930853486 916788373 761304870 813212245 171643566 606653803 919827108 849050608 817571353 898859437 753579101 402706169 800193681 658709270 683149879 948545309 83669737 169180497 954110984 998164733 936543874 755478332 806612704 112658595 247495095 962794791 787963200 197654080 767219169 933648625 825899194 837774072 849738530 103323680 366035295 127955983 983346079 689443194 979510335 3844357 887051183 509750312 908070299 125544166 694243344 490271590 792245605 335809094 933081847 739425073 38779509 689367859 280066202 625324527 239378726 963179886 964876176 565951034 761483753 346985262 762093166 995237751 239561742 971317011 842109946 863370613 737652577 38396720 921499555 493261062 110986704 831199963 368128942 998388458 324675465 806889757 447172285 962387827 198794329 792398352 800824992 831222007 389190293 677515246 879059634 802408696 973262678 917431457 487736762 89689906 66391760 89710147 907062042 269639376 137430455 156161019 930874646 916341192 859246604 715312459 547623076 737020247 914543214 975812118 996695520 30273444 317260421 793267802 996944566 953564078 872970123 544731155 750989257 980682743 112014535 631625589 761183659 619523607 854075261 762540400 53750553 922998073 618885488 402321125 837280365 341927206 646926716 740977861 392124121 722897014 77519764 881867452 861781757 782213651 876398510 925524846 619115507 641662399 792502508 917429109 147143283 450634152 27098586 774526571 919174057 65758041 554698016 65091755 248469080 277335532 978603409 830897503 165173929 797665116 140798380 155058392 354453693 890979967 320677792 971966669 759420554 885872843 877405536 17109135 158221570 362172451 35459516 159694225 59259733 281443787 594410286 150314482 866015865 946214134 889862316 920445761 340323206 340944739 719598670 631510053 291872612 545988763 292435199 842998620 848788714 859175505 817843667 220810622 583654659 855202726 800005816 550189858 890611726 788374700 786402767 424543730 576006909 764879958 748165094 893805840 55361415 172119254 998813308 737020247 378711262 695065411 214381664 859579823 751662434 886593200 985675572 868447361 396872721 783897311 757514612 798870312 1357385 956210840 653204319 60342519 126427131 942866080 830533745 457908112 669339176 355928557 795622883 874527334 779636282 946477550 272986229 908621476 430330396 518883750 911913892 998825159 678535452 822429642 871211935 187816586 806920041 496362235 249326834 151712347 901243150 97707211 982868164 848196994 183883286 493480156 82545958 409834501 683916447 897590098 173354005 310270218 766390817 851117177 523260942 979205434 989579755 597086245 911080520 913745465 783842913 395063504 719828880 922697823 133462583 106466991 994270909 923886121 890666932 767316129 897075362 205084859 922025633 833333246 864221972 691004036 605815087 262264920 192671155 727532000 70344559 11083969 971669066 384975575 629710160 502241136 845477236 805865096 762789450 760187203 426488191 170434099 841461796 580098472 808094495 218878724 56504932 665050769 807461635 657101562 331084309 608836474 828201345 775659153 347026541 726536527 747326233 197751246 798801767 944192644 132651265 19201384 623810743 951272948 316458275 921462784 888422184 986139380 996609382 704472452 779678523 928699724 958703073 761327984 483326394 205554789 487827788 339505310 355406491 587964372 207016860 395342652 938675927 692077159 177289956 778543902 354603645 460287722 756493068 762731631 890202269 950622455 132069472 838614226 653080259 453905016 751693730 539587578 683581620 777335742 505365498 979207590 252040892 570575965 329564589 147632081 799745231 969727937 759715677 22802983 958034607 771231082 985303830 366025142 876855808 292340129 255089325 132889932 943837963 780084388 577294968 845860381 816464164 901985515 44869567 871091206 137649486 808878267 350129031 765282125 935032841 329292570 10479959 254459219 768036416 946847877 82592398 655324840 818556025 997363213 774343550 968224021 196690615 613539375 327935969 702212855 878537216 819274281 80706593 794592470 773228535 766502673 272263523 390128771 44641562 343535449 520905420 808613680 755110321 887071088 901020691 643441250 799668549 21526085 84565927 827345970 403685033 114370357 388007778 125506333 881662174 293707905 815804573 447218036 433353235 528175000 453663420 343753832 5656464 405650975 764269954 901752388 879313085 133192503 780631556 466629656 448013077 964711753 839374208 763069693 264131705 395653964 602222838 308044738 311946104 237713704 389526803 34444093 784267036 760349325 999216437 934263384 423531880 48666654 967281497 960028336 794308498 309182265 311353535 359816960 231918536 816931108 666383239 870642659 919605192 862474419 779867889 508240104 512312313 452492874 422862409 837949267 779594289 822901515 780401903 991017678 752951504 513020361 809060255 802163735 861699821 789343001 487282817 818079527 600940703 324640470 828269870 764366604 171455566 251980819 897305274 133944282 421112290 993247481 532812889 516850634 570927185 874424388 159637040 593144623 194446494 727054379 557073147 902720333 855445892 943434593 943061385 969324858 992964377 404855468 389547818 32870504 150666285 496303071 943376251 746117619 978942817 773454413 702518627 190753389 754406548 950502522 315781995 645808975 976398217 801987526 235063498 46932753 300646676 205855705 230929163 903131173 778858746 259162226 701420247 125823198 877599137 918704215 800896873 514221721 910548639 849383799 770301724 303630459 780596219 812017520 60843766 704966012 727799740 959710005 436016728 108798300 49808176 32268455 987606420 909819602 667997531 980758028 819470195 281050206 328893301 667172153 335883815 76512204 820646855 700742424 939198457 974610815 71026056 442530369 376839488 187595043 834705728 375448300 779980123 775652946 665758745 912132148 45991038 474648485 106719848 830442212 968936902 210448430 524903675 978549348 142463349 486790966 126211456 838610665 512998757 947019607 926530066 945695743 811446218 833991437 957839366 314545757 945984983 532591179 73325876 890773765 783469806 912246385 537278513 749204490 767530818 337447588 973018527 102936474 820876336 814167813 959475465 868436784 966978917 587081315 111601520 870699632 681514966 908942630 918248040 749939733 83414611 859464998 29866593 858265685 773079379 985386377 99078403 573531913 165900063 475029334 99588488 529483571 308073621 829637248 788394193 759024093 315470267 742809956 73458261 723815715 580813722 397337448 745304593 267379525 25188425 890224704 836935590 868474284 549779793 159012485 942899985 401793750 842474089 833597665 981684453 974755366 643197297 366764472 374928064 890541521 768640564 936456872 658976931 764175042 912474110 869433974 901100937 816909017 391115011 763359270 919773752 277818169 760568817 945008434 981202514 488248219 801394095 799607030 871523828 868968745 817189962 983105474 817306999 820020955 907866466 941819382 907775399 839464870 547087104 768147790 958417617 841214847 92748683 869264431 973496165 948718324 65955581 306104796 987403102 478923284 176375792 736349421 458389387 934726219 779620634 53015046 947193498 336469551 697882624 766186246 787764706 961715138 832732799 999468159 759199678 27060206 899330875 203918335 260967231 854792441 349675511 806987091 730757194 945051438 429637715 936785036 270699491 540150146 762961143 101361151 978615338 850331178 857255590 945036439 197751943 873130933 734402007 898012671 779267023 285760991 305609546 802602028 770210906 181623836 217796483 288147358 935361551 185108356 943926888 950608103 731019024 360915762 910753844 995095831 297692009 457759383 111087215 888285346 896614381 681601240 8061490 617060947 991391779 754979262 737020247 261852065 947554081 977295607 948822441 816330202 806821710 804848196 929974798 959228073 77679751 941998563 203554598 771339595 892331320 858977471 865688720 925552480 100530555 305167393 867821813 530762489 89018976 771706581 932300002 969065362 887719568 980567483 295865951 186169981 249964905 943915017 559793411 736284249 766677248 806729567 870737221 453129126 787706175 557039125 737020247 387686409 592765438 32945766 144866040 155481598 499085127 82762787 163471616 456712538 659464502 18634179 173031723 899991732 445555239 863507131 837877576 854304786 446372177 871253133 338048807 245259212 843270930 100005090 959956251 737020247 994416204 80339413 13715467 164046873 164486599 763454395 810787902 844133283 845664500 950322087 961921194 636328109 835968677 341961531 445328867 390874648 766238580 358553100 289710671 915490478 989326250 259201933 846921553 925332151 519295573 981224970 787377082 894322854 998164414 729605294 941666494 788675761 919013609 129901626 111511022 859728239 919454485 934158268 253121520 988786407 157981926 783340545 855006840 784135757 204488930 931252196 952152377 689483929 56749905 429142854 142889078 77252245 969462974 538860986 494971615 824738145 812103003 601944369 131141471 962482658 938821038 884354238 795125791 168556273 713275580 797831759 904998227 854605388 925297102 960056124 491659929 305775498 171277098 954521697 457300601 987154006 889992921 190804576 952166257 34215295 932141196 958291799 866924950 600617604 963658370 48043348 309900625 816715817 803124876 795507366 841803428 468042724 603741025 132109510 937858481 447564544 151650033 892674993 730762241 683115960 847972771 792545956 975531171 130508746 518280476 167911808 128986944 619098985 953399923 867561110 880385918 268786246 973539922 765709525 215914334 71211464 107920970 358010707 982562222 78402199 795280990 412693573 808218937 901877452 765080304 125734258 763871267 614277053 748360154 316492198 949258442 909468650 999293330 827291079 873989559 988767725 15336235 377579481 830208242 787949653 958799824 885243756 745701692 141866198 297530480 732562873 215714782 970526153 671500897 923139186 180323426 970927521 955098456 986258587 241811600 512281436 751356630 803593846 935617626 951075130 872431536 677622911 459283423 15467297 10648068 948763846 56431915 744015849 482521530 229385880 743847426 840394939 182220685 373696198 767226160 977495482 609351361 376659085 234865465 858687597 570897536 915853235 771593138 272805734 923872790 133648229 120069954 263253033 627962349 562661614 392703645 410884399 915694256 310812995 209144042 19464885 517773731 36049135 899062315 785909631 399539972 985643140 960070986 740689806 351087462 670218885 833317332 986846586 983871489 97424087 516986185 905492556 998757634 150933845 637418099 585378877 982860279 744821067 884835397 860356171 765031509 761253507 855610127 363331509 685386719 816076640 365145639 830724629 211598677 976266016 154124693 796397245 429561153 80972965 751057725 132970321 23032559 958349146 986368573 70861819 896328582 658477674 942879797 850335970 973042680 627098310 271980529 802562457 95469896 785262137 750621661 693446817 191324444 900079855 816276590 942080719 462165919 966838719 518610025 712191885 927710346 947931928 521288877 776226813 829379933 765726050 518397449 823975598 795028797 365310455 869449077 911671847 170684830 346437208 78392493 848057243 382741521 816784894 848219840 749738075 907870184 423460334 596918023 846262200 773940025 825695441 486437684 896782726 563127608 986835296 872865790 784326887 417671070 908735452 901284722 885302077 22507870 41758022 131523299 745512888 153652746 937239073 926142810 660440042 360744778 275093124 393984996 714929176 688920506 989832687 684881286 65549653 873430895 989458765 639023223 571158008 888176521 751272545 611736074 48521546 956853355 983866492 279381107 809031908 938344273 298834827 435223518 670913964 741538000 778001253 178378289 826648075 802434889 134877127 315320571 216440662 917458648 228403895 695219164 642321503 703578520 574171327 890851451 597284585 142274541 339312936 671825757 620654268 627362046 632765386 197875687 949334805 886196577 728390056 403484513 114032578 683906590 433845849 584477610 334001309 975257544 947444225 994118378 708598979 462111315 881653081 954290075 884787018 373933062 185490278 106389201 793998213 798501855 814830310 917453868 551363470 169571894 282400146 468816181 292347079 976960538 369602663 981780619 786366288 762523996 171858194 242828648 831020730 369165904 953736459 789116744 855747141 990252718 990571154 575039582 961772006 98503958 566392533 44442154 809179188 806738078 840029289 24209503 940164281 822500962 98589014 483386062 926430562 665082427 98515230 901168336 753465962 678744894 726372236 888584179 742023281 113228826 873273173 919901193 439637413 819149354 866467328 753311309 778682140 27594862 876271103 532952143 14902925 935652129 173212862 267098626 602150742 640303050 814886197 324517214 940819449 714692303 891081969 966176089 249422386 983871971 643967529 802275950 5180321 830383663 615040053 3005597 444957213 459280381 907387994 922205357 450081811 655228598 836601132 813760509 289042159 120038028 379827811 964062824 853832539 812971815 793047554 34912552 116825490 684699695 586855427 976189813 397746622 940928352 316390220 813932268 807319301 802861060 837783399 314739942 126982881 934579304 858668842 830982567 924712595 836783233 768502886 120920368 350673328 802914963 738197719 146079745 628273730 997262691 900310544 422105525 641970775 981784175 239719387 876347489 775226543 830427836 305897552 754884902 771560332 905070290 139600410 892468927 992140553 349989879 100704428 716891179 574263668 205114849 659893854 491512363 963052372 652547354 738223993 780786618 601047579 845998340 877789470 819407808 788647888 459968626 797700031 752576781 847321407 991483372 880480359 940616992 61842522 793034092 893940817 394769044 349777591 670585969 821617932 312122610 111174700 996370675 93780789 211986811 826558295 511844798 796623420 374510472 737911342 132767396 923835299 854249906 785023126 938107577 989508326 523615514 971252832 972620904 255855523 952417056 768346056 776671127 896319672 864906879 414544648 134925876 921052655 276771408 871459142 924241352 505501535 138051448 761601215 910364019 267687481 65576845 890785273 303357786 993607433 537682836 425091880 35917955 144964247 777205013 901199396 924592420 928287113 704935351 836388236 827619125 338477577 885715602 535576224 870709311 833653775 913482263 759272778 44176657 955960311 525867865 994923268 820285473 543790803 642005248 234667036 840039707 986360630 627169150 608358040 747735558 542404095 904781167 923731012 304746648 274963234 947801792 804662962 832292642 463474622 466935329 843035165 841389322 425581363 182698373 300774571 974361683 684352133 902395326 833964300 803913815 922242755 839257051 59159128 461982066 943480872 955723446 966030371 923449017 947928301 101761121 869090584 504448876 769517993 412191700 982768769 919774896 501455832 763978058 287107758 460669826 719019295 849848477 794004462 614172884 756079573 264061485 178960600 824405804 972701691 767306673 808205152 965488572 247245261 778876456 849566284 770701445 995115424 860405360 158539682 779443583 620102475 117326791 898628934 895503730 775904040 901920687 758775779 841070417 867141239 951680920 157249344 912323245 494216615 822819981 695917041 809993861 750804781 928216649 757044990 234177346 903845300 768600270 388489097 818284626 637884847 842103436 919222184 958551338 901099130 419465199 257392390 639110824 512454840 775265129 318940894 290213777 884150096 895635092 950660813 939919249 416600188 804802785 150498318 902921097 411628203 821892452 481580965 598774905 875858437 869201049 636390201 155981094 78526435 884694158 957752919 860483859 718748291 759223657 337579814 957096738 993010006 931245610 939529124 721872021 840013734 570546964 890497631 383269032 328782458 927510066 846465338 21863382 834762993 700371302 865138844 270852346 972816753 627106692 856987563 777574750 931863179 172119111 704028208 779625702 743471284 35809776 952339134 773992104 360728297 860132838 475189972 971949917 742609544 999635066 21527000 819165365 858679107 143482460 906081585 800218323 966775533 997057544 856970740 798421629 335760637 825438845 469890390 451663670 742429300 601334349 835657340 450792310 630617957 96572063 845137511 695711392 419844391 242372102 843128739 875674391 984842861 493698900 997584509 806700917 89229443 73703621 579069350 882912843 815693896 806031960 614898760 737633630 718870741 258025889 907621544 479699416 840444260 405708696 948602163 141446051 760008880 873304665 964127754 834957368 834279442 264368269 864773701 987484017 583671574 439451809 903913678 339322685 173936482 189725907 706591842 585274618 952819808 591777432 944874965 284859367 393376272 487592413 979103562 216946757 864303995 378707435 106188704 254477642 512551955 849419323 865107711 771413000 295524579 168894483 843254029 518713573 492829309 882658540 88324856 847994952 782811971 378427561 826382558 978762721 54477538 548375497 842397386 303932071 127563559 475528936 857890565 757537612 851067878 904450117 795981810 621609983 92670558 809865854 906280573 465179447 889785076 907745283 788294913 499329918 862467123 807638390 874105340 884198928 941850075 338046215 805752483 790292474 736374612 661624882 149703984 450650090 459493975 678116865 741583150 557406186 703250014 946886459 125713073 482218878 303424010 801306585 859685055 820512543 435337815 440849904 903798475 38786598 187159659 771324578 907437320 856085257 276355027 775536644 861411092 679873846 308048588 246800521 722820020 51891014 779288699 208964557 885176231 392849092 800662060 253487782 823701233 742770167 803500389 2963504 465219668 124214594 888491230 857660258 713960002 507453381 42127371 551395610 619186536 907127530 259195662 685466314 10385579 39153147 903990564 192307904 963522623 88889118 12636763 284895968 933708601 746235349 643177204 714772206 789578667 713202788 13273423 48410764 624763860 212232241 302526953 454294986 997878631 308816762 865408612 164678590 171704667 590906476 86153432 85729023 919150439 870559511 635573744 428070369 948355868 814114143 817877792 287154081 760094601 143066106 795238240 821802126 726452604 776669431 874187558 27472917 274612846 135820842 403934764 6870971 879274426 922907478 951187048 274845560 896846200 719078958 211596829 780341479 893456683 586886339 813625719 194518051 361090545 886574964 370558543 973010574 315324742 232376226 280084098 870612037 933552316 652436214 823702501 964782122 294034452 503751373 779015431 831947122 67246844 93810429 863547769 928305598 473381259 769721076 894492786 981892844 835174422 910212430 237982100 231192380 870467125 983009102 660521258 999901347 221805201 797970712 187100685 843477840 593311106 543844507 53451650 31315803 906891988 207608434 292435899 888647871 777815032 869416627 594845411 816866646 44214078 949454698 692611252 87325941 190581110 256261586 999197633 439007427 971418810 906440323 321536707 716700187 573431713 611332209 817443249 558986596 775177520 459395835 484129202 763958437 995204640 958129098 67758011 888359773 539414272 847874241 831188442 683048281 931338221 771309292 655613877 879900304 925575000 689383137 930888513 630855316 616558639 920441674 332213523 878847811 649350545 984205162 157599165 872849977 791365343 794634334 320552706 992448846 513104338 399868748 788258105 974110256 773749366 525337879 342466640 346602712 92462741 417102657 737393635 177665857 971016544 424213794 324821100 299021628 318011223 488664164 500126507 785184581 480972250 833199899 338838215 115669719 819222911 824525873 837285847 941101319 739370409 757609082 946747041 700231756 778416618 603035276 403872482 958593480 748347689 850528426 854709558 806273127 973844818 559941569 520155813 789365242 670682784 865458239 823946443 519313747 709504598 878123813 976190765 792139942 241898966 306544098 470064404 815006847 168811143 739976644 276807775 600231452 314768347 860500361 446494099 913721884 466313036 789456678 527726074 682344115 572080999 896514641 832290808 199585982 874655860 15670158 611470948 960106157 82114437 7198875 852394910 973567486 899286475 960198177 876573141 402297483 563236508 906646716 679194257 947331508 765181050 394127434 820359627 880243356 357319262 32024401 796578846 181459785 122887641 572402247 5977523 854550339 977929506 277572523 137963336 704201431 601206303 904729286 971032770 903202295 615798113 121048247 551648717 146888024 275759854 92010929 750002449 575779230 403499788 977017184 338173391 469221826 811816680 937130910 614092373 866931513 810979216 114831857 985741808 842667948 936629822 263701119 710784928 899661588 203686555 941581151 971895377 398901816 822561121 282728984 224599615 942521301 741541257 222645224 752608182 235007219 870265970 788420987 437675225 931942004 152808133 105546225 81262102 540779340 470099546 963745052 848219573 484684984 287520348 280761036 810740082 792933092 894077906 690695547 212266972 971066785 417878550 648086076 365982868 691466649 891408325 997313114 834238337 669286733 224554253 520714163 525246211 979158244 849560419 952340467 505333828 793138621 948126834 807253011 873162368 908987237 742759693 861240435 785072634 792170842 654188387 316965304 843520407 939081209 751713233 727843620 738182076 914268158 902456208 950958495 847813164 446535823 78312843 650234728 936379539 642047758 191949977 630797352 485991856 5209730 703906118 86975576 578204009 892546906 982674386 975657144 803268072 826831206 742292067 614883727 11193217 858031726 800635966 590238714 815755472 663946278 178488044 870763195 898511559 960115112 187588446 606342402 458647661 589535249 323830218 926196573 56265562 819735197 534805373 953639406 834165716 197301025 349627493 485648178 841078472 262683752 928186401 542341059 694451521 893800283 115064563 780180589 116832125 200934605 520423457 900123483 599286163 764720388 789119357 628456282 744275744 910700037 881938967 700505994 388946038 674282387 807253595 911277454 60031708 737020247 441300074 260005910 666526348 898522264 937891213 951838146 926149382 835168912 843965531 993073719 617987645 218540177 812854500 165528960 644519298 295183331 429152122 899442453 473886150 498047910 253008711 998516070 832689755 53746465 589846860 791282028 59636416 822005622 795912457 742940018 481477808 94422268 880195330 366326701 113276450 522379015 735359477 761195164 500289915 125164694 863195255 158056422 352356875 198954704 56641459 877484695 846337986 770996317 577807278 596174763 657435011 647239074 832669537 746320160 866818857 888491760 286648876 832803324 81833059 777433667 496231847 146357311 905388209 989465655 843391143 927975219 415384246 894383796 386348049 804616867 571442103 925732715 760883999 847725105 148563537 834362315 212387908 980721923 585349688 980760961 50758248 815898882 854454292 668213805 807824628 179900551 849823545 792344024 947844371 347109770 236170864 45840872 830544016 459500672 935958488 441458051 731135219 157952122 877693139 808088805 535479056 756530067 673436919 892325190 489787348 839236983 827790739 240343365 968211803 72125913 846914211 675776551 871250206 874469591 869702948 560750922 789507728 56866794 308830252 994962952 825399870 341662967 190416181 442880539 448958460 387751085 877583770 303773945 874701089 774572614 282846798 997118884 926340123 489707085 739647543 266389531 32499303 316934937 961659373 998923001 938409984 870903422 514501100 917688304 957887939 450206981 820846575 645981977 175925799 120338370 897691864 762622779 773498315 362451019 140673305 829745699 905552029 567007398 586211494 846616505 739478484 835544508 845952696 629491208 690842303 513448154 38587351 858583656 851209605 263198599 441529348 562033741 433497957 960182978 969313661 166641433 876298257 645565167 637797736 548897651 673519076 437757944 798800065 766275649 417703485 946316633 487384652 749469974 474917454 799593903 567488646 810253367 775351405 911068404 989652772 96603830 31371475 790310143 227060485 962939299 688284258 971899998 880688138 941071694 672882662 301560717 919993077 169323046 554139352 978457727 173643366 913130838 208616065 980755772 21913353 742939577 664373363 868564200 813391877 373350170 900597404 728366490 791487165 877625212 752296273 627527143 444598592 971161939 847085520 901006848 767848758 999831671 712480675 384336274 857264098 4804976 818769180 830762563 957811965 492436069 338725994 282581567 311244817 158242468 805063753 871510271 884613202 924698175 598362452 910119313 549072555 675993248 938875284 288002728 505435833 184984548 5827400 200072937 762915059 674101679 623619955 408976582 775231084 954130247 884358263 375714095 893986644 293127016 580194466 848398188 797014621 527069895 372303830 300623875 285133132 50857312 455562022 930540908 214674342 779393870 826925692 881736953 730303155 809875360 289554446 910022065 999209193 996978246 849044542 546134637 279484036 739111731 767805059 922082307 800745877 460080162 138738310 66927143 941849918 390124448 615939180 519140852 328061390 76095167 458314901 445543616 858024867 71342306 383510735 948962188 548777912 838079345 613153395 183240427 892059564 147417445 457664302 880207581 608300181 771257912 853854028 757758232 876283039 407067490 747266650 957334479 891657838 792561195 795088895 953314990 970495193 876602424 416457616 557132475 989422367 822436339 930997925 761626247 817869410 985493893 374132859 414493020 874839926 396379556 263199835 949793335 845972399 901057969 791261182 542577787 28466078 234660196 487300095 280698155 122760807 137323145 821178886 881833517 383552472 961378082 628304009 340806545 145057119 746795773 916563440 832980217 786922414 36596560 745052773 598403998 931378845 784727168 215936123 434066713 754153585 148692033 313353127 796720071 891823749 652922208 267781016 826087813 656121584 910282521 480692728 884948031 956747260 41742000 805655561 455331826 966712640 109349587 103299301 975292000 815874130 875551928 943605570 320680813 305761640 21002099 872851317 808292314 834871373 845959618 463559036 975970881 966492533 20041765 41278831 268940785 58532164 353768958 749239362 838101902 778561425 770229528 475500708 396587999 843740201 919026801 751497357 372844525 632809900 936966719 161452839 112058749 886502022 920723085 843635752 432937271 665621225 102078535 775633992 739899930 249014686 290686939 984825528 73089122 823432706 892800942 939521840 284745501 500919626 794022895 889245980 226948549 75192403 936070910 999665799 893761176 955265575 59758088 65192320 587852559 37960148 240454922 867866417 535016258 552029267 49752107 534302188 825987931 171342809 520554917 77208767 815864827 919296116 781299007 910982260 606030906 647435451 44027717 497400680 487256382 819914775 980363231 222528274 937075674 463636922 738672332 654829676 121567756 444253728 125958785 825859904 907286244 367510136 505839960 938977714 841728627 305200033 916116220 422956406 872354090 931784946 823557025 99751298 973469741 387671554 743096916 815170646 323073839 994569559 636261221 998188035 989024492 324504032 753337486 464002664 775222712 10708984 998817470 464209557 970129277 465536625 372968947 892025177 506928435 324539156 838185652 809448607 494649733 848163474 13339144 213925580 685757697 980370148 564712765 829132082 784534944 974344957 844514693 816023264 681384271 994119213 925654169 848999154 938347787 78177672 928753456 904301055 938206691 851408470 490272615 872930572 916429468 663382612 834962742 730051291 937484782 820240700 400914462 977369936 935157284 914536056 647206675 541432897 658483624 859429012 910478841 919442671 103910035 809291475 866720070 557428741 926105263 453476650 762794578 345456129 785804811 403913448 902147237 762597954 372588479 958875247 287883489 628466643 613436363 347952644 306976173 192393051 160381084 387078896 937792837 897487849 319989770 953553157 218219800 985925213 938942638 730814373 795749883 968443004 946662800 612509344 314451466 758326710 942103165 492357084 863042867 402641151 950603719 226883044 557489812 983563739 841278202 948911510 459482370 259313976 778648294 949531902 618357593 714866945 788687371 249109318 378565367 407324124 816315042 867759194 821228273 480167147 127006113 256906094 862977352 675317753 416714739 604817996 823555658 987514443 916241976 116652073 491071632 524158951 813049774 363821279 826072689 994771663 784534763 907626694 429311821 973294282 476214918 961626976 825231065 737440486 788482330 457208629 615116943 786503384 969482920 877828548 753639088 436823063 706689226 36723436 68083314 214121758 956044270 721860473 434681963 129756024 236455974 380133392 461658975 975303246 817318561 499801103 415702463 759212526 936837567 448489512 495418920 830768008 180529390 253332909 983080376 963243625 299788914 864256605 995696123 258377533 878473221 960531280 972732169 151920694 784328228 528615950 928959893 816392856 738238338 575517107 121716602 697854460 986311941 709322733 618821845 604695544 511462890 942038759 504805007 751816478 781135838 585213522 969074061 730203186 581845135 725726858 75045458 804996973 675508235 624784157 904724351 867458080 80042934 42472491 30075556 766977224 605973219 927608026 869591282 223292427 970297415 237706173 828867694 297979406 671014474 866861728 450657320 638693723 582167302 410752774 896777113 742891490 378126382 325355622 546136108 765499417 671278588 727379579 54732602 975496392 854374549 605470560 103328719 385728389 924396084 600537123 908818130 868176458 959350686 586487780 253310541 528843900 839537281 753854315 945451401 491622319 755893621 946017934 525332038 681911521 865437210 338843514 917903919 629745510 929968843 333241925 314013051 248645633 576144945 325135581 829245164 840429782 203939679 912349977 559440657 770804473 237060047 537353206 862975652 737020247 19218044 942481845 919634573 935973716 755196102 529993929 661813300 825300277 318216333 250515117 387486464 298179264 913815321 804500273 875065337 768822015 620867676 78442135 401764780 799064435 897723939 227180009 507369351 30830859 926897576 455667316 564847085 846427728 923432124 29075494 106067015 812673995 870719642 883860325 55290982 823071143 521420815 829443305 996448382 159410812 942512023 103830446 627278158 884591237 770799844 937722472 749967695 344021138 506917277 203491277 142834489 715294813 738107480 863008633 3953199 554855154 964072811 676196334 801156919 831546863 743094561 256651551 817000377 963320359 716070747 567240290 498545095 968878276 81512565 816638207 739400891 518981332 313708958 77461868 875427805 405706118 102817018 243011239 839934500 504712204 284326369 125195677 540812995 102342628 980413221 662475706 94365229 999865371 52766266 232807484 923124682 657708227 874264653 324468354 903491246 90389485 217154805 531147919 295997382 970096212 716894577 121527841 74360906 934612339 955931436 862291347 878018920 959919012 954450624 714421468 146184448 60088944 847236437 730043636 737753674 761023973 824794726 303824911 992677282 586582928 848959903 796038850 648445228 963399809 23991015 456625563 964130443 869973724 253270973 983779832 964170573 788002381 769965584 52731281 884324024 452600711 945367830 82422522 879894585 194326233 930195574 378922554 580416156 935447977 742873596 560213849 738753630 483885906 610355311 126444600 31223716 702474250 377345449 925967023 957908841 379993801 976042336 230759633 908474275 23245357 145937881 213210709 795944801 798079759 276599270 842857305 803158695 931203695 3687611 786569994 781873143 955252887 137391488 739135497 768262508 258017161 911001874 924691843 990433450 862905596 672715667 838164969 915265576 997210480 207556118 909728784 63114266 837634531 222508707 550051727 277279224 76564137 571899645 846176359 820943741 795503314 230018223 30097385 105947051 398524030 343760206 511904338 423921100 941866967 83500982 770518603 941660234 889180952 419935119 831644430 225166976 201080953 105857160 992735121 855443835 934560125 755348384 825065189 893039019 361660428 643736355 861720503 946608170 737356834 964796968 152504583 404158866 875137211 796748855 869306577 748145886 688054294 893213260 207558636 755706435 770297609 916769547 877547909 78682331 853193220 802720133 176148415 574169349 882286882 869407889 934300709 528229998 752275369 358011019 846401299 618466283 830237638 198394246 825588850 85975411 429880856 980801860 922763726 979414437 370865297 957128425 64740711 302771591 552786508 119163294 287339976 587392211 352417857 651886119 743632808 93295880 614304798 920025856 955691967 830783458 764998736 401891611 979256250 45732820 937415386 92149913 859091104 409246885 525552801 613796250 923381530 128642209 509137640 375953347 547373447 702495737 648863656 361048344 209896016 375658962 577536362 82190747 879417400 751717587 435913699 882446289 456571337 978308865 868930193 739186798 754271912 814739303 824818454 294407907 413468894 812694182 777509187 792108554 20732671 980381027 491815255 752089740 151458943 954136671 764969032 672739379 601959391 98248974 269082280 853084229 628325419 884846740 977719191 511272658 599754302 508422945 190439557 995296873 942729086 986377164 166077395 829229699 591102871 984071849 574565168 919010480 861451849 801489248 617229880 519930685 728958910 854553753 470642460 845364251 757354547 873687778 272079478 836589703 342479528 510713216 403308978 800678916 752402449 342709497 922575708 867905917 898486410 496137383 192133741 297811033 31838385 920734595 768982500 893396043 593028553 489859598 939996000 195050529 918241151 787130462 52742701 732586487 770656125 903228602 265399881 790522734 860679131 970647795 674994025 583592568 815391420 447381434 924180613 943001849 361288877 817561446 333288847 87728663 129245373 112485387 781406062 858404142 782706425 590633019 761759417 797116094 915606657 768891698 635887814 897688011 774029584 777358925 765451605 793935608 750707549 998767080 442647774 648480323 772772776 627983853 935909162 871551850 710252591 507171214 691638182 864322192 439980 986139787 143766113 415488661 858221805 871024031 35292775 814606825 531475794 902499887 567944391 363484421 399200585 753484728 325833978 782900447 448977325 120102693 907273930 131488472 976330559 750691244 150521202 619690258 768180975 785138619 233791598 122051933 979942955 958633060 151791884 908686690 686709124 959266683 664595909 517885726 451131122 229737113 889541972 799764233 895451484 257694617 536060390 940947151 502807410 126129734 826504628 745975444 860499813 443980140 801187164 538186841 129409950 840768431 927685948 370718973 80143712 812116184 403466434 995906882 353840721 699068682 805335017 828921478 631710851 896254743 140206810 10468886 342993340 446388807 542426848 792110070 41105767 452842184 860362216 948483458 95440336 596507888 862327234 808686327 977630740 799390096 23915322 992454068 132694178 745714399 207962615 382166045 823281391 475338464 318125577 599174879 712966288 947777509 913835629 229581072 443773972 858912765 748695914 690414711 880812154 755439304 817529811 827307041 339488551 779433431 967851744 535418713 148212448 924439817 813077321 772849478 990809848 955989509 263927415 589888299 120069275 144050983 545893830 774954939 639486087 99766488 835621936 898468699 677105827 652011303 228642225 245493200 473670739 979160079 255337027 595621197 791188434 783558984 592889269 801509071 522384084 929323690 834158367 773641631 980637352 145646286 815713717 354413764 989375340 859515737 285133137 777961419 210388500 619325419 236152197 813757425 922605685 211775330 993503876 811258205 34236306 765935266 275899143 523844563 188303491 721854666 124195195 634205296 938540781 376356600 695249820 407568416 973574075 592370891 740928658 336109836 515555383 888640343 910895885 260975912 12362927 777422601 783683775 888833115 521253063 766021205 751381764 683315681 168815579 837044089 96932330 380369569 576739245 292212806 463213643 902742701 745671980 828647290 953488825 856870747 891373746 564638293 894964698 143121401 432968381 982281102 896871392 73239888 184791388 745366467 809834495 762654008 888764922 53360121 364330620 802452145 265057688 743184121 359184442 384423097 912072794 677597532 532185552 814898800 112139302 309440231 752617174 113772440 946042075 456542632 587719680 272864345 102019245 61955923 807609887 912460108 633438875 870710755 212881262 742826247 552419781 477205207 754671028 911457931 875433346 483806346 927591055 415750157 999639625 354417483 207146001 563900865 555839517 128414894 159638517 903770408 780910461 870681194 873229593 813274683 874266535 444382537 868205191 835619922 757341067 673520002 78807598 274804510 135385822 144920208 874145955 696476724 713305066 967865046 467830713 836552222 148865296 291188879 167475690 287528355 73184712 794337793 397171054 211487845 742688243 761869344 831006855 436257470 961435826 964281296 887599533 363576269 764846776 817498828 789980055 340122936 594492282 887829668 270869977 429570151 267557151 985512406 951806010 749895753 36284353 959314321 44987330 769622608 27260454 764020627 830770627 638144754 999407248 356590245 888546489 831287908 743401459 949831265 988204833 497551568 868691076 719772078 208695096 834194735 970707231 247905574 851002319 761315932 685372226 797148158 963382125 666025157 810669438 385530568 922477501 959881416 208785836 790215391 793390634 946347911 21241819 959688188 153095265 929541291 469489642 283925675 914135843 964324575 313323173 908961780 421631908 564511411 986072860 702911451 676197774 576896351 830165925 523405381 845422935 818601680 15841188 232454163 290659451 452197049 683738857 767154676 347042305 496227581 806558995 323155821 661019259 979292822 149614675 57833648 493466741 554612937 415759713 94078927 701622385 754666642 213511411 687203514 309817024 957910195 918014244 760098430 445362797 128465395 809153489 220821092 317729588 758192727 563607008 916558197 926468049 285444355 625697084 858610294 98853761 446599547 165072263 662026226 881766892 105286305 775074061 916038420 497452449 923221781 986555212 995746350 843257649 893263341 853702841 875496557 278689473 789348222 792515134 938118862 973333121 283419104 136732970 909777109 568094701 612778948 740498891 799369346 541781144 556729428 726423963 894325695 801988236 934975053 214959782 302929789 949571599 907139411 702566760 759285416 904285316 741661670 580487423 429305965 816138749 966238323 119273879 33848675 359364527 842960967 818129333 581669867 877870350 904188277 521606025 532067146 95534638 79642600 975874168 742548369 942790391 179003386 867271392 655119870 347084666 891465782 904878159 182018322 850235178 970273525 921339143 992986455 648971590 866048994 532828300 434491302 741107862 523008321 777223633 922132196 902168385 932778267 681166694 910710566 944075892 327243395 428729516 35413885 975956793 766408687 770379087 517101145 853605441 953649694 779402978 864920699 217175416 830103010 68494599 800556951 35422654 780418677 360888683 207266001 946630564 787814273 62880687 557098841 790079464 580809419 841225006 528169474 780254861 510671457 296800781 128002584 790873016 487568055 280800598 760196843 822397303 258712736 380328405 56781864 569388369 42021467 200236396 491044075 918325417 39761763 444417123 901131456 210600695 791931970 241347631 326826555 945592008 142768292 238025681 917308849 905038819 66843640 771784392 794924748 864973888 493005895 172411029 397985391 942238714 842003537 798729407 916962433 52498757 605880533 802858293 858787304 243605899 528913690 271222738 577564992 618194719 977213859 986860565 80536556 558160484 836648951 995402919 572468837 293796438 911539915 103521153 19908011 563806184 852715992 871149816 532284823 726071647 31016835 234187019 744945959 353108775 737020247 286365460 773392248 740287972 226902349 186377090 175707114 627008347 902358648 869027755 998703080 696931425 473418708 846115092 91376534 931010945 114648875 537425592 846565935 574322665 307156102 915992686 748082330 814149438 111298078 968135113 802547654 840115265 813382259 887959681 538479081 832856294 59538998 931459359 613973195 658071719 824534574 954763322 271901883 391625793 834799421 903044159 916921832 253270486 27883512 486212575 171350368 645006053 63187122 401681872 965216518 262424313 535495388 306670037 963108988 761836562 75376171 840486841 802888860 24464099 489487853 242956752 599728078 622693605 927733607 886227304 579783895 333657798 951109290 358246469 262754686 909898916 571419402 902486143 792371078 601868875 59997904 695119360 751199209 730871046 460927068 762131748 262359764 597498826 931960922 781636146 914267406 763068862 259472031 817148387 654813975 84937879 957752429 797252951 430118982 706491739 111318131 168162056 20745444 701682302 199650716 791272040 514800219 427871953 492880078 822155814 877611952 434662723 999518361 971695770 568232055 101489896 615077253 329893323 884034844 445131823 702386633 235135171 870745396 579573696 497017856 782227058 206020775 110082681 523991295 787761863 266805971 829840737 491891795 507023547 785358721 487363922 753716001 341025759 991741257 634999156 105161378 956614834 152197624 752861909 762612519 749766363 536197341 650995677 605644166 469186766 543203915 957606144 905083470 877843280 805435708 777566761 960146100 908902064 271767247 636435863 220754534 508205382 669192154 781425511 145330439 850049698 585143528 800191016 995329425 485355608 501871720 631422169 841025399 822500390 857339491 8555564 324141997 990533426 708418220 939228831 902232694 406607040 514984509 860484118 245928316 801590754 934059859 142303402 843842077 161581641 680913955 809114073 27102479 132165155 197581536 915964637 234716725 546595556 490001677 382927144 961360095 213590888 63436054 549318721 540686995 971046374 297021881 793971153 533892689 727000792 304321408 762289715 810675158 811610279 901478626 838130911 11817720 930759303 26882309 751103200 767238380 939574011 88468969 547125147 818734279 365127313 160712381 743019412 403141034 996614937 420230084 278355152 668370178 361291038 604238237 221071332 779620043 311820256 934551659 739132101 774749898 450724874 3300306 328317895 812220083 920859065 162741084 24672162 294425666 665445252 976364815 927055008 551925394 36141482 137331263 795953676 321631718 614559623 789043728 779844242 885723316 481295449 876015999 359101005 881703940 823314035 624148815 742700275 638812901 977750362 882019074 589978957 274040601 761095970 906923290 775784750 984683920 461226173 502359367 937967913 956515860 638564448 994190438 293469434 856704737 593513657 816380181 277644242 950552824 689793475 787391824 292912299 576079529 619092739 898718868 82989504 896572688 277682355 822223088 817860572 207491679 193500550 447453225 756744048 797315511 397067358 739609741 728226925 718788979 859163528 324499928 790999330 423699382 779619594 637653801 783689239 8181256 289013438 400395660 884108297 734315815 794761875 754287085 960865261 883428631 469480263 741708043 610337330 150647944 206979558 948058618 151050693 954571494 888589382 993742407 599655317 846386519 741683429 77785637 504531590 135510617 297681661 953540108 945066937 773329299 767312694 987400006 747216135 707441986 802071530 758981061 494205614 39651928 964622272 772603607 71559691 751147934 983512332 979538887 108534569 993599445 898191594 769659253 789763321 848813264 904248127 387812100 366724675 658912015 222878284 71057019 988921174 787144481 874418874 745685572 597232041 804349945 904208922 623831826 293592625 928918479 753920557 687248137 668911579 281823602 139487808 860558766 150909355 873725780 254099274 919557118 673975830 360499917 498299714 897984812 966421431 783571596 86555743 599524974 144625370 903147996 989002360 225733813 751228681 850101335 366240072 914252790 771256603 119132811 917018444 703576309 442565064 158093891 181079983 884639778 144716404 958454683 723490101 27659300 518763422 498578635 831134695 606256201 914064685 33459611 163743282 882035996 978786505 33221207 832601506 843630265 228411482 117336726 938629245 886541566 670472674 902210645 752110720 813977182 324831450 740112600 907947965 600329917 20199734 810681299 775265454 858005330 722615997 399816291 255629521 838781963 746740631 545708946 931818930 905758188 849233482 797414173 670659364 689463731 949699084 993947972 212460162 558627737 865472804 828015244 903949574 284464782 851519542 192352269 949080749 762986678 835780368 924218853 773760593 13261516 934524342 675834057 298532430 825274152 874286516 304652494 823817259 854430626 677666698 762204071 833193232 387438562 789269055 176331456 984004016 983603998 596934926 947240112 846516532 802750047 381501772 772910396 767223476 970149030 966245509 737161721 816204579 359883886 552169249 895002321 364719653 55825938 782616173 747431236 271391150 324990842 767183224 777798261 392257439 746173777 458982080 788655864 757931461 147141465 428816321 831409195 821437822 135242188 938273949 470164718 975321473 732625751 782108915 11687559 741679495 521599113 773350895 767492850 786267496 620408839 922875151 811194017 797188321 13629145 916708733 702948835 862459011 918301750 630721581 946095440 413889166 251579659 11243171 296747844 573514776 911528962 808863789 997158809 850501089 392937564 831382135 752204771 998116740 708369270 20584537 797210855 788980010 932431864 638251259 518082219 452962286 258377981 491719829 40187258 940126733 732712671 778670176 116807830 907871388 859147899 38439737 844979876 113604403 181962166 808218547 982770136 833616786 219662937 986829008 961774226 796831646 64435679 758898497 38503640 984155649 850324545 314546973 749569974 511373875 774844702 892746655 712860238 542581158 900647694 768108918 873570206 103687112 905255607 868802211 141017072 325529408 200038667 113628106 998318297 819411088 304911557 578084579 342475115 247205908 896703817 893573292 854199283 855919966 181405451 670429981 992772201 566836018 596671863 928457194 828353307 657788923 913578955 867786897 910821852 860555290 604313383 41676932 366186679 518169764 545543192 982053597 344277142 848221477 158296920 926256036 499738748 68770867 900797962 848000144 786546109 781996641 357780627 868288564 940560859 311347621 183926800 604735596 757523619 955205597 299921623 760550697 761320268 465135033 539627 433408905 441151380 456723437 71023532 40084507 799234624 348537632 167523843 774178531 800706459 930543625 887373959 927010087 970130645 348042612 656092111 739876151 194125694 101508854 936176229 413436099 48384503 924421049 293458066 25533049 235208295 123247178 938473982 848656282 835851238 971094530 915860357 956497230 699299309 145917671 807165794 932921096 240960760 661949927 812302767 825016830 790141389 131821008 937474809 261538869 957745095 500477469 921509930 766395816 545238769 873515535 933796743 156010967 34887722 623307096 213210381 25133073 490802638 636791273 967954753 847694526 881299619 286337962 703906298 837117276 946056618 251586937 17401552 561705924 970250860 590257211 878705821 841175309 478715564 951349937 67868552 958828628 570984709 167047826 905486839 746867419 11497555 869664998 973643775 977296092 161030043 975184986 892649140 554398305 355811175 897913049 664985862 335197888 166089521 823152463 376256243 865309130 257527117 223323110 765703215 712520943 378245228 265453082 135155157 494716889 590243992 197650953 4749566 513465349 463159350 891901426 701609020 561857734 44520725 435609349 854456988 306014295 884768054 266387676 561387005 347021000 941085714 297332231 268076705 913899224 733610039 554236919 945886171 928932481 560114128 637592492 988422240 603152730 403530542 867699105 802007027 897125142 785873392 169684765 692852179 676534646 710705316 757387593 950792469 798222567 834158875 936981038 954596988 821813040 837313107 300801857 992576749 958211548 540106033 788133923 902490316 616426781 777842450 294560447 845268475 239008994 868694122 390120271 291072266 246550533 908790285 351238858 930681687 839371061 902867051 940701655 849121406 747648158 320075810 497910913 747852997 982314324 888827508 6039610 961793020 28382056 844019839 379657923 97068625 861724654 837917961 594713464 798643801 191878719 159630624 949911407 634085920 864506546 104749515 64484754 887868562 823260281 610799277 874531858 833031997 756840245 934690776 811766630 424779351 550697023 312552327 926312823 407312842 946403422 214909360 669334598 809845039 148509799 265101823 483608657 977520199 304661289 431232554 556811287 238904454 788613256 992630254 979167820 792519994 965748759 774416994 905650131 896856944 808792272 891063836 867572112 170554029 772357657 827042367 789741940 499041337 859079599 346391269 481485851 965249324 982647831 25477606 782234928 180442469 317373594 862100054 264366414 809085518 974819675 359636218 960124215 787532159 870498291 23599140 749017649 907076264 128686659 152283415 872142343 615636532 670559206 248641925 377185853 319642491 852873149 232904466 849508002 709564503 434190286 211880766 595648965 456071974 772648380 820366454 799046879 95810729 87415985 925818911 920440905 850451871 153543925 841686017 261251197 827053634 502457877 898758991 23887491 746390199 949072036 177843407 821254638 953109854 159550216 888716425 173282742 990886152 196571658 748236746 151758870 838221154 65820428 312829218 460842869 301398086 833404570 940712872 215570189 354336302 336454542 747712166 26538563 730537408 751680520 578376485 877628842 754938211 62256579 2733435 834904998 745300773 880685973 22679661 310313268 801609959 87645635 641397330 554701173 142874912 428068094 836235744 830078886 171279475 476496562 976126012 884302384 626554193 391075364 373408409 880954640 767564422 950871162 676448142 635916687 106263729 808521089 291823216 503127584 874577361 879030158 775065632 422869391 911183469 879391553 851250897 835191841 659940078 917681274 761236294 752392027 730423434 489875300 73380299 788249836 54497605 614408472 301689978 935211148 892668837 842010081 201637111 838196974 813463849 48620424 915434896 814407059 974282769 970528259 109672656 804184841 142977177 996126025 969636556 954166044 969597292 150068667 714088009 508671298 920329790 971830763 572041800 210424074 948742917 931872468 773752109 927847795 762628820 928404038 194679815 614383421 810783463 229368183 947391628 904767818 811667228 264259208 837594877 378317977 454572176 890294376 823240408 666070807 443153602 809227067 448675359 241917452 802355457 551091699 133908294 932609625 921712991 25354420 772407357 808121462 861707296 835944245 228395613 842889270 745188086 890527599 677899083 430039943 142228332 352737230 850486391 761957043 93866806 424506645 838231813 751212689 943458613 888112452 493692740 609219171 855588947 254028697 972448299 547269617 7320756 814294293 776009011 86810350 780077841 802155775 886759953 915927265 166178110 811821493 912074100 817955413 831663197 838073471 594135303 929117201 759870821 645391830 605569599 507694994 753308537 134071580 931259954 977067417 425760027 348318125 616218473 207480286 927201449 969762917 762165994 89514262 710237200 357945366 884163042 28298563 957208806 767118656 964058534 462070608 111556183 827729371 120505132 917416078 715713155 824899255 702009989 403064293 851691589 457526992 97395890 109636185 924610392 831226317 784143164 953165966 45523120 880280451 771295764 416890618 146571697 746985706 342327369 654691922 198483022 241304034 700789494 533683750 909512921 219955529 627821037 904245539 325952800 855500930 926973714 653300326 264612231 775604444 850091676 760997063 805290611 185208840 127615735 857997128 668193038 971108737 750372379 841820242 909909695 766491517 374804893 942215428 934254280 958253256 871671216 995577941 875787893 98338310 796945935 786029025 707621908 591783662 929038256 92957451 852618204 887484975 241994392 835446293 842101174 698846631 480686624 843271298 149554677 166105238 857663901 594139300 916558379 757482396 112965227 539093668 357902518 519237733 898778054 853110820 142745236 476472047 927766353 321805235 235115687 620114484 766302360 874070408 389786595 452502156 641214596 3730640 293677945 805342123 657749244 767082138 339135668 737450024 909872433 863080188 807766093 416265007 660808121 591258203 737020247 549105838 595061987 809028697 979715361 920580251 69278881 40126024 311695377 917929487 113073550 69261309 784641237 84118950 857666765 907497251 541321983 971492372 904275099 660804543 451570549 748281470 799974770 554465715 334403218 523413957 826302270 967393850 874114346 126338721 935546947 920835673 917442479 629044142 858947842 343328957 586806112 185193614 178595767 899770674 850475310 206561990 900185935 866878888 366620643 857773433 928842709 577377306 515641725 839152468 550633159 782757134 170291675 255904805 467131753 475686030 825405027 939261357 888646815 692521737 942840681 926211632 874510104 697762132 979307855 637559117 662400543 937825204 89557597 481161250 897127375 102735401 453110665 296769256 51593979 992893529 987365163 188158358 816750306 792790886 319205275 971862577 771716866 222640851 821467749 532365127 392015298 915992694 809515917 68853133 563909505 721866756 379959836 617699874 827393354 666953483 522989142 683901703 110684561 989187651 291282335 725720146 1756193 153808487 610238827 484767693 785744845 956864126 932120843 878246329 841055023 259420799 948303883 409754500 311423199 179458415 32954097 776077228 872055212 774444629 968533118 942131442 824013355 216436538 114912210 855949648 380639128 933469634 17038645 227232536 831167143 641129921 88864374 338688259 19656012 761562619 692892888 751583980 476097698 182741758 775677148 474536458 961091288 960475995 874558682 733340698 902723056 40971024 886112670 791801584 208223629 642388660 937491126 257048723 452822240 397221578 785097829 755866480 936316592 168295182 889965098 394626133 921299709 876320805 989824653 989700594 541193301 816591990 674419935 939597937 122577727 876081698 955157633 27441801 215787843 76922260 844712081 461659506 247472312 312737739 796577034 314516855 774570016 886715826 473748685 829399433 290153966 279235287 468987010 835895041 605106984 289614925 227304242 385131566 747705591 896615803 901368252 782083138 994969462 742076617 813636848 816518789 307526813 50281185 597755070 840755193 594241474 790376778 801169133 272638914 864605593 756402254 998584202 793645103 933525801 523474268 600105725 209236740 186356689 898176278 982505430 159481136 398781618 771991449 479118892 573575741 810239808 543209590 987439090 890330659 293021452 286525618 965798715 906547666 223799352 332377987 968130056 985263071 797473458 858125899 54042319 378165472 1529051 865230162 964690306 61540724 941020698 792703606 813726054 594347615 330023383 522100123 894285739 622301124 495107879 277669913 547737575 244532403 437662874 7366543 970796645 609730308 574271092 846522044 807005003 502066634 749852590 739417762 925731113 626846832 276417533 282158900 763888197 556779156 409261226 828044856 834997541 838234889 950690889 558849696 115800422 967089257 804832711 742883064 865501949 487292262 652922723 623992483 925750122 754117898 17201919 916283293 767215067 362199476 769714427 813016206 490968174 412007033 778580168 123172008 666087446 909941612 864711299 197999189 989798374 811031999 203077157 892439682 408776194 907798369 911572220 632519325 737020247 921998387 949732163 54119143 771208856 995610428 952026525 372030466 370629971 140812168 264816626 660744273 433138078 888725903 778474928 698036594 426633555 278524342 264120645 910137387 971230640 281815763 827990491 868887628 980729643 867158019 792806322 896907070 819755570 819579045 949849870 253791958 325819242 800942112 803739501 950337445 288900633 983365188 407201300 977362710 994258367 783440921 617645543 5536213 132240387 433923600 420863875 894244404 739539327 803105098 775424586 965075376 800649239 332358905 770513411 653502065 598411582 607275403 759561187 662450034 678464813 908462927 653796605 778020849 3670601 544807179 591645232 12669553 769291520 253460564 448639518 971355518 616722542 127900141 753640800 869267459 746258585 694605345 956258285 464865979 648117412 339895565 124315267 212262654 699428280 955594813 187122691 748471937 974701957 959507194 987052108 545152522 851286097 849101144 739302213 762661237 974236057 185301547 818410671 139733250 198104849 640604534 942599588 907377805 812950646 518419973 795481378 706444771 57409104 563135665 738820790 624390743 878790432 911385118 896311781 658367488 744824847 789146024 251050978 911279662 478842075 808804003 682359387 545281282 851521608 983774657 211792358 697840297 796927373 925388796 1887938 399198215 899130673 13207969 819250074 930571362 524514269 59029838 209251463 792678059 807465961 45566581 355807018 8321515 184173059 233791619 537271224 843533982 794181617 216816581 714022795 166666309 515216947 984559158 927085469 810584093 897704688 739593574 666802202 883230984 90196703 366579142 101212217 750559048 340384072 288053093 6852969 638947921 992135689 749033688 782892683 96412179 131695949 835233548 992310955 720758307 795246661 381747471 580583771 825522912 474955507 219368301 892477207 781446172 492711590 148026793 317240619 850504204 832588138 797102069 803699607 782447515 631465006 821354873 902150281 692673346 693655094 923124623 948552242 237029817 445102780 769729970 890750667 79392653 507848347 413506245 871506748 993626935 872678294 926505294 758782835 365126434 872053512 858011814 834106961 810308888 216081380 943943084 290719148 671777771 825526097 892232129 223438963 168946783 529085226 528763338 868097830 683444606 749728452 963343128 754127557 376923246 543381861 805813031 426355448 212026959 737020247 67665823 65103072 855517957 509731149 635346202 770514386 851267232 321275845 855004050 913507311 702280356 861495806 719266941 776403689 811952102 215699749 945558292 422857480 920385431 936678512 780842305 237209798 939021265 360460774 802786820 420874015 558254818 163336712 460675856 336576030 193976476 961660316 924306225 401171223 442804026 162073463 957557073 942190895 578413660 269221829 283030744 716312139 892219529 838519979 782090643 516943023 984668536 543091445 145709145 802739001 953731173 465730609 971956061 848690273 794709824 190632945 167423115 571081415 989534990 800692093 844865264 165851055 551660746 765794756 844375764 259063738 837639047 282836849 236678595 970883613 946144477 89993155 208063917 989031881 949673200 580182695 595821201 474444429 904765839 279025997 987244541 40880013 411304178 172397580 936032490 807209177 467519381 180981878 222316905 59914052 945980893 978029359 160674352 207140690 855392413 761489505 885338897 212152724 848393503 30729964 12815345 435142815 921471325 880950196 75734146 188313191 839948369 888244671 593049088 331389356 646139889 269984149 843042449 773877085 443941622 834392728 736821291 928019126 974915839 525007992 818155170 473650594 255082416 34785651 317366197 994998103 902012904 834343712 471068601 970712719 725647038 602346708 277497772 838219445 721686590 373641952 844058827 795388729 505995424 979759424 828034422 931814376 777680499 967079076 25200846 675420264 941195020 864041336 872683547 796768754 852565534 827883489 880382848 334622383 951559610 883646830 475157750 604284322 819712190 645033407 648723030 113942998 955566339 833835939 336373631 57296522 555501782 30548353 956680455 976710578 960815705 565917677 240785580 413840275 658340239 918149970 279336409 935003013 569264547 511341218 791530482 901861977 44067159 812009083 566024825 271199319 871298828 486552039 939009039 492363476 997940119 774508598 201466189 535378165 932395623 231732472 866969726 17985395 912654233 740948243 915938486 705481126 637046738 781708266 258090693 386570730 463599571 806137131 819866580 470220375 10917628 660785274 806305123 982318690 796436439 524887451 847710264 965010421 888530898 652843979 763705341 696857128 767048841 86109218 148384623 87844478 437712358 577069046 318833709 145015570 242210222 27088487 489765170 278143320 395643812 535665380 385874974 80096893 762908096 356285641 485300224 566077633 956560167 503544476 476601775 647243428 77682713 641238340 479097300 222376350 308254797 869822403 938395737 900082650 961246459 425631413 889188869 534024882 710960459 881492612 950790399 918989256 13712893 813069617 194294920 820239010 438787937 354068262 930028923 477934706 928069147 496940189 974068563 880896396 865618845 872625189 617520646 412862454 388184447 62331094 783805882 835249545 798810737 459598352 254406133 870465689 339527636 949252503 492741886 995356118 311777113 521405740 404668101 983345720 931702528 772485722 624237772 3446608 430117925 962174635 836908850 753698231 248232360 759700642 883660556 33481279 872539193 775549124 519144972 200823549 990988899 479699212 801378564 588356032 908598783 851273944 907222801 860725273 348527332 895540050 813430854 928243950 951603207 283288231 914767700 580755407 13605457 598371996 869248877 986448482 392892370 262979192 719796446 637108586 944636319 984765625 433374283 5233973 228008866 995503327 870763762 260426430 470019770 861916405 972802063 796672928 759588725 976673787 886342027 891216287 895774924 975006684 921989326 779047494 297439994 533256743 822276017 548236003 21188094 27598611 797845978 886337639 985220968 985539154 890763802 744590266 944391896 830667678 772242138 886384002 813344910 344338309 904637165 115817487 676672005 967710007 210154261 217237068 668581128 251964867 973260799 122509961 720101152 757003889 72605453 168974729 837416368 893410426 557930570 911812710 940756669 373515105 414770726 739975672 796281688 713564632 387068943 989748488 769889554 867492118 968922149 757902172 484849707 911717020 845626872 905662573 121832507 700863577 960916922 873835524 937416155 826083418 422993273 465698603 475745626 538286086 918586281 593374653 955477627 832356848 160149500 374742275 910288018 872909104 238201290 898559731 535747075 896671411 779600863 999914260 881221235 266876544 824061609 823053907 339807708 367480632 874423380 118566971 134504388 850657219 633159947 458909392 768916699 843975240 438508301 610764978 946701391 982656693 816976249 180518215 904828281 908180061 790193522 910306413 853312646 390603470 705190202 185002514 93915956 731754303 541812565 779057211 761597706 892446870 844642109 728477242 833533207 609133353 884677310 262548639 552812244 818524822 258328626 500282328 750851715 843429940 593824241 680895979 929583283 290870865 854914339 587273677 382673234 392431546 814095093 836497350 442064743 963593065 421851410 988308711 906691351 864894919 968529135 246770307 787864552 265230910 270663658 764866876 876115337 676901786 179508924 627911555 29042618 818135224 930294861 905842357 678671279 214237088 937222100 547385449 263484796 920231450 811761233 711944749 688259907 564318370 200746114 749313768 925847573 943711298 834214858 329472590 934899438 764090878 707384657 795960953 244721237 550048107 873312906 822961131 8049567 834407951 807206622 392111466 181269875 92257203 808570333 870514087 756383542 585265999 571566255 149666637 553567745 900911829 628182178 95476260 756849109 33417324 216091553 909385919 126987733 848322702 613644242 126168385 823005836 334930012 426432655 750479299 60626513 306111243 858710858 793452886 168281122 929753950 245201640 822730087 815020697 527504108 942118847 752579626 774182218 689077137 60176277 956758894 864628307 974504914 319192358 372610974 784214835 753376322 167440095 881894314 742865180 500962034 955891594 315229730 523193912 580747477 982391396 820837472 739474115 479688160 449917869 885431931 370340429 745835401 685549447 939547475 267909607 498635745 463298944 123622676 118459953 167412456 965773130 950571411 632356192 737020247 918185806 661375737 448357018 511951219 55215745 320922673 169946400 850711726 205644731 303755633 849314173 328119959 656369818 781081175 802244201 874366188 783514781 528070292 133879873 928553525 253470896 996808069 878535406 339681324 905131314 780393323 493531792 416672299 901318684 884253800 610361455 998052708 787475677 808796403 22911985 767520108 473079625 753942540 92310816 40959759 941436043 986629069 776328339 987013070 902111606 407573242 999230499 990052561 649711831 836885624 913341903 851316414 794933882 868911148 862801791 664219054 913292983 593983423 260529666 919407732 960457950 83773590 572157669 91556583 690196461 351025368 332264819 416373885 561396045 504152757 929845804 637449072 289493284 662506766 760508702 885207062 402921083 740631623 120380519 623211511 336358591 918552591 937267719 808180913 969277381 623498216 953123911 912751919 999732223 317815654 832966282 145854541 794479644 875643186 641622783 365499168 55272049 798974591 643062059 825395397 534761837 216057665 458258181 149571529 654951349 104770255 995571629 269982472 689980848 752875584 413207762 886793044 916288517 373955415 944438114 754375797 781123371 759540515 870681299 302598466 408026224 761712482 266472574 336462923 357884034 629116797 958795630 827752565 362845901 896998581 945632414 742887375 880832186 768029047 728410655 557565138 284407365 930014452 536535963 738287645 778614290 836751556 687158386 334785446 991972936 178391352 670202504 941220162 308812090 631158506 6648928 130380885 785077125 740979710 666346483 788264061 871079028 917288573 119110802 815444834 829221789 937265621 117191739 773533433 741224362 386916392 478735133 974279673 370404124 983528754 783726917 777396972 411207945 907276033 772483235 637253563 783401006 746624022 984446461 756753773 578767209 707837652 85173227 10394270 467211466 821792594 325748275 269439918 834886080 240145005 977864377 956237291 244922923 681542425 797776441 832965771 886420997 930789284 980047522 213386022 937045777 575332392 862899765 383136201 884367179 927803320 780110499 61877781 65930339 881189903 389912444 988712301 959823022 399949869 807608575 920179996 187866086 497718965 792984169 868049850 449355528 809662979 941218551 107028694 621844353 204289267 910604002 761463611 845454704 897705873 147942209 479954462 920662660 21891030 254507953 482217797 318745194 993660070 456376703 255897652 196111164 761020119 338041055 816253060 881326155 681666453 954381679 597305166 961148683 750043355 307756769 938717638 486169274 340328692 512512228 936246711 826960191 660526502 63139751 960144913 957300700 963165058 220974187 767550541 301884724 574771784 833253050 993981516 919549310 806760562 227920016 682064063 824390799 761260286 738574315 305970994 946742647 622496532 969967322 756978216 786067044 707114139 390919537 944701140 827746826 539250512 294489486 790615945 929910037 466688677 854561863 889765462 931937907 803516103 84519598 810844632 976592621 395507274 812616572 69698275 274842169 880342405 937833762 818634557 272264690 711891698 696040537 829960775 617796464 974279130 813404720 915430859 947799485 274029852 954039667 458517429 530660915 381040613 733887105 378846150 149991587 792997696 721910405 883075460 327893895 935229189 758295041 698924369 132243572 822805940 996573107 906776575 988312552 925311883 864732169 887103143 430362588 239146974 791741730 376799632 799474520 979943768 468447193 246771956 911376342 856970092 559397896 925719785 236753247 205587443 967148320 135948573 769126246 866073819 987831291 878471676 531363035 159873164 930653611 845432934 901680181 942991326 249868462 740219770 792965173 285135857 673329479 807775470 346243256 330877929 657000262 15097746 837258704 783099522 806630001 881799181 500042869 388849547 550001530 879259033 159395277 66455905 632099688 189725434 950578078 866742901 465328965 450583425 989474799 856826667 147332051 915192123 786722036 672285162 513645537 249681613 10802468 843897399 543088815 73238152 930158931 697406267 685596907 246692047 223161506 915979830 479077374 447338120 953290853 129207567 334420121 377242337 809447023 143223166 962456548 960264393 512891010 578149688 909045034 356056296 902124475 929915560 857646198 337604018 891090740 346747786 896987306 909243610 372630439 823999271 745223481 150115182 882658135 632147193 807545175 740278651 609159018 40977180 419706288 21334186 905580108 727902895 784021339 844516124 353799287 916969316 981086206 832701279 713426655 694586118 469930828 547168646 915722137 966784478 774275114 694657738 128757275 821130360 777589958 547815970 926590586 755111115 965419345 780160654 733494084 762975405 35775501 569412302 600411505 649330120 892805531 760381172 291282332 464065361 969924727 4582515 91850904 679536699 881121038 394531707 305135311 786953211 918390883 511193819 569085409 271826368 696048618 466865102 568840590 530942971 946839689 952999590 791807514 336663995 619324608 62177534 487732195 591768969 809110157 964025680 832310856 151939202 963593574 827700776 392719353 800879897 967856298 940808621 780521898 802327278 585330648 848847402 18210457 342424836 156482819 944908057 55647042 856897368 767368531 761967165 345699182 807942189 585021918 786469877 175948510 853413238 905321030 919990254 896755735 752890692 808491792 637171394 811797573 594607480 843630850 118488493 848339855 968921298 954450654 19274652 371941393 575075153 428944143 652754296 290943497 884593102 911601576 654740632 157733950 926207720 964332780 854771326 371328068 927889228 996490425 716149477 575504160 904062253 313471730 33949571 178655949 378347175 836942144 31841088 624422352 905313703 827275811 262763726 193562320 855366909 436933046 843994895 9759430 763970804 920448194 490202277 817664393 748913594 760136399 174675990 885482147 80694853 963658318 813579505 786152602 264344639 217755610 650216603 43966471 858507488 750958775 878113842 808626494 843764086 369393078 320089936 863393577 912878368 895839072 772193629 833794167 838473731 917116761 111505469 929685558 832731100 659519666 806903195 961419560 471430742 608008131 44087704 844653973 409569927 937060714 803284825 86334290 748900136 747270607 773917228 352581140 457964395 881383326 310288842 776328952 522213649 874057079 687995254 808449571 696799864 795329347 860583006 923548988 878610904 934948109 180199713 983366606 501632276 667357044 211233457 518170290 474629374 839110461 570676875 103723616 462117016 289582450 905028304 368795968 643933862 479918795 961438473 31205991 829355557 394794863 511005023 846686779 960553101 791763978 618356161 770085156 672022650 925215616 20973127 373060214 355796236 157071004 43983987 485981416 195732646 586557244 860136841 482495513 949130003 113065978 682611721 873749390 482411191 292683433 778833317 332379603 996263787 958459293 701361895 892829840 980175759 54200092 945385525 362079367 766320197 761167340 910491208 901953805 958771029 645811090 434497494 75119833 562720335 59624510 787260659 677115917 183885510 859351079 222129379 139504752 57601155 149931676 574719056 653212016 900065810 435080688 989927661 859383871 938901718 225763932 974807894 451819134 689948292 872412870 337310436 622928586 148940843 921378408 10417719 930026277 739519062 117391449 541988180 747347499 228212753 945021171 995634912 202135183 773827337 119858877 935004585 153335561 506043962 718095568 481879171 186694056 943744362 863578778 551247359 763800731 949371593 449412322 671127436 363294329 18719979 761019795 280234063 945232406 324761340 768768629 905939487 825322436 737477974 410524985 804750221 117420308 864232469 763955793 995020455 298362914 620998306 578880115 529806149 819766893 424543444 861375738 741629958 886647505 854825788 855976836 802189341 853839536 927993832 533897126 902154933 865046721 846766062 261267664 652966610 904405535 764725484 755882609 302825337 448265359 844859981 48258749 302086178 180334340 949438808 411056059 941780254 447225881 926152610 787059980 956272537 892638997 838337958 866562895 988665728 736553671 139204752 879515619 897407532 358838381 946175312 111663007 451251432 782820439 808604190 941982919 791088602 21778231 125662844 845325718 631967071 874205276 517940142 875885468 803535335 159260293 243248589 785364551 208107824 533137207 975011227 886832522 123124023 8236918 805191716 450183992 670369422 576622651 767699676 187542129 932895994 825502270 900623022 929633733 913173584 381612647 805994237 770032068 516168782 921512598 887470563 992346049 263343776 792953713 783297942 741087152 964842454 763000465 920291862 769041007 337487891 224663400 906800996 745674302 878002934 618756341 201575554 195350891 243836414 510843958 282815762 723900397 755997057 603174498 482167538 556937198 889412296 702013395 803730018 962193464 433104913 399209248 31624224 69385566 834124115 925871996 55355460 767871973 895867674 807777702 692317952 860059367 857115897 966531367 840515958 862504449 230698895 9771532 915426943 409368477 942866395 89418841 942547552 919374377 223555191 443890882 467311919 847581868 789415038 750782446 605043031 895628356 825062617 786743444 641662666 745852673 893067790 518102869 146843610 620110426 977183767 373093744 357079815 364559879 566877523 890002560 879253431 187173424 414016741 954384951 799122577 619412561 444420045 202081450 974806196 542976870 827861367 194262168 471104437 62810016 362081023 68807585 180874848 425380112 946064833 200140014 983031060 456337051 982023425 757160590 863106604 27664168 953449650 785880405 918689935 981899191 821529475 928906372 780467045 957127002 942301384 75059222 174036707 676638191 766134141 554067355 888416196 107020764 647631157 87628826 881017650 387391200 686289019 825449311 718173185 891122029 748626936 610119456 651544843 547317287 416722381 999302945 38241800 782599695 834690803 765602800 773953829 803354016 742123332 810289843 978941115 980876800 918483004 742391482 426982451 959564738 681132669 963347241 727330578 120110138 37468766 767792186 493280428 62273646 15801029 5511626 990494971 105941840 981718494 140862790 198508249 890379278 964212562 779941719 482071405 796857024 602388156 896378032 989511371 771126850 920167854 968261581 948921556 367969436 619120189 727797052 566054415 783146434 141201631 939830205 870671981 119896797 493171736 243330359 777739897 415012549 904641826 876712087 886693691 801224523 150664098 508450662 840732722 201789694 766943424 653502576 751242774 977957787 953191881 803043310 247689841 960474463 903473815 860766329 848775132 818552630 742184076 404075015 462754298 954930372 785152284 232345740 544747262 901966356 925136732 301193324 983270255 673835914 761633184 976550743 727372698 591911199 741785766 174052891 367605014 899125405 136595627 267306942 814815309 54773974 988400408 765223335 853852074 983533864 263190633 323619927 266813108 680215042 191490694 997951815 236995055 994295368 893643167 496519370 868866026 888610100 798894070 384436507 748859473 20718723 753774916 804162097 877029476 375375425 827355986 787836093 23812970 397625020 536483387 693879025 155162934 937669901 246585080 217368679 968876978 41612360 779605968 801359137 673516087 911663870 361249124 975453390 969617536 736946658 781133117 922195560 289922178 932894667 2293871 274059571 947376188 933737138 763020007 901305355 919036064 681743570 658908814 122363708 664755671 287252223 754136428 846340612 539370406 623097443 747408755 925884609 258616096 256899786 157461624 196771204 466368299 883405532 831602992 54731269 817093601 853980118 354801580 759478454 14492839 347702862 845814008 350259864 583663285 897652969 806893687 235350269 589277372 969096801 276684654 968444656 23284978 71654402 218504010 55282088 938682982 189250268 832892745 860511115 280867686 967217944 21661426 999696170 977393400 555587285 586031448 820269990 624016248 348113196 539532408 553974700 600977898 844779314 498800459 960715807 72335105 481327176 392772461 476914415 741465156 52212873 567231264 783472778 470152126 899269554 789867953 455135352 981818426 933249727 603983355 178048554 873622334 565714776 564719434 780500510 25266485 877080768 907132410 815736929 568453125 895399064 836974263 352950093 830772635 238469082 421928665 871105974 861988581 523117203 570502550 353028788 989464103 900978145 102812515 993787856 632468924 892053395 49946531 36644433 2772634 164139570 599827283 856096765 730154131 738365987 729611463 409780931 500775814 922482559 881418368 781945048 538591895 172157016 840901432 812374864 257659645 918575320 801510476 614388745 866814290 521120838 273432194 744642131 190114863 958168387 849523565 622365790 844981737 89699272 922571686 74476186 638920451 872136251 856540962 247251810 841803197 917870455 946777239 960614599 995940535 96346320 948419645 947133740 962866681 509526221 476470724 446739755 423114757 706961828 988540183 752865050 263220076 980338598 917353705 798040270 885414362 103411050 893951340 788776658 995028508 750996752 811752406 986812752 991652184 973780833 85784586 813611011 11447880 972001449 389398222 166118462 170987338 162315777 208047615 978058104 491087949 791759657 926282671 706691674 913894482 968367286 300681885 708289745 867557655 783504227 426365168 992228844 645242512 826240643 267768457 991416144 42606087 210433560 761931442 956444071 388822821 982049812 376749935 435546277 89256948 162541361 4353846 731600686 641085794 950606923 607828634 682195898 827065218 826664987 977925817 752630841 795719508 593534445 177049734 564416063 917064659 672663593 259975298 288632799 979051614 716731906 575040986 847381532 552038516 944388519 865203430 975717269 49458551 971701322 479272393 244756425 891853835 31730855 164392724 960249230 461715186 936130035 784817563 228258724 790301020 466898848 32305006 474614704 809276861 872628375 505952834 921793462 991335464 181691040 853413154 579957479 806873082 843269573 166538412 704995951 989358121 995513074 939614195 522799491 759335337 988475940 325346854 535298732 757817553 620670540 777580130 819834980 984355169 398180241 394805915 947005305 143309396 992013065 814922624 929699756 805111559 147857671 952400954 193638790 995004696 841080059 829847292 583769536 153690081 738048181 989304919 954833295 200798456 841864394 969900548 135093877 926042522 733899384 959827326 761226891 800038963 127431334 968582245 446336328 490258884 853067224 755412518 724706545 605288989 943959676 786167985 869503948 497655419 814271419 599410873 600583626 215736488 825041684 833428489 658147922 55626586 119839762 784530442 958876506 951954029 658741163 703165005 132630473 547468546 947813559 996519361 796909500 918939050 551294641 413772547 218948590 284460792 994331865 860920262 354240384 248877825 156168821 116648333 953322543 982315437 148027062 929453912 818195688 844984187 399465556 767979996 165585153 163081530 546604917 860640844 971663552 295887236 814423341 291810677 685489089 256109232 496309861 897132960 156790098 106584155 848551338 506221539 818843460 185874108 587095262 19521049 795860351 965621242 976412698 361473564 213096466 727926934 823237067 764501106 739126058 744351820 647924471 745034249 133186820 291497131 465849693 98386709 976713104 949304109 879215886 161801078 991973359 870665166 30410774 455499439 524917692 391825658 966877293 393731878 277799825 390515547 705873855 750309547 72987917 423422393 578215913 866682407 182312892 813394744 849746490 432489541 834373978 91091027 270482132 807704129 231364101 18832038 124920234 240349205 836978861 806389365 796383864 841338001 122460425 908141793 829261474 862185622 227231739 821771968 535194350 210128735 770878737 248742524 240670917 516911122 210939908 165913827 684337042 517607005 517719519 310445003 840573734 761936954 622099887 59636453 924908425 940284320 919422394 855665786 460400263 328283628 459985692 865841873 230580377 520404587 690125945 199440835 981778458 845314272 752015623 932285916 249620413 860734776 542062283 854840370 398683064 852250916 17636785 291323880 387574544 548577600 679649823 889848065 955490129 899975398 915155881 841146351 972790418 51209367 38778832 807992285 57160919 936004759 451928013 619126923 223618696 186484470 29083148 348186733 974837258 974636375 790717773 844703289 944119852 976946027 972735320 928617410 939299193 969665326 935850203 133714078 362705964 87686222 744472510 11304791 869007606 857776304 902350873 511361117 793137477 907176532 866107214 73243297 775441404 602900074 801179334 63089783 144958818 258036696 781940627 148177184 171418346 890156154 806065638 757377596 83688830 947457595 695649960 217395287 928725886 349038893 970032723 334224679 963490143 391624552 888704571 910272882 900373075 629085305 863525974 480691668 994677828 993187037 941406949 709577406 471208052 789403028 644277999 22259131 328422186 58187061 989629946 956477244 226820981 706802258 870405819 923144924 548989074 765319344 703316442 969522086 367036073 468623303 472012559 190649512 969501938 650045711 969172282 40364888 550829893 829736799 977848450 795938873 952575581 679459821 923625489 811600355 455612834 825607531 538879702 832620828 356370030 305554482 21359168 128344016 860847896 843264470 794432774 749281578 975824708 231656321 604926052 959645201 451473945 568406217 246011778 995938969 41211513 865658230 938341228 956368101 971948921 932540425 838276865 894165634 829788214 343911064 315588213 965110207 911706890 856578960 692443563 903348469 983011969 305743739 885266471 596110464 933060236 782445980 254412956 922187145 467956324 934880252 737020247 151913254 156814057 854216554 535165807 866314732 424486093 76139957 186265238 969415247 814231874 596021442 216235566 434529931 433416691 778638340 20479329 958570292 271362275 764020380 242210334 706689319 810735361 832734344 715061447 110175150 195646411 993916090 738126109 331454744 912416334 463989154 950071346 997951813 296159998 821248412 982168680 790851382 796590163 857007634 824414807 809571270 726225371 230677649 240980956 86420665 856324248 375295293 928800966 912510991 648116133 409563133 756255895 54149653 561101698 975667379 53523115 764100577 789661982 898423113 141666945 507050423 380235547 996146926 739876096 637153273 222749371 787699099 816007887 547765468 496161280 819669248 832472398 504637246 911114280 666339541 739237590 753147458 847109048 416474268 85952044 203843597 817290070 143293256 25128396 739175227 954936173 751399279 537746560 392499689 672939448 362607160 66717460 483905075 420715281 826939731 968584146 705073761 415476246 353689139 767069550 925962821 36320771 355794223 360509069 847772299 954477650 336506867 384187904 371789856 643556636 169056852 570616775 471976056 816844960 948838318 131224040 486703692 905878780 877147346 439312231 505522431 858229657 460789503 399769279 666406692 768778682 15032230 721032281 569045415 417545184 946455689 148666629 478040957 981684908 866661154 724835662 507280718 938453045 275782780 828304788 995412808 735078032 376609775 737120520 280065652 474912297 976410456 390844176 263542608 393976610 742429284 951504828 258147188 113576237 991366330 974144208 197507083 954795752 798795943 247833745 788031296 809996867 141916781 628140158 729584348 460856778 429813180 769158208 934374608 679576624 811606243 104900690 887340527 50354918 185499432 305813655 862648679 978995894 480145150 749365465 811698963 261441880 981501463 500313467 415867630 592424866 835957065 835663735 258560175 663717821 576498497 822786715 73713707 335210667 994100581 221490372 813553923 205965196 947191462 654149949 895383403 691248021 142519859 940758683 298800125 849506485 779680099 94753558 267809701 698836110 812855407 421175237 708346602 461954145 785586962 216380116 739315138 956612379 140618881 766461656 499162128 71913303 843762055 765876181 527277516 65032867 217552735 963243764 848050298 644053827 772172582 345670342 463384263 870392385 452025374 968432203 924311139 777971822 999880341 746211405 345176126 864104310 597802000 177293141 107848003 775263010 297530098 525939682 514219060 904513489 701528185 884621530 881118901 898117064 254517910 127727019 97101980 406372644 559863267 626205218 316105032 850802400 977504357 728286642 622344184 199911891 900534809 873456966 959235312 260969168 971620573 339273093 810956033 997325202 833187489 860791327 753687280 991696440 899753947 822427999 818017483 927854745 472469932 572491102 340571853 734174481 910544582 772355079 896210903 87051642 906509031 841228998 781587548 391487426 841476823 913561986 551009150 764478266 116528931 985013590 746150709 564610794 359834880 825148639 308842777 473459664 155836084 586023826 731764036 939737667 785426349 438423060 843027338 282530958 402062820 381203306 315885214 281848943 959830888 436402572 914183373 942267830 76864604 865050488 155176970 885631399 88232721 923897238 747916861 965011150 678492529 114146025 344130025 781561442 740094989 941232384 500434160 103318252 903952801 434555186 817788530 605944705 951928997 697404886 217072111 974971023 785422620 421713362 884323169 695594889 879562644 135883935 498341732 873771428 458475474 883422387 269704460 853509289 790743369 674828009 621323801 804563885 348781642 78872249 873261818 566903559 52493251 357939578 891545720 274310214 695393256 865156668 413914969 916897360 67163476 841821660 804954311 31784328 701627919 447593711 965723146 847690753 790680760 995938824 236410684 280120737 905179295 788840063 436883329 855382880 857943044 565058714 837976367 909651050 147162346 604799668 69922645 12871085 314111544 527808554 382909092 881689937 480582004 777804998 646388304 415492252 149538382 799167097 961736833 937726995 822735248 981432643 234714029 62106859 921182559 270502096 527693699 480239789 73372840 973729713 104765989 754614736 598846229 760771968 69969613 364499661 806638592 798596952 764880509 611031373 5981795 904225665 758144010 760434403 957542658 895040144 914235367 687902150 747864840 235120924 772461061 88303999 370194477 819858556 360218762 131107565 821875334 838370786 928877223 357303360 7920427 883742812 836631501 635173857 433828762 651634737 613413848 289688153 201377284 467729993 184829915 893185799 909060459 805197108 653809763 222159462 59951302 527995106 498857776 389646729 984481041 867528045 377990420 719583396 306081297 295051416 494853251 20303683 103412516 862158491 878300744 839069770 705258217 85263109 111191940 477107449 973876012 845982016 741713389 98261810 54756096 983695213 919468649 925410482 497263620 537623410 338385615 8405097 982224215 418395348 683313311 758121307 823441607 637650108 394235639 490955893 936627317 337356210 289326082 496881039 827157023 478479575 874258580 768249776 286655627 424508770 747862655 475809563 257241814 967730585 376262300 671835910 745733845 942276209 456472425 265573207 751238038 305250886 891069448 90155865 814762626 9028616 199508118 963577941 878929974 434877951 462516439 80772458 784216445 120784422 807177249 967404134 331145077 164240206 152325232 886581662 900969427 643536686 983970012 320708737 597546806 838072649 470185567 242290177 769563349 543614151 785783007 120789893 647278665 611366514 197162809 681310826 796490998 976215711 211745361 866182599 9335819 371831001 783164311 925704504 973268167 970338155 651975389 919435615 430182548 487317417 441186711 236908972 497418209 949821502 216990925 297207854 262918621 950674176 316583236 300876151 133527646 752441483 784834201 751563564 433537692 807795001 816532339 472879414 226188831 199190136 988475098 75681084 916271735 795870622 671113059 141071425 906529930 424637231 60754670 418723798 452589045 886495470 265171524 652306831 983469743 943153114 903845527 829074509 12240938 83411854 203836488 350685200 918210832 305732691 398885583 985158497 528798745 840331157 785856182 576957725 880092764 894517828 127187639 542897124 854025872 806032524 155986158 354639253 139546527 839106143 977510218 687080784 894369331 864239280 468882389 870169485 937593767 765365208 792847129 851949240 924449112 880251529 62998437 925391928 926577022 988058432 878928994 103551298 364939174 179937220 801089533 747613021 708196067 450692517 162185943 942104902 939441374 543421459 208830817 795399449 670179356 927312947 747345658 381792454 972955633 930528421 942240539 975966317 356252387 531133544 901514767 39924773 750762992 919656737 925899617 862474705 970658422 200459638 601236269 825144733 999455603 532124561 118425639 611186159 251819209 148662715 964727541 145761812 895306125 585669282 799917632 515927147 715944946 840361674 98442589 712609817 973933158 864501690 219906247 909370607 338896821 741191194 858647017 754114418 883994855 262158828 275845221 863617649 927131994 796429400 537624210 760002399 918453389 782463613 180390130 587769430 509298419 779945469 889196081 801616840 683039195 1208763 438210811 967688070 691003272 800843455 992578293 226343013 943682919 978747077 921528709 93597740 393886086 284613892 929679812 320741307 272911297 805176896 942779702 683110823 802045232 795519468 930044901 350976863 596349823 485026292 47418976 423937089 775540488 836117607 934751242 545962611 861955028 353317309 587722617 264141827 790517921 979185578 244648478 847781241 189800569 687665228 160274144 815135995 990494602 898447125 770528960 742904974 586826563 54284043 447624856 51077348 954698872 902574206 808268729 709221187 56508704 488372517 364499060 667135091 638034998 847917868 440723753 902936611 893114260 310381520 975414508 756817563 906722480 225598046 503618748 802652212 870502328 846178925 802178025 349886801 166998478 650773786 216072747 270820520 82934296 34166379 311088657 288246514 781992126 931303651 57711645 864635843 836382404 902233885 384896125 341304782 904474115 624398605 626409121 881425537 803822645 931649710 419162111 758983233 865293458 381004525 916108609 817460282 172538123 794168925 872849217 222720934 943063185 422670232 624970094 994425171 347403179 944002325 673130724 960647721 688982923 412402851 739342212 549197716 794718573 962460185 108158626 827355159 112554854 783505879 135561523 523235420 738626452 77843554 173165466 62941669 623367901 932568971 791799138 632657671 959257011 896489479 39783352 542835021 329175356 547261586 771532689 125844449 888945696 964289268 944745848 711921301 340042254 956269368 366074219 737318731 166914848 996884745 746065474 754947818 324018490 425064032 107475892 760919058 880281154 830039033 165704628 448035305 865369384 923209075 438228714 93910968 590972293 622240505 962979782 566581946 867294183 845843594 828469525 260385810 978407490 775078741 739780352 887113895 612392132 883370200 475608652 500503858 969976238 108197364 59749638 725198404 345885356 811205819 952835537 846774191 518786628 409695836 707137160 391441171 525914684 444663331 745107052 965794760 270289754 973921373 934704926 157075677 841305170 801954712 485672445 35138756 495588270 426113174 159832425 964238032 498618880 824757055 974272450 644997322 188542237 380752004 41318687 990801679 905450593 462753910 992325978 625944115 781189273 903308509 417747884 1536664 768707656 873314617 103268708 511100486 100423279 856817580 579558954 740234062 306996799 291548104 166213485 51791836 814133848 773445940 290236013 531362127 889307643 378394747 547973617 936404515 239074136 59423833 592671837 926444437 232414123 942471742 999732330 814768306 17107885 562941611 278542323 258977493 570570732 713195457 136713542 837398570 952730339 910216724 790507872 183569125 926648460 6645687 608267993 893918719 878892730 370684612 111415499 757621460 919650925 54649156 116346125 980128317 912779534 146769931 696187798 170792627 562040018 700559501 941132888 845354453 542240487 548417358 47343043 934124303 900278608 855552026 846679655 958716902 974231260 384327615 454812615 835265078 908937289 738112322 830676742 185249501 630992168 738901537 425911004 913073499 83668168 865826501 486780921 209795338 576586258 723589171 284851911 852805165 888677332 925343228 865348319 673645296 661164113 689760339 138746383 729168871 79025118 274214375 920081921 473376278 943492038 615091017 878114239 809844500 744430675 659369847 638045445 826430400 100537149 672254940 791371014 868759651 621764854 979152250 846907236 298586590 956212419 191294939 774089688 228528047 482706960 577144290 20221997 812814098 135030627 284920251 675720234 214628592 998944727 198062498 121372439 115606927 796015431 857782941 57967815 75571712 802314059 772095016 391894443 587362176 698613954 430025955 892572041 57905401 592390978 724533861 929900287 413573641 552048893 671305103 779257923 635514481 821342680 849368251 974346063 356161058 595613359 830375932 158231724 768611069 874719540 677621055 944914668 755960528 140160907 285477027 211828235 828722802 770367790 24170816 169510594 93846067 609124684 759801168 179008741 919815479 763469066 998567437 45715148 783844843 631470200 746396562 936776560 989430824 879640496 834969235 882484492 885257494 890151170 875921047 748343207 919894531 463304745 828810612 32039108 979436661 911191641 962804499 524044054 375896625 419164734 898927307 625900604 950653744 595075874 644478508 912317921 783030757 848534057 897162053 275347885 850485939 492601815 61404885 785744967 150963379 820738262 595464168 400178725 571123523 367030499 599525886 437884214 856773965 163194148 890575615 968585309 874900095 758053244 937127706 457334148 360767463 997756788 810621352 418440564 836773404 339066711 805997566 955447667 918906223 749882853 810751321 902278045 867106536 357909880 786762286 820108107 649783692 357533586 765749747 95892867 436192768 847672000 632197815 839054123 767191276 142569100 913495456 997528666 893139811 922764033 896101317 375133807 191274400 926537959 206352440 219417298 601597190 773377699 97920716 237013035 395006016 816350786 415290624 585684708 68733173 60464966 844227008 417180200 767546640 829045380 996660059 856059610 656649098 809569946 171867518 197658161 459395357 483949120 71504055 939910466 798349127 874801735 795428237 107816262 716698408 499445892 926777173 231256375 659257688 480831800 978008101 719392899 772258125 847115940 815513163 954077041 774022162 417532212 852670268 741037552 919538831 929494858 149923809 244265572 264642290 61863141 912556747 11632733 986445226 817794859 896981828 754146666 807356309 622265632 828211193 263917585 907317317 862665520 985822777 30492567 772413278 133277993 887393620 839638535 768454096 542811263 298129578 768011328 37628168 783669752 115469272 745181598 742656570 862710524 243347719 309688497 934195105 931652511 612899544 250132 800707708 964322953 991783100 716091961 519160828 421635418 905568248 751778379 899390643 852656958 170799825 848400790 296069728 594503805 752378385 420710754 877255025 794926834 794088130 169002825 903938208 931967621 524524232 191408524 901268218 306584532 943339137 223608046 214753333 477821357 990750209 80274342 808233278 402904052 368797632 878854488 372086456 989860833 772366977 201387188 509548945 831964460 223805866 914342281 834895859 988681904 523341203 18817222 536352800 906564439 946990608 186735147 933433201 997881746 875461781 885835159 724005660 435471481 122839910 797459701 925166061 945967849 920604607 294505035 335438760 173632672 912814817 766920465 794667854 242499957 643645960 520712268 825222611 983365639 922653074 762500678 866516686 20774025 635662982 384592064 420731406 917198642 258975183 949764445 601062013 594078307 799436889 705910849 928144028 777818137 97362132 798623692 821796232 726355717 779614349 479896016 865662974 221969993 791178738 918911310 958664408 762014597 66797972 306199297 727684929 470287127 793375408 423587155 428008580 174962945 742337244 608931217 338508620 961745131 352290761 420731798 459774029 174951238 286557263 254141263 16864930 616859944 856889042 820885216 611323173 693987637 75327847 108235036 745367807 762640931 298944126 807582769 56222728 312139584 325227175 986747380 768010358 389537857 641456495 568893429 874023158 886279325 565080992 370722618 29922443 974045525 214998734 840048190 485931364 995498906 986091425 737136738 329343143 149291509 779895691 278913513 179942616 624338049 605517275 504460052 993714993 673156612 804259250 784406316 770267932 937162756 382229213 924373620 800494366 239140481 799184832 909698691 283772261 701737248 730331262 804236911 931528443 738701942 947077672 244627980 362519076 862116011 925984533 68554720 868673209 500880173 185987186 501117510 847354746 874198188 295625773 140259708 904925665 588327315 841907172 419748248 504968329 742455416 708473729 746020724 686938608 289960070 851520564 850274571 665587300 784051352 23852075 783101720 881007653 963572594 525480056 893121643 86816682 889980110 855561408 731522359 911883219 524132067 634624797 62992965 464206171 793636700 762893034 909560672 433075019 894474176 928363344 867675260 919125378 400958474 895578674 834075978 109958317 959951319 752108393 461599899 167398297 951139841 501373427 280347907 706749369 768384385 849493539 765575172 774267112 334475477 601214381 915720786 944398549 824393751 977212892 990697815 826948100 761517023 947345173 493158424 785942222 856432056 661100658 596377396 469426360 892115468 755436212 4497479 996109141 395019631 823231415 807504695 808947763 776702990 779394873 631392815 227808184 194880797 860027110 751959643 850591410 983358901 78025097 948758387 976072455 895224144 291446112 504710731 862267008 988732139 896485022 756023617 759573022 855567270 585531285 660441503 936808796 980321047 64959957 867186621 964829438 920518418 908811702 864391372 627832160 327255732 774252504 329558763 168747491 961065631 925309989 347302761 845581144 718094696 149399609 710570926 832046824 907447706 826794436 791953897 865499584 979152151 884503298 459159897 589233738 350420818 479167442 825315289 653261708 985700479 976554648 895717231 989906328 966747497 263442505 827601047 636301082 409601276 754154441 32960737 199356037 164365749 205795871 802889690 583275848 858805279 44471 856944231 976368375 737587477 806028841 697540568 358257186 478130672 565997461 661932406 246918620 624144314 741751316 657904875 973090885 773512719 831653227 118265125 781148619 346487224 735261197 463494148 977854107 375790575 778997723 265436390 785999968 352997921 387538200 194224839 883062006 854818521 222125499 764398925 999050381 432615124 186011090 939086848 982992797 767730295 96361440 804030746 937923129 768827318 74233086 305276897 839551100 744730980 911025247 799815470 885794279 819422617 713414521 530700716 860861144 971717965 265333653 893750723 883676574 930086877 675674480 974438801 184637176 739223365 276598690 943084346 274631274 170429194 864933900 447017883 793247242 682830614 40828374 828393091 195320514 708298308 742072448 768343572 358928078 752003617 251508635 93420322 846990120 888030506 808091765 645897416 549240945 826242479 398110517 259225023 938168097 322867093 699287066 987103085 707371569 889443578 908198146 850675249 511303589 891335305 126276830 755869468 20358187 229805521 603979858 959813966 756188208 153523517 719694995 863814471 160078758 647238576 407030586 694042410 134630134 581366251 803115896 833269292 995995346 471425252 1193814 959349816 903955912 829483606 871184743 417241016 654847696 762787421 818588898 367680114 654717074 841105539 604215614 69084440 995336787 863347768 274589225 995159579 636002461 875358972 557647587 797490684 345451990 324916113 639913967 792477965 779530425 265194100 895105820 353109125 21773190 328425000 978092974 787126476 826581882 171235887 352525118 830758197 552693846 865987370 40783202 214514246 90335703 963353920 459586687 992572048 741093503 51538077 553535494 608672385 428128056 359865275 355443108 487100108 990494755 841294254 848765148 766413048 928727599 860861146 769455961 968380275 136804672 353021033 768671356 492060682 743970755 758372535 776900000 633927550 498437550 526001598 675262046 823921296 747217376 911640227 771045571 834245641 792793493 979194593 949502330 583736541 327402534 771130722 791263890 294884257 86934159 404528538 974275963 932193100 501911074 944653740 935476865 960879639 754483428 757351545 393973850 32589536 939649720 414093465 629107891 809510450 809427617 497841619 2590639 837126423 690512834 348085059 840802442 842723391 876334820 532419109 261954591 471694436 600767235 815995509 945874812 892870086 271667855 278975667 578547358 366197399 983711894 735382269 827827005 861886179 502715119 951804528 883516303 81320115 767775867 524579024 241657117 576673997 945311550 987223348 101049464 386142286 953686538 534936795 873142685 541614618 528007437 665318056 794259341 402152603 770119376 917436618 847695168 33042217 530012594 427719673 735230148 954199086 461929492 830434500 215899661 977889796 941782664 60507866 28989960 985940037 125208362 787143144 413218126 737020247 907308280 911258052 176694173 588279716 940931218 828874023 58210794 834694067 804096327 93736439 821209392 782165151 995087579 342785980 704358038 272132110 982218585 990501419 641428533 712809001 802323007 482269941 283567112 933049309 969130356 677225992 832381879 870272895 179299560 775266382 763674163 310055800 531925601 922478123 862552758 596734414 713978711 769092335 908961821 319495149 446669226 809599165 796387828 519129490 764498703 770467674 865407557 871302333 613441395 365057956 860525704 256221101 916911220 780126209 686367090 752543072 680525203 687174054 804531487 7469092 858965360 479629929 792564485 984943602 852292950 248346875 387323911 335835061 807456446 989940115 781453198 753512653 19541151 365083537 575386344 897948733 749674800 880343473 358204085 805444234 753665018 405551429 338581576 673659454 785910235 863814571 292692031 295507139 919767827 912732149 919886003 991551728 881079487 474102201 144411714 770888160 745512327 34675280 218169209 893569757 434390598 910256680 213588575 781627948 975035236 765118613 23873448 496254644 761746823 534053725 477689399 765592515 389248373 773430591 748933867 54497942 279227721 345744743 600041078 514535436 748536249 902690920 848706770 776474909 210861699 418275654 918407791 742388896 622685498 788198473 192069673 909744694 166630898 829456623 459112480 843821730 859681664 64394852 797172342 817740573 561344374 9406059 465688471 97513890 926758404 266585852 918719830 867854085 963182091 614103709 777961060 980377509 885096364 753946229 498950609 793708237 651028976 811283227 162719245 136241463 871883306 174910242 834662510 851620176 278352148 849231635 425482999 463348755 792189528 447657819 911885959 903180269 835179433 256911973 964765993 617071884 849131252 246906939 989712940 287129470 127223924 994572827 353971881 858208282 888722376 853180244 770838855 293824250 862158262 870526595 883734898 83464017 917675362 922399424 972632379 780189508 318348971 829025427 319598295 780715800 180847806 19738022 628002942 383523707 798125817 274872448 132375907 795579144 11421002 942753973 653518933 954833185 908437509 667378859 894072591 955975518 437329227 911848954 836008370 239576308 430516800 747236635 155916518 839109335 980155353 186563243 655545759 918237806 792888457 771949457 610274911 292462210 292371404 550418136 658032390 772440639 927694564 789478686 141298385 788586279 795834854 967939371 899247383 941094382 808146339 679898024 230342090 876790571 999084959 949966886 409309488 515854379 312672561 407133037 769743875 923503709 857137021 949109316 898979136 465651586 376774088 314125629 218286522 763503844 649948028 704811065 603184096 400619131 67080693 834009088 905630606 232909867 51566933 480066761 928967858 191698853 739011974 844561848 819078844 233002167 793177416 954795878 873116351 545508671 456426416 394109889 883150247 510576839 860044233 955346770 806373969 355397307 247609786 330888641 746465212 959426448 959188210 707339284 184714876 993224761 4819905 446182921 196045472 561661189 236521839 555672407 963897138 376166860 328024061 128998009 132684541 737129502 130462313 179667563 557849114 257161694 118262464 885772881 610169215 883300229 752929654 288447662 748896469 904718382 47218845 820681216 951094945 557709765 13947622 437800277 904389076 808707697 788601587 244890399 846743457 67919828 270869227 881833764 359960863 886299612 27427364 415185921 228015881 792573297 521045878 480800772 939183192 189691351 614832619 569019723 68239294 202514797 857450582 215311074 307962774 622230816 788891196 988930193 667017 543006371 707744446 641241730 987622630 954560231 857971386 937400429 283826789 964013674 894913063 565050285 407160384 887677070 795924729 836039740 843551608 944072080 747402687 260858281 129471965 849225993 982655336 764694392 44946088 14658716 706601891 491860675 994845010 552114785 998520772 753262670 892340142 850215189 818022209 970535371 838409226 822786973 134244374 240106294 710316632 927226835 955504301 833925146 823186167 513487288 306656632 448514005 917149312 64350086 869044554 624028079 862887451 835031030 898773105 915179793 654705982 560029164 427803608 871493839 762868655 62202914 53043701 115181058 911759578 829062583 711239607 975018741 659320872 303061376 842297338 755343022 919772513 694015175 738721170 339964357 968097407 493808757 159670517 901688027 751737599 764706907 885417483 614207489 601059799 135964098 910698491 925185259 238493379 366574889 703314381 649563276 318555531 805469670 980130911 372858780 370092591 43476358 433506647 750626411 887646685 404748681 179091531 366916450 239597630 469495936 963657928 641479698 354409420 794350747 473480989 716894161 382047762 786462473 963683567 549004775 535423206 680517075 923381459 562300956 155599169 737334406 413290695 741812404 22617252 375843773 675028957 650410907 382724454 709437435 859643580 718464621 160741773 527392198 969980048 591206016 903169496 791311598 159839187 779282812 436762035 405106431 35864426 643245311 23064701 801621495 987625187 346967019 61196411 643171873 776242804 677966264 713652899 776287209 743184810 862582517 460211414 933505985 265935026 427572826 914073612 460578034 871685281 988946181 740353875 906019813 899056797 99819602 974996642 829163651 382538364 822567228 124440251 969189302 44895601 996640854 747922170 83165109 995164238 296687301 601861442 785261169 952735696 511766088 799118456 755562064 171155446 873679775 107209507 359633368 866099075 991912967 813442166 383890577 684847455 993551572 71169791 27236973 850441040 118820329 802126207 846454497 995735186 568272952 134788822 660376985 765897987 830444391 465531132 261436238 716994442 985170007 868089227 960566120 783279755 885508903 724406636 395914294 468078189 774409059 408409838 141131986 335665379 939862875 828134670 884546750 738733802 950348338 745803522 784553570 365099674 892760793 929847593 599330298 503739325 518316658 799279585 715665057 280739129 65481252 809307966 112549092 153375194 165678615 945296762 650352948 804849895 410873463 289310793 863031443 828347998 351961299 878636784 553559068 873262277 518395402 664601235 967908465 602576543 963727139 861042947 77830425 631760544 768932172 978047848 971859191 899069788 819934070 338083861 948122173 867821091 341766478 898074926 922876491 886791146 359818197 150988461 884571575 920153110 124451405 412465332 365074179 760608493 788836728 453226656 530526776 329631794 883529200 451802572 968923756 237566409 761631762 113982708 227817855 967811949 662685390 784433699 780064814 234439305 34195677 847843200 910534557 856261324 964457547 727709361 984669882 798553932 660754278 193532694 355961128 459170847 362175764 222712553 2873225 572023930 938681304 342050483 633336213 749519162 532776559 336164132 274072360 414744508 412893 699962188 910194404 82058701 451743315 590923931 879556094 304111769 845339247 754299226 375303296 974041048 212267564 947525113 62245602 628429983 433414322 747007827 869240956 414355711 984491475 787844254 213454039 74725515 965553209 308311927 862654087 958502961 369792989 849605659 752370114 761270550 758012334 45810278 993571052 999377582 398682572 592140839 380725712 648697612 906789976 306612600 471657620 853562197 511764035 479646301 323393119 141540834 670262824 918279887 317010595 840767122 955807984 136960394 828482371 787717860 904109889 874337822 489716514 584859334 316241829 844515191 76252810 994714964 706636416 528845321 866666607 560122678 825939362 785757429 593259626 847144249 658231848 865832631 278844224 630067646 113494031 977145108 754629418 141164802 759409220 858947152 698859977 514159133 140599985 457168365 845450048 923322934 187656774 995335869 791173222 811651838 904106454 188797335 818587271 827718638 987303350 675537694 282380258 738404400 573612361 749259615 652997257 979856432 998638707 205573820 944158324 414181269 876288644 980640969 993570861 922090192 938952299 390741245 857350727 811731043 991663944 104127212 665195999 199551995 206795237 932382467 894774910 486305564 215162997 935959924 65467998 971544285 161670103 200811671 937641803 664989937 865904397 156903618 296788070 905757042 750438409 415450223 793064937 280569605 955636194 164609117 29304630 948574391 836643609 335819275 746427736 751811341 429324313 424976118 140163733 656472573 658420638 809091513 332264165 924631884 811278716 342601177 617021000 769761723 893751173 113781376 914173261 187069632 78429900 95187696 582835668 773479082 235309312 996583748 485892304 17153743 942952583 550598450 521904531 723818284 620519952 433928976 345500320 580686556 716107808 877362440 651516612 388763571 514267348 52524154 433160120 959499639 881874132 740887011 336566799 518668131 972510845 412512077 743095502 797070800 849898887 716102154 671222065 986926207 756605075 72202551 773107846 820239771 247711842 357607028 903710171 479261171 427831775 737400783 29128168 339078214 236068745 418847898 526672795 845405999 475926658 166859636 459145774 489525033 806194543 552595285 908454736 904668574 737393303 671157499 622573111 493609872 806293893 994122707 963618293 265039886 818805466 850728249 919609562 825630545 13304332 807609070 995523493 164375347 401007435 132943283 120437339 587035829 617520745 387733315 157784309 71321617 165297008 347936505 793915669 527346712 344574434 182292865 861810172 785579998 795096624 10143400 862737134 630993809 672397414 168924931 618574905 172032739 928812694 404945532 858020894 265633406 224920478 583974928 679544962 345255729 936926082 934519106 740913663 834093721 364783914 906895633 969766282 256564289 513132160 651315968 553709447 826409308 122854360 547791912 36363981 929065542 855411364 875363816 249675775 733929123 305805945 943823881 543964314 436692696 970923302 836627853 199515098 587776292 762071892 993020795 149660299 398758372 731249022 803126746 858140034 880175431 344881671 63221618 521000831 728559621 952950789 772058005 72371051 876243934 617799155 503330437 752291936 59705434 356434892 772042418 426776227 895891539 862644462 346754543 754689548 400653477 898072667 545011797 774687361 341696361 147261932 823298223 866134547 847805515 872108428 469003090 767730391 480591885 768860656 969407212 820106424 363147984 364023996 353096479 420907703 355477335 448241597 929565451 788775944 838041004 745846929 107584749 584890695 338437265 192459441 359775900 772179097 831677900 321717796 582889793 358616769 921448602 975637253 916860183 834549169 158188453 691579626 275300079 856591007 610596988 823641913 878439323 566577281 930735271 64091836 398396088 32717470 868411184 872818129 578237104 819175268 574685203 469530573 937500907 290143753 444361397 712683601 307418708 501214068 204508316 559907044 854770981 783509228 924574371 606460113 818196150 765533209 990568055 399076126 281569624 763199145 500632797 580466061 943027604 889515122 957811182 823661494 22424389 614981358 736529795 837391997 836225495 736063601 994471595 344831813 378376831 125840827 415706411 6022214 88799682 844902694 747799889 536141564 406195560 799004906 211365120 906267802 775535633 600669327 937181224 752162623 715766675 674187247 868623119 412190325 982844588 752933461 654785663 61718075 905735997 866104659 216128864 988186991 591081457 858890762 3776920 971561814 656199837 691353596 286113520 579380059 137451066 308159328 280518000 924525998 482970641 843886877 597849666 877728542 497973510 254174393 773837731 490105388 655462406 913761322 646149598 495210656 688409571 262948857 906552237 839998150 248794574 815316162 817522245 713474280 640537936 707167942 937207988 624240470 773581838 782272257 186200393 980992767 191667967 396640785 867664199 849774173 920921305 309209931 752166726 862759690 111394996 204423816 788166952 394189732 147985345 520301988 979139115 757908547 887963705 850689915 808018295 398240939 892426371 980407089 349087353 456357759 884322462 791348278 343797423 816245242 390923253 714938818 599127754 769892452 547303652 759389406 929667201 935901155 924649042 837488020 454065245 475951698 909243107 573297530 851833173 834163085 901908122 147331581 357920067 102311335 449973674 282736986 785654215 902271166 817057999 552329178 43544292 993915439 905039492 980323947 790627816 808381461 952791460 801152344 548635684 867535179 742740256 949446327 546180155 11606607 871761540 781183014 86777838 546859524 845509001 626241381 32237572 181101897 930294102 442430648 921523778 550301357 170999439 507374323 926804810 543871349 34894615 575317199 824542828 991761806 747101206 886177521 840841635 883637944 454319506 742015413 447655183 289280301 632296422 991775425 952069767 678313178 798704486 809455349 359654666 320576778 357934761 779793682 914495628 425663961 406639810 778431753 601590727 788565296 502770104 52743566 853546680 927015840 841836225 293016821 518806246 394112515 777113891 500175601 785243379 590131525 433055985 550869282 634498402 778249776 369962973 269871295 898505004 221881417 248239983 582044753 995028290 540000766 135525719 809096759 215226662 833609881 737346669 926034001 324421692 742565953 93110258 562354598 924998801 409446508 759820791 197135554 229879958 608926793 93242586 217097115 531119817 699141554 389058790 914227799 705615248 970920450 806010916 428201200 894245712 640067880 782600585 944487149 219582350 586587204 196706979 142135133 454862491 662319843 864520411 912998684 783281756 787388494 869747288 397512947 844213939 226317750 740599283 887376753 958660182 308413757 792417949 80656298 140995401 739996347 572323195 242585204 880256612 871320700 248944430 188400616 793998609 746738284 202737550 272572722 585612985 273111193 731071238 705448206 785975994 833952917 939456142 392237656 347447882 339105909 957085426 970921763 395864423 129677515 247524300 146832214 867911296 516820989 251484811 239295927 900903590 689256939 679824903 953391990 529003919 448628756 484458171 644822807 378488236 481007413 171409752 772816637 577411153 738018898 564473088 338519851 613973440 628080663 75093035 945898928 283843166 773203086 942319110 208184154 780110209 542182516 842273536 959662018 45768005 128739376 349499287 750974189 519780058 379090459 922590240 223869319 597202735 864561106 107820987 953228906 413815391 320870643 902075465 895360310 602977985 965449247 150551161 559305098 887308005 210546416 982596396 789190887 624768798 739273730 567633899 729432961 454068793 465160521 787883320 780883526 843339979 821263493 801907411 772386214 751207619 967513981 343107459 777201198 846061410 35433863 258195085 737433756 819404133 854083625 475766459 867969699 176559736 753545735 384672164 926347992 826798605 949665280 737020247 919308565 795015723 777866443 787372927 642970981 793469348 888087927 4813345 676293545 845186187 797995004 428463521 256509804 316728320 423151019 37839830 996468812 702568844 760095035 757662400 60855102 87031359 478612008 475432827 871622651 948412123 248832221 889563626 857438961 929158678 972530123 750127852 763872469 822741335 47254074 261729472 837375011 267602831 214200676 38541276 51219026 56695611 243299100 811101637 730524980 516777372 817154647 989918296 439026078 795498255 582520117 850229644 204546764 566220850 19535465 781117540 355932684 760366313 212821880 916942302 827614027 891758937 782616723 702298133 861516314 802112125 954308737 924523886 594140112 271582594 594969313 830660406 922571020 914294522 384942149 599294122 328008323 974346454 182827501 856278291 694835733 277470186 366491472 319948441 926988220 840066094 525188357 114255453 921249722 669103988 932669917 93527486 785490333 772880287 616434646 263410386 989986994 905973475 807140529 436158050 380375234 25916966 814680280 554089182 411314475 918200576 818152557 173301161 951476578 941270173 859779797 935217839 15053337 330640808 784389667 806535724 869307043 574397197 849234944 757987885 804979221 271189663 905416679 164781626 112209739 798582845 861368738 406292215 512767300 79983586 761611611 831964418 171812844 613724317 485900289 950090558 982766475 869565086 787540286 952930699 639720399 642640124 177072991 468046012 748074929 875792598 168752581 97001634 360935625 800571600 878384146 704498504 133911408 288328102 187318604 936484836 841457763 868589540 520373550 948083272 66981590 56601354 286187393 972209127 870344728 442342222 979043240 816219554 855554833 610489553 710507336 789200014 870937119 868059254 681813396 829108202 517315357 923703862 488446719 664344308 851911821 940861711 367736219 132160377 910171356 53977943 970495302 784303791 289902518 929534689 622329522 101717489 662673996 821715469 488024761 137972785 665966556 831828450 985115930 499902423 76216371 759290825 108202370 270010236 866520836 325728900 987948670 932111537 433890523 35023343 735475302 413734565 718357336 735737523 901945215 999016557 296021141 101656798 617355823 341279821 586069917 958750422 66996815 87943950 794486689 10862142 823308970 745563562 799602860 318210512 310622739 811136599 561863894 273844577 827171753 693357365 894756874 973936991 340768587 338561625 663673835 698852666 967977135 778645744 305100026 894880429 612061548 387462544 103114353 756421735 963331713 967424901 739493377 979237962 902165944 380300596 52237908 762151633 785563341 860828856 835214864 500913284 299798369 926302541 106848938 906917285 358020258 982580501 855500086 940759525 400655004 929151336 84756117 38552512 897546137 880941157 773655699 52348570 910256310 835162214 606278545 849895120 837886400 997268678 537229009 534066679 821729017 628505139 781256531 746627265 491255481 874836377 16732634 829977783 359788629 350772137 708145497 619024193 612880160 699128860 217837431 651716907 526367419 330707782 102995564 757262717 653793449 20834123 981814894 610207558 773873912 751393624 315630260 964262260 567480026 834819567 797384964 822029536 514171760 856847999 982383711 859028444 858669609 920145455 63175412 609485481 764693159 855634309 924438839 931088635 525080756 317553484 21123162 114317061 468830656 573139961 852391204 856002002 995046779 145537889 411752252 266508169 376427370 286419863 814199594 780924363 971379096 533101904 164712782 348110758 892617455 580669428 888403230 974900573 982291261 466673780 563625060 553523491 602199743 920889184 222797856 789278619 278514961 180273454 911969209 61679305 324640140 36102037 971366203 344371563 794758575 873088808 783980607 929277739 855015658 473263871 420336515 677033166 889943739 604777862 942555040 922587362 964310232 870397933 349633448 337114194 447910696 860274624 772915048 767165200 677370687 818120038 769610308 528759122 465077278 252517246 377600381 807277427 811905535 989703826 646456480 985132816 757876410 163216861 464638782 620310646 816198206 144736543 264894960 970073291 853804065 405983683 426673157 307638609 809828294 72986170 892614339 919259492 805993082 813768240 124583924 949771233 755240270 68600274 114300437 842759748 813910656 972294801 979353494 579959667 837238205 913063119 410508002 625863120 364831392 321475963 895669243 873121923 452458387 843882390 231418531 751168262 75681528 980868800 783517023 284384939 741007432 590871403 654879945 176927559 58189548 533559164 986385558 849899626 900040314 872256048 811600822 871519920 858784844 483186547 547020873 48016700 331989032 850256808 670991793 934495126 933396379 83471744 812584063 877932852 890379347 153860309 746241910 756473966 774143278 804620434 612574912 143413533 730808173 600525806 841477329 398099032 129290772 636608298 375946499 864587486 205790599 957016389 737873989 400988140 915295336 936489705 70504725 391006794 498493902 812279256 75265542 808366202 316485007 854396683 190859195 790478066 932035132 504134488 80057426 300957052 965610831 435445719 49311125 973258038 230331188 79611390 93469199 829466988 49317026 833964266 110028738 853886792 94381338 518818791 844209232 826010592 879313723 942079670 261258909 933368381 433787412 383645719 637062334 171382651 850641046 968290595 982423180 554650770 569548388 985915832 331446617 104098381 752281679 706164692 576057353 801463595 965487550 245451738 324665152 835546641 973055531 128752207 377408245 894319319 862255842 262323212 211458886 946110933 236571295 425545862 877493729 772901613 386877183 950266604 869267745 965761745 966160853 923731968 864737754 773141246 930210321 570147305 216228832 987633098 477480158 741666864 864383482 814248780 916652518 848629814 766070492 874624928 447075659 923056323 554917217 825456827 991886640 783524295 49819677 909226407 778077893 302864008 457411646 352462129 9037499 488671606 769617830 836308051 868356957 364238914 913090523 882600235 925467344 181700052 414803592 577009459 416928438 995061490 163468224 937938289 902105882 433569634 388765253 845181120 513333746 853213815 808240542 854160833 20443694 788542602 724321810 361851511 512167797 534696118 359408087 823853670 916144584 398454734 681886938 208016178 38928378 186939944 739932888 55958570 917221916 256593204 826598199 759941192 884585390 2450057 144294594 838647224 774678134 761182055 847694772 825774139 874464379 922576299 317934966 383141864 630558491 936408275 977087551 938444065 651592821 129136907 737020247 894243516 926917592 588273760 821188905 761528341 791692729 854806721 144174741 72838685 980734030 744110068 991165376 732553515 134424886 226665746 349629158 42636746 979911799 176008263 259015416 862888736 346194669 910220019 648099346 992523200 841505910 839357427 845460069 818248817 837190271 715888687 780348930 915727624 16631063 757310953 879569593 315017909 253846787 997064722 782933381 901115974 382627501 601014987 750894746 797455971 663121617 303361173 933343511 884880110 999535083 891198641 838143137 106621064 386355645 781966291 935008476 233807340 3271043 870958047 46128714 843365504 223092579 238472601 883086892 643162056 975971369 218690997 959916015 473785300 785998799 786429937 780289271 896339438 919145178 773678954 748812600 990408456 582384608 942485133 390307326 977231157 24178605 870658816 996990637 932318037 247174731 224364266 130332203 466325991 164812770 913409361 888569654 119130069 682207127 686998915 937847438 642743539 536861397 834144397 230389775 960102174 663832302 627612787 554151625 174366858 895193987 416792995 856465725 904082639 998335036 709333762 231470883 895528236 840573135 964257757 783870765 201637846 110176878 991730537 892926288 955842777 372088925 997743530 750143443 962235345 17034582 857245270 405975527 57888349 725168842 766308501 944189353 609580831 673592972 812777272 999060495 809141333 40802263 703584752 670838710 933123798 476835366 799231492 840418795 304413889 881578785 817008599 814775004 759469191 659077199 167406515 22353987 425570896 773390459 506098014 244947154 818924043 871031585 780728829 982365631 854952149 566609909 968268157 655151246 959651446 704014555 953166548 978678996 409506724 776023079 381917840 395785393 844446530 248636871 488217297 230427268 402582194 940452673 360345338 966592340 490067464 558427322 879467757 850596977 3585767 897775359 885924032 813447928 6337755 596728184 151923105 290778557 926059300 362465963 874599619 669094850 185553504 749799912 938270701 306710281 991249304 978491166 46657727 130607692 442483927 247636952 750432432 728388756 991606749 734026655 870370759 960860109 846696845 156454698 647242891 166422143 676207706 346827441 838488375 814940355 40604595 841762523 878442717 811917909 405598279 873773921 541661568 2699485 734176174 291701460 450178302 938754774 921088768 991739766 883123459 63355888 205070802 979316756 155506321 803344277 579278476 585469994 937890069 812136324 985446933 911517663 396165150 918416156 496983836 465744493 810537773 862286904 816378456 101304633 876587842 865751061 116753575 843640568 941441212 891953895 594418294 808673998 999301591 986522318 652803153 115043035 317293661 856549999 738488265 943447011 289202358 911625027 186759501 935118932 464637415 215934726 900552238 879060569 724032220 988014220 422640100 522632785 228172390 930900408 544457881 980068267 809901982 853684715 900265115 325778203 128280553 863438388 956899838 760189127 843842219 939163499 593304422 961533758 132083684 143652936 995748840 889783653 26700858 363746197 49702419 803625939 350352188 889734365 122756908 939142099 265888435 452043572 622820184 717000731 389327657 749532352 197968822 201673925 648990701 197027515 718526922 977185702 857398060 406340005 701743516 831372512 426364127 416554342 902480159 252809061 764182580 883454175 639304644 740546243 913839202 35159772 280671074 892999909 823188548 858418708 825717655 242119512 115531595 196598672 296773732 903990653 274955537 228206393 792230271 908261823 330490842 907847968 999184092 811925433 970454255 434555403 609972685 736437803 869960322 119174169 900710004 993495535 656711408 643161834 191790945 658929828 756552350 902153200 447253499 102684413 398513576 328858092 667948358 133131129 198543596 45321368 704128946 55431791 548481304 910390136 806761137 100615907 729467606 365192471 976534281 403958100 160138214 951066864 877578568 250842845 616090371 864935720 41474840 615224184 959123280 669167020 207889946 91920424 978358363 889063169 670078265 233537685 862518077 880898505 801362624 918961327 450449506 986798192 626548596 430240847 819619025 884048315 951578199 833368253 963021023 915489628 391091755 837333614 370404144 923485051 320946769 299378608 265819716 474594769 691901585 57155432 774998654 838865405 585527526 933995501 686989646 451621889 921012641 993534369 130631460 977154231 955656326 909087925 94773502 849827839 564312082 608334047 844466170 797298804 440380588 924538653 803932190 431722196 847336974 863692354 143872702 171208276 787199056 739171965 782170157 959477087 339529880 752159185 600911292 871517242 770885652 746426960 409867062 792622754 575529392 873902753 10567045 955959688 876589856 931341860 108893539 387496192 299710956 885087721 878136837 943078400 908734883 822739897 817866716 878202013 397395630 408462376 276019285 100975556 969161266 934828462 956112427 774521045 191802339 957777704 185935908 430123042 880243102 949860365 928152073 573410366 952544692 760528144 253416595 582604226 913259618 526787331 794275276 751429975 752318065 974067839 74091796 468656427 277224045 459699694 977766516 241019311 410303230 679356463 401547813 100067137 689759754 898092542 943775100 533142679 911922001 904924288 731595423 619061372 773948654 860754121 331678170 286844013 501908626 119918396 343092282 644386175 598648587 428299475 765539220 387817288 109781270 148248912 943109382 661215547 756671431 956783541 155025043 875374471 942423328 777967241 863362794 208340714 396104150 709682799 403905931 498417760 233714905 788819269 249443293 87475018 805299985 755531726 788952408 443889232 220599418 910118473 634504334 816983281 961581979 613851783 489059828 369482993 989062033 720624893 457704497 706030903 932965374 768676867 208326656 145559882 847771865 971953336 952348514 9133496 786108030 911736851 812175175 312933912 390066351 897845705 425790556 181350473 262915163 737893903 768051857 424370418 595845039 42436009 825701632 754777049 694822447 834757613 912572448 173761533 854504432 987286461 513495208 885366203 606531642 593727336 646146386 896745869 623959248 321217058 423623672 952431673 900052842 752319795 240561063 454750595 791451085 933868818 949577323 950821718 693956799 809454753 66233053 447072167 877051252 997252546 621021788 320655009 737853873 882273852 706707128 931518584 897323145 309460056 768888714 740323811 563068524 977772077 931198830 581797568 741215341 385525724 601320486 960194124 956812599 954436752 819488399 515763154 403771625 799011439 101923720 974745268 565806850 673852487 789475964 762156882 756253424 251243764 62925615 404204872 789499769 493441838 852180575 331639148 478274702 748491275 818605160 490186475 753792893 944996421 683147649 11468240 612433771 148463343 860683090 874392293 638165268 988885164 263145662 393743741 382695338 771523392 939825300 684591034 892915637 672759930 326015096 891036136 652342139 765104448 842942057 988529851 296209532 931264582 9151921 909600680 788246919 64710013 937017654 655788503 95471785 103054422 781672814 72113974 857994651 869155960 339297481 776080231 874047858 921079958 882442827 756148326 303596435 837462285 505362707 746774502 625492721 42805973 982952028 674387815 898385455 914791973 898780085 835117539 17970789 748373171 946853438 973866370 524292518 939209446 357020575 748294760 647859554 887183217 679135209 106303395 838070241 937208313 706404030 597273322 933490481 949826381 774448088 800621097 391891817 905805826 906409482 852907116 704996254 123385951 170303283 819335435 825370637 870318291 312943037 788672975 571389099 52054240 985048458 989076957 290872709 215448412 655692337 898217689 899762050 774375897 869826766 194232566 375428560 783455330 230141753 889841292 188101246 177727499 817760197 261136613 978072904 877435248 466832441 573095784 917602281 987705115 281733331 920312634 291595800 279543699 911331232 294881859 682079057 746595534 568283650 643330310 525749283 14425861 888465897 901971575 696990324 458513415 615699056 763371228 949852801 514798305 744557774 59988869 545687448 129566891 988375748 452851560 42129964 50958063 872993370 871414910 305772161 540606295 763608360 866513217 745843634 802253471 754946651 893844469 943320337 5022230 640152239 657676426 197020055 789672738 774455091 326740494 123422976 986669540 682410106 858235997 790022106 813965386 925887088 973636981 822290824 777171312 986994811 842069345 68212686 835844087 911161023 885491718 501071934 789017685 978906333 779057439 765448828 321511726 940618030 825882909 694053571 949100956 750739964 871774030 810007082 894575259 100223052 494117490 135271125 865126946 906979755 538146720 362175084 332721556 679477790 948534767 871962215 639773760 755723026 271983993 739363621 207099660 851775240 290291513 856401760 947390530 927453642 752339611 886250909 933027789 941817402 842082965 845776573 218550 862789742 393534465 801066312 815355745 907523662 796979613 852755596 195212983 552090489 985886589 808149364 969345549 48765050 236028154 729688246 927061767 824938052 945984341 873483117 589665482 389926397 812134595 991602265 21863975 196404165 109102042 912859011 549098157 950434853 834492473 989589472 340188842 341028626 908142218 828403838 227848883 675618297 947790029 591845450 134170011 890024822 5605632 89313796 354695848 370189841 948227460 422428133 35643993 938898122 808692144 179871830 261034251 568603450 361386234 527151827 888949168 753213894 584039970 772251098 888630146 360530771 853890840 108141228 896521008 977105971 742116425 489063404 981285969 229552806 675895015 221145216 91106341 128221918 746590017 796708995 840643930 104639940 913794977 771862103 714915705 498797029 988894774 858050761 393221095 993865575 525044353 817440872 888961723 955104932 18972468 860734757 126563232 283006072 883141266 357775141 831662525 855314551 484150164 729779452 817219517 151437282 872967093 972550783 739846000 855501060 853001442 789006343 774635350 73134526 256428722 806855137 225279910 475887774 241324596 3133514 283002167 243523196 767747868 884212075 362436963 928144614 504375179 656227012 752769687 650875487 393480794 674590713 880138533 289449381 678547361 246484638 897367660 491968468 979511262 906812676 511976827 125522537 966603396 370973922 838913431 68780430 912278418 708898055 213285907 387033828 66596288 776764161 208588408 200663902 735305781 316545610 301943219 737020247 141728523 909078632 888360883 807481750 706863493 11080090 116398395 728715733 582525813 954656054 522544161 973651475 980755400 592638007 669947873 878225481 570104681 831428743 986477830 307601063 437134702 787275727 825052860 894157151 505715706 953589365 264414888 954303946 933595598 728528585 408530183 777338580 899144826 489579154 797511303 559083940 169986179 903960351 775469630 815489925 94305315 136498852 257878816 426633699 765315068 652258913 969630443 10095339 428904288 811971138 792058457 867754975 902958970 181153236 334637266 527896525 189212310 902446969 384260977 308813187 851909750 823995162 162875298 479623541 101705500 257793788 770740657 462478608 454789640 172789669 39057438 903972434 738550440 479529421 946816257 933173167 301937407 964246931 421883408 968091359 139226497 796500798 951800534 674751513 100983377 394538510 396903739 340975070 889127753 307387620 979889615 931075888 735582959 801996656 768020618 993855382 781798328 213762903 533338029 836351876 845334253 949916951 807085664 743425845 800069399 827045897 894254032 469797995 215570450 124233240 748764324 739576637 831164985 140434538 599987560 224386926 146203646 365233119 64970036 642309423 745966377 900299615 799039278 830040698 622549008 213042097 828043490 494471936 737881367 369502768 429811083 880625029 874164150 130973069 762574524 781759588 751996505 976041028 307372481 597972770 728571269 796395206 251947814 288434362 864407638 898381055 822686033 849793483 995325462 526771301 169112501 211558277 558857311 571655609 854570707 438851871 334471287 953464114 817568436 196893957 919239996 447411428 1593260 294369182 81109157 911925320 652005356 905487600 60617462 960327063 408322729 505524016 514754178 682455621 775995541 908618636 197589375 899568846 924376044 966363526 836033267 332743605 894813313 117420892 856494463 498089633 891710902 297770674 405700877 725378616 913249625 515868802 743816011 220402607 831927415 986146423 799811103 923294436 490732435 687763418 812552321 882271932 791292533 897915913 837374439 398883222 92253628 922675830 510283992 738452826 882332530 796023260 533878505 389247565 212519769 475962459 951269490 134867941 807445177 742620992 423199053 495902504 785752094 144866233 858852195 854634393 895527724 253961482 837870864 848276837 825739236 906539179 985545309 729743652 848260064 791203777 741351797 633646454 569119742 393095007 875008121 435908210 86268886 174330771 115303801 906791901 564487699 623990525 885566239 645335353 209558156 843505270 806885810 816984720 564790758 541915013 845755828 946329527 578462091 926876017 760456846 858681432 779884401 438331494 44922222 982504353 254372209 844765154 755302471 328146511 633613265 583926550 387692633 117793846 892082007 761883656 547395936 874323684 920207094 476507778 40522149 493856809 862556986 922449336 794554128 92802413 370270582 333090599 741048908 75769901 773424192 898167008 836179787 804574359 968598911 99275003 655052804 490009453 780027028 871298474 426443510 859385348 791207215 764727587 796951025 762797166 957007096 889596540 967399782 229850771 122018506 954908554 219042241 100633536 228734008 752568657 911877639 877954250 393455138 934870781 360786102 931241627 966633526 788860582 853310706 303668796 404685297 396545733 913992760 441656252 834980679 461108675 887457626 373770054 809859830 526106001 590594989 929677768 603625578 10634580 674598076 838753952 316537625 931546042 532724547 868969445 898454814 111771180 15164224 594662469 904810183 870968536 480515173 977039295 955894543 158923071 824238667 194174451 846656612 786212793 401840856 528615262 150694467 945591919 409444938 970402345 465508588 405444836 796376326 38172854 507342392 772131725 150238520 989999699 870038328 370634454 988202536 627414229 500579678 100545186 465683311 409051942 752245916 403831908 240872555 211924897 270250236 685938851 924615775 798678779 968339851 155817855 741814772 293967290 983705235 809799081 456321131 542339795 855468808 922395727 884122406 635792641 819977572 834670601 434688444 762446779 832701718 417634553 560488584 603312142 775896574 812976142 610288589 799585657 809263064 39174126 847279487 915422466 140448931 991981283 190528295 61519226 332734676 996353735 754989501 900901890 144669249 862338964 945099079 265768853 978780163 725224403 521041355 973862660 775595825 759477788 838184785 855567935 921824207 118219324 404864137 489414788 751855372 826482764 494887872 327909901 969084762 926385568 867211247 849372225 305343715 231258943 579147316 242423651 635281876 299541618 786063858 918504230 942626002 894871782 782023255 874368652 409527701 968068621 791606773 67304402 837460090 324314968 450546884 54730030 809646363 631068696 617489828 730834836 790740793 144659485 924389443 563696669 223097314 909741821 515347977 873375568 992488221 756142028 603065053 30010457 7632370 981584708 750812148 771259816 886587731 223539043 979412391 952604308 756464423 809454634 974482032 597297794 669876745 925162851 96517396 764000018 634192650 309809455 360974816 207845254 944102758 452898525 909663227 608568323 801037634 10772883 794021635 369687137 820469864 938656812 256175662 805239871 353806911 433124004 613228918 187378984 131641838 689389946 82124211 442309142 248514462 911840148 83056650 569067576 801330005 737884538 287534397 813791774 906627309 488142561 238441947 101751140 375265617 900178614 804575610 930003570 258665969 789943092 849764304 632532428 554019895 816719033 961372000 867937502 949284297 887522803 908045177 182697895 669290855 780223176 948167189 881224134 672081526 121073758 668868342 966574299 824528771 154567800 947380174 815663593 981180385 371558216 597148447 849132816 982620559 13370406 37808949 855959959 4163668 806503876 902834304 239784719 667382047 804252984 658849224 876262776 987768422 667985097 753029148 823568411 77267760 31503847 849224640 776061028 706626220 238075347 864930515 588898577 922537780 965481719 865715325 926923965 942645309 20004608 992053974 614194344 636819938 754185268 479121590 958329050 914346935 627917034 765109970 149518529 825009138 50161549 401956417 936739077 762595753 754477617 158560274 927371366 573526322 967866358 703747405 877953839 669313782 984017707 779772957 645114452 396248180 468353482 868318677 534881416 383871422 102419056 754462919 139897319 314073596 900945863 454848185 908754869 883455111 500019263 912179820 740261609 808864518 193164214 451723839 197219066 41235053 95020553 802136367 846725985 338485444 904304758 878401579 990533777 990220930 354186346 577637568 509466442 274044416 665584363 385510817 916550942 948281687 500888099 762677395 970266185 384689155 942957201 786276145 561805010 726919311 517829957 993786748 892559220 794293263 590736243 109079359 334459133 6367583 988549275 615033126 471092898 360334110 606521828 207392324 742595553 879244455 499818102 21055465 731258761 500806713 864224774 401311937 817539912 882268539 279972695 829488548 430315343 764391562 885107184 846599230 747733788 452649733 468786639 867562641 878530363 904402637 703532716 80927827 765780241 879589817 199179688 935978460 957798116 995866182 968742526 251079748 948320620 861820771 115048430 138973488 768385359 833051998 795776594 933681700 649645634 863693942 214210906 503957725 61841679 968626922 993956459 961372453 150907240 916941575 837340759 722468085 547916796 491950912 867510403 761046703 23068391 675866892 301271134 291901692 362143055 558037085 380158618 466327356 952165116 761943674 850541307 70504735 386887333 505954256 710884912 750137661 348906899 891782116 464789123 906470276 392375121 45281064 661134483 874237735 804159897 429963291 196773324 760822794 329357096 544557257 714689866 150286098 999007017 286516147 170913341 651530093 969175735 783044683 979275106 30990517 928346034 900362106 945741779 764542662 669625454 855441829 653777394 888810559 217484223 537521721 252669863 347374013 994708334 325660653 997012463 369733870 883388262 754231877 416988882 355915804 340894481 984087647 967015539 974315502 804282636 673142368 551979869 381388423 206533217 803421811 550053080 920858988 514163622 878551008 955411247 992991204 848421208 876982815 829390186 665131117 977765189 97393399 915514749 246590949 931804824 962471448 754931339 931926010 620766471 876504632 210458714 229780349 964496156 883082195 785182919 107009272 390166335 980988235 528682815 746282580 262122905 549691871 589859542 909698441 237049813 958630987 839965186 838332103 595134967 146360685 985437798 752115387 274259010 869615455 942741710 258044919 142656648 882795042 948843492 458235216 936051456 915662588 898753647 850984338 187228128 520049581 972713848 489626386 339227206 371541022 442077268 444540059 725606452 740695559 807174396 41271073 831371196 544361397 402583449 990444440 150336878 334597790 414598445 928874396 853380989 34211956 188411961 124246414 284888053 939532133 766610913 915233197 129023399 763504778 672896269 865729103 944793052 47071757 849835419 508657232 816083983 824528622 785347751 24017126 891291683 943815359 773886756 538539858 523157242 895354488 42341704 760908092 999845356 112477134 403570353 976232096 288946946 564903386 446300901 827395672 613586325 587723594 992486664 551919753 650715128 313497113 344611834 15538220 876657085 263555790 983449277 73146641 302864036 349821949 522538187 15643634 463326699 886035558 813079590 978797088 794909 354467171 191506244 250612847 810467558 782619363 220751957 22905325 835292980 842554488 1789475 517460407 771041396 834195589 970071573 893740036 986544899 8940457 316991167 742812498 830828325 147591259 498285068 811891774 244627566 964340746 223914942 332605757 844600655 72148922 420753579 258282154 375239301 804241633 595885307 807058124 854968299 720538802 609792691 836317316 869148144 237581528 896689854 949787937 664509013 817590155 187105624 878726410 372445392 122288553 853747448 952971679 876237788 399465161 266921381 948963862 924400199 689249225 686485682 455134705 149029314 744594499 270349250 155139689 498306461 865045344 899782448 559777053 746917883 861455408 355490055 905698098 156806680 826131633 700977335 997453662 213463060 987664184 891285562 169483364 884699263 676841621 935619233 907793074 288268657 826712238 142817266 637960580 836021916 890030241 204314073 409812053 936350254 443527474 912633955 153225446 878391468 726116383 304703727 515177719 49468544 669042499 795783343 503215839 849789183 788016721 448978321 909811586 101818643 849631893 450785581 46654903 980646858 897286775 934668166 913898660 107336066 790623354 775074895 112626034 405142270 876637690 909292475 257576696 750327936 79650913 878001531 313128723 359444802 874266415 182275080 243758853 367936888 449659910 243390731 251929921 478026296 965449579 464780206 599868923 829020253 643523736 703178750 927339931 800725050 519824745 156940840 785918168 679575795 1846373 139550663 855386232 790491214 988272178 546523605 841010798 963352091 882004509 931072175 993514319 924637291 958200465 931445475 481266509 751255008 774242887 907049253 802559672 441058843 790765891 885076495 930739988 471716474 397965280 959594207 207640109 877822930 853948864 661427864 185718365 777368563 434059693 860218283 749197207 935349132 835531303 829664250 719069634 596501981 928694996 28963382 835374535 837461020 257158588 998574473 987022666 932129076 917520315 347036959 141053085 250055977 30950741 101366610 925140345 792518593 660021711 201169749 229135940 474425145 564449901 552145117 7190790 618193807 737020247 829192041 897077349 515935010 224663345 233391555 865164426 83504852 960607679 251970582 935612187 635661177 401851256 980675537 774167745 365073656 771351820 48361014 614453175 177801941 267700830 140556385 577178035 893830901 572931042 507039607 928527266 929318896 983876284 831873115 934051988 237631561 459139969 926884222 511122621 212984858 772445527 646229939 338048625 694057805 974863688 914507184 426117646 974864424 375697097 138343600 184177231 903704569 794461180 777000022 805330607 935441391 779630445 118603035 509821306 797391758 343146211 672589032 96575304 790213556 857283999 78339497 819306004 611614767 561490511 470385041 188073341 668654532 840004751 849681665 136201262 566036559 894369539 900958535 369325121 345925934 290726980 904176201 176086085 746167065 830281885 780139255 493964692 944094630 225309854 338435752 662174639 402861577 918388715 996820627 228615673 575756306 706917730 127421806 115967913 375818917 992314773 837862508 54323679 913261192 79158344 452819200 208120430 939862913 459414344 785589929 464624888 138612017 985744577 818026493 990940675 816246591 833401618 520224029 609418874 47529276 776769567 880504244 788213743 845360902 859461181 355386487 813758597 289180154 902833726 456326987 863597589 673694763 13193217 708413585 968157934 355246599 343197601 68393297 617077898 488714411 376545700 633442719 836721610 255081397 680746870 867253264 33925915 811626300 578697458 609288707 997278859 900029110 922140928 358847943 795601929 305383195 897120225 950530697 394144226 774556788 428208486 949893160 863086296 292675810 711494914 534629633 626791254 260375846 873528971 376519867 851265795 356939872 748654552 971985783 777632499 896118352 26974501 975828631 963401381 437886655 938460230 902557303 749086982 647510142 189122323 787033935 504841095 406345712 720189066 207854837 350806788 337297199 954843860 595082037 903969573 140303709 669244167 221659890 752876840 887007999 978852783 325205763 427354130 186396420 564568496 414795461 120552473 834474262 529453735 97033230 575052343 970274767 68059672 234095981 234869678 892703309 482703817 223616672 882505324 738331228 245387706 836254387 136128614 400147871 909242667 859829930 159580408 860768801 158160808 908230897 414347114 739889871 770074573 802463966 607738767 889010807 777260080 812848039 896126289 246394873 859835977 772496871 891237825 120045817 731974289 699281325 254108523 188602820 908334490 962141691 948867098 832860976 769992201 761418258 833747164 801426312 606916215 996115706 201349820 426968641 800714696 969383924 881125195 894302263 20182187 654442035 940802217 763239607 985699568 737020247 798109969 807732711 826198306 943793925 961114333 789580139 962386796 897339094 864013308 924525025 821961482 701512493 357268538 342216115 547754798 771365762 970784700 842531622 962868360 877024656 340508715 41819603 392997647 272124290 860808482 509154246 282691200 326645205 872164848 792152178 967138938 210291782 688581801 294779552 743236793 394809671 884661654 303657796 895705585 827936576 828686800 757118294 16830301 649584426 812035377 850775632 960972645 918958708 456872237 57283227 992763653 826508003 867414966 807628108 972516646 334914005 265884434 952444964 882776918 843381305 933053097 94639079 772819568 558286934 536085459 306271664 42252351 951729069 274161012 101095808 191140889 815555072 25019490 318199335 861924687 773631554 947061419 742687620 453288632 933681219 939106198 943316519 185040161 935069688 785294652 565794758 926886591 718770168 893597002 932619280 91728741 957918305 930389270 884423408 548460896 656687028 765434267 507664431 294742604 981231957 793537387 928116995 292417782 65143453 759988091 854191376 830457371 767528952 824760558 270441410 994743408 822258654 303109706 552640899 809099303 774355935 817226401 873493138 39027279 673844829 944486445 818803105 95067762 845976159 491358189 973307224 946019891 82777823 784184361 91313065 815767700 598817506 875488068 737020247 703386861 920244484 372877120 881421634 816911715 775445117 739914188 752521507 17966951 571121159 108528359 620975134 386251880 30168124 462752142 952304738 336689621 838776111 548387621 871886249 879252275 193574288 846281640 928573632 240866591 331010786 30977992 151655254 734779674 299290274 238491421 431293768 921931172 859450836 648363873 875052758 6117971 582648456 858607491 947443273 430672923 875258096 476087827 402015855 580683934 82643653 20064164 749807244 995313612 957082338 812698792 784434606 792462265 106158441 412836702 389624966 239454333 818776773 913834428 275710693 713165393 306363128 872181193 847658547 96152416 369973675 894936276 288049431 244870844 922082600 918853904 805332239 242556315 895216637 741743936 561433979 797021845 288094851 830909269 946753886 620116983 829492234 883379097 699823097 884361192 746046599 775241550 885675333 933570013 848739089 919868459 940763416 164372461 449310307 995013697 929624692 813199029 742196164 748619396 803479525 897263262 627119915 813931652 515839982 616499032 946861118 721792133 349826620 737320118 903653193 256925009 541850456 698572241 304570618 929949695 71972919 813164542 964809565 34689045 500661003 764741549 981116427 973948051 25327148 864084179 267952914 78956597 281515487 375066783 941591234 910838891 860880300 107746773 270267719 321069916 965651053 74156094 324259175 539009422 884706737 753835696 894645247 713354680 896750490 405170349 824912777 907774248 694720844 654305245 792354995 873979839 778122012 981088126 921671501 287415046 835345305 713584122 420545788 845798713 541802143 919420817 665604511 521044111 130786519 778395522 401408467 239893319 516904341 931885892 522385357 277090793 350052716 680819114 262021740 460623847 170779082 587873747 340837084 838122232 913254749 765275391 950355828 933590338 724474499 769550461 639311046 644162922 500514213 787612991 4518991 502134923 86539207 851911719 447743544 616622489 841594478 36815432 948454792 988629869 929937548 926648818 751248442 85539164 445048278 332163211 64605170 835431285 670063572 779061935 272928311 980705561 900422483 747715315 394360204 660494845 852925483 552571790 802399869 809473989 814305644 840395937 627251698 443309998 692943750 588057571 509219586 981547628 461634927 891670098 6985682 682365422 268534380 378925519 941009599 258796964 891381804 164097802 21110659 801276763 290872387 756705408 919069026 869816229 995349528 424701178 577280753 377744561 709251041 995003955 167501187 829203125 796118350 281672801 985104819 859313845 897589548 91801933 127259892 629258517 739839842 161019814 208691468 75400793 873478489 808726810 963923593 803039686 958152381 575756483 999753805 32554815 308618508 480407528 758930220 877965298 534848963 981751385 673085295 928029577 997961663 295290233 636614993 393800110 865171983 109175791 814774971 606501681 731880410 231899679 626709596 814084826 874073358 835147001 207423914 15111497 172570799 512198220 420371093 784241672 834358664 898344014 25213902 808485790 671648838 211850161 940058096 931977462 878742518 470894826 177911995 778232471 569501499 936674839 449583287 739694648 703507891 123547945 18239944 807230664 993343851 901182887 262158217 928661663 933757454 746432475 718095874 904693219 990547009 326173641 481698420 913509105 973719813 751380368 761424285 468838286 737431425 762457569 607815383 41257833 374448886 302498033 791337922 855656230 715005260 197513084 175368204 735671836 773716910 388238804 883109579 473384918 264191408 939495666 901103057 930703775 452685225 696712279 742524712 287004672 221352738 977259564 902999321 793403830 940104563 831111835 534018214 768575429 528656619 33293815 235033221 802419875 812481768 963346080 90081501 242598120 677030116 909565886 373127658 780682570 835339268 764673268 971376459 279610390 140883060 540504148 695436660 761643732 572296553 433051732 788350501 469756089 769156319 147225914 966243511 107955686 871830052 442418080 744857512 25874543 781165475 512167919 887070785 794759280 845794069 213328977 876963468 290996649 598093637 819827778 501664461 372336040 72816306 519502026 982355836 355394402 851470334 999655444 293167145 996783374 287273060 119823907 577289707 108461875 414980922 968004047 791621977 824716394 930290361 723651219 321112237 455965979 918163429 154178411 903332459 93916561 770039798 902857337 181298870 262310919 798067248 424833189 565527230 835125540 795944426 877645978 638849679 378843327 339731803 795307006 797478064 902740141 592414771 995615575 385979938 187913595 797731624 965932634 747424365 375591149 893622902 853890303 920279528 711639856 877035192 904249526 447951654 75216527 249154874 879882527 905582133 880292257 608137620 415107117 413754944 968692444 970080894 871255892 850468811 866793587 178153132 493076410 901390562 419293437 922286672 388416402 816634047 765786318 808468709 967764607 838485317 420577903 968525266 813696685 151637038 122063107 644193912 591658708 312529911 314722402 876404780 766580174 295314845 878537798 112300491 759283283 871825299 987783772 835363538 880215337 846414215 648018564 286156850 554814706 719004396 780550977 868265115 306559122 818268049 68117176 771828767 648597658 462026297 938312339 646719613 50402346 945316464 957216783 866665407 842009483 899729690 645404189 986155521 745376441 122387661 325626636 276203349 670663987 906985599 983469380 965624456 997462897 612672725 239340120 825629952 903313491 274671169 940213909 849208212 224946866 401388904 384882158 777555263 327296242 685415157 694241760 694098206 857801819 848131219 842618946 525570154 954202270 758159915 625732820 875518373 808399346 545756683 533566269 316368992 90654746 155418083 794598822 976070486 945456745 173516091 210189676 841473272 975371434 950481613 726613008 106784566 765991795 965011848 261215804 935146145 863800354 826358050 277498673 109164736 784463909 577711560 43139362 661965143 759477364 987235228 103938055 303548629 745252041 845482525 863741758 940496141 738448209 886062049 837148972 645297140 800683927 658065818 906349293 985542912 91504170 430682171 823490241 662567299 967158286 932267029 854417774 482246446 943275907 670014334 674725966 7800666 967570372 973310615 666832112 509535924 783991891 613166527 968444368 771835737 779420523 744894633 944634108 582166827 176291577 791813406 760246210 871357321 832250389 122274488 710956370 2067326 358076480 955720824 554791375 742214257 853651079 913470359 919972978 839865867 995482348 73066777 896474864 596094824 785518590 52984305 594012565 913261401 998765242 863327110 391705368 498001080 599888131 216144430 430552069 659951399 441331750 783143968 836127486 675599444 916684679 823976318 848942533 635527574 800012903 496738488 982045400 107337757 28878992 373443249 325690761 788910502 33842098 316762975 919481477 96282323 827238983 942560182 442335830 117367210 767192836 113659056 769939972 87521598 988565627 857481657 877794052 722345368 625205710 196283759 821039993 421115258 621430175 927019928 778264832 293072695 463108423 775822830 205298112 891762870 763758287 937516920 859019718 272764492 341838924 635236020 913715215 835646643 850014724 519379750 840882132 370073380 468826850 709738084 845260319 495743370 943408497 906410575 928912310 95659785 642696873 953020241 857771342 283591844 816867743 781830224 344805926 59498425 960022318 192404973 586620361 888090332 788454050 718733875 438839404 745936837 359845721 601733911 901404159 679129608 883868342 932457263 820754880 894894651 529149040 861594875 584876767 764293296 807524274 914589074 838664963 587837609 796878481 673402555 607932408 928952450 924062126 717156251 975059550 271589411 774707930 929842571 600061256 28096581 195686376 177450195 810684582 999887416 83647752 853207923 967241979 511655976 988685182 957932093 183388067 981321673 890208060 698718959 863975178 70480505 710780626 929982012 470840704 723535543 786143092 843043009 856042622 826034184 303680579 950835669 579410332 668918164 622750282 701502906 144253896 588621783 759821292 929359685 940955731 798321916 371155107 757957419 984972198 966942466 639614730 618007524 878949363 341637721 378349463 901327222 121749280 920548203 957823665 11731831 411216111 974886197 831235850 7644556 947580178 758863655 777745320 964007375 609586593 242819882 929823811 718112540 382351148 545587028 289337736 77787811 229095038 97476582 136607783 641994331 971525716 638608174 157740282 312871987 47459196 297579065 157639770 39087513 775758534 7471131 813952485 803426109 794150930 263790795 955661010 820588181 375580701 604707890 130379339 961639253 311669273 954997701 903836022 453267693 843915992 858651512 175584410 509855554 985679605 130677573 258744600 700175669 440233492 845723091 842708548 799174408 910760175 755461435 763008251 709608169 68996088 912555634 32195532 914140798 939216652 557354804 156774095 293587641 23088188 968369653 769609194 740289972 970136490 964279638 936227390 663373599 597324073 986621998 67922966 937472843 769667587 839501235 807913724 897556052 887291132 779447754 308608631 583175080 367437269 621875810 757606604 53371582 791749251 916009662 941612152 220047319 778317020 892710635 974007705 138709730 403683333 564014289 763714926 772901135 251786840 640440404 845984084 174159091 359134577 676454781 922473813 637332045 563407126 679138030 951495291 517099566 172858105 505242151 918443658 822957365 845040190 740028452 810499312 821478119 601560625 309159849 574492206 905554168 641832755 822222034 524884109 674670556 749248451 510282647 499715161 694006069 69341497 605017601 818673903 548894867 752782000 780377163 281385039 881383792 537451876 893084538 513250874 975292161 658376220 475893582 888999235 850136167 533172270 854308796 967556507 997754199 851716747 419243622 826400286 316005946 254404118 556779501 825873625 824987533 901838219 54155764 277791881 748140062 705959002 943057449 585261406 220924794 69958470 854951543 992821678 929909066 899475558 865576977 883624361 989247418 976880972 904712304 796868894 621888703 889484884 628629756 509906847 743952735 304649281 946698206 403947986 118463538 391396045 368180189 40217678 691208673 873190491 717806244 523013104 184271490 960029424 31645769 219355831 26684348 11551534 788960411 426541048 873542617 288573915 633267961 797441326 932967411 913313318 896484663 775793498 884533525 244513858 495629941 814892059 881438888 64155484 877698372 497491998 407448763 333733442 743592131 423990726 664857472 951075488 517008733 451525951 740419216 798587879 846508359 341157563 881726506 899025421 497386794 968932570 377608114 746310510 894301576 652502768 585147978 714594630 987239294 193477640 938406499 497653017 551501406 919810210 630327381 18799089 867539077 979749884 450203282 795136285 855837154 12884541 885046179 460342869 164577070 871286057 741498257 756582551 73023034 955953120 288910901 108725186 799556380 337862601 761921753 135186151 734250462 940852001 899105456 409697628 884145397 872691303 629090164 849663610 531400631 537406895 946159887 402130578 330486425 943641080 814742615 678889844 129616481 274228113 724140796 712529070 992637730 925262234 498878850 729053358 952041762 813277083 891526511 466548972 959596687 371964307 961550517 843752009 740867682 261379415 826812405 440043249 927308737 963250384 876692675 47850445 241376576 876350137 874840774 55188730 957296200 543882630 885632257 427699009 775073103 445402153 306941722 917099198 773828545 572736217 878218881 836281811 850662225 860535548 619299894 781989109 85245203 599248900 471766589 405939452 221487821 677385798 100352436 643545918 214383611 112794583 499921393 908796497 467859198 753238673 300058131 356886373 494754087 43999117 931678590 754550750 338720707 270765371 905937998 935122088 616871471 841217206 981674053 284799721 975965969 989909997 566093342 441693221 875936782 996725631 991028064 442904780 353872857 811090182 833814847 240140696 864008367 951189879 159286905 956061827 452634354 466640740 452343548 893572943 900107192 170751400 495893873 105192195 54636390 690074017 88772055 828588611 795081456 136657994 697758851 901667775 869924342 473944769 953338092 702994028 132524457 139024620 317701704 207673123 795689541 931028972 642038003 897308674 199450514 879387718 985425945 573516533 742638341 977693577 922898583 811453225 252090873 916649814 987332412 78869159 68721417 534463988 997943638 363378587 828722448 798941361 753475522 280061700 883917145 520385336 832058937 823349683 666685144 968537240 288509797 887781978 363046830 44327687 72431398 804147585 773118497 194753618 862783227 803660275 879671691 819217323 829878096 762094020 934220576 809449683 886824165 861647848 780046863 804152545 776751090 617917564 207455834 67931691 784704081 911990534 309578080 860110308 958153987 101873442 971117912 398970894 917214335 980786127 712907705 313668741 870690540 829634137 436356644 240912557 691838511 340012359 659189830 369780127 799542945 917389349 969130055 801483541 3437456 560468567 13897930 969811890 880348951 390252770 857350394 985384132 812588481 738651192 794727124 509853520 950086689 792430955 417480949 288217310 763739111 783502811 947408228 740452532 917052802 485435366 155475227 901884968 826259388 336003964 508200448 316819539 648123671 760862796 634575199 565237074 726923716 319416885 863245162 836816879 508701125 83521569 925889282 313043261 25212867 333242124 613294024 938302307 874720259 758283400 433345639 798264668 93971576 853687246 764494280 907678209 978825708 819600906 751213056 400247589 776904192 860420372 947076106 944952837 774768673 829410556 249712764 838196453 51490464 891754401 146412583 519879970 460743517 999622579 778150460 886025558 209703498 662579389 867570809 931392466 80302506 372259241 374131327 139266341 446834336 424263216 873381876 934083478 803388262 403129066 958819006 655003363 558784680 787773198 839392218 854157772 772347424 573557326 786702099 892237194 139411042 739385534 778253109 365227256 314368676 788345774 361713229 843620763 296790599 954892760 905171941 829091547 602992749 956881364 764963733 598326070 912569178 519017856 162561025 53776178 669545662 89192750 781408829 596066548 866966097 989479277 214881457 45433293 943974996 951948041 105570854 942170485 854066276 313449735 739247726 78371905 420050483 260822923 776496451 634424374 606722621 93710929 30147488 747475629 594060165 918999922 710309206 611686341 397427060 850991903 513723676 709863271 873825627 908685037 622088347 809853599 939232254 608596485 764266749 902135430 514929043 300693859 283499530 406312801 80688724 726760907 971064011 289018362 205363265 705752503 60785427 878364387 368106126 89695010 905517105 823366034 73013056 935728161 873714745 810854084 290866374 513099996 372724164 578315449 211727437 777120471 803772395 844290450 396638700 732696585 760272531 969709680 939397997 229243511 368010339 419292030 905204425 268169162 832353785 841108647 885666499 262168136 882139666 665741584 634531944 954708511 867969986 329291231 243163536 864503664 10366574 90405604 768461486 769150775 534002059 999959352 877207249 533529553 917731988 512798669 709055743 772446373 952727811 200966390 194246849 869225996 512884787 785485610 208406399 992227725 646137709 214456526 571008656 743594209 527937318 981949950 213125699 747248257 973179270 929481469 846852393 894394039 845144935 107795506 980714455 881800659 172113886 823457194 579496513 963155943 813842265 890623959 302523362 840313244 769745512 905249002 742123435 775054969 341011993 963477954 142986707 750617696 62341734 27925924 157316430 451679785 791929004 567384979 980476011 254902783 897875693 575172340 786870081 818597913 122505631 427805598 623172605 916170641 165116535 152098807 551492966 107861437 302891142 689627442 268505469 266297146 372357757 427843502 790998618 624653339 389629889 473687939 711384540 387927256 891806435 613945225 998505518 795713638 616533198 867013609 788179736 641363939 902334379 638952455 866112262 976229992 944855491 678966394 987071836 838204798 692462002 441896161 480391382 741514939 741520271 817353455 846336908 711222632 213997510 165976087 65282736 115911271 802805290 425624251 949778459 580205694 506459607 979256573 883744272 892041728 800089554 874090259 973971931 360589877 296272590 782820775 491852472 535585333 790179188 938891815 431037035 546187219 268256519 878756769 843381070 957112174 825584364 902416186 935912395 235859967 983244818 997079038 870055444 994466761 527445337 830063271 918941302 998112697 405924874 958724220 409581953 758942655 9648869 91398546 872007246 613290607 738674927 809009215 885992935 971367348 827615720 860836952 857480103 222504181 361603450 981548593 532319214 163230274 681314948 996871125 783420200 316491691 338109166 428842408 519376017 948303176 966499156 693443927 224028663 831325743 819448503 887046923 158216091 746661199 92274233 912273394 207188831 759276442 310249788 115232673 872158167 718592769 292143318 944414134 985725062 851691852 858061699 821637732 32833996 759763673 946739050 552098697 511358800 899782277 778443599 430008773 999320043 764950191 773189048 939358434 513337803 788253641 823688969 679623150 879600247 750160439 736390187 73500619 81607546 464604295 629910591 807232917 998664676 857680517 859049874 144829652 452774155 613321940 828518897 617654035 589224940 402387892 342482013 489814194 399257098 939056649 91364033 188414787 949361819 664921685 104533764 417001165 941281302 958659490 898554391 464736390 967780922 798462863 761354861 957384052 539110896 850070743 717955585 691809306 790419627 740861919 936825742 841181225 929015493 829708188 837425580 680618952 935865335 264532887 584561533 543056078 871127000 586077317 952368394 965636789 619014833 999643111 691314492 145416181 421819661 685247861 224282747 765976816 837714950 873119061 384197605 546970870 109862266 317064822 448094455 970551358 228783183 782935615 893969102 852063694 941314390 113095385 390112769 534601806 956103123 153226330 140526730 406002345 650406641 304326433 636865210 807992127 429744456 827119581 288537357 723944820 350437317 999599538 876240189 999446803 88197346 158969374 377166440 275507969 880051903 886163597 352101958 986746588 899985503 335543782 903971041 257068172 800934919 235640474 793812345 672243137 338336055 824507857 859278946 310432378 800746974 742263982 798228010 873290479 923116259 847288508 950693302 985642975 393412919 926623675 33397098 758862434 710411741 834466863 674710368 811466069 703302458 720414457 548319277 845149316 983003588 681106445 969228068 826262719 726315748 556667409 953287982 597870180 800741271 925958544 372571055 842500619 771343659 877343293 871086092 51008988 246422011 880245236 415222218 55163978 48101470 365276096 103533617 954427293 446783585 986634991 870974945 922101509 758844542 853249128 799336254 755370066 802767142 199482013 848421476 851359181 829355920 789061706 767157518 775106376 859173285 653714561 173129774 910859226 451111373 482187735 353071600 520271390 101055885 519811794 361809489 525872789 325837475 817412583 245644631 246697643 844110917 245654382 110209265 780082186 772902239 946092295 929492021 927030649 920541460 44921498 446847968 409901950 754878944 63479541 759828238 858757795 635929380 834068791 790802678 769677385 269257901 52544201 938896634 380524825 541728839 808421549 999496063 111213597 674166076 306816355 659775539 709150928 922160219 340050596 610602251 196373399 524071512 958447579 886237518 617029439 311184696 928877274 995407451 867044923 487274974 839671354 787543072 211809149 375380807 265599275 959756242 610233775 778998088 994824342 390721780 869112842 892733714 851892935 838433404 591299842 226377247 500392078 840538270 585573739 498687171 755016459 218159257 527520440 768079407 483970376 961562894 808671417 748507972 927468919 920897409 682719764 916257397 925723498 939534560 250103475 885504719 53783284 974199032 542514024 970335895 972570109 270555609 994997143 995489747 46963492 934489488 119184273 411767587 80296631 900662471 826738185 629954061 741430565 866134690 819652908 937956578 203258447 715511295 155471786 332404001 737020247 894787544 873310761 118926079 887197018 164515021 764524865 967114099 750062954 672445344 642419485 355614431 634694715 424216607 273930992 443016669 207130553 730947316 997785796 525640412 919671334 638562301 885595327 961450427 956908645 298539706 316992136 45764756 661675646 881941066 943759393 941983382 635359294 466707721 918788699 236659798 450739323 311263102 771010548 503672356 878743577 259520151 193713668 894358699 963520582 413226320 307730375 536550306 809440575 975303918 471755142 526580601 606100931 795454554 809761646 683221054 896414145 676088704 658690119 893022835 906171079 985291484 203246448 962847468 162408845 816540297 773256448 755273139 606269353 977296875 900547095 376599292 165003388 838743110 876133069 146849512 818457676 747735931 789658143 607395085 909160192 47594095 591564966 849774897 768725018 895212347 626245663 910329874 949484315 233742328 427898979 390203324 344148144 542641705 894339941 864208402 826132843 414596561 959541598 777248544 494995220 808637995 980381913 156033247 763394308 764943470 773836620 539741997 657601197 770466846 655283711 384627468 425752656 547299472 461162423 774297048 278931797 850682940 880558162 832110533 178453312 440881518 265657835 981588874 180313183 299678572 973025743 762806837 592996411 880773072 796234877 880744487 959633243 861181489 67739399 357541556 122556255 363775338 959839189 113233713 221822305 882082729 867744367 63343648 736075076 765590203 863266824 791489437 612747072 7818589 950842389 747641434 947535843 888799796 789818982 456746159 328622312 903734151 915769884 35854639 785290146 184432351 429817147 275954609 458207069 938241799 569591712 806398969 630064277 713183709 976940283 844545717 300881616 805017619 767545587 608465417 857647719 853494245 680765598 943634347 792691138 360415028 785086745 956290896 80129859 969222261 242111601 787969225 551765083 354793897 989041850 873210388 754443984 879131669 909040810 844532709 460366135 837146691 657500109 896671383 261351986 142986687 850444691 985770987 976379968 97089913 820451401 525747250 808414015 387974140 964019880 826637020 927555006 314540051 861063461 752361769 231538279 809597828 817348600 943703946 868269859 861634207 947819252 959180606 498170311 984934312 785091005 147005849 876205965 193385094 871640348 969715597 631645304 628264297 565235845 707024618 793716231 90905171 596021310 858099966 624890317 739801913 505679231 483271469 766927291 703275830 643099099 908737972 156809681 416403036 920149461 886605172 866437267 956201628 339193618 756731925 351147999 987107285 807232561 901275258 817705891 583156478 561256620 877373393 959882211 245075951 478678815 563018608 453552307 83854374 872988836 109688507 285789469 761594478 900462870 158045167 580982275 239816123 721950725 564533507 374569687 785746637 795702372 100628159 710160489 34485213 818562943 288587185 128423097 965219640 951035233 132128171 715154788 808696597 868601560 895035603 130157627 695897089 360946666 976305790 743175943 907127241 398073580 170772453 754778015 959502576 749740359 55322999 745352529 590487535 988069191 144765759 388715565 940229835 834955374 834272521 992191693 851842047 661916313 918331836 777953949 757040834 682345235 953854311 602027708 982926095 271144557 228462990 87819273 762219321 910914259 872871430 921976330 829826058 996720232 905907991 77151836 842723543 891023502 748426087 411935981 821112580 832499310 855594703 545436827 850162234 766507903 273824686 514927070 659342260 598212683 896462133 931065922 664375498 311982891 537512668 333220472 744193161 64159289 830542942 169948164 924437897 972470961 825724534 901702601 346225875 875102654 426020634 597412525 730695611 679429252 624638901 259446367 70302907 399776032 879596688 751871786 507419131 802240057 826040050 928457502 66064889 246811470 764420803 497318562 728590961 928532701 844895208 501532803 822006394 760661105 255450366 634525694 803745398 283892933 883724732 750274560 879267365 496602504 957446210 268818166 885536880 452902589 903377132 978499383 141032168 390863999 135016963 906983806 511355921 669789347 766407827 439688908 345974596 833566292 239712063 858436176 957198793 910427413 820309341 979843655 744899534 992839375 980774444 777792618 946295360 750476134 904558029 904490102 667050497 910335559 242609777 767181135 982362242 180024636 866653500 896152086 168742730 530189995 587982894 992948747 822876252 811078431 780768678 551322508 357161018 845673330 927571041 839851284 867216991 93316470 274645658 912225371 762580088 23855343 984200420 295276367 158206242 315045714 372499113 813508474 756320913 433636785 161527796 251209975 170500767 829884019 400421758 906668816 216299181 370934550 774345056 892798584 811863639 136271335 930099397 716822617 703655905 179035658 414851420 801492309 768925721 273467154 311726262 797970641 167760624 837628548 885987018 871789102 615114963 676567931 53020074 739762475 117024529 732832416 944745509 391746717 909516297 109214369 920134334 259905082 837857896 725565323 149714373 666633295 479349917 784726570 771351082 348148531 143413526 744215205 967319429 693812609 745115422 609349727 830066046 862694258 958951493 765890665 856536957 801174284 981525723 834422092 796392470 196619058 748972255 800170858 907282008 525651198 839285082 226568639 984652808 318499550 841226242 996842436 672378884 439537755 858118970 786662248 668665182 704268040 688348890 299914552 95303812 810534940 909482289 105544503 43276094 135721899 742313196 706840535 741699360 798735126 910574341 982676549 603846838 372944775 119687525 476251413 961458320 3067398 878513019 39839915 927536565 287130420 756118493 971951426 526907445 994627754 372988366 138910033 980570571 856726389 805001575 404137787 153693149 345638943 977871261 16845567 29882912 288827315 975150071 817805027 964491072 712788354 950170163 814242386 749894942 965393581 965347558 134216262 481498027 921348195 802265476 923590118 874911227 944810447 974775414 826465482 968121968 614874452 476156054 874250080 19730320 287519291 966425924 889989982 570368568 433965987 913157379 789941006 741508632 597693549 312462977 89662740 158896550 878758071 580388278 754463467 872128356 235260909 136945560 324720585 255158175 29754140 842395748 846172285 641012845 921366176 483818790 171517410 871835845 956959662 644577874 862919018 488563219 907883667 175275765 229915252 511506045 514282426 914696650 873534946 778717842 491866751 472437007 138058345 906889118 940509317 665516580 858248237 965429994 1220229 278510933 866500825 530074126 881821212 554911244 793914336 948888595 882363933 889992072 872951506 732559911 86514402 931714091 833447041 343141930 663800884 362213690 980054095 995447375 641835571 111138532 391878071 327582130 189333163 448221933 859712732 136864244 101126693 480304231 620661216 983787218 69691328 937938806 235317621 530127327 877516408 814119497 205042431 263400979 934191235 340746068 127099843 767103671 899232859 724203827 618405815 988421249 969949422 784229419 348922010 982919945 250772622 799972354 564738513 713430701 827324317 550629266 432945399 529873049 757914369 163112130 878940861 282133927 777655138 466156199 50482020 142465602 826512333 564676929 943714452 780584979 251406694 965895874 605166246 552878213 940632947 5803387 880777011 841293631 728748904 594735850 33448794 800281281 261435325 978255732 252424377 957196464 646130852 965123005 845579255 231462641 666302888 98246688 874708208 67147591 824053781 822144628 828472762 887136226 934725146 791188315 349979665 79127971 921165827 548569414 991323824 935013171 300680622 834151331 504991815 770575094 71206304 149540299 709535710 594327182 587896448 539266883 900065795 340040444 26054255 858623081 705137181 766169045 996666344 444251333 874049631 800609577 944362576 749278307 477079245 801384306 781415261 830899264 592165785 799232957 190793319 457224538 930298576 679287766 630189278 252261336 57033276 826163501 793667852 768043609 820450608 648053103 795969748 587677028 935998756 837884839 43360339 954383983 594010317 240201558 47644944 747432699 871592498 562784630 810217550 751977458 784278532 21581982 143074040 806451902 380177041 558702291 638495056 740296343 640449992 489306955 574708132 901715715 265703238 690663827 994247065 288226737 766114515 960715564 874420010 257246124 127484166 686785290 938443430 877887529 915463184 810092347 926599612 101043539 386501232 431260776 497204015 66603711 626800326 900725933 709190024 901180332 803457078 897125522 161403762 556616549 765885980 872501733 561727100 969857668 800722762 846615198 644055342 764769269 328596462 848173921 899973608 753541684 49543826 749183001 799686037 812583588 573357004 82459180 385879000 983798368 527123303 745360361 632359151 122333196 470138000 475264404 911094849 837749199 665385689 966915093 522549527 863702547 404733674 877673961 444406431 158810548 988021804 111023249 497571214 564383041 990754715 9713412 959428996 923565610 973679854 538148698 492498898 231815448 954351201 467742794 525907492 868880442 561393631 891943637 823548851 349397356 817652568 434536460 996137492 289115620 682764755 800925807 752261877 782445747 780806856 708339698 469242731 689389488 978155253 441345046 869934712 721914691 944684731 798306835 359519207 90774826 76939655 739274984 884510830 761384717 928330745 748891897 806178451 944118049 815549362 448872082 870898424 889600207 770523272 826130411 355640023 768395950 742339204 677818467 988020802 950042864 877201925 846700895 482731998 275194546 588593042 842373889 167754357 927202090 708806057 951653960 234658162 268000135 999181962 129266162 63329499 831771654 819005198 448686114 452343282 602242609 833150123 584161559 781129158 940403234 746775653 943073305 935715383 787375204 933424955 873528715 202413653 991744905 987245370 750603072 828874485 554654100 802285150 566405936 108690803 845135373 454247588 949445836 870402969 12531118 895547536 802500541 168158487 930992362 931255524 629106020 831935755 711073689 237837905 100463600 888295124 463866675 150722556 557859270 753443708 804192778 306045091 822754821 798129676 899040012 871468380 908765940 410358898 883530886 890281346 960303899 232617744 793458010 385921316 610589250 907225873 469291418 353103637 887033450 809387996 462690288 311237201 670421897 598754382 802722309 756013324 991246606 817394804 759573031 927326715 398153875 62881312 611341495 537286627 722170311 786589134 891961255 979431839 632417371 284259906 931278095 778534732 47933282 540123940 772315853 918239021 839992088 496620149 260417173 790412274 82700941 908278228 909338033 935976210 978169769 770860367 14608428 425608939 980171771 872432771 644730731 922317535 882311134 654885880 964427863 973496895 226265326 980439042 949538857 528724330 383605370 990212725 874873482 648470371 830804841 257290070 854386687 998079671 59691759 340771216 253218414 697504936 448664619 767880376 689534850 792306022 756896550 765795932 842130149 475824488 847237522 376690554 127835425 995684947 935670129 13244679 825406283 148700622 803368090 140616034 109343162 277512198 56948196 900046807 996986973 991500018 422167902 844250145 855416059 279363462 897308780 908880441 203981959 740843676 442302470 993581571 873045565 548887463 552551012 408799410 204911037 88499783 716639005 503667470 863172613 131395328 458323671 237657203 813785776 862117820 398053550 760742881 957924825 721468886 9722778 555350798 754102074 84079624 714959178 842618891 590353387 960551727 903325360 456836244 179491271 207015734 185051302 889260446 891611958 350795212 199060770 840788182 823826392 516575079 890470238 777279702 93593033 189020867 360239163 956621950 500854740 346510277 781754144 906785023 982303803 434564874 811033262 788609297 631650491 307673346 880583827 965442087 681954822 891561544 917450591 725818152 744773633 786489300 926949295 609239229 910286196 475042373 963513362 915206689 118112079 793556291 851355524 69722125 472930391 464681232 377676942 29041925 556511181 797020539 968933111 684928909 309206820 838340108 821925233 958431940 190091216 400529617 63953922 306211864 873151513 696420900 737020247 871607413 568344397 723896480 759145790 753170257 590601385 733483962 810243343 855632492 675830942 186036583 490374800 836136454 854273694 751589832 220047578 624648548 995645907 983220103 43611530 117998760 839379843 740929618 955203943 964060388 818158050 756488128 871062616 984150569 992554009 266130336 420379314 214731571 127641441 387233723 193419198 784887254 753563966 968446790 136513425 814608320 206935935 289755976 323390435 870756450 879849109 908015581 265865201 935740024 765787511 204868792 921624216 970061476 764807058 269098232 37889025 116759639 50346710 44935411 163924947 298027502 157800992 794367960 324955360 198116659 924747416 438678525 943417868 822236610 755376616 798638474 268714140 791158224 929334278 914603110 321231770 644955181 869804481 283923710 279547163 981495277 790265662 108376148 482485192 354046319 105631436 572141347 917752353 364929217 769140727 426927491 999473920 754691792 773237481 918268753 822066023 622101507 972540472 865400022 800419676 994341243 548433316 888618124 832276278 618747003 731362142 141969788 278618822 775212553 443424322 548560766 431092963 608881832 478727780 696083011 967638748 967767016 886279741 352743983 909070290 849849159 16115664 942854758 204016152 648817627 960041440 182619442 159889070 147025531 61471675 747811250 836426706 788516314 278032228 773293780 281601568 981501576 588784846 785909181 875103781 895748228 51495685 952418930 823929018 151341235 873729783 279393311 338279130 115693429 952962636 976782691 443798628 805215046 661338892 712750915 333058730 213473476 759970614 149369357 983247604 84552318 949913732 803547820 773993752 394525246 28990268 520157032 319595904 374252918 826248509 803244131 367209362 811700110 588001742 833245547 332678647 236398834 899557532 387593438 208629901 861817278 46683575 372140092 784962985 988865464 875182941 990854361 590980795 866479692 986098379 904157760 565697880 359865850 588222473 889166342 249213751 114107451 265563720 522875988 13818413 489630107 803757049 323607082 970951129 832964616 933996307 535480438 469740139 257979063 140530978 995510385 992474274 380769573 752239039 311004543 867409282 883393510 534726035 251179900 862216976 808437716 360592459 749652955 738108864 377284572 741807817 825669735 332629816 889964596 832091114 234393602 885752198 806070354 773727558 234603922 665226822 913342264 304434021 734130040 638864149 452134613 816379630 928536720 316765515 420535838 753558318 797472330 772825895 865005128 326026003 392086730 463525793 849193142 47656825 778329372 815261607 904239576 874693535 153963511 833018400 673717399 955098103 371466962 629129263 984883352 343583785 682226947 984156489 804757601 811008901 882533968 93312100 736600873 877478426 376818193 458346690 95620679 322807726 347406110 583552489 560724838 965930558 778288209 164255222 993826173 899982471 983313097 823953160 849672431 348188893 104354833 959621577 224474252 307640892 471789896 101160723 762573126 354068318 841349393 915970385 168190138 862840137 940922824 213378700 737020247 50845768 552213825 770440217 930862461 82512931 281095202 457559549 741944703 771093072 829968735 312932865 870592285 329300630 945865649 981928076 115849055 373111840 185794873 919159713 801445317 48726713 335479742 426538180 416555106 985858388 71610902 425321920 493706043 841535164 420717154 119170333 754584703 111797445 929199768 429195398 885062473 306451762 337124280 886465441 621900727 842681194 178061063 875901459 804109313 843653256 871724496 263418167 296703501 965398672 613652107 808718917 811622351 773615423 865230253 274700790 883770122 811107068 212111275 769559605 918869777 408339035 327129631 845256381 788367358 386367966 61209672 799488486 108836210 792840664 841069083 121099898 88835876 127905915 30996073 999989248 153130726 185878754 460286648 305178210 61514709 963251172 454582779 488080479 56029694 752107335 675573604 198074208 845528660 707294359 851971159 980078096 113639964 964229503 89740975 77011568 969562134 737020247 699042810 797886945 515669160 819091373 329409058 689197673 452310469 391976140 388843174 949352799 943187959 79526336 583219408 394393664 784758646 855524076 251166521 988352401 712723458 944919655 986491137 847119264 267180104 727806538 58271752 765101316 853984925 417193854 824400425 136855979 748471605 860924841 979488896 984900244 308956595 847423770 419776184 792036827 472023644 745482335 560691569 767411385 219782167 871585326 981617067 463769716 381656106 899261635 901805447 236680608 381158315 336758664 855044469 889891655 896194761 930347579 620829934 842748978 965688148 29239962 908239619 959696792 925328410 745108287 518159495 139235756 11254573 726145810 251561419 84170992 449689673 149438749 432185451 269338625 777204767 286665729 308071260 763743378 444858323 104800631 455573564 704202212 949697730 201174676 903602044 445175007 316858284 952687994 357378384 389518167 264326257 404910104 922020028 759577924 128967040 185301233 746675426 905018575 315956300 813824039 732131234 846329786 594930849 815145579 766116126 326745207 814093114 909328217 811389524 903978568 933718255 978243604 574390517 685473921 894907812 895341383 992811876 156219257 997746992 865737696 618516084 865738845 998938940 390405696 864849944 536658392 871394898 125516922 792120322 906939990 810694349 18876378 712708159 820963944 520690934 857310642 813596625 95487832 829959524 47953639 347694620 958078990 513212762 525108955 646634443 728417123 118646139 612238266 725995092 605890204 635350233 993409392 69116208 857760648 450809636 946690396 622023935 394320049 737545308 932968131 546346799 952595465 301598543 785337442 571152337 977335611 782591281 815689621 673732385 677780374 964617372 683231423 452322580 332065490 542805327 757377608 800459482 276443201 170598823 742121202 881481392 984913682 705103977 810523383 788340161 744178250 823635745 778427504 291055387 995483664 748554244 128361569 116917471 869938646 796636433 915954744 990556015 459984202 764056082 984621443 993403824 299337353 280240246 61844350 909582179 806375179 990446174 528250691 313160741 691247051 837481990 804731924 862582934 110496637 989135759 567547277 968227774 158797872 970860287 779762282 868905432 852097637 889291981 931533789 952420500 668060607 68433301 905949905 273797343 776791766 129451453 98871179 971659958 364462719 880839647 418902245 113899952 906382457 386099721 973282467 161902011 865337470 944861756 910468751 251336640 907911849 198747018 766703633 915566564 971602419 619370967 423379107 309451871 972883177 879270994 15565696 500848824 920450192 845620068 902369408 631112061 755395705 614425665 819718453 988089810 296421675 194591792 373031504 954876142 972932636 411928883 970451871 757137260 770901625 802175060 704377550 802471473 213890020 956768448 428787649 837604903 63885043 328461271 894667994 408016698 518116973 349096388 738488285 664818531 347615805 452743465 899310324 741883218 528306397 978320098 844877774 792354119 818279169 772898069 365727330 962063438 22015443 883514028 93154658 797301107 656812928 947566642 893865247 923260081 687086972 244476822 856066944 795445149 951697099 990481998 240011672 732646969 898970511 953595489 816574045 795913930 784236300 707550076 779140552 730722507 382180402 301579291 839757387 652073919 866429921 941592697 561090349 820976210 923762172 562924302 357582472 799861318 849989528 914001086 242695185 644976354 49293236 929650176 247827121 709188755 236879067 807519891 209669254 863331919 78611601 816737109 97899084 774039764 893137936 927267690 612065718 330137075 424029516 767027258 860023222 746990654 970687006 182181921 896380377 157711108 738604588 396721054 187898012 539486562 916985155 951091165 933705443 481851780 289675857 986051325 471207718 89286065 989407557 875838831 936514667 846029147 863994662 840862701 27307408 228889406 147049120 547155082 943321067 502157094 519066546 907914582 964373944 750524586 924637258 407387512 823245844 944013725 774397148 99109604 163909220 496721108 595365106 932243499 286393381 895001936 366948101 783440122 4351350 732572362 55769484 27537299 880363180 271659961 18775779 338719542 838456736 393886355 942529096 87309033 277596237 980931128 962307223 17899001 977832657 989182194 823745069 114246904 972495927 237009442 665878557 119368316 737358999 988185833 368743534 781378747 814689379 791691045 787850914 702730553 853076894 814138094 981987366 55875691 755970737 954551973 431897465 626944825 36863480 906188255 725861579 527515008 244605726 19122362 308359232 778022527 760807687 975290433 695329094 888976904 696489236 964833236 568579993 916474613 846905202 317409217 849008720 281218425 975135733 418175992 736463013 755159696 358976918 126731124 820389101 42750164 74613808 8044971 205613743 816494638 230313896 460625295 365986941 647023346 987523098 817966744 35248885 843017641 903319609 965024008 747945929 904485442 142570886 439751858 923696631 842792552 405785278 778253929 767204943 940189106 863525020 819833506 681939695 954610584 977350582 782175751 796341464 918854993 961496624 652562256 195516487 636554165 880499433 499754268 865166362 272374236 993812468 980936214 808102047 874132652 898969214 109809736 338434297 927942948 968471549 941138634 813452402 288885387 757474699 879749593 688439761 556518808 356538640 418821302 933547503 408110467 929439973 828247171 239826911 186466413 284806757 154177485 31182175 166152170 429830030 436798813 915375714 354830725 827661676 957369082 214628690 251419315 608401112 610019226 747822262 262030880 578330077 907853652 915734299 100619699 297772526 654390654 841930553 838833062 540782009 782574780 955023174 848172138 689435791 917613395 880048504 862227441 189694581 654229115 900441725 278467509 328379289 841910878 773781393 190677 955036723 783737246 651150478 685826759 944042854 977201236 955013691 111097326 970959997 114246493 121846568 50629483 517756250 937840949 135381404 71818513 371717530 508188532 911945398 998361628 760711579 457047053 950875135 950030253 578015306 106350291 652590839 485853208 403079225 33491178 51618278 199594510 740298258 906703933 962462632 799055296 534887152 488471103 421304523 772735222 766356563 47268906 784613969 221715460 807267652 346591491 953772131 513949249 831687595 962049293 123814087 89319936 691197180 117512720 523890244 573862379 83645307 395406173 951178703 811359443 785394889 403465076 766985439 818507081 951817343 937535179 202423778 817501585 994147119 495699871 924939955 43200965 868189886 775133046 718273462 837020057 590287626 332741042 420538456 830913207 391478698 853180679 349950090 935944011 789789290 815504193 925953554 686992179 555453120 158164186 982038416 881995209 804814753 21923868 565217053 919647175 448714982 216200421 771386229 699807856 818700245 744156116 366269353 277415757 887734489 152528463 858561527 339789940 992372060 303419736 904552398 581654886 553831468 822068707 365928695 647403038 92511283 968385662 111184340 576014925 593136533 354249240 917706406 46398906 956276191 913238477 954114992 799435992 737020247 628729486 940809963 977352106 462397875 837338048 891520944 330902746 515680842 953510884 689627778 836101648 895667222 337455320 191818833 974814472 633906981 850550875 364342317 939393492 847113303 498045762 977602797 171074377 558208761 629430393 996318209 961403014 267928347 897840341 785142665 944338266 805500734 658374109 902852568 783080833 998189017 861786629 827365619 712917459 543495585 940693513 298966076 771191008 23438488 164842935 912377958 146795775 671772917 563833958 822230747 315690109 986518071 825670337 101679624 401300833 276861109 851587349 873666861 557143529 852993455 175990746 839055176 15751317 880231838 838224034 941040277 863129706 617969563 603634960 973650656 359395546 59128790 871715135 833791765 801806727 656539259 984796975 781126283 387440866 365050132 247722546 581448030 995620819 426666491 978202888 629160597 763490864 924884063 689638389 121159586 884994948 931184293 417070839 963661724 683799321 972999020 567548977 219822623 745290461 927074202 168582137 898219255 12329 664386862 771038341 783882112 209725377 759954584 879672711 37876471 103086302 41381347 339988576 267588372 231131778 489862537 984743341 993405755 676046305 625887536 918411487 151033872 902449949 145942259 486505122 851540551 909908613 336433777 882820069 59041054 615298602 616908195 229972330 790549091 400122956 908509718 870664022 937578705 905200421 62611376 937700543 196528542 160550549 90125629 929018382 220419754 351293972 937632136 479424260 864428707 292158580 814187057 416015494 734547551 979959122 873694755 511675837 924580564 525405751 120095317 868862483 283772655 739075095 793317893 572490434 896759929 993091637 87228697 472634801 408931526 664340291 859529756 907742117 910233889 446718709 309654715 687992838 934659457 102341042 107647784 258046673 845589043 875920228 366184084 526843956 984561848 550657180 920089802 841414485 640263617 320110839 845280112 45715448 750679769 569154973 753575822 540834988 266042970 864227219 778267049 554434203 80374025 634910232 83771502 562018345 942575553 380710759 952906012 824645509 365879838 961131942 917146399 364211659 64386757 942613063 331339805 178526958 113750170 114718866 411379499 494356314 749020724 193194162 881599864 939708529 418072447 872121167 902351791 784671401 889307838 951055105 494548891 659790367 782525554 88972934 834785393 610700559 736347472 964021520 943021737 946928549 771356490 576014200 808028859 586349409 416146845 955676962 883698231 970270409 560504570 676059682 738030171 447413102 223025628 232664569 802734765 412373464 125413485 51781990 779707682 320269962 834327162 445371674 235083771 190527548 152163038 844458362 992659099 668301539 365286628 40159472 629281181 180571820 708888707 854980311 931586599 745426518 711652095 25374346 86023928 924574153 531231949 139160541 141039802 749224763 935806056 164959537 869784270 391556667 366418495 332046921 887675770 457536166 511561769 472308180 129692643 764490666 482835522 903948531 791605849 752531754 811037441 103836540 210988339 845461466 872412616 751746566 739571948 461371067 801156488 432281736 954114479 549528176 772440323 702568837 377726579 921063498 82579956 982916113 15477387 758776324 491076804 741443925 774098896 743934762 538667751 311665683 500377995 305672985 5762104 368396194 817034095 905291636 366245727 779557078 265492079 311752125 741223422 190173767 862206848 940707381 562545430 712149993 273095233 861331523 278635215 805559929 497271867 742381931 223287776 924731709 836778460 746166596 671543711 981043542 24319480 624294734 914711186 811743404 360412881 835314451 904884021 887651797 889672188 110513020 883819129 269194011 837519202 419132781 572148924 991756485 363000229 833857630 587630885 820489518 593538175 808731532 161535220 897790975 777439926 767613952 443382673 207688717 984154661 726637136 759429093 821779741 878241692 813471025 167475684 170396015 998864554 323677845 399004073 836970456 61303458 651969682 842778116 318265955 953160570 669333960 511291363 60393044 10001168 325593814 822671158 249909957 465858089 899869290 296549146 703557096 970787697 837610377 58467518 486148408 751215067 611551322 791031389 468182168 975188873 786147014 5820659 127377370 954155525 966434940 430976714 268393024 753012772 773817621 930725645 197068025 878808982 566850037 511560274 212959394 988184212 468786149 69344616 980429830 115829102 795773232 936836842 857232885 195092245 350647707 8256873 808481769 280040767 10119930 394033414 550822449 881151672 838995948 837316336 915869614 846922852 604710300 752626231 978523889 826263466 946339661 538712130 828056615 791276415 760753420 683438691 976247000 806416771 580930441 869565705 756432256 37664026 945895823 103422202 886504654 293693253 971698754 603329843 765264939 353728054 900328077 923560966 801652809 344369102 95361299 979433510 854523418 529955653 252047936 837478474 150522870 610756694 526829487 919942255 878012823 829072922 824536125 516877522 105916461 132029698 955931421 897563632 529460595 991709996 868031500 901815196 321156868 992061934 956457138 254628083 559901578 141198108 230089877 337362635 786444249 899003024 767285754 217678200 524407846 27618031 976630832 988523314 91838385 844324287 832242965 908477925 973844604 214071128 371941436 933808076 213660138 275363109 799090420 906676568 322341555 758387561 171455386 494736015 849875860 120581809 370615514 891153504 269807878 948771977 287133185 657386609 319677195 428712866 874098027 215708856 195028925 896096950 907845757 930806471 833740234 763971691 877390592 464495818 859520228 943530274 78834951 801274662 767500857 600513045 498293923 94148013 778727071 353531795 400099320 749170269 829880485 837864347 343710262 721135045 28770138 158759300 612777447 913683028 574451270 79537813 502257624 261157242 851808611 773402728 870963243 455207550 831032363 915300311 769783530 409471035 743784337 906491417 155020180 946779188 812969080 791724543 941657796 615207035 732626252 237907414 792886295 152401729 765935256 947893523 871042511 882715811 971576210 359238678 738890998 874794449 121120758 980738136 66721169 600252375 761977764 874510326 732420587 219369419 226765925 511926910 389660976 191289807 845858606 705673068 548524016 828195681 986111209 405584053 774966614 763117301 798690342 891050436 758515948 928907937 403464347 827831856 995618692 767306350 925720585 943561152 873224344 848975051 907067530 327227922 728572071 974994055 364985012 833480736 896984936 72178709 946768325 366160957 558027113 974842320 780289821 737020247 362232935 210704964 276975899 419688684 788207144 783651954 540654871 471613307 868169645 577563696 763493806 713555561 950040693 999006717 842407259 796998273 424205129 832285844 302785676 918604472 879082178 834462874 100569921 761124443 738725160 343712232 809441068 448267529 901855247 830095445 906762760 949116014 847798033 803338776 788141701 895590512 810444249 656108566 190622114 679352021 865388702 445689414 430667426 603070159 344039396 793871861 891709918 992240500 775542625 896296529 764568827 80240379 831515652 996700580 770411517 287414525 631506021 137916367 693133090 375463019 768796218 470753710 357470707 783628195 341659550 757183077 816766696 323723185 368584825 250457252 712849302 72295464 978031320 54890375 367079020 926323868 868224922 712798544 831457038 527760153 820545469 779117902 81201099 970241570 365122844 931880705 989538112 996270218 159883120 919458642 828383500 538785191 630373516 854532287 917974247 421722262 856171766 557941379 318538568 909608646 873084477 458775623 491833331 827611685 816535370 801927416 18002416 441489207 546055183 803394089 307972883 573339823 960162573 832368582 857989294 465976000 436067322 600323876 829375445 12034714 825663362 905071637 297661785 768290607 760591212 796607951 876915704 808706734 244948452 544135348 938087977 680689244 143245698 535639989 983199827 833521370 776800485 204385684 390527433 774795248 757430579 813990880 769863742 739468078 16302349 741815911 375682288 335546275 689606991 516459842 819339502 625913098 889096185 966542863 227394920 550040209 991549374 709395058 801354989 157169773 889744353 754463004 504314277 340796277 186439627 131222618 863418603 800853010 834077843 852945570 861967849 204647899 954061296 972962556 203326063 146874383 858383273 851903571 946596629 752094201 345585139 662627982 326490125 234361524 677022518 781723005 120543624 936831589 15926611 914821367 838661242 979334240 27275162 987164971 57364753 269908820 784624879 132234099 961327641 839566441 774055746 972624927 943208488 784396727 713127920 920881321 904082132 878150452 977444404 937267478 294005170 805272658 167579368 810378624 397053584 329459833 332441318 521719341 570085894 94472383 567790052 507146522 977827290 967730876 885729854 963409679 518474111 924852670 142961855 965311713 253819451 770907658 826640473 993061515 880923546 888927222 29722900 764409211 833818719 115954127 867786801 956522893 406611623 135945097 287468622 44341778 780451774 765927857 576277631 752891503 767147975 885100339 849941820 153625875 41310433 774969030 8556301 839588518 456353858 732702853 853140517 769074510 358672444 799502290 935798372 851415088 908102621 69946906 847231285 718718185 795965570 556527206 823265015 869420690 848951921 216474699 76455386 831032115 772450576 461595253 727957691 809183705 512304370 803346795 894519240 984514040 773655029 904244355 828894416 226306435 435995272 759550528 840439991 926075413 885285920 429880347 781483943 750763086 860073022 389371622 819086092 294140546 784734074 12525733 846574521 792293181 946382119 915739142 654416275 389370123 919169454 770380152 837640015 982587101 802046074 751396868 44975762 721594830 85253508 868639969 769990162 983664084 844693610 333739217 909705717 201205653 672584636 169966650 31728095 975444307 813984115 199213868 676633351 751062412 545154999 856930371 965358657 179760859 985548302 799845402 630560522 156153611 388790771 919583411 794069834 51233844 22252555 346455979 874455784 201898311 936963505 678118829 158120598 436210473 836129323 348023856 216682357 741214822 941009240 983291429 586655988 266361628 950123580 795831319 502422352 366136968 297596100 779772874 999744979 429953368 842619509 621550909 89193736 535205522 562036899 698807654 825555328 990400508 828890658 124079680 246505757 659281523 744422516 406968408 854408462 953004641 725024605 638004763 424458700 746431669 194320000 478475752 810520700 975410262 982671064 882112730 225601464 567187088 853661219 382916804 610631469 609205971 339184585 604514479 748083742 623852807 437361202 905955488 903477324 783378263 974335840 994195085 743271681 737928431 543665806 744226113 921745408 493721187 771238891 673148516 812970793 748996338 976344422 512545651 695766664 866580693 808515913 873481673 71242139 723367071 983354325 833785874 807314945 523583673 837770160 659649658 931187164 678290200 944961313 860792924 477902861 831444169 96637807 356571310 949315830 911148135 849995074 572369446 160405298 565224504 938651437 417295144 53171343 298850088 867364759 98750436 345816612 766379775 945980169 104606889 855267968 771342973 930801683 513186938 256320050 706873611 866251254 813493774 842240050 752357067 161690870 613866095 765429311 968342891 828256217 582370743 742379056 139277340 429169252 598651465 135642105 268912792 729469867 751348291 954075153 497398328 388390416 737020247 237970326 970247115 832944953 740669921 609106019 957513847 109305367 832903366 849942016 875569264 832857140 979139685 253133884 867713204 925672363 462899796 124028454 695926021 780432068 158625283 968370917 547798991 746538155 381855670 669564203 849190799 851492972 887987689 855243254 355798775 435930027 827002994 278727933 906214528 877243276 989719827 816009179 750245219 838499298 978286627 803925276 157632404 401224226 325470641 247621380 984742669 842381488 619206946 705237419 753310312 833317280 346998307 505624218 611146334 440310934 901467363 849780565 131565527 326833097 636619127 339344912 531824885 855326856 278839808 793288932 899396846 21168316 929622244 866523006 904338407 878043285 858737037 938766543 505024561 250113318 747328813 804427444 757951985 867066784 768365684 419261568 331908410 445570350 761614786 631954827 43376777 874986480 363451716 377634542 150267137 950924706 22832641 820427002 854971738 787896161 992641094 776021638 415479515 715363077 919582020 329803969 75274674 441828280 982044790 165556618 776640797 859444717 912741534 242463304 408807040 974989143 461574453 925960765 186745757 606327722 805895221 761413749 62797157 117897442 989379639 293743851 963477539 384038950 632717701 63701285 356640370 16038824 888874049 954625602 56962888 852579323 388213427 427442497 984146771 292745660 984751441 931691158 740318271 835949894 118714806 826752377 274614584 997613352 324112378 466606803 955676465 813160277 930232909 947664518 721020101 34770075 594476262 239786490 879755191 909632005 717525436 34176069 917168738 808468480 870923080 136846295 623200760 512589635 799774053 710535151 71402101 945110744 762984242 884900017 982821030 200020077 557576092 118343792 875494989 106750921 478805286 731551977 863268709 919265587 631518 608843379 811387884 541686104 14031042 128585864 813232630 832760071 269861106 862553799 412644044 973746673 773213165 889895006 58806930 752676223 910288790 223433125 490292932 672245777 111901164 669537441 559160023 237640098 610575673 956645923 760258139 872406017 898291420 846060643 841876631 825625315 768839463 908948774 7037144 797268532 805578962 693905635 129262711 351233416 840499701 978490355 509485077 404069142 957078378 281708702 865050181 452542554 429132451 52697598 795205336 769603485 117338096 638962324 593415172 115013676 537935749 224612203 319763676 862295137 134950365 757650743 770528253 55009554 611139105 47295315 357890310 882425393 902264048 730623653 993955993 809740997 791948028 519967577 76175262 333094728 592986890 406506214 825124155 963762418 157913037 515040380 24185444 854819147 795192471 57773573 435930375 576368252 517851760 986473601 812661110 601922234 950449413 571257273 808387407 585054377 858011110 784362168 383723289 759742705 964360127 774686714 818213322 904780438 865169071 862077474 959235310 639953547 334928053 30272838 824009518 788403021 342414792 940735985 556825856 534023880 186094800 592115 971135225 888276649 739256833 825691460 595826383 901939476 737071774 596415843 760501315 12702397 977711768 545790616 229032275 910856726 820408694 979538089 22239350 158503319 184926117 675331679 916646092 535161293 993434737 214177775 829159409 812598278 822867183 401047969 541922495 976517965 607490092 650693697 840504674 945077760 533498532 982408988 822639509 61593075 925647848 630539289 217776889 93980099 157807938 159549761 210421876 116186640 25126532 915880521 728697667 832272343 987635307 985002116 953927684 413462477 530389137 20045171 803868938 334439642 233086471 819808407 829812658 567980992 955174898 620503688 350533940 751912877 837732591 446948276 202068469 995687169 964332883 341176819 939595680 926708195 672849767 512717605 207609593 811518666 781952072 843262749 697407831 320395182 153765612 404007524 77401812 974901849 873970935 286030447 884673453 767183467 780845192 838101079 860720042 834177441 777983551 690070525 328791837 883567082 951875087 952550859 737020247 832224844 226506973 650983022 478110429 235001281 740420567 696105182 158043792 818025696 896227450 629105499 467882606 879252741 41646511 738740814 843680263 192352457 814878868 894098434 910811300 741830166 159494551 947769238 979501419 213293641 126174745 439299008 980102358 635414471 425212793 58673817 781456172 737020247 658001903 934564378 998014708 752382135 724608772 510999821 215891436 468147887 876930744 876231378 207767852 238378532 965150274 656810419 883705201 942608088 744303639 534919733 278037046 203606799 628977094 825402548 861559861 863730632 868682624 991077424 128984531 379618314 580646794 506335702 450545072 988324284 924022924 760707762 586575269 867980546 593553723 573368489 689797052 615116464 825980097 360492477 613299846 796357368 3986076 588216657 216184499 969592430 976572521 906442436 879592626 9723891 479665179 446571828 558273537 695825300 491388681 853260031 1183835 795272934 500965190 808516180 946410661 200752492 826230371 940011142 947853220 794272291 513613526 801228080 319231664 599910803 951781184 359548483 244008025 988029022 960487039 853783429 901277162 122218062 109249769 593023893 868397786 919442256 330232432 568683853 883630976 953390690 539540521 948375143 932361511 820282461 209507866 616971410 131749865 639166316 863194765 266154493 73322169 481952721 890711307 814083921 579620128 81969005 472358423 571131229 768857176 340726551 861530914 949185866 971163200 922805610 730605743 720843759 728247767 852563929 424734945 768337983 620040684 822363857 31251851 800878156 785049804 735777543 483964356 92730624 791803098 752585815 838292730 206941962 885383728 27384653 981061384 647851074 721080910 202389739 372634883 78593087 870823639 858750405 955987605 843999821 772142634 987831284 31913659 100236029 896663935 241364060 854755469 678807550 977198499 856385538 933992066 510248462 319526847 284044175 580187249 825647282 458807337 484145122 265697210 812369344 149723379 890368689 354111325 858296451 438085946 794432902 798466669 499791604 992603337 365080117 840598617 775710248 955891668 911856019 996569717 909294000 792015150 42173681 143364453 773221700 430811331 294446313 95065493 341772291 811438605 848110687 538940539 11301041 686922211 987457373 317464687 803952205 809069390 536087175 998199851 122825143 518766142 751821852 716627734 790763823 968050136 813809942 757442501 499335945 655897634 528544341 772593083 590531873 99512468 8181282 885645026 896203817 936361843 845977104 971657022 679497740 424821749 556898567 220497299 828822449 43480345 290748756 441845885 674875455 867927660 361794006 250423438 36845515 805758374 84708371 578611780 670701590 915650673 984727065 453105766 433582229 306603379 340057429 859502989 306260068 955371530 177451017 747514790 894992603 308704816 891434418 840142971 836911290 900478053 717521625 336817982 325804259 760449386 987025068 973336501 14599095 28883046 864824241 820238760 748570444 384367030 633835474 90214049 771944060 92544938 791453355 998171323 158706833 822089159 829249035 909429856 588127438 685983991 515665912 155916101 986667803 854931505 544968994 966623940 255631256 973859102 485765638 867304230 855461652 630096046 884649955 854824902 60297583 834884332 658194893 688589252 381904605 350394483 497673397 961148502 110728896 911397281 475664981 884907485 849116227 960558888 171644205 504303376 92550960 548540794 924900004 960076451 805161366 990789127 816085705 917016574 318485440 991102456 613653426 305639 604010218 268412903 647110039 921834557 660459840 365405652 744519693 857655676 253801343 243758874 842137487 909793001 88155613 927914595 636714626 475700983 852410530 731420931 815090839 938885249 894038341 953572250 861263356 850894455 836768066 620256561 860491822 892829503 892316410 295915953 244689291 273761653 283032854 716204529 670613739 796926409 994313841 361821409 23316179 817131809 978871695 972417822 942174250 621890652 984645667 884155603 264616877 85870966 371235644 755576537 851357509 362961240 720696115 712554188 280436666 526085957 603258871 33334580 745175352 965638584 813778608 439625807 871007522 178248732 81994235 768289026 289169971 514767672 951594847 926813295 377572984 904491617 583478109 887458576 908429497 936737405 941664920 105376261 655952411 937178905 739638874 327796668 416753665 785142299 760838192 122162222 397650598 732017262 702229268 790010453 812780442 541825781 892126889 814498691 909303455 962170492 981509110 891614047 515403655 636727299 585418045 48663145 797733789 822958111 762285585 764554146 868411902 372062513 909746266 125097986 957202629 845646861 212537452 759989353 253430225 53167904 877391204 184573344 929077047 709588814 53617632 44579007 523726993 408376520 330864146 757860994 833731792 786371606 650182835 145602161 855538844 643778182 615537269 916426579 847975083 822121180 652621544 773718265 75741364 787704191 800238272 752225433 908073045 918568101 661236377 361543419 206281685 931935132 506524183 832340084 610891178 81665227 751550772 868877503 933695007 740273545 220950401 622984873 90154928 801980590 923085678 57459169 533928242 945139402 434297148 37981943 908080648 294216484 490424559 877430612 841215408 224867238 142594279 800524800 985288131 916488654 744939013 464034401 997754650 841731589 946411726 617057734 236129599 191643343 66254173 693105631 895603999 752675865 778383061 780314041 783642463 850404795 178691215 584644554 859859995 301532337 767975342 404237228 937967895 454703651 771052441 493733493 569260350 376615401 408076906 302784213 777523497 804595474 923986977 820592320 903249144 806078726 957928283 740672754 865523516 466046385 196325988 269421484 350304917 821490588 866584147 909452021 797291259 990121308 814524359 257725645 874692986 767457823 912534227 145925576 241136348 780641064 294040858 823924870 799296210 221471134 787875839 226725219 985049337 42306991 824193464 426965146 215213929 109140742 560574209 878888747 825113379 976972994 925789834 959446393 565976833 406923254 796019935 833569620 964004246 209465939 917959166 990424647 734830652 842149170 642337422 903385224 923439132 362610608 22932937 816787058 905633386 937292535 581918761 374531471 447415696 842290739 578322022 334996962 895502944 981106144 805043497 928106921 757872711 632386949 93961861 526706680 816164043 529319596 973734189 919822993 572479218 79393428 915946528 467018029 334528220 486471578 21917412 940828868 975103533 488247339 500410527 64492518 256212055 329905318 890862732 823730303 871160312 29294236 675498547 228711897 176901411 849783320 742595101 816507047 945155617 621982445 938278976 754102673 784973397 290907922 514186659 187579526 550851805 970986449 893347308 766567920 794150808 779915647 755971865 214501740 22438629 968648916 119439382 909921953 778643484 218952112 908517435 838322509 439412262 324599680 252425876 849061551 888808074 870184047 600490924 876932332 997157220 426736892 396486596 895669160 895639617 84362211 771820842 79680038 799307294 379007651 992737390 292533204 759402805 123728772 940938576 770472380 250118681 952181450 895703793 353463431 791383047 916719767 131607371 900197675 146342738 914511320 895712741 896000615 966095106 952945479 851210109 408097460 271152069 977869587 264894829 534913316 990519758 899548747 682802296 885038225 191368811 974379045 377370489 728025301 790455478 815394806 738928418 744347872 981887210 939121739 304436412 195574950 943957507 395636469 825528703 338700490 747957744 605417241 441954223 337100635 897078265 49724210 770161271 660772621 993258972 426063388 998982182 161994051 828050432 751972091 749878612 5013203 217467780 188635368 606293149 896719515 780890935 903286068 998742638 937851823 719021142 978405218 52752326 287680222 398647840 82441762 617963270 707525848 230623484 910789886 100304726 782430411 745194645 794954669 985571692 979007711 747821089 439403315 312170913 172037290 796926507 906145486 993209269 59276719 296099325 869850823 945577551 430678332 994924538 7636158 232372548 958219268 959800032 745566273 781857866 16027506 5567822 169902091 977066292 99095717 795893014 595430341 910818356 760499364 261496344 906473697 73870313 357802133 824183902 664120669 697501970 911212146 780223018 121452133 402155452 943120209 14453795 814782472 784148535 895842965 994989979 896111916 945327106 750577751 801683300 44370963 647112663 577072814 820910134 850255947 433802642 746298525 226884374 558200279 45655354 984786218 401676711 119211388 865667808 905018771 23566139 832269917 510866585 559237802 29188778 777184846 932228651 606112079 768858037 924877958 782521390 992362573 675286201 565409070 100838003 867462871 505158427 460086927 828261431 943527553 69068683 510113799 714490991 298598380 318899590 603052117 955204370 987118213 51801210 924825419 461425454 876976986 219079546 797048235 926336910 815261360 81769954 746342077 806042078 625336409 135202302 696346959 57714137 834360333 923228973 213587498 975919317 798504748 548104877 925819271 170339463 953264955 849219463 645835814 83282583 839870854 829486051 746931185 679413423 952505910 920309432 595553052 769308269 414863441 796478470 658329458 856861549 461980646 386057850 967751589 966701116 331789592 182443755 815025585 764144301 835557328 350091779 470068886 628599855 348143801 990194882 823278835 826251377 440096547 978901222 142805900 883679188 625437814 732117997 76316742 939140887 291389808 789711716 327359167 396130352 774567367 826798602 722785759 745831432 744614158 301661399 413382911 298066546 896117248 938396442 952094859 49973844 266348079 761720007 503912641 740641707 745440115 872744871 883440806 633816454 840328047 898622430 157901494 996304706 557744292 784038603 648968194 672740587 190567902 940648521 676631102 211935605 964227414 925318713 122521295 574556010 262274732 858068154 890909848 969158440 843793918 875584884 593363194 463028844 563368954 769894781 720521119 872774772 353563737 170766095 615119204 674235832 985018391 892827083 918185491 789735908 941385328 186113758 673202400 775529577 867696991 821405665 7898954 726558842 818015836 1820375 875213636 826772575 983204421 588651940 58622431 265624592 803685059 773828849 255952995 44186080 698709759 920212335 780134668 911818852 592768884 215963163 973582307 277719717 613505518 988420007 889028595 511638058 911357167 583238443 782050804 880457882 315994321 436978415 956190412 602987709 944172566 317323750 394646456 39925187 928569335 918008433 130487315 255872529 894655378 509125558 847298589 280594769 755921218 555739450 214602828 955431351 382922110 810525349 785369549 962800647 742035598 967678042 385379939 419641954 647367616 654992099 982248426 886692896 212317026 777472212 747228311 272243907 623645624 490307104 989784746 995683397 236525194 206404118 976374714 857194457 237213175 805232617 166157402 97998042 893087756 755099568 941854697 643263834 722253355 449385887 983367340 707245127 277877826 972879535 241064374 519012273 576719931 999491956 446027729 234936378 234932395 637590878 578681015 909641286 794415920 899655956 788598706 750627022 913772595 952404387 929886826 758185630 819918749 273049806 877415997 868825964 913990559 881930597 556709095 799152308 879276927 857511934 355609075 19355399 771478842 12309300 770110374 638540346 932653565 589379404 81271309 58965855 804731118 837141866 876671445 795749460 336175139 275890861 788862246 401044565 888462245 471124530 933443166 236311492 553261610 327056676 880237728 337969888 955456309 756459520 885949502 790742156 907313766 249218470 350793043 45662279 186771414 784845011 887270867 658437648 804617752 983896854 627603585 930175504 940623346 486726503 6865837 915206174 983774118 882372621 51582452 469393218 960921889 757665482 766826453 912542831 880309739 193494368 381467533 316572512 605412681 900257276 56475559 832483070 56004092 989456412 864876153 811258893 598865986 816981872 795505491 356571896 645189098 195754820 707256763 797905253 968618914 751563809 874222343 807312496 422403241 4980691 608307767 603569798 6891429 911289460 706246071 775110123 943207736 246230535 738166919 291731023 280188816 7434362 255045013 816089428 926228714 559773550 967349527 589237980 775480596 803115142 774901630 877580754 762353349 902615737 848158113 758378594 947279208 355134514 264939217 836315922 224890158 186841776 919711226 768983627 758824315 494677774 98080584 811803484 770334022 902677984 267130645 193811779 619082670 791056808 375684210 300236981 299324129 257632552 773215428 857854885 909936716 719011760 535694009 996171997 456039544 450487038 155386505 957016856 166308749 859505212 867950588 198070247 821603154 702898017 654126704 204571512 867834332 401006242 927273639 765995202 379098062 971921315 779647422 816669440 506594213 809644186 575821903 892622566 929971320 798224682 379407566 908593645 293734774 742559281 835906611 395755860 472952928 309162101 302452679 12193762 618702928 960221815 560290284 849858427 757598400 721147684 742336357 805872779 197525706 81666559 874379234 748403568 555394987 734007574 417871922 615890182 67818679 8801046 30054774 495784188 157567258 859434427 831308131 351721214 757478251 205330344 796728493 15277356 199327029 651228565 431458115 220502129 674077520 904016776 765204621 602777521 420163431 950590807 769186877 810540338 219951943 592563138 964109881 832918451 698102442 972625209 938297477 924270852 921521618 861229381 833445328 824233149 64895239 268412936 930713175 600774022 457204549 916439792 616043629 255032536 766842125 343776958 25212575 954917941 810349007 755752055 177137913 193108973 996150278 232884842 775302892 901873949 261430541 790051113 914721651 991119182 123794662 737028479 841703624 244783854 744657297 332072955 326029501 774222540 938693487 447817550 307846562 601806809 758673331 441605085 782267673 776665123 301755931 792296935 234177837 38328904 798297402 496848836 284499702 233294406 791814117 763981454 603240515 840270587 785309255 529022345 830029375 996006917 414094517 998950306 850360356 306590126 880422028 894505129 250025889 823647717 671982666 729668538 328538962 848455022 940509757 989024218 307853086 510339671 356365274 782810912 871267191 481131647 968963938 263729057 697004766 305139071 845284252 429592232 878116295 428839530 357086791 902566712 429414732 768368680 674853388 585678498 11586991 947290511 906039013 665645870 756871626 213176819 443650993 442224469 220031320 765315128 842218213 22904709 541901299 591196402 337962371 747912914 372466047 818578045 485634472 780733285 696399838 881348982 939401907 614558184 506409065 564644129 263965334 832256248 278072314 544711593 983431904 608604273 443217538 925667596 961534853 751759371 786507272 854426943 988171909 739120370 571090548 601751527 882015987 557099747 434678912 801665118 170744567 907272215 793431641 39892204 529723521 122821143 920544937 785226507 836952946 213304562 974110336 755864868 502022014 867093797 332809619 209859273 885881116 100026190 629576554 79210414 549501452 860449400 391713633 183414263 172894220 175610525 300973471 958402572 875433931 590694022 782897874 680705869 52827939 751678795 980973575 193734648 900865865 134546037 949936522 973182504 922377861 784265355 962221126 958616050 362034301 798083146 723677314 149991352 926459965 299421906 903126535 44203789 480276150 972423267 955674409 953278414 176623171 268675896 134164928 79372190 730296182 993198205 780430275 802498827 405040823 778205093 510369541 457408454 810229840 799824003 8505343 702785983 705968896 955004916 730383595 728323528 242867344 595692045 841969671 545286111 410114780 649321132 922495417 701970964 228594412 779807161 822761991 891056838 923059200 139342533 680166837 421415747 706986148 9334121 584894024 738116651 806460809 5607644 369777592 987911487 947788839 468837975 937869764 283887886 643610801 680216904 382996446 898966470 201894148 242844821 811237771 914795559 767278444 89280314 956159415 357872852 837216364 783663444 386719630 638293881 501217566 273571689 893208760 789082339 972079433 924165736 685727498 841441403 881071953 734563865 44979550 234094708 547288678 445600538 911230534 648077983 913618869 157598216 18586720 817366431 191329540 786528132 872937827 272947495 837580760 713952883 771238101 830172004 385535476 349981638 879064667 843341650 681918321 47723281 773777572 825265053 385990116 998235125 896001165 950263008 728166260 945767173 956779238 852044737 902035504 136088289 634928089 727024116 431092285 958877616 18256046 677866690 488894554 801518695 347087027 412642973 866479663 466556020 510251719 939686120 567624904 822015092 964279660 965875285 458813544 811751848 974038569 544057645 761555262 608185473 949285411 808094068 761428471 882295912 411303752 878167284 743728941 741522054 713118964 769358337 988251651 987166774 2744250 947797157 991190988 776569869 350207495 678600696 983445521 532543137 770419237 952800941 855396011 312798552 988115447 512898656 428265461 148552846 546794904 860971843 80099095 992177659 260407056 975832544 333616959 919792101 872131650 944184054 808845238 879261435 920393887 836013474 404246587 249212315 945690073 558947327 205597290 857433972 242828846 988769191 739836118 934145983 995936717 202996700 857205224 425343597 921182535 886842169 739103921 994077629 855637290 154237224 401990561 217817991 692237588 850226441 884538423 813769361 585469925 618987292 754665328 282455726 956627544 980516639 365748045 832347263 467029824 898262076 850013521 283279288 590055541 47925381 374372102 867956007 931189616 824923007 515037765 32991574 506941034 390371552 277579399 52274175 804003150 320945132 56272424 939826208 943151913 820956906 297439361 28867998 134189856 747402185 858240691 974124860 225327895 753163243 765097878 933494847 962366474 823053769 577426770 585343662 369012021 733233608 811445309 179093407 937386523 408517991 943893602 758580796 847945675 567156650 409552035 569530558 868768989 144661401 754030720 531119700 840757539 639001815 995767729 371818830 936043817 22876581 906022194 865713390 787068145 35987082 397076005 592771410 507019828 596668057 822696564 953794983 613411880 190673828 362969301 289119817 877116936 355123402 220442461 654378809 763012077 333358397 894880924 881948868 432768778 279516663 447422337 145363677 946916166 862962606 794080379 50760625 982500184 132084911 757232252 992268409 776341979 743647205 761092396 991976376 342978428 190203579 267616480 953081954 336543043 889666232 816860817 789450828 21818945 785579263 938314427 181310547 79216219 973017381 978208741 209799921 206568249 756136160 964584356 842338498 143187987 322076117 785492494 722170048 274238623 571696411 881106899 766047466 181458025 67492870 775596440 882096414 791647911 872440943 887499211 803230825 466800239 778111785 20586322 595649999 331832151 242747675 909376306 826338737 934791202 495352740 933747522 811312951 919769215 385106564 204486180 190172358 498517463 763632408 865547170 474945763 28612769 486349231 30138472 769703899 757428745 25772542 71020202 206215316 787315770 893250733 819962002 985000483 828235578 644711491 810780350 962205508 766214395 803358298 872930640 520318692 474049682 101916020 338311880 893884594 955320691 830336976 43268626 40054625 527371145 333825472 990209807 673904885 464504617 171728179 474019568 877111624 962836812 193278056 216884372 805103032 399002484 786538933 767128266 924230687 479442621 109421162 218028927 763817471 937415514 865984059 771195483 143058459 978241137 893756030 798376469 926753642 432755978 975249639 160829509 26524760 968083777 131503354 548518763 753162231 967848704 738745623 764357256 367632178 817813543 120752434 76384407 781833547 908514470 929594988 596948694 905725818 800108870 518935319 648231121 743074875 415139825 760269335 881860903 700778591 886144288 874470318 790915661 655450966 261542217 981858139 958601118 356804763 724164014 731656241 313481659 959071661 565285494 955033140 840101266 710779145 803078011 306513003 826393112 765805017 955800074 923118698 559724775 983594933 740846015 967923477 560048437 468097070 541395847 848914160 888116712 431208071 611151855 750625622 686081144 999828817 885977101 852176893 885164021 928557520 743015453 218663727 630300258 660370364 86943581 795829527 596759151 891082338 260618375 135646589 952724348 396843198 157183035 505976640 264287601 755967273 199471351 599428974 933727871 974833130 368316684 777951011 387835773 655206545 822084615 85252947 19596235 886145268 669593016 457587147 740388836 120246851 703461113 377564693 674015832 822894762 362883796 890940987 973907090 703684170 844191700 287913969 880408080 328446657 126827977 914273597 999484256 614015227 821159286 822092598 686211494 940818258 927986621 831585669 930178376 678627089 829326407 737020247 350960150 57090744 786377466 786845036 969571960 935918293 39439329 227187237 932661351 948934477 518718496 478128915 558423928 668129944 779804159 52072897 830925926 239687554 50510729 857542833 322285143 602813425 326543858 819367883 847891821 786170333 907850896 284569897 640840971 545886229 863185789 651680937 335396805 763285962 781296114 328490058 216832971 823348018 769064123 364571268 261983244 244400962 93288818 906532079 885536213 128999776 761843438 461962940 122756510 993706928 478472942 428413608 845131823 349227171 894231659 944589980 196353787 72896359 975563152 990912551 63087809 342828669 834121441 792628986 940653903 590923636 836561518 892764906 799575786 763420644 213833072 310795435 139808713 864404945 130365160 208052898 845807677 816502179 243816741 803676477 2265183 797335867 229131987 802801374 565461169 531422316 457490681 539120616 870492185 90925666 925275257 988889881 993406976 126755308 327360279 330279570 961549935 981673241 751837694 796734837 255575728 898426148 580425737 92269202 817947399 983206487 850532120 896468753 258095254 371723638 789666923 434431277 768541028 272262375 419353744 922113542 284421412 347242536 797907726 915602837 945645618 893950848 845723650 544544585 917545019 737020247 341304174 668434542 460800964 798901363 835714122 818486028 316902930 557732433 77543888 478086055 51832577 737567705 961830037 924311266 262814604 598902369 342331427 943096486 385829425 382824797 901833014 46505375 936741744 573537077 631697276 908778937 755916987 659667115 401724260 881296146 201656882 982582392 443688311 899054266 965327928 315211469 327585786 138605086 612406204 450248063 922706874 934572836 952818756 893869109 106455783 935435095 891038951 825526824 334594280 248308657 142670041 943883103 693852786 136180590 412039972 968971569 57850260 860537614 413818136 367351247 490601033 961737962 753463210 190586658 607931546 454164393 896273968 991524818 723275040 774833489 965515730 800393850 503348388 434888261 847577486 999663859 832446643 462552997 922913930 479011965 851326713 810291688 532854685 784095555 849232187 80732400 118691308 347161186 989619911 287084644 572905574 811994903 753455273 843358687 790909824 783653480 797601419 597885358 892373191 991659563 806365640 298467270 745900217 832083170 668324225 105143692 221783754 444479399 306435824 614160378 747450479 790242794 933112976 873726301 992379941 3757477 903897057 967053335 905301358 542711356 680892158 754465512 788784626 543881916 936576623 761570426 133732938 778379903 465751528 885740925 947878801 366290454 881208584 946092104 968230640 70133378 779666222 742360046 605696285 12944662 831859949 428513803 380281495 844237031 947293072 855797394 82408866 53721284 894609408 837697710 755584165 818565539 202063262 956780329 903739495 244786134 405115448 838533804 823961563 371963620 924513452 165811506 760932239 888586797 944122001 799369372 151087635 67558522 953258182 378753901 360229493 771045747 666478103 232420244 101649789 644072907 245405879 779262469 788056651 827673232 415818594 880827451 932958780 856225257 329202278 889383506 367734406 809491559 270222354 249757090 163975890 848205542 802555884 288995715 121272242 918365501 734909554 770182673 912778392 477267590 944508411 865897250 798734878 433815176 969492944 38047909 364587799 14194739 992733272 303487724 595881328 389065983 569174990 556628327 991181130 230116189 15987063 765167290 810614052 953346106 970435581 299896427 66490749 760227634 686349737 842345569 651274682 999249516 25192281 742227911 979238486 129669961 366140513 872076044 369991243 860060390 543641908 745052790 876379840 660521093 639913058 751297314 611705181 885160261 326496548 530778889 837169297 361435498 737887278 323473075 923407549 789060773 754926958 528943943 793021004 957402426 750199715 574408741 392105324 794156030 828599294 989448362 317406095 739085341 756305471 920317552 974128224 843495158 437096746 662054366 484216157 829038224 801465671 806318631 908496978 416486829 948498639 250450325 249415256 944105101 511457880 517307530 898999989 155568588 818606716 988213393 613278003 903209695 738323264 197849756 603007432 502865414 781881649 275618563 651165651 966971718 330758539 785893662 180113745 360618973 796609660 857930992 874250440 2659183 254341003 190071129 355168332 759381794 40304081 979649614 428789778 891748121 795827442 644078668 520551787 869135510 953910042 310205504 230429272 63547765 403411629 783961225 960689333 973435758 78737176 303976425 848521508 740202314 943213842 679532227 116325901 377354465 870555752 832097933 928380728 196764471 984659649 799582251 440766681 477578278 396061342 694854894 348628001 146398417 593332654 977799603 318095036 526953220 207819482 432542971 44418206 551069455 991322352 857010510 793304792 225197906 608494397 879604472 968939621 42981657 404367992 148003339 975162915 304701783 171389396 930353532 751863965 879117043 313855879 779138637 553427938 911238221 932722274 439593060 908006686 514241855 859298857 899877778 765829743 156313370 921353438 220338165 219255294 796322432 989064227 782157637 770700886 250820309 70633197 782727819 890671357 919706975 851189943 427913744 3578894 956982665 866760914 555230202 164913128 103147900 45851513 626258848 7578434 485520209 971942881 808844724 989547356 783160146 785379453 275749662 583618458 918257670 46724356 109130967 396504899 883188662 777001173 126112364 742223076 859304784 894335059 941145048 769485453 741441853 858605043 764790523 165112874 867736585 41891515 426368885 82412310 923687798 289389715 776452573 989495143 735986599 652036829 118647179 863996591 459846200 267567361 384911877 633980643 327559931 579926372 971969926 608593871 628886051 448206505 110011722 984734303 840606009 462240221 624761810 987477769 878151234 708033786 429373128 919878677 904737782 246386009 748131307 940952283 947115344 235656534 631467931 39849366 303522842 911570710 553486575 883321555 447132294 951706405 256276575 944537848 939678239 266761667 284345665 558873180 570053596 922314012 927041809 949217764 759314616 794268447 937918193 945564288 10185835 981904516 591347275 487920180 612956766 758535185 839628551 915784506 735165334 988160231 600222150 419283919 265607735 56377887 86558351 381073248 246715162 846745242 739086093 722895040 504448154 980412304 581408242 719238249 554485626 631230353 907022979 853548834 808978625 897167305 667693657 927057627 860968806 912932034 949499745 636783299 85600979 929680069 793864416 745421464 320499497 934109416 326958772 289276288 758011877 433408979 890991422 809296249 850345881 59860927 289730282 566077840 534657209 132227224 766549110 919549171 862437286 910499748 781260661 265228400 475298982 830193601 939915891 386469770 180359315 775540223 664553254 744062979 108267322 923303304 375758931 636673765 611223352 896698887 392288498 741254730 364397316 250466122 690450514 365198593 95201570 932302756 728318890 854794825 886307068 881944059 538180140 400450922 10078190 827374588 897438972 892397512 538658159 808521356 899531893 885530476 766591436 660186543 617501296 856785088 960068710 259916684 336521465 361226896 683670516 812032719 656489217 974583174 911281419 604343090 757258882 869837110 944601910 461990663 136785593 759904040 840334112 521657758 407745450 212745488 989410423 288818968 993788218 980454993 434686504 849828061 214991648 808508001 198715419 532958915 376105613 804859119 944936438 360959568 973363358 173892216 881248532 938229945 347223282 710663025 867723850 144336525 241513035 852778257 853324528 711652488 759927804 871614782 607520998 423986260 687265268 814494358 693889696 856278290 991396956 613132128 877151374 557504244 418062920 315018109 178928512 111100940 814555894 362576166 861910193 164648039 62317549 899730325 649425668 259300240 846820227 290090482 975668734 529623970 823147208 736220450 737700768 321616732 947775844 817458449 906952262 889495857 877245396 815763635 756058537 910954777 810893892 768385732 973949422 963956940 7116421 922926553 766261066 633228083 568290550 849552815 434220914 463992794 449782591 792044254 238937475 849664294 269172307 615870143 860131185 624213031 539251512 981758469 545253883 785266833 670128759 759532539 953477879 975289663 877513632 37717164 86502020 318746826 879340831 217620144 99889046 817003075 970910704 821872998 230330 270416286 876854181 582645144 351256967 556653648 524306224 278047763 831085691 996322197 161068851 705269417 701814585 150717251 710855424 184885427 100041966 870828673 637895383 139656732 119597775 787462701 851860604 112450936 497971763 915681271 116218332 657672134 539477310 896907756 411427118 893883196 789403710 852670028 994590151 118037688 912677366 351733733 832950724 877188447 949385120 801039601 752139488 396614947 539881222 638600711 566765654 424528816 862152750 912360616 201859861 752341493 928212555 35648931 501818706 118986928 370199946 844440305 156140374 125143205 757968058 941262859 436772731 902133781 902589811 887395019 180734081 348220169 838385588 867078773 41281724 252126574 182092618 747743859 158254499 879110195 460870121 601062816 258542276 414853279 700318095 830301967 519707849 744157664 929506344 774603783 911955808 769048547 859414821 454273665 785153005 441817638 312774585 418360158 204621642 963119506 509249062 877667584 507149666 39479888 882431431 26119762 839264252 350036409 996337262 714902136 982717518 584745589 605886069 497104055 180715526 244968624 341757680 950788228 114381684 356364830 989221214 803689959 856306198 179910183 898714433 865067351 604045619 814163981 214814925 64107297 602356714 867185121 981134610 579625620 947246310 797382764 146037939 790193158 947518803 873588069 786131158 142160520 746675022 497577522 931703301 23488289 921080847 68695205 632902619 989114841 167768311 976400699 931836382 209557064 782548787 724917659 259951107 876115515 481967822 223480304 182041233 5804201 880827119 489360377 878812501 735257212 622389822 765927683 444763419 821980880 567119792 793975119 684755386 949671015 875612843 774600112 814469793 933207579 793074272 165685836 795415360 916757093 17210597 867386363 860425345 807171855 995418555 888785730 954237318 837066665 664042960 67143403 926070376 762541460 649232705 439037905 258671305 780773521 52526896 181146228 552990523 733053813 886369452 722047543 977609292 470246893 709158508 346975986 928762486 250850691 330996148 36443880 744986484 304991828 749070271 532009372 749520012 630782037 76310031 808569809 720102454 829691320 497441958 24674753 545485075 982927235 668231036 375281267 730232041 914182048 894021291 922501606 753713191 933150030 515255475 801606486 142147184 968120355 712759021 276379485 928296242 22940075 869516381 866517023 351677866 220994106 976012100 740678054 351451224 824497675 490559426 764233827 243013601 492584793 543226488 362359779 986118345 855968510 870884262 182273012 809225677 913188858 452602169 576993892 764034486 682904070 695034446 415557124 854345456 98926469 544610806 251346585 969123509 881818397 830846301 762009413 747092092 917656807 346291178 867779301 446989916 240421505 71563466 924926215 224432478 158457906 734477952 701936200 126505674 933768589 782389589 916709507 845395958 844100961 692962358 284174808 939615512 960468230 16638211 812977294 356053868 811367589 561683961 850955944 96817049 470323294 683950157 983762289 156568460 952725164 767057890 781186661 103660526 805836507 829505797 755563028 539159301 36421783 235736504 961209601 249654978 978155429 947914977 843780886 274255298 984049445 862904542 826313705 180410738 871246489 574661006 93463120 777038853 968120606 391611986 854238284 545331152 71709149 138345382 18788511 443029407 590728816 871989396 981594999 903886911 757285211 127714507 764773768 224731661 859028528 781110123 943953539 380754984 224803013 274225393 975617719 406622460 852044790 766384473 155528449 976829310 420515951 794336371 635872028 923353320 466228670 793646489 560169380 38902676 164753224 36684391 331249726 248154188 772915195 814866748 162470097 915087658 799606878 891691581 978128552 576699908 922478283 855750579 867200305 48034675 258556500 14655426 600996677 987179424 947623887 525164510 692368752 738101104 859568123 647148826 637723581 644457288 584411465 293513074 307293909 738986313 677565199 848687568 655916410 243292632 907954517 862631254 750005726 221253080 190203845 989163068 502535684 880374482 959518857 967232802 97261083 452207765 893290376 275565000 787228915 763646257 292476131 494010356 947129700 189033760 256280282 962675754 31298399 296649674 715620724 890847669 762476351 850107284 652178394 855922245 656225008 923019921 941790584 246578877 969393401 475798536 828479738 587980293 787859320 667532083 697756440 305928035 19090511 2259171 751544594 797542524 620408850 630456935 536796383 816335130 973513546 540498743 815476403 989332165 335198052 594967982 736699280 498252146 849011639 66284996 75218749 938956849 292752844 920849753 779579003 837767313 818203699 862232691 324057935 857683758 895071596 169582024 892595495 147343260 264276680 935468227 934975786 427608638 207630330 764551570 323201191 897932558 311200893 980818054 972918481 401495728 887374005 628435673 850049163 49082683 581240595 990091687 624567786 767332495 160923797 737020247 962116795 63316069 749384723 92611147 930250331 47302526 791255869 966495097 805407358 266565259 504490709 826800686 512400730 824695718 203787377 367572912 857842188 115095344 515220954 247271158 985009562 912179029 260482704 513520302 39563469 378909401 436222496 51360452 659178246 329419027 310838353 833789671 762556610 340245436 33825877 76301137 935490407 390564888 870945568 130262888 38148917 75342073 879413096 358274682 982526640 436613474 989203441 454152435 977752973 8577788 981231979 989638494 307158131 748339183 832155994 409915104 821023392 523371020 803740909 209803074 765847718 738984474 899246477 906194542 716658320 910925946 583977471 95627778 862781830 235886663 891468860 612169268 213862379 859904965 922599373 53230805 893904671 687828217 771838615 199237481 662629229 997547619 781163131 824222344 706880502 435222294 774817944 857213351 168137070 455462692 385892676 1131057 97303243 723592994 158963387 966610942 287316490 773051925 508359642 748283129 17035592 405658542 887429963 740885839 738161053 72865219 860343263 24237437 39987631 715546674 856572585 844941238 186942502 847740031 59426886 424958352 556795196 828573241 20622043 537974916 368726770 747527119 422256122 792972772 263714974 841430327 985085458 949214613 901891417 693544692 917809892 120660982 38809370 160436732 851748435 503896700 906771033 587171761 761302560 399428979 553362521 453841762 545139739 612072683 847718843 594505608 690237404 588149041 955417187 948904161 390969740 868804566 821506697 880136249 630625056 365959860 458831714 762187449 80269648 721646476 745953718 970291934 473928556 868965415 342085196 846949623 839707439 907832117 860803455 431744665 906122618 443221635 954308472 192575322 891773917 142205428 523730975 287292113 725777728 945135984 761802173 964052580 75484409 498721636 22893925 724552306 931877140 910441744 826168046 865424345 507892994 809010408 939876905 537766674 329997175 932587791 961872861 841068060 775861427 495079023 414694274 267094669 799637976 18402904 912635591 803082347 193319167 673349502 821333518 191245549 750646351 959261067 770603373 890612712 973967015 891401202 33023542 778515197 926157312 943052207 876615457 597915068 352363032 975850806 645255266 944513608 438354220 803383464 963679929 730662960 423257446 798834243 279852741 636148903 812652127 532810868 480172952 33969393 863709252 926065566 3573580 972134633 970714491 952757964 571519058 916386034 757674909 788661558 101410191 445377736 33140049 291880845 41423013 518217000 89406909 895875848 884400892 117075060 308228707 6697802 69316495 951282121 36917854 947642460 866456408 337596731 497940015 585444455 856159828 173232359 66065354 627015716 835358338 174016559 601363324 600139174 790009013 258947459 817441002 601880416 668263694 866435161 807447092 913027078 283360328 192401224 842510765 980600726 920779556 790469332 185981344 834247718 404522706 357007701 928340646 740019655 854349946 831168398 396436428 499418042 980289273 754429673 911573415 37835569 894919427 248774800 990198481 277916243 942862500 710581954 899615833 249017857 985645447 874038636 902746202 837540539 767281112 592389841 853034142 661987998 958544607 442965286 780015761 672881686 987455070 789891457 942944076 319293163 943607099 814153407 352944764 578012797 543836977 325438620 466898729 789262638 553721812 286963599 119959823 754107335 719852516 95917954 835017961 314839993 112632801 728964379 362882840 588062669 838398072 609135081 801774289 975936680 239187454 817127795 949927345 394739025 70160270 616972026 908628821 860545770 72149719 22899622 809291875 511233657 737020247 4766849 173281838 334770361 307394751 252640894 763770139 133505160 992050966 284077141 221379762 649485882 563423255 833799672 7002870 878207338 879127754 469804776 789808529 292412316 923013888 77380723 529136743 306968796 810298452 461060158 841906562 588287437 309204221 948630034 829266291 532669428 854821299 918234444 474141417 816732087 756041431 365773392 810551955 956297307 872693008 262119492 160517976 318150767 171654882 72751617 944667056 84613283 225951182 884345784 884583482 835976478 892041536 626905489 539091505 625649850 652961080 406010667 19862864 977687117 14572588 950632631 846263502 716873786 448670538 914802899 785261278 745863104 185152574 924221069 832269859 778485529 800158780 829128645 944145451 746490968 791585917 112888409 851372498 147859895 797942176 600638423 7226450 974627690 533926849 824550035 866359434 827228459 370519315 40641612 999237755 853505573 943893278 21225137 442143846 297442633 201938973 311620345 981333108 241143477 372663548 801300806 243808146 746268004 989565374 421682619 847592261 803033043 113164128 263992869 668892163 913177598 975305996 759050159 583493636 389038106 612144280 824016801 490034335 969171046 785805721 862344016 134527002 993284396 647941685 894256876 540997057 394900162 911086645 214345590 888608501 581732089 150315013 776421530 313839184 795087940 827923661 737020247 540520668 810894106 878284736 798943377 868937565 722844191 931980866 655558875 924582496 801909362 136268498 748014214 599704245 895412981 860601816 756474539 926686476 888091034 189735729 24483753 263581823 848239425 902351379 996953992 838490950 854648698 805548965 942855042 968464636 349854576 365342036 839374956 809379867 683724203 246711088 191584079 509853787 622343080 747437435 804660088 267346160 832774542 231927203 898550217 882632327 936420000 815328140 839337493 879976005 656130856 838753265 924772517 287622560 169487200 249464117 498621666 915306451 29493951 410719818 876137336 519233206 271211956 649067236 880503469 791949082 800664781 758733989 319763503 867867832 596685035 398595571 997687849 851038988 962072214 308112609 811010326 809128380 698371670 508712894 884807619 491694241 461809221 898446726 838495888 992260092 652242442 678685479 904546827 386374009 934960148 919103604 888139791 876452677 838433138 332488678 803820697 971074548 618359269 919325963 370236111 798119811 800834829 612496712 618938287 837649946 773706570 40095617 275166764 825139841 59816319 973107527 264658193 868345307 965678126 913459606 107081175 127808327 526377324 868222812 840323261 357451852 497635074 121490457 151775794 875359276 461063948 378188681 56517222 955604754 462892280 922484824 204703941 854044115 592713442 750743266 16334088 919246195 503543628 587372936 720989670 866471014 672303257 110429586 46979714 702838789 944367926 822568066 215792040 852759230 441551953 273588899 8677276 945566529 956824293 229140654 468743990 848690403 129599287 847641474 13479852 31403434 89130153 498974388 877778026 374208267 527205047 817076165 965605250 538147825 806999879 714066392 257260432 751861749 867529635 853146966 978824944 384041906 593721618 13410316 802867322 612412363 94153512 600464148 418783801 470551436 977567174 927361511 718539107 507726272 530926943 992209827 532921416 861860453 911665795 782792847 860566371 951050747 468925079 905337254 497798605 902316312 96466370 321538614 118084295 918490653 156847896 764672617 685033742 767560592 899429864 957730074 808940934 975596498 540608285 988232476 838522951 857730097 159835645 673859498 975358583 789369108 875162007 419834441 805230668 830258787 880236154 980727700 413634613 882497155 770959282 436158575 865260979 971988098 711554643 97095032 976873000 835393472 730290524 675079354 330652968 745327675 787157071 61181397 902824262 923349757 783011071 468697126 267520282 756431589 747577317 562516424 393069573 872555265 944937289 6035809 151957336 747373846 594159187 491111825 859450643 606165423 344393330 407704780 681593833 184175444 358437205 231514076 713522079 931121506 893217428 268779801 977720047 439440962 833659266 455930729 774159094 799475730 635392729 197269790 980382628 347469507 745116243 278881712 953755533 845266323 880732344 993571907 906833475 852408186 60100816 926982222 954133792 433161954 579974050 941938686 175190794 846871767 981725243 986441164 317631165 404602240 28171897 251654147 846807598 631649315 894564348 794892733 719949627 816207727 174431835 216117605 297357215 130220029 968226690 980632657 887278388 525569507 376717324 946474426 832661444 917417326 482385550 772029427 501989466 473892688 970853091 927568880 558399694 887326776 946254105 190006837 248779572 229935051 138015604 399667588 754109851 658979892 929840919 435504302 654180975 342773359 857702026 476846981 752198851 865819728 934886778 916090455 92597467 174421176 595704189 778324360 721066879 684262630 876554786 818552089 601903502 900017100 917547728 937942126 775669214 756402899 984626856 869413600 934022440 353721457 428773178 984104951 903854818 990203259 865095041 933663210 360217187 816441168 569996535 405169367 871743806 642516907 772412977 753615782 969141308 501868437 299108954 548716993 424565939 130160844 800579524 657023849 26897459 977075082 896488587 884022867 746430759 226034204 961766397 345034267 740473958 131385930 739517927 836236559 677725841 478790268 450818997 911994374 925598583 873516854 792959562 959020670 451147904 423770045 504073129 933039591 831702654 806361460 539863884 375623807 867324529 810035318 43280246 180092983 939361199 574787975 315487665 904457576 17050760 334233875 974688661 993613182 75135636 907028826 963087405 823417929 916495423 853577164 838506001 402786998 418299828 844195983 103741981 971214468 984094802 922841921 339069456 772860410 809269108 989412079 748008203 478380784 438766320 943215781 452563988 597928045 890617430 985587187 744841554 998773506 480211266 885383777 715189854 432686727 366225826 619464028 643121135 854611565 762216341 791185995 568676170 503931632 223151863 56610035 190494643 890811429 943809682 477322141 890490797 813967430 995734408 338489544 685757274 747110213 9449485 186291411 744040140 244754243 743076651 831983870 473139928 660831398 935729556 102108977 374684990 222831999 136272400 738512519 939203465 911181453 945051668 660885760 41184509 827296907 815592108 478991322 956794415 830858485 875495525 992276791 850719298 294500999 512947773 902973398 932731266 65579555 132143885 834701110 362750992 216238881 167841574 528893654 745191002 442376286 855016909 528045628 464125109 111844900 163762335 691557956 209571627 968834341 793125131 811607833 847718924 960240381 991767606 886612753 482991860 177878355 966487098 406314308 773211452 959889231 931315170 769925703 766117910 288405829 444678727 78944915 899477571 858972601 849863603 625957755 849365424 603061741 834626476 914463370 772109317 598464807 432204529 689510681 32578830 284966537 941070984 600464448 902127166 846216765 104192888 752766735 37982271 934866472 379894950 930026828 931849816 388305233 244258678 612700613 292729662 123900685 445450266 893490852 747605384 980275646 848569577 312746921 337045277 741070793 767592044 886620788 974295197 897895284 715369969 925199200 794057488 977133780 396218061 695788734 469610558 752130340 780202833 111867165 977513763 949837424 744916140 585083429 849570914 980843528 856138530 64065743 691098822 538278894 109779681 903044861 991792504 814688107 570535081 69613925 890616839 589918427 343260031 21171743 154462067 983097653 7661005 802800949 150914888 855826427 504458184 806857660 853901796 227781202 115105691 246669805 429408810 939782426 757382542 621100152 588649691 447405170 308183192 778009547 986053726 737020247 353340603 191077593 722130828 827545522 324560293 903893833 907708376 344614055 741541778 788839758 200788658 797591285 892879514 145193456 919669366 153959227 992323726 45220852 952419137 511743009 18372699 628485451 982519290 643446987 968143417 902808982 789165017 596923854 790252108 116914999 666405183 716530219 759976669 950786936 49001990 759967262 934782576 353709548 856291179 182551909 957649246 852040269 786348419 936792331 965014811 912096385 143405688 91254317 117079263 428982018 133588262 315815884 853568770 949589411 946521481 746858442 586243749 954295010 890149634 881809408 869284742 829216965 276391360 1422513 764198355 320911660 35351485 911924630 205247462 794654761 995233801 345731805 117938873 899424261 846682561 434047541 223130465 170490738 925846700 354547042 158953339 893267844 642752117 180353779 731784710 842790507 936370269 871081534 756757122 952119301 905568626 901762856 87335027 769145073 926577509 871798791 945354188 705577894 740801751 520678978 473089199 828193745 936325811 766133962 752527622 583833803 787944051 450714585 750598646 369704809 808225943 612318511 100153232 939765808 987812699 102165831 693085881 791947488 955603973 67009329 552705669 151108444 794439366 752959648 293783898 650575793 764407384 753359755 950788752 895500807 470152128 819809231 5603348 937098985 933303856 948548123 886225297 314800558 953140030 382475948 969087304 53448866 885122391 58728899 645117915 752023471 20590339 69066144 364341464 977099381 11322186 101946794 627646097 766182657 498924497 183174174 509307196 595702263 838184579 821972698 890624534 638178248 915860474 158764751 117197272 348146869 967507766 457347238 910609471 48862213 924599658 388388271 620564611 553261704 751607253 906157382 823299766 998123005 98455521 837407432 522886382 908366252 903926013 656842390 852298615 986446937 983963248 743232238 959046862 739064164 797525673 877450683 392756916 883419366 96486356 695508807 915981083 979962881 721142339 463512785 150223832 614852993 146918094 993062367 636551082 856543690 989037252 671777031 33091904 861868580 834741615 88699167 999492652 925631791 448788505 576744966 424005937 818056763 454104173 777407191 30040718 424481767 932618092 606828758 772063911 175413647 998655080 878049249 755359650 793542296 804083373 789351482 935151841 347382482 849978131 867907971 937132556 839857707 305492764 770927381 107845978 992561091 605307934 911908669 939855293 805904023 110794693 888996781 914498956 4063880 164583645 308670998 901677783 888503268 691692105 633294123 889171429 666324004 883455815 851918317 331303906 824160039 983383871 291954621 198056295 732866817 277753445 805800974 113944871 837673102 718435506 924135050 715589371 755067658 355829219 484148759 711289571 171339975 505932308 544116716 519843034 732647027 737115743 699343258 199475052 439063094 952781568 979762895 26967418 321481962 273553490 889189716 628124416 812935966 421659136 377891085 811310235 803825395 834374106 868590091 58646152 183116578 353858832 916566656 157005578 874219444 74575176 848118098 676172629 893353691 948818286 858087386 795772343 981480708 222753581 228179557 327310160 726054870 751767512 526633359 935173437 920808586 718308784 356540171 4864825 364170603 403427578 45144924 789624520 926834808 513236495 818002786 881803969 630911859 558632698 574469501 985164493 925146648 912874389 287211787 110708804 588371860 788742408 456936682 985789583 314539601 557772676 177039252 101010061 807133988 316457274 209905533 638588293 355131417 928271225 977289669 791094333 464092929 262434897 879248959 913696772 963018326 600040564 554224697 787612894 650338578 960413968 248076650 779702004 756091165 738990457 517087740 879775184 918739563 121742903 195001051 56247526 893792930 772057088 591513040 942613954 990730521 285319141 494508657 611167620 812715340 740896311 483128393 409195433 616863506 493402831 866462123 134794633 797531679 671802492 479443384 921524665 286069824 955774657 737020247 539139557 713361546 333786446 762425945 204710777 796913980 241169240 972102611 809712414 407922652 210742662 876055167 68956028 776247701 235127046 842844273 975722591 217834001 383828142 178072656 516296258 826790635 752455040 915016370 592226676 775613192 125013223 325416710 800879519 857319651 997968635 826604945 497286870 662317724 919935579 418564371 148946860 988149375 293812920 240045811 716404484 736044675 457647850 141633252 939766159 85853594 804496609 405794827 119219302 905889649 737871760 847058487 297356688 626290419 740364474 282447795 378938151 23204388 796022671 244359801 944934369 724718899 207170974 464882271 744773710 848133330 998402967 264111441 831128443 936120896 989747942 851161504 917602676 444968375 92672449 859817420 869904800 967074405 34297045 812523349 709549125 962598830 811191928 915115908 278879819 479187722 689241203 143527557 458720869 941858053 231100089 361013742 819019914 373383353 770543119 981409559 984308344 985322813 512044453 970564674 530588967 760204239 23377192 907443304 907110641 774788777 945968704 496599019 955955814 768281679 555491724 70244183 554139584 269956051 869365547 513469851 96688825 573197301 852757853 761831608 575153331 731798206 742129216 371868872 326936470 259283553 487692397 656020882 513390253 169688979 991717650 260504627 398055426 870982137 959205049 814956811 407420165 717615895 809577432 186264678 773288393 869783423 201590821 682065363 819006943 414009313 985396085 913352489 382289822 624310033 853292563 504382552 610942275 294677283 806113583 322358216 791983883 607849330 796179065 938383241 926689928 889725269 871780941 204316535 987738116 409305585 187162787 494675246 613619897 972534609 903086205 858355776 420630358 390307631 933703516 919082396 915706177 787396788 572891904 225837571 424442066 405213557 830149090 784160597 783245949 778625490 844058573 806034855 868237924 932240228 587854319 953119396 158469022 165343273 485445044 315333193 760352153 287051902 733053871 849481928 152277684 898398366 360490200 348190786 336187277 533620138 499153134 776557090 905506477 44169529 71535533 117394445 331497475 29547892 959743816 184258841 976305220 996537109 730292595 429092408 749088568 54124358 400570962 833334089 484808645 849639062 606788887 130972082 333198583 33723997 793799736 867211203 758153771 756694519 214762918 757928828 374746872 39975662 706670531 216436693 584086004 329409521 960189356 810142771 498782552 845129210 952228996 144224682 286971316 753459919 523295473 777847790 219553940 657330739 906555968 151399843 399057849 728398002 70344237 766622394 414391791 37520707 957373561 622069830 957444884 242751374 833822853 760698327 64620475 946396996 402198530 276844247 588544290 783021486 464086862 834617090 515301951 610530296 890939032 602048362 485620192 884982711 688019083 803022645 415788366 650600552 449936496 909007312 926931400 895942246 447229740 802937707 206398420 605587773 137758188 270080286 69114713 436423533 201573154 257404142 216599444 903851622 28058453 88505035 119378877 179968142 813704135 846303719 831958426 787743060 888353922 945514849 868507369 709572885 454832665 43017963 865734129 934502554 424301550 869983208 866401820 18862502 996076596 568026197 985311269 330017392 901545044 885194584 958177774 415031390 805164992 713825751 475000723 162710827 929671637 66468296 802490218 76148218 77632961 76748235 933417055 367430814 257080197 659860235 848924908 911414393 496252519 86580375 931538838 854696024 833369747 302548432 49294038 562793834 775116406 381593643 972723564 973777984 373354462 966046991 797931245 469379122 820010969 417225944 73089559 510113858 511591790 795126389 829261041 962064515 662645079 799438197 423716586 875605362 682728354 612853707 569885337 808024171 333073066 810208588 128393119 409632508 882415513 967619390 380071581 825281347 967873500 706761367 497053903 245220159 862897147 152233013 900336707 486489088 787538676 297152059 765673990 884428560 776817620 435058090 14756844 889168527 753714936 779302504 513255598 874320700 335822532 526528823 891283086 791590901 644362568 50858570 686755316 897584209 189770838 404412215 919683630 587640892 727733899 385531806 812775724 859701158 750823555 566347910 348564429 524058591 682239518 409744851 974525472 585863837 748427291 964922149 930784163 756845646 726061621 993913472 941452083 291048711 842434423 749392126 999473406 177273585 532292892 942463294 464320539 458841038 806624868 978997991 843186042 684220536 301436129 753653345 342027677 321680946 768636670 749156928 786472231 867871922 616757759 852960823 21751484 215093291 880448307 534955221 501547133 316636571 268282191 566533220 510513652 527904826 228835052 896053100 46562101 313194539 236381531 999932515 829882558 777883923 943538606 787538418 103670446 959140022 596767367 401296900 838533997 773957782 958747113 769162625 242173090 235229331 123044029 313502159 553299270 870899234 900281994 803178888 843126259 794539771 978996046 335728411 481078439 126612623 715672476 322701579 968017056 666991841 660350901 247320374 876013583 424631146 448285522 236453377 357655776 975979239 742068933 931658208 873242768 821937181 53817711 906035892 306148725 833882073 902664184 845208916 564883845 901528069 762498659 531902478 33646613 647547420 132463670 978015419 482656594 944364060 43855224 340001086 514022635 800361564 279950225 739105256 8480709 486513911 953409533 130058339 407790459 903830252 752943043 820684367 797647692 902530440 255000731 103179142 311876265 893886655 895032961 323211109 872588267 10683068 739959988 812696491 928519084 98582043 976146703 851883318 697436627 710919450 806383009 12937607 651757245 554754136 756409723 277064272 829396022 793945744 823445069 971261579 673554362 850811175 669582593 773909551 748492588 420367900 32941058 939460319 846844943 675171010 958531048 782851308 953146786 908342312 998959185 612537499 884835545 886373496 841982409 750454187 994574780 517061389 45977134 29284790 319933597 969807604 111870877 13324155 913189195 951275218 746151611 412291343 512579190 346440009 401134482 876307322 953765032 804354088 379629873 513069191 452928791 252012152 934384589 237918609 760400383 549443844 174244079 483172493 500592842 785497637 144792228 819993147 930822850 239950588 976010963 866897061 199725842 546060116 8617899 79825406 760125517 749447647 899348257 409436046 994424273 392980357 429782101 741545121 843574459 562310230 520098688 813693796 961781222 995060756 727373939 621077246 959445110 780556881 883458816 976304834 661569544 140695204 501339702 397006458 871549569 877206633 25686039 739169064 131179444 634827471 827249654 794821282 752708512 577710747 964926048 370467520 853648396 840386567 903343562 910025795 844441626 763997826 532829814 517066201 918738168 611548034 939351888 984933821 857657402 962390684 88419545 744188733 433105479 290567446 233999096 992130047 547433981 505123996 896623147 623630897 7009413 952568668 741320546 319030410 812447653 262461441 901323637 843923452 535665397 888151046 845410638 922405886 554404657 536949577 851955267 861184378 452323938 820314574 251315213 565227895 983408923 981557415 800355891 325948446 101396788 666941704 797080926 906069549 784394965 857450774 878536421 558705671 388554793 429644630 888729887 593602262 791772815 881914822 872961205 846411824 755487127 934825666 929573636 858219404 757078019 752499079 186013683 824714550 561117015 760808333 868505292 761596637 35663473 584271017 662889195 159303903 225824026 706244583 482731035 379003861 737887736 788258137 900152613 756356586 881031649 954612122 826106836 127428741 238255197 125684089 959281757 188788855 483567090 790023113 606622920 177581900 85531095 359726116 832928986 292056276 313662652 628992389 169794642 999147920 735143911 939052241 541759496 590081373 311054450 613324745 844502157 310027814 681321872 419557443 618442818 739145562 971770745 776995281 759911915 923922667 964129267 228125433 813521863 487368699 616859109 688573338 85343167 752868661 969016752 911802344 789579616 178650467 5544348 73194212 331186493 34550161 945665554 513499901 73374059 795034187 765872148 83040631 924892407 778692951 514897066 46605141 130051781 886324226 920696806 971440178 786531109 886850715 347899934 868657777 368921067 664995427 106479739 807407950 516008312 850920543 724122390 854546009 132207737 863305682 949610371 621869945 659684540 793316946 809952173 436225094 22814157 882538559 770067615 823440390 959478147 795200059 914820264 266847125 946680199 680702415 864156320 901082869 490759113 729985874 56855960 609373793 189542187 549483842 407235975 492562680 672997000 737263792 230801664 829373550 992153825 295290838 831170976 748323811 989042974 973286205 747179386 605244555 13704708 519150935 20945973 644136476 931917261 828354810 60657216 621979022 949706249 757503578 802334747 822890264 48484541 824688832 724770493 183886454 924650710 938176012 483144834 765346808 443587401 956772921 851512359 856329237 927695332 548494846 999570559 426009184 480973790 925800575 52842552 890960235 722002678 399375221 185920887 339100365 848884245 84631708 931711590 769536112 950015323 204786779 507912472 958568394 457933912 941761446 867289447 778960985 454221564 723881467 580358132 105982180 277836298 564955975 802794871 247523430 740395304 194071367 905329064 868523298 124539882 835784385 29568066 742188557 802684629 778670065 516149418 906543738 975498015 982307807 471114721 988962206 896919929 252774846 205225529 3812858 805820223 200889457 846436562 859644489 869873080 868325569 995893601 606518210 229412182 651323764 729292120 135611543 256730722 800374302 506955431 964132211 845403585 181487193 927964360 998998036 797156457 929340978 861347920 456503001 272200870 558916554 12111423 538086929 846783883 915750200 815861688 845799445 1142674 782162250 745722805 23561012 478771106 860787020 846438157 150806722 771386658 179931124 859321256 991317378 224601794 944599061 402964422 885278816 957853977 425524830 756364371 799407366 784508795 865244538 162621662 849772096 767433089 948942869 906576115 826913519 585519508 814406250 624265617 947406099 869705902 865846392 859666000 929793153 285746365 995957347 426560222 305774782 238123139 252740233 48202093 973639435 791518539 665484821 806013409 79815783 718766506 914745050 211187724 810925341 408966179 77648451 34543338 793954980 994618816 351064916 60343156 217622647 671444412 920407478 824125130 272218403 422798010 478330799 976844363 836522281 180141024 919098723 951766251 731666968 785018724 805796039 35880396 670822897 459076231 770488730 656801599 986312236 969267025 925679667 407378241 138261331 971118447 344573156 640517384 653528798 115278778 300163672 846517652 564940571 812274247 989741116 752079825 226491358 515961543 756057478 796501407 330618360 971293844 642602759 929225240 20895046 809649847 555138961 259209574 918849970 521766896 115262318 861415466 798144165 799500695 839424368 733785224 603368267 767672166 878813985 899219774 518583282 992728551 834400917 926836802 841636153 103441440 891962549 293708828 122243768 847777311 816847068 76387180 567543834 898864664 892116042 495140791 747149225 313033404 154014416 154279537 442774037 196176118 799832574 240317343 357382884 750118875 445903693 707208239 171014164 146059155 718989383 929925360 309974573 409812753 937230769 488893851 994221975 190279104 846101625 209631597 959815243 938861860 788032400 779396829 187869776 68794360 909125369 172299725 405530943 990440736 753195600 645251263 718792733 979782182 82570874 955965849 598627949 154286087 146303185 932314261 314977828 958612342 159977814 862112882 150593536 641737336 953147199 990614618 941855395 974786682 776596023 45356617 841470009 767705465 329980870 758182529 944821886 849987872 889208823 690603891 766499171 637190151 502717840 419671839 146772710 10688608 629847336 827195223 116635991 831549185 440977831 380307487 150056836 185764960 400447002 296600305 838490962 773849600 182303524 271178073 313899581 175063132 791012421 923258556 194087260 634873729 926458683 995838589 876139447 886192097 911996106 806222000 936103266 63138250 574427806 955852557 573495996 862689718 978813721 748714092 964547035 749443742 396768333 598277670 484326729 533961025 940863900 115975545 824187396 785661787 670493219 260087088 966235884 784792737 401560783 136200633 261404216 852329651 913444921 276349238 481657993 777955915 819951217 348714664 487287182 254844256 801311871 648388215 364299934 562235840 613490648 969177520 89325242 927935844 795657333 913488767 889851998 397296870 797404650 880111642 252251198 923340975 737020247 848826988 805197756 951140569 841998986 811413226 314575912 281364411 818895986 867615383 540137254 282421331 749453421 947619642 952562360 44916104 739305771 51811639 958573392 154929412 677099920 840080500 936005899 950814824 374936466 240881524 45280359 407626959 61074697 55810487 876772188 62793501 446487991 984454008 952729489 219073955 949049784 489465087 416033154 874584386 324396892 912675923 163899867 746956006 871351641 593653764 519502711 127442621 471287533 8806100 923597633 488944584 791118246 907907221 43210543 595035021 472213195 876069788 831773108 761905304 742269241 911708392 878658444 774287648 212687605 459142759 850167922 176708466 983005437 969640600 275668480 799673567 924833110 741694933 295992229 985429956 721798562 82970570 868771383 533479021 877294550 422517399 768022327 412011072 555570079 219996910 519687481 918687221 299257637 856781104 759444434 885676238 907985129 933916614 252674862 907536002 778225622 377433180 870732016 476941812 607997559 427400676 370067942 930899743 196676344 580795332 745079698 924356714 824350150 83681022 828127515 544388962 459574401 737486065 834549665 9540653 809661573 780116286 963892283 997379165 939210470 937639978 984660455 492792669 907048016 576734825 860062906 457096681 748051470 15783371 821835957 870771483 949273399 273554578 904372388 634660532 123623772 926272823 738752288 258930337 614145299 811778789 815885114 617663145 805384009 26866022 589653712 864066064 744652053 799336959 136834592 418455906 714509237 975705276 799685947 738699196 525538633 774102913 567631211 907774690 515422674 926084697 640129915 728014775 87167474 993594008 814166986 784606220 858899327 798212682 725067633 9463617 210737202 597903279 205526131 805977027 957558048 440599883 578052163 736867203 274716025 828649926 906906963 624941951 693493284 607763537 494072271 311186990 56004392 898076004 599154471 879206130 845059717 987856570 989644246 278825315 944255558 943631914 804219783 672532902 962120215 809069256 497184653 962949925 950715444 814267661 240535984 823741400 589207332 823097429 292925504 779771170 668482201 111693136 869346567 911058637 909564781 872241684 35194294 980972909 192284067 989816903 759985591 735751541 980531712 785350750 819416747 741047101 532817339 945513811 108389710 925058848 277210553 577703119 239983984 44508235 655476623 814651668 707846801 834994406 821712430 246542192 476879009 776820995 124553433 972499364 985746339 757492174 126776856 953214074 373513319 779258745 806033653 856746721 992096487 30627628 822538802 891404317 405703 805358805 791115432 971567796 895327470 571636006 160371445 111180007 558631418 560351395 980935383 74475023 965970824 450048269 455985489 520224364 805116073 257900094 910941843 647936462 300539065 852647559 642055995 173107563 784439555 270403589 485717369 865011868 513418026 482552620 737020247 973826874 929517148 755835382 800321503 321838380 763565673 898636514 776432681 551960646 409199022 793668356 100882776 924985878 880335962 286635206 149951037 421130144 886592970 350016871 819696860 853317287 960949497 798499590 928965379 769377020 289841658 647054597 797255103 464569582 979756266 266514679 944291480 848090528 853190590 793068003 720808948 976548854 757475100 400725516 903230781 777690981 567567915 254947726 674994425 229394886 879557058 215660517 17248178 316558551 934603772 955823193 842271689 826183499 625830638 911912440 142427499 987899902 317509989 781320200 1545467 191526382 977412561 561133295 571722822 788063871 8866742 689425157 365473395 802836849 386331147 841557882 815541187 994367944 773560674 870392230 730859283 738292322 606783837 206314398 822940882 437503592 504018611 872372892 957569625 805786289 424102311 760650346 856515090 771409295 717296390 322632568 480136757 849060302 17370553 472238590 956930544 351848821 785797568 770595920 994121167 251559807 809430830 445436804 357832828 988048483 346469779 823830213 887166783 443121242 814026400 671324641 868309863 128180030 36047995 10574910 506181054 963350775 637747882 39214378 951944130 473119304 167912544 898393539 739779613 190499352 159659306 921684409 126745261 814798357 130102828 777197639 915094841 19719995 727028315 923547516 862644158 294616895 789844762 528644919 745633632 730987927 966376306 699713651 134887561 599471935 634607222 961102626 892324354 456935994 839029211 571355630 742569417 392207771 382299567 527559348 910931131 724475420 544989672 973952668 674573960 849631533 756175090 955975443 960484900 270427344 604527787 315043373 2752550 42558095 623285195 869411319 911738963 838544671 826751145 439874771 866714794 566010197 525515779 337000203 574985199 209971145 700759705 483544310 805400921 868637897 78763043 838042808 856660126 973125301 994138123 513125067 585915061 814164404 600001842 890987033 220342242 536019611 918864445 132151802 935202746 127479211 728131047 375498999 684889710 912801827 880931947 937182501 774580992 526744835 288116693 978242204 633508389 935560733 820174570 410610123 482237565 784542106 86675960 968682963 264651301 911912579 277560094 884336081 304560646 418555546 315958235 631136710 766385222 379179617 770819211 922816920 737613157 922918776 839371613 465326200 798200206 824184890 967987533 464562772 875882089 555350720 299824865 122391650 259772878 259190389 929058664 121321558 837319441 912350809 558539122 861670249 285853967 17920620 28750246 512602903 720111290 134504897 469455478 413130151 290582673 765114728 814030580 418485214 993135550 926180557 209711177 686042161 907500977 865803279 858530600 316703765 220610098 955648450 842181374 38248318 975565264 823559438 842278704 847098707 810555747 351273959 939389292 775559463 501834295 555947702 110177467 223173370 793900687 31218011 684043574 738683421 827308589 901395086 622860054 400689574 970366294 772273086 956428691 231615020 472157331 827312330 764268749 45993928 602159406 831684556 194051923 790664757 811935664 97847100 934545015 492914467 963923551 468240785 493232370 954982369 810094419 787880396 416340848 819044611 189333738 207469082 69700977 760703681 785023382 603751380 923765640 870168618 753818429 183970132 907763804 836785617 942171702 118146868 963521517 685741208 876548757 908590099 762367298 65783684 795219102 984956346 813571401 324217511 199721454 330112669 736457193 657516185 788925010 11697594 742614955 786781456 333253227 840081038 623446854 341777919 358254077 125074475 865122928 99596587 848982415 17201564 397726767 788600994 531380079 781335326 79684673 804050910 737020247 563617627 785646749 542397336 818620659 768482749 191412147 769104955 855580271 912963080 889260945 871528547 632574851 406976345 797556597 929381390 682228863 841710818 86213960 990252376 278565115 65546430 843304638 248485630 402433386 690989153 840173814 667004451 469420792 912526511 36351476 861416699 500620670 918612066 754342780 274608231 871132947 972607044 709789705 873865804 803405358 515080392 807997319 35619114 962238046 195784812 740754207 920080858 724267565 447618934 241996947 579105509 743216820 559153773 490483237 846603148 259300687 939580439 737843416 942666027 790500731 511373760 449394533 797893503 29527645 104826660 924120322 390166819 414765097 234500808 414207323 868707958 854941855 10487857 329435932 73289239 566665096 365270685 249474384 968147730 185837494 841847772 139088386 689298278 755822311 78188039 999392549 754439845 347349612 619137377 746955880 549814909 850989835 773981697 505774537 448760365 799042238 110658692 767572232 931155082 930036224 780927638 986939808 253643214 999494966 864912084 954217013 325214605 571446352 397934020 884453076 772160754 848079495 758070928 897138026 91400987 543937045 986988827 461345854 858318990 863456157 851828977 789912053 124047800 884786984 784988374 259940637 401473789 735140941 609738527 983101602 968382294 274332222 103794307 845395209 121608752 134696393 116537644 942988136 893568499 588460780 471635649 240465418 458996488 711249173 567571194 818630081 741376627 937710725 402483460 586217401 219998572 712661827 73447979 294831968 264400353 711181824 976085209 96424249 831101273 555467098 892493033 812097626 873375345 740033736 931853938 910388294 914114886 835145816 781399563 812644705 762783278 710628456 743266512 844658746 651197889 261410994 795783514 121621274 846208498 294891323 519581928 494015415 967687341 189230486 395051690 944308056 595144327 989050068 886701077 858461104 856982687 958180650 121714844 867289491 925884061 918636062 457734846 781334615 514382652 849377482 46902778 920789797 860905067 508950818 908955283 867841046 563984704 700978696 770427736 610030582 680626369 223219326 862662823 921595972 821114881 724095566 33328152 894091353 877528377 119450707 846607693 828574408 948026323 280429782 892644678 960189267 766926610 736966832 995355598 451302031 535384725 744419839 289248568 914946288 898679045 492967841 986486442 747414703 597962350 829256804 807269596 86006993 848863846 242663999 115580128 935909007 791573906 744984882 938757699 781093534 876454944 49442394 988157209 598481847 957746745 98346198 991885849 641084171 940705911 491273193 690408104 975823160 644287544 307752838 188560861 748932578 771095111 212256974 491900910 410131996 773932007 989573408 850813147 130906963 101662875 258509164 947699497 652165103 777956180 868908265 888590653 678744728 991963526 25098143 725691829 769104588 846729881 163593528 467305675 745806887 171300589 576347895 760673426 861386880 919351918 322428954 781547991 905936266 427362055 665265753 449792492 915352394 896427668 930027634 199748503 882901592 199466162 498270748 871913749 380278260 342952694 814294768 873680365 811229517 827536605 18774747 947265115 201663197 823794494 505720798 988225967 912561987 894000346 755617172 485559863 825923765 573914831 804213827 368645548 862535765 992591718 74772398 836958577 764418984 545598867 925143354 997976037 301036168 612462021 957578408 202205846 693948442 703851629 766772913 788223997 35725002 548085194 108697763 993517048 782825640 324683096 13114360 861331454 33796455 908277190 392080790 107432031 56471140 543857766 126233927 512604902 773933093 470693052 526090380 217324219 853209838 471722340 95122422 195237001 839701461 780703650 517969131 151492523 781895818 871921573 181386312 919710341 426998333 47400679 889350985 221556260 769554348 344368784 988086203 19996987 861082546 853856463 774338062 760027860 864110484 943623460 753872167 452638287 103459317 898029006 885224224 331502008 900903120 818174046 636901741 331550013 560029364 801456077 346001113 920313811 648941817 683603347 712124912 780600439 366435154 978682888 907987267 883458359 8120277 933243987 891624212 450137678 966393865 250884487 608294358 569300110 962766338 79587149 923984748 344377734 843740407 825118624 201229578 966346027 749301195 484365925 167835393 656644761 797977449 751826187 459740220 57693327 28813879 268610643 987421043 872793402 752250513 643306864 494131657 846416458 810478558 358369316 402484759 800730853 779013575 31184762 848912107 184699736 938023921 56903632 90611051 809815523 823601963 91434677 917563304 588584744 977096994 563032714 669556875 941109368 385332972 416463377 903720552 33162404 557506631 226649914 683668798 480974848 858282380 895296475 245977005 623122668 134694112 743186081 260647765 920713968 974029476 872607767 895331784 103835961 702787941 978248579 926663320 997498122 716805872 917908207 705520681 681785814 361388781 35100985 823210596 65642500 653979453 960817640 719394070 529719889 351580424 517193342 134738992 784810675 915897021 952982060 978051234 124767633 196457487 869766305 82787801 766061349 866583380 872238669 118878239 810926850 838280370 876062137 115263447 912585179 444334882 912556703 276769352 521134319 999091828 686588863 595879299 282229326 748657985 870130435 907096669 43501192 940955133 850836044 991531812 19619372 802871923 485318052 728670406 164723839 746305334 956983835 768099005 953418591 995974559 820332021 283172804 718509406 461741422 938286239 150034138 904559849 923035932 550051921 909208432 441491503 784199290 525516863 122228713 889890966 600123746 304418058 275558619 738723557 739264566 989568696 399857142 638648857 229494545 890241413 986714231 550421555 848542242 243845021 490469537 927749704 797589778 109032296 202821925 215368886 116043917 915636088 741629147 107163227 476201704 376717342 49624394 820274751 481734357 975136104 144572981 423521951 974525236 757237757 359597937 229621147 821961768 831992694 48924261 994059200 950452477 781930946 554775633 597567414 663108391 574441926 69489806 331244949 187324991 821984958 381124283 700546690 839389969 771265528 680335318 927998163 893335382 938666932 988781588 18166400 469632371 802503182 144393393 730663854 490380753 815571163 76245949 552963688 516032902 814423143 294578465 969265505 141987743 954618064 112156222 729044912 892777365 442171400 809606949 759224692 864962585 767019271 387152821 962856634 199162835 761473069 639201028 632666164 951832955 897974804 576783615 770540093 545053278 835284605 889391088 673383909 867240817 918930065 431703059 526174758 627361941 958912126 909904676 407915773 974256987 495301586 853871531 796000646 986460203 880610709 981776645 742048413 920545694 866813569 193499564 561489091 810377829 965492053 66182357 571978456 964768520 269912391 716574749 751218816 905922321 760118601 901674024 816589441 767534286 197823701 833044069 769038 823710186 327364564 712978486 882222364 776831134 905241512 840276904 769950274 8414177 498070483 755120294 233431636 844816134 795551590 396825953 704387974 948007774 949453595 996890581 77880378 894237471 840101473 465269489 112045140 769593947 842432662 742956918 988167137 820573060 809601399 983855554 268489007 850428940 757409136 312664198 253481893 769615767 167847991 932582458 210864525 879283465 771547603 424916881 581432602 966352510 755914926 15498614 978672538 817521020 388822611 959733795 818222711 108248500 609700349 842507849 52762008 902488311 205490631 135630643 651790220 964592798 899525827 127330109 999167158 841368660 389277443 239245394 739645894 822323811 738983650 13422335 795965058 242840658 390194142 829324392 917005713 377943921 62600723 982506210 877712508 581402640 482743607 814227038 846076270 205757419 189978114 809228322 739891115 23839217 872063483 839673312 775928372 244405921 970219174 496869840 991967881 568816373 244142938 894262474 981068799 746498449 841252983 546421563 787974483 540034994 381948388 263662683 998987857 442621507 756279923 643332551 826191116 776369128 115135942 846683874 672637537 909845588 698954055 791548366 910909807 972691078 767750675 711090291 787765049 65593465 762089839 357149048 11485582 681964430 832206215 132474392 138226696 799782708 933370826 933253828 52646421 319217562 250179967 903153859 151905656 42204716 96409105 27135363 90211331 968587143 777422251 382042816 926219850 890100853 905904969 165999049 906914290 725343956 830881393 823918929 658809076 428053289 831107190 686290941 462271636 838501824 463544313 765365198 493145304 129678770 602217692 925383000 451830393 619755098 738816225 773603547 184516267 820958636 786659050 806664432 384132078 987828724 622178151 956444887 597647984 108893643 837192056 194612475 934537822 953622257 577348974 863311717 976459955 787194235 255982241 253959405 618783202 456927254 535494840 828073217 70468174 842002691 833630175 267521261 603320529 932398183 987850263 826594407 198853342 386703274 901294649 94225189 983989278 971045629 16707686 904424000 767364454 583450799 89392263 267950454 937357351 939415011 646332278 26276124 675917347 50535135 607055221 998836530 46383528 449427000 660497968 14822118 741163097 797408568 923190425 181534016 899929615 755618203 773284455 751794596 968953962 782670727 861318068 566806927 912886410 628408191 122463429 793664392 804602535 137026041 202606965 671172168 901974974 860552617 786473765 860980427 808510238 811732550 761765291 921420210 384875817 845083517 53541846 747393895 277860138 967967575 469946029 578307569 528319221 603498761 436793692 577025078 273953135 535833089 145336038 984169747 849008552 862876546 405134401 769010954 128548439 69943691 764999558 772640554 51875915 876848848 442019302 828096165 269797880 35106691 799975864 92679034 829320596 417102091 788182195 196265380 395468195 393379490 806770163 503573047 630340816 891960445 894525560 900916269 514384560 780920637 882780650 964211866 840721981 798354549 487819220 961079439 547202320 199474839 356376061 55568133 22281077 791413305 426517364 122029047 138828110 311484082 910263408 399833768 924873451 434631632 211527135 940224180 901155031 325200710 559653817 847401342 477327124 251821401 587829028 897503557 322910939 360843267 819007394 685993328 860239220 783348612 246612988 913088454 969338753 939746247 833582841 919220812 226933537 989646221 942608641 349465178 724329525 864389517 377192523 90707080 472898922 810226504 636392450 989324826 498546505 205124961 578813702 769388048 144055980 643792441 323720560 572598401 746784976 851257195 972257268 792478776 89851228 470702634 493285407 732230175 995314648 372239438 928209932 527388976 473465234 240939550 612710757 111848016 934459951 768298010 890025237 774176796 862708385 379934296 312131425 781428077 896318764 130489758 897227165 984827486 186082996 153844797 781765192 969314650 619024731 220223509 488173805 197881006 986569321 692855243 151490613 782714525 789872404 15747877 129381554 97524 252659293 855956968 804944789 827209214 906038971 444197981 203368130 739379555 306005430 727997569 139489932 98356526 471432568 37278365 931468167 556879930 99025335 279815795 870615350 798529848 880704021 156563186 316279907 756906525 763765588 2394416 912481067 433465413 814871834 256292910 746295946 746102073 298120169 261483092 988334719 240049504 447732643 789769672 95171591 494425619 886613365 388982863 182175550 238022801 558942150 667174484 498294965 733521960 841910298 651749585 179559158 982466064 965496696 480560447 728207147 783728022 832921556 507192880 78779230 634712609 798256408 55933046 729757821 581393559 376762794 951451105 850675563 663366344 756585397 252337838 764330104 213290133 158164623 995574277 115938871 477057184 903336911 740324756 839130905 894633558 425235453 139931860 908443858 452312166 419666086 966037843 755171686 810948354 781963519 632718815 577087672 212374715 938280347 33245742 607310025 462923293 881714900 799714945 596766891 361154112 791297888 324923730 936868585 681340082 888647761 853874956 315031061 644720147 16518975 355811739 937220058 48187150 560015719 802487937 117676846 860951027 727818007 17725205 515992397 874675914 192750519 34117019 122771106 797730689 666712242 742911986 300535487 955946374 264660053 436062122 256543519 178018687 276223948 834317798 783707838 557842391 278865147 793056826 477561760 180906599 302929773 897457781 616814284 612189152 212592235 101358964 776795750 773516474 910552307 173764374 909374135 496916284 740806992 562959497 595794398 934880207 575802244 414119516 896286795 953469037 812174792 232683067 940857422 816353134 823027858 770757972 334149862 1174739 103604780 985504679 41308266 920775318 941208810 327652759 757340888 884909552 565010037 614393336 310412779 799920748 33220177 898967311 267626158 805030972 823747453 630145722 389563207 948561942 520210749 952503541 221125136 333689470 318799105 814204554 880872918 827355092 608366596 728750269 150227223 978760224 803183756 960478300 871665325 550693200 11628462 252628388 682863361 763166745 754798253 427416819 467985338 57881592 27157036 332369357 33796961 848729325 218909865 920422338 768517486 817660493 381048028 262848130 648885839 364345089 26580937 865786842 261684715 145922612 480789252 749824222 852171422 854936881 234303019 126552233 927607348 550468286 594571577 537140075 277381755 940610265 250473942 813560708 766255387 440299728 408326237 214722930 234211607 291592130 851269569 947773533 619478778 992976731 360028066 933627058 86893730 870262742 198457492 942169565 778285492 719288359 921062866 916500473 224091115 630958649 320055878 411589664 106736487 865017479 290038179 914452862 955933807 941868142 854666838 161142485 202423863 180759191 680665689 890162768 459704526 739678207 827178517 445059941 479523500 996653457 388099915 461715752 969851464 597872554 172550735 895852056 743394907 855482280 713989047 194901773 969801883 891769044 433451934 825912362 720161848 240634980 879229162 886108821 35203848 822510491 559863444 779704609 981719426 493477836 863420190 752317535 745725697 389459248 408568226 962167411 785752702 283305582 580140374 839870497 838765931 484916298 67224541 778839793 774645179 803263152 704956198 786825038 432711134 612636250 13366210 703948530 922892679 225941134 20671925 844192930 994962054 244285667 891454474 743637479 467742397 987456495 610813995 343853101 465933094 665005612 836485595 743507738 982693482 751264072 878817632 179854765 895152089 5841639 389761658 975813931 245780142 206654647 254042025 763883689 216574445 363024219 196579130 778543585 874607653 98896919 159663210 952132881 80749018 315211522 922111646 959733804 943774659 898928491 713048957 719798024 143317274 291982631 538847748 373684569 805814150 908821054 172549706 229893077 344553373 238499100 762848214 519938087 773884271 851451420 868045418 740689719 956804787 527838167 885575806 422998299 471717602 235526264 704203176 572744346 25425381 831633534 976106575 308560330 391047056 782825838 804372304 994716169 883368313 965754573 254494080 782653860 787169544 967980727 73759572 173803478 437620111 387952172 777289860 922444416 389955913 310271832 498811987 955709490 940997909 941417089 828564047 972814862 933933677 326419879 517674677 269501492 201587081 468503914 10896101 58006982 22704490 609298553 464380217 374634929 751811959 143484675 671592608 764494102 688346871 138107830 652093601 438909156 517650005 896273802 248610161 952055980 821692936 816986645 860432748 738546914 329522663 31406034 935616770 326547253 889172571 628182530 944504380 974416760 971910056 515177316 11610949 291426382 173075504 812118895 877455370 857016892 214567467 39049098 202683413 704046552 292437250 877278334 849186564 51133219 371358633 828648720 943651084 286868006 393168811 756728643 951739169 700581928 900128086 927416160 778471170 202930823 811175628 710961927 952407427 143963585 871123754 872342996 883789234 311219530 217414708 848158889 757661491 874746186 250281068 445593940 470253944 753781941 117026889 35065758 859467372 986022678 164802616 133048978 774340148 508474909 818428210 260628018 777976945 961526233 509602564 222136470 365349932 920999542 147391509 152602699 811909443 486113112 746054842 171147366 805889000 42189253 804590949 735344553 22243259 805907051 268563843 75297241 805147664 569390869 485323696 899562254 242384355 575595388 742118155 923990334 256423008 880757945 882905759 296635883 266843672 543418367 119739942 807931376 747600807 754353840 293272815 941289560 622916799 205052697 638930434 765131907 416949840 450904656 986484278 976333178 734087800 184637997 501415268 769457542 802472234 270155760 765437901 17002216 805990925 929262049 841575268 505821654 752006623 535690203 927402770 819182691 954366783 823607508 563224784 163275125 473755616 512816515 692297725 986205034 899367285 997222037 949732037 963270876 979517839 809488644 625586746 991470989 927872714 23762653 876293520 16021490 533886035 981299653 695155978 717812854 774821117 198196072 813601449 990946820 881008975 212647903 328949354 32347863 56348091 920075580 144494473 705427107 355470715 831119784 39682680 418496133 178668134 816325460 655636866 201534346 605147191 753193341 226262477 385372619 211276818 893852342 962402433 740552605 959697121 823885945 287502049 870371571 930617207 899592604 211355087 944611691 501129295 748888017 941049040 922000237 417228985 961211621 579639912 949346965 951754943 551805532 798016693 808014896 743780890 268455874 482852052 949789857 533756625 799150631 806885614 991840154 352316804 938148827 466752999 843854670 125876572 449057238 925267895 574624159 118474912 331560155 793529651 950833512 747786372 668193180 89709680 381473580 466856557 138988481 794675397 34070722 883758581 348965681 112648225 928906439 474598372 951836472 259543112 370119558 954257201 688035058 54587268 124387035 260824286 302912319 825197487 969889823 23299946 819922582 516528491 854130403 687533483 292447154 923911100 444703685 996374452 794146547 841058680 839382525 952949698 890075671 812661500 289055950 336556286 942323768 766427430 899387474 915575379 400273663 983713165 896870240 814356358 695448915 179657476 206204547 857727749 806545966 230388728 856237611 943781450 644614394 906996691 722953300 222939989 818866520 722388903 973183976 817919257 919304866 931294545 976545659 735330350 953975958 100320365 852779395 173753009 307626023 753151432 430353087 749959834 807026836 510148179 918582179 924301306 977934283 263023289 163550214 307329949 635672396 806313606 821821263 783490961 668078090 639116057 906780316 600256223 796976529 503136692 737020247 671825678 244918307 950681482 892680586 741307638 167737495 22030068 329585096 781143178 943186226 967748519 509103818 661899854 751138206 822039278 731065732 388085167 918475958 227603283 960328006 465874081 730235825 850062903 637233980 922155412 153715542 910958638 320961410 266841834 842288035 61840507 597684595 968386179 468834087 443370903 867209327 950906851 825117896 765566932 485278608 128798948 972636119 868328515 244456183 170260368 232550017 295020145 216860794 444087628 265200385 665935014 597750052 403822016 684777602 940529810 705495982 989518602 855188240 982094144 996005060 808705799 208057665 619582682 697485712 245117368 877648425 181478415 799267200 453438913 986876162 406826506 390860984 843441804 247363642 914090858 780318191 903684688 253409810 434366554 864017547 127808891 350525739 821203498 290664569 930631682 828708972 875569071 14055693 802743743 881756204 266741092 745867217 730862653 979856722 987945964 896592883 475673616 885725683 43567836 561217678 761435988 261887378 684753587 759943437 825350244 609244939 923195689 939309251 779631929 202598671 806161372 889220478 839354376 638030308 153210507 658920927 766642472 500468601 805874009 540409294 5015205 177117515 743459340 567048485 582552908 862786701 737020247 961836943 456646813 912727290 965367063 891980095 543260152 612324939 618233855 561977772 956613348 550118351 283159333 873682565 759591869 200558010 282489985 48166787 988680360 815929738 779060228 491220064 687146574 137479028 752964056 529181091 897561417 398656811 397497363 693445455 584188864 843464974 8870097 887797099 695416371 412423673 942138674 830693125 159714952 24798369 750283354 937983418 982362399 372690993 784578904 544618633 958628742 856805645 594398453 423532288 840668031 421501700 910355871 435275608 810832846 370705841 350706828 897843917 879287792 289581495 295803404 384019609 731695039 251436387 11331450 745129060 753081528 76234227 903763240 684404937 793921645 972831320 15305800 509643121 506808670 250315205 837144664 484928217 373566 808628079 772296858 897376040 354826690 50640219 291179081 707243017 961804909 840896935 811511367 859658413 487685356 493460557 979632439 957099611 176796815 994505734 355905810 903108525 872017177 820383550 876750307 23983552 538478134 633350239 320798346 954319419 921607248 801366411 944240052 300522237 687694697 406075283 765302780 13638443 837496444 703564530 942806454 944446596 755724560 954896122 267331014 611045425 613382215 794017851 407465013 764129108 332962271 863877038 560737068 792051549 910735938 803756590 941770025 929949606 87940229 45874988 520728897 753805671 796770555 716549929 492557204 645879732 887658791 406652962 751517301 747444593 964530605 775610583 250465673 532375068 895103509 432633997 967006337 954648496 864474799 939319932 128681580 812123672 176337735 288735934 568633060 148540473 776307056 301937572 201151863 212698333 870141080 425549782 883680627 788955483 175463495 249647716 435361363 860621961 537466256 982061193 110108598 729644177 210306672 735362903 935837085 955291796 311006123 624002895 910235359 800542179 117709612 828380524 869585865 213846070 646944918 959678903 638087030 939778397 920583809 40719159 167291662 166883153 715839630 856090277 825291724 207327182 833320001 870590781 574722336 964947224 959362178 792743503 159198238 169762380 152933459 359818541 994982927 503794904 886983036 29977094 659907116 931717162 754221894 749248961 74615145 736901171 823536986 873407438 422566682 567591471 696555373 785737605 347861902 960928045 301079003 539967747 904097183 995973015 813242485 962270854 921351241 820133244 384926857 816868883 4943997 815462339 768573513 932516894 602723766 39553415 568095717 914911024 577550706 897759339 293833308 278452352 360428756 71093191 706429364 721919627 343815303 730067581 637973387 935369647 919405681 475698733 762503131 861235047 83410928 813909346 697575211 749800457 310757329 742474797 345360777 970678950 867729752 324832717 763319762 728908149 89370010 9671670 937391572 192282050 924731830 874167085 846449927 904635506 218840796 157993601 966624286 88645714 510164456 816127297 57443522 964632607 573270633 793836204 754319391 763143604 737745766 978651704 992633024 275374925 781862611 591090409 943251454 183239634 298557087 288627965 55041095 908488936 839374633 949952667 888337080 870050714 962948361 786776901 993688527 274389674 146432872 825970539 153665557 844072504 778581851 155672355 848147195 705899981 479949112 356580084 827318644 205432819 637952124 912177643 798622981 891909440 958096900 4106332 889981219 995638907 16449307 731678483 398938929 345440583 19163982 217892550 201374713 221913040 863516773 139489800 456873777 945031186 821734121 659713081 810750608 710329506 993880108 323002799 749067727 422130604 781638711 819418349 762576986 204074779 673095030 182445386 496915217 983142020 805269809 781706093 942888071 12451736 318926050 774316493 807031233 100063256 658426997 908341016 409117944 830724137 970043127 182432880 789562672 970592918 890983867 922717304 953806562 837373531 741144141 309635899 48030044 422714911 438433526 809141501 45262188 392723885 177296158 867651959 983718390 840071286 564843307 296543657 947487484 955403321 966115201 525704801 895022617 588439707 804080324 595826895 880080293 864602407 790154067 355666413 389116869 941336342 984715691 900967477 763650769 790011611 555330611 699623915 361143045 733756808 838069576 223449952 208184722 764616742 250517002 791304965 646413672 490904699 929772858 725882957 872382797 581675376 970354544 373121690 372304262 855509171 947808588 252947981 489690905 979875512 820655001 663749140 406776887 817508189 937676334 48917932 919341078 177786565 274027424 759006065 984525174 738497478 738229643 934441622 424849810 16816830 81256769 635932600 559013746 786978272 847583660 564174706 84599356 654734794 454478202 756201787 371968535 614741997 941877744 962458147 956690407 219471954 95991544 570532139 778554274 593656588 974332285 238956538 962517821 875904491 887912963 152256455 951006753 888890514 976195313 149338073 526561222 775567010 786451107 407920747 931306629 216045012 980479784 115234191 469397083 808842707 148628180 553014506 703097207 992930436 753659109 834559526 171737906 764631020 330514170 95657545 709997236 24916186 117836196 954086992 790580379 560643510 157731576 908520448 459494282 939243253 748153240 459310667 767385126 544524558 292269880 38732512 894757966 981803731 300460602 789312069 883017293 959757896 978449733 923060960 808720679 962854525 470590601 977797252 309695998 914999836 882684992 611571813 86651881 874544771 647546290 476420388 810623827 281443318 811710793 989876048 843948142 61133753 939386000 938225151 792737461 703866004 761674721 154560475 940738246 439402383 839407694 748272782 327401522 918476697 924203363 761688053 873076208 444820611 583100398 590115510 332814301 892838907 133215805 887806579 814000267 261911612 327162993 796612242 823709295 757479993 459747216 271079759 819101286 634545659 810003412 907676891 151472779 854440193 346057063 930815419 507833652 315770639 922976448 941357448 41068912 852221814 45572401 223085431 176538808 520734221 386841974 88485245 111447499 904101725 816807771 784552265 81858136 909253042 979966448 310285942 921315850 841122357 846783754 646362875 995893244 771733855 993773047 855041447 842988681 137889347 393823900 321400690 929562280 273284032 258897118 264416427 770828486 678443848 946402901 629315404 565872784 966460236 954830390 934337657 109894522 568165887 356377599 85587362 595338318 872534253 963370209 376275556 536970083 485441452 613769519 490564304 361049752 531425859 991552974 918194890 853557344 296821374 925530603 66570094 952232414 769839819 834101580 781247804 534211189 478283962 585543391 792206770 307022263 666658519 34810557 563084711 578522218 18392103 980328592 784655823 3233684 474030796 609458944 310253902 319851421 77014039 83492897 261703951 375694357 107597768 810646152 790005814 524320245 933310223 973473666 822679206 949680798 56653289 392091407 277837749 661892475 985477308 851204502 927410026 885963708 882746072 832936290 546532359 66994518 905713371 964939607 738693351 636986644 442658545 823139390 755680007 716107815 998191243 458408825 412744503 693494738 551681435 624390350 407322871 739235219 450586599 713792337 767162689 922041935 721909958 839323670 795608461 696397361 13827083 941033436 953390613 891324374 578227598 988914730 983915245 402157976 575809651 830355110 799865980 663402459 169683855 955457933 879485705 800366613 849430222 754495553 8429172 398917324 758345294 789775197 134124767 773783839 767329075 343477704 7243551 906882035 858908676 33383196 936742087 832359212 743735342 983198977 233028963 596067048 773446367 953926465 973910460 962999223 493128245 788429338 975275284 483461603 250408476 990859674 978087663 73238177 949183162 964777488 935246826 574977843 407777394 999779360 428416053 868688492 595208858 909462267 882487556 863594587 261147051 784334324 361766963 601298590 856584670 516750602 649981658 941139872 18131960 342952956 579835832 807275992 879591884 616230621 801309127 278728734 931635231 584915975 75668144 683216723 819543988 991864253 988502750 903873931 904646006 552356043 201165187 28383198 542738076 991552943 924322457 375519093 895336748 136670022 987882120 789462986 10579254 840094156 540026642 357358060 887077969 942638709 741992219 816910163 684559057 632780179 797565010 980517713 432553216 343443454 513679092 951789309 119687982 823377185 947360052 50291527 292990347 948638860 4076167 189778971 782408630 210109103 576250129 781604755 798794453 775696555 773772221 357946731 567231440 615909212 741971355 604804015 323365594 925264601 742763326 991762507 446872230 132341812 86923300 831654170 442802394 924425806 2380824 419690699 854371564 884032221 765002850 935743290 911082201 259253004 810264876 806931422 571935467 213187487 243892380 29681049 343253055 465027575 966088089 790433153 844180571 639798698 763173235 150976055 477937270 237890552 835634697 580242716 323185107 894597955 749986806 250188720 832707594 219732536 190969669 484199106 885641213 815201781 259522328 21998602 838723770 804147957 107215555 867926636 589035281 820731874 929652860 409788570 903757518 287113849 373404774 154381755 322054871 492300856 341730020 381519999 436311163 509395176 626072141 233094124 426763700 292547114 962822795 720040311 611522591 875206664 392828473 717261889 115946516 277922222 982726194 538004446 569260090 465526358 793538406 858866030 857831583 232379370 827648176 982352967 540636450 953859778 608837138 56154575 743786362 297634212 190170866 932361670 3065273 825023333 646629345 57570964 746485013 996956440 4743843 394782329 97727955 872265050 841049445 739700507 746409647 805654391 227060529 708918268 726711536 895764188 740194057 882878591 861977159 507810128 881959435 353697089 783152022 911824101 946292745 225990626 964220318 982975958 500765658 974890873 150566935 780700629 450005084 318320975 916018169 385732406 382974035 836182197 680615118 158656938 252167429 409369671 877901207 470352430 436295932 242227629 115573809 551910027 221861703 996681806 884586076 960746698 929514475 802792766 972022083 56897339 955327031 984461991 824096937 461480889 998564404 548634705 953962545 263611533 543000931 627437375 422283288 415712618 945725913 914676210 972942945 934372636 999720281 229617200 928803429 765717100 679561442 430189849 996754483 867456457 938261430 955967570 960935730 369097599 733226234 799005328 686310152 33703595 834232231 940916051 932234564 776337581 824537945 124940311 712232391 90353383 927268983 255825703 300912796 986379693 183041836 882810060 509716377 991808110 205213247 892852852 791623307 857291645 227803925 843657270 592093859 944632954 437511071 859115188 887691431 588126282 190236348 738209773 779685705 870056430 775950433 520327901 840175825 275954487 945745016 959125992 549743184 949189795 558465636 60579803 330238671 525587358 887380423 934236059 741661025 956004807 354730838 866615308 890976791 122471290 928661443 967908631 717982976 155450715 896598738 857520117 908256390 703832220 484915876 646994451 795338504 996150361 14716030 787584394 226393843 790233658 916891412 960498277 952986841 565270115 599379193 60695945 629457173 752091076 866303693 213343554 160058546 313287973 532239069 737020247 509118404 861760250 984307630 933683325 936490736 958558545 323627047 904192617 911463399 854040549 559625326 491626338 555830925 375539892 942746500 796749785 253905976 836597833 798168825 812049260 812774481 925477361 924829118 742057714 314065740 393718149 382005805 650209513 503860524 115218027 901002837 929300016 756987056 815630797 566863952 442569600 970649388 200761995 433316022 919411325 249125563 310409546 832314652 346653488 918730283 901446083 688296201 986700744 114667892 798716233 749061406 899425220 180475178 801285485 940342285 898320644 914664611 365876912 996211428 132808396 201379502 373741460 929189889 901719603 876296526 779818049 48503686 975613661 945013654 790590222 245203561 793662759 480190007 963509620 106356517 580492730 657404632 582159058 887672964 318299047 58414045 61407264 964206592 737882244 76706303 759323969 17753867 470659171 599000535 838374565 926476675 773754447 961814821 831653221 983305914 573063408 1898173 837847687 770452615 456888125 747066817 911579416 710758251 907796882 538201774 819225226 306060013 752460733 88353660 995087319 835009669 745632091 562912441 17424997 906446967 930571941 285731624 951799164 925350468 846977706 937097609 571079105 740635315 885270655 206254415 314407368 853953576 737020247 49078917 659803691 737131871 552990643 762264847 91283411 820528029 704698923 727003083 432976225 263802085 901502234 985591690 187709128 235883850 763522269 851001577 12404724 662198667 737020247 240019040 830902761 882127482 955802855 894928819 396031962 50048900 324213945 413466967 149535112 194409590 728271063 853134181 800682791 577692908 131308934 189326367 877105772 788667542 77204105 11988455 995808340 993165735 390650456 686706366 490424456 587548269 758801253 235604921 593608958 560058061 107046185 567636870 826563187 577467341 262967895 12856055 949793467 609319379 797220072 895953322 22126865 132977104 889303273 707659463 938532905 931539857 712417927 346610828 961941758 451549512 555761125 930181628 756889091 804863229 247394770 753253805 480768068 878065446 900377717 948262823 95594518 939302677 747655043 122448038 384450057 359869555 749218749 999536560 789310433 569944685 165923970 875245113 813536873 822843573 774189972 481151988 71529724 640802244 673261306 617232154 825575311 888322825 48845002 784723755 890773648 911868373 958873190 786378218 721426624 670966889 909228944 831624645 271964714 334593072 889055641 109217152 841547707 302136184 192781212 885347667 794115784 894871513 874638201 862572846 812970280 79169727 135837358 934446282 711310339 755142088 702581533 950657860 761557835 351749126 799003284 408441604 871027555 924226173 678358334 805394846 911076072 321433305 496594310 157118427 886530086 588259870 809017469 827944062 750370899 970149654 951258988 754437220 995332018 791105377 475680022 655686373 978519011 42008868 746527961 283565958 50505133 900631739 88517104 933081435 367213059 181875877 973932910 794756315 52783722 767121918 64046364 826334428 783717873 240572121 872298111 771885847 777319693 989994026 928211075 419611357 25072453 785663462 984175450 760973478 747670376 897422353 475569514 973692313 675763767 441712417 783032609 677538470 184581258 814232524 227921509 75654611 485057448 209006876 842231878 236567789 996207769 503649455 645393198 598477652 420833841 918148996 847514629 729458057 188169018 810169366 972418339 269565900 458220146 860928099 855480959 773350009 868176913 762059880 337528355 803374286 59475852 784871754 997730517 509097680 649447242 887931366 579124813 84397685 779427526 27354061 769103370 494431866 336556907 182131116 146326118 890308248 596952585 872408213 604913517 962600663 944765286 790892863 232471390 968603049 438462436 74965853 804395671 749403019 894780580 792323793 653831931 374923061 606238535 530855692 339924346 105461344 626069943 965328088 769122124 328919854 953551598 702516079 258702146 475334448 826071941 934309270 87598873 228929397 987047059 50263916 983594074 776706888 422981729 372376792 774815315 942418446 842041260 756263559 814624374 53742673 80757118 824905262 270742799 183993168 691670134 730285249 100242531 837600374 955458386 785062119 978388351 107118334 422304367 53123655 253616197 197593545 43290368 774931812 423308080 791704224 956718907 177573368 307763178 733097766 828812095 898860687 777187524 813143138 869031654 756165746 553745925 603577711 758274551 13586545 199864101 497821607 300391046 760199458 921651874 979967396 991356830 733150144 315173252 808382279 721205101 602142153 845539220 911240428 672496216 741562112 905832972 790445875 342261155 717527706 499268963 828473998 766410982 736729042 900830915 362718885 922218715 609017698 49118887 871939794 498915488 974092642 567226841 914730827 363044816 60375026 864909611 591371949 835991754 578874768 946053928 925844375 978907200 176876145 394596866 766136923 323143083 951333937 796862254 933523735 986132426 942154364 969051916 365040119 996216175 191351978 265678196 957630758 827804159 337902766 849975760 965161930 815938539 875401519 773442886 820958308 963277081 274675138 983666191 961841971 732487095 784813868 873356361 71095649 11348867 7883091 549092799 507108843 404817098 613838916 958520197 105526536 538853953 251064247 840703344 391752261 926901550 183686380 528344894 341859596 756340020 273706724 105941096 740207381 771697558 824517362 776780032 862967252 710752790 430782429 530389138 812923743 380845824 993786742 948843044 191790716 896109239 345614873 808543613 995403424 896416439 635106313 713081297 362599642 797764874 431419059 452156796 88724773 974075290 785325206 971100822 540381509 619703875 638242659 315234920 865879769 460389507 610290180 386145759 786576508 774139396 969670789 87568076 351994470 499450319 491599240 946687638 644012951 766597214 411478070 686645195 901541619 932110488 860338685 175782200 224765937 849780437 790592914 233820477 950615629 852020151 819820285 493032535 758799539 440363202 853421138 385175568 919186816 896150736 983557751 894606128 253619039 391797396 761232967 272411670 952156991 916677883 524540626 976488692 804688924 461123406 535141969 405558680 644318837 664599890 340473129 738868947 717853553 996717488 58416097 723166788 947198127 88524496 964740335 916373645 835198086 865556320 831826161 576881938 881735860 857581952 474622323 342723539 75490055 917214126 155447584 821854726 449966728 69689933 489060450 978116181 838056023 971189604 928589143 603102969 980924628 61750928 882531153 133397062 447879437 979580388 922568032 752403837 870067326 592947007 562863761 757341159 127774172 930486405 406452953 227163589 985006050 892414093 793661375 389931777 994312676 410884834 377526573 766506110 815987277 316883188 264933830 411538215 452336270 144017893 990121748 932608780 872481819 575222757 30940700 920354904 942656156 186261095 56884561 884811716 899646889 149678491 875076070 580547510 958516091 369309852 600522923 961506433 773176330 874542556 832651359 278627308 919801446 95003572 987443653 878483749 928869872 609638467 906257420 792353290 843904722 575519391 102951373 498578476 850493138 774256393 914837090 930775485 333993286 583812050 437158599 818751399 534619693 558735733 217347713 826598313 204051902 466369253 888806337 460149107 717353244 506388533 524578169 928085596 658225074 25712989 937441671 820312479 883113971 827125869 649364762 421204444 151848005 816311519 132538364 928382696 457657564 434696448 93142937 537036232 457944723 869777168 601509793 654172486 79156813 800133616 40756411 41939605 244167689 329746044 926115141 786167062 841664184 921587849 188092415 921882911 903011908 564615614 161929877 427237575 822481531 911636167 847538905 939446659 434304714 596240063 555473530 557153222 698012818 885407185 914708447 509088735 173342266 743674461 795557932 279948187 984379556 807406282 581789457 326968164 880300683 695039674 31694158 922751119 716493319 981169939 395446055 390861154 547796238 861394041 354464490 781328320 86928590 246737348 760239857 885343023 849291341 908428401 355423543 918438212 743000481 774687907 793885201 957157826 1095135 123680515 690107197 65192088 287378011 791748159 77890886 989344756 569642990 458002260 911421981 759662445 76039901 592370857 522579960 913813867 675320142 676849771 965057968 903970347 339703078 866613016 977482132 806707043 247732588 637083831 864260805 304111744 745489362 740741437 849338554 439792827 165682550 74656561 766004834 171240514 887199156 568846276 790113865 769597348 836771443 859110016 807908799 800583790 750227482 783137408 967227703 570462504 789544152 222365910 819239399 565915780 936426458 188278303 940626454 950743053 806085617 878447729 783122183 324679100 763653538 267067442 961882115 896326530 368469915 770730612 259501523 924687026 329893693 9180739 790548635 342411302 879889173 451563150 887194355 717234689 759971792 620405654 798182721 731383729 947048443 992946362 948180400 316957068 813615562 41511516 966021797 112095576 765711097 465611223 836573280 815263968 955806539 967251322 893993774 939324308 51278174 825462955 757030588 384049867 6192195 865074193 334410056 879256306 865325371 931592215 743758156 682847995 936060516 931321175 677338519 960888608 781413594 665359506 146873510 916858810 655128045 918473459 447969136 795949481 463731325 918594540 970523436 447945911 464641166 846311631 32610117 453037885 628112420 262537239 609944997 810320833 117460428 910131617 615194711 556975690 894301038 737593125 235543633 507027803 429031214 952016172 776726957 988548388 750932954 437950825 768661703 883882382 100354184 764698439 191855707 626477256 568758877 900493509 973202226 798268261 752415106 963975191 829837361 798107167 324657422 185278402 315478092 588124935 680245753 907248422 928441837 764697310 946735769 866697636 74508867 416497699 812353214 91101473 515506558 123116937 241634394 905285480 647615247 811288639 683968589 70234529 499802739 791474115 910929426 780627305 237875992 771942826 337330705 885164084 868372767 751783910 506495923 383060171 963243379 947462012 339908376 676017954 520117285 878837692 189070970 803778692 600596236 256672607 180760003 119719659 500342541 36834609 791518731 809610567 446647355 848217356 434385126 904715407 190795524 911478200 740013591 960801050 460931959 647511638 407637962 982300466 469904813 191635932 742869606 939300689 86664623 822162679 943417782 937931473 866268221 277195892 839615059 962150315 213321776 957645618 159914753 800444859 970498936 865773545 363795239 814845930 799422557 125988992 924480922 787360891 692068 802363984 283555596 57481085 141629402 610032665 841343872 429246284 749006132 751247537 611508880 705743414 822701876 318640328 566073245 843426266 737525266 549171750 18778724 177654177 853686531 444914948 944795705 467932337 819884679 83502044 926418297 805163033 832281414 765875451 830473073 318572824 894790877 908620188 810875313 905563300 203265462 969289863 15444103 716949209 868194830 741892237 834006213 963063184 447221014 82098295 662264688 893866921 898738829 928143137 432753178 849956055 923490210 346086583 748345434 881770693 170150712 922786835 249386808 554188907 722152626 838278210 1289677 805737840 775169479 864140850 982296979 773607294 665925471 650705688 855957149 499713769 898035532 565180120 528863788 946636295 925199265 941488748 766373120 576597226 591666469 900752606 958478333 5253750 819420350 738499462 393377079 816808244 980050422 162481006 373439043 830644832 880671605 394388225 829753742 518956868 456387987 46332834 824350413 205142820 350909585 180622111 165132193 16901376 832985929 62633417 836471285 831278681 806675469 967851965 972051712 851139777 971840040 827421796 937124206 561576744 777435956 628782111 740391633 920887951 917872581 425587067 820488716 454675335 846363734 913148931 972791239 837874866 229892795 878261109 610556702 416440157 604319851 755873469 772712257 966464159 871587358 772879422 130719177 908344934 635733451 761526060 999142903 469346080 749084288 998550247 548391202 602911079 417690319 761420067 829249913 405914884 979820218 123229803 886145991 870333713 828602552 382228004 435751827 719409654 800939991 852215301 994847220 319935375 161965569 516700834 851754774 777915132 477080258 187628055 988542080 979008135 344357866 991128406 530170127 611781035 381748426 883975415 778190045 35520926 128438769 909394262 938614843 777372013 73457616 900559703 358541181 858640320 306428381 142057296 523922134 616457706 55785746 262585180 287319241 995738622 919828316 326547336 845439890 968898007 16201159 97268494 288025423 925151947 745262917 458173821 847543244 136880249 552411894 792130136 768298764 232766183 891181975 862644049 167896121 288353489 220130808 774176153 37007939 741429435 871217028 114335262 642966686 332655807 103460692 186110825 180705544 745734988 323019001 872131012 148860886 42654579 844656112 86518140 8052108 823325231 177372217 421578590 584654256 458029034 904607953 642327117 728898601 800525485 216297368 166565918 49184543 237867029 816712642 46788020 147182259 993367003 921517307 842885692 864639652 216965213 800204324 647941001 765492660 761304410 407231474 976241600 854721565 955771481 408213631 138651395 843558353 48689989 992544686 294141714 989068823 810884536 511404674 750306364 910435906 283465955 947598813 957654124 698895293 821845717 947449952 917403826 971015977 153822261 122697295 160754702 115202634 785833826 283271190 138996710 722636385 634877842 393997963 71299242 789454351 481848707 983735522 562689729 945641391 813785830 855105187 314932852 289864158 68427418 376134324 212182226 882279150 942781873 973653000 152430628 93870954 60450362 294279070 69717556 175385149 629225930 23600310 799078587 768088659 737020247 674505899 369989079 958126795 671503780 342279052 953238631 415225052 113172755 926675010 816708210 473231826 390333296 713081947 774306783 340598362 821513040 188748909 743647971 804767059 207179248 791325814 63397422 390716668 770161959 526803696 969798554 895676811 784760085 968977787 485170964 841162546 897740864 797544238 897885916 799721723 871870956 941137069 933839591 213907033 935662198 517435582 268442039 979590437 950509648 858913871 44454049 936493609 499069105 976420221 991928108 387741788 842682935 868084547 794145543 737533227 924376637 895714962 810189042 941254257 755235596 873972748 615223949 944916930 197078991 14153880 780579571 749295717 45469581 424817842 151048979 720358758 487849849 946865104 26442947 865962648 863872001 763345802 489476034 772847334 744668018 458646002 979502144 35406545 325329417 219348861 830492571 287076412 986958065 770079813 206186798 362241861 813333908 217291418 993766394 240657096 154411027 629220409 999807759 708716750 352341749 759647914 844251959 989200670 857366109 396226351 875465380 537060205 338289710 784833880 745202260 269292939 889945234 786744611 172059580 915647480 836465242 916172391 780569748 702705186 830271837 941306703 701852055 720250686 772053851 653445490 826665471 988897692 612872819 18254892 175628729 754173787 428637220 325151473 970878292 10375468 746771356 879119801 576088066 896001171 837918146 396671503 11209469 980177477 709570613 959734038 724034378 472760913 966143216 858996949 460295462 941251260 971518579 71343269 213587299 959454698 677872191 848727228 898544097 772726120 213805734 621334491 745084757 171601676 740150637 547973456 587486062 739182906 772263817 911532363 741184161 205686390 192748660 294201488 953156471 727659417 645886449 946850397 927888374 183610528 670691200 206939902 805557965 998320929 880605924 969656584 777084218 467063243 273926397 754611070 739530995 626892565 955774109 585376052 792612718 910440986 901088145 86386127 961336159 942708697 47109443 747404538 474910762 963492550 972457431 657308795 171096071 927794609 929585632 931525473 794882508 26086282 965000880 730285017 999337837 784356927 374871214 792006082 755901329 978030390 608254749 670093300 582209865 897303914 939279665 405502817 758639044 131513473 991419880 986242815 957179537 919944823 578486509 776265561 560078621 236707055 31803643 876129313 738204436 465889661 786979099 376311960 867592380 847163211 920126028 764665997 626191112 737020247 353592313 122138525 970211253 467354401 22151024 971500501 876834514 179028620 483107389 665604336 661494278 880970499 929287259 752877109 215149342 940266363 845329702 83809600 575310811 511313517 852514015 80797534 337026641 631666228 98233661 832878457 191348992 908398786 884612596 817057748 856157625 683418671 102336663 823106614 982323592 374912010 954781331 744126207 779614867 867785515 786600711 917075010 235940618 472347992 852502208 102956606 300915195 648449424 928569216 417230275 617554024 671894392 140028876 993270675 796834162 615546638 102465200 899192088 262451241 337239467 268619861 952907562 231404597 133215470 61284541 980477799 320106113 911828805 898110098 987187016 172336895 804225029 584064549 696650092 268135326 973041839 405647805 129155472 969404189 909423799 784867647 539547372 561468794 483203749 906123154 749390342 367213747 738952506 764112585 833140184 848817400 635679767 226549565 32116277 527570923 819801676 862314495 427813353 857711169 945220081 985237821 807897562 346891615 980513161 550404659 834690182 611693579 747657687 823260905 595359482 393204017 614693222 941894787 897466186 939534526 790251083 70859619 183798873 970665409 474054338 999629720 786098127 940826946 824831173 896766250 122288667 767704995 850095561 953319744 987012562 292696642 906743345 79077957 89999129 893896194 990074198 933675631 310605427 803876993 860581848 887090985 134460569 976257646 798127641 150614272 574397262 925188200 999468144 997289005 671203471 756864900 952549244 398059803 156854779 293169068 390410352 773192911 428843073 892194657 786222159 249614599 991530695 993887773 203626699 944872469 752597978 857259752 988766193 845670468 915147591 872754792 26422504 814112216 755338153 886239173 346589657 639775063 519898542 919673938 797512740 737366782 326372525 874481757 451575442 752062000 221332792 935791200 971161226 394961778 463997926 875947327 833879391 74906518 385297005 72308031 499253988 764042891 555361846 238753621 783125050 705334620 476637165 238341351 432548051 929960259 433600023 293031122 727469634 358680157 808452163 813019969 185175748 197116702 680198357 771367474 820313264 925937361 42717614 632281433 926527505 826103093 762517115 970233872 651238180 480492727 409696131 913075405 659289406 576130143 831668808 743015569 987072016 104565319 664940040 909184616 710374825 760750386 352607879 774193359 997464666 854288725 301875553 671150702 833954392 964428135 957952776 936706004 173374797 297301361 332873438 770595052 126112093 736335511 772249276 838999374 661998522 696382667 298082522 847671857 918375526 796620096 844004637 275372923 565477883 764066993 538099376 870814432 975571258 351190398 607183677 850508493 762376826 936858464 685200647 863837308 771534344 750755206 982392023 971105881 860357977 752282333 475386059 793134258 1261328 272100382 991157043 414310232 886722703 925386439 455413340 880644525 993256389 133203808 3872886 790327146 70451969 902325975 930029219 899451375 976835689 874440308 890285476 471114502 5241022 183173474 246804761 375063339 553982594 950203460 955512123 721001412 892633718 854757097 583885110 362094579 527270194 262407567 827309997 881089537 114205876 909400220 895446331 950251286 527276747 274716275 969860077 24112251 795341344 699828997 623223719 994655792 13220824 143555279 695960355 742545189 759632155 326907940 581466653 461023692 331915114 809659277 30367268 340224371 468463009 628008216 156606062 998926934 908463164 295837532 55693317 899975546 945055341 883563861 907077202 733276031 879994687 749313533 862461810 953285862 418915763 800505030 990262042 357496402 25478062 960697371 745690436 892901300 178265334 889987330 855122895 809442939 931350021 984446937 979405642 388599889 10711937 848632958 244245996 749620410 869464748 871046300 490901034 932454215 966083420 316178324 124998768 836455842 885648613 543850335 50131669 358411942 670938558 67219609 202118292 712428184 945100921 832924931 634279182 899938714 833759380 766216668 989583392 548717576 918000074 100538374 783007490 826819845 790234771 370655343 784503057 640848763 655364242 527077534 804069356 550918636 743617762 882240480 155504504 960704303 295266793 331416745 970086211 153382061 323077110 247170852 406559004 891584338 82207373 923787858 987854633 962434833 303458912 749944046 900540363 857213587 811552877 907745736 684718207 701949504 764324913 277295755 145161012 971120966 839556285 824317190 199530202 411330262 761103489 835713959 628887120 348562995 322867408 852000042 948946528 876609882 864604534 197326164 925628688 210193268 388602865 918349635 931061608 792402516 368375358 891196933 942259055 959872192 605541632 507300648 423861220 452003749 341380784 971001118 580387657 930903018 764805628 631628564 861144594 966937994 471780574 610515732 537159026 107455772 231729045 677189516 598408986 36830832 647405931 148470621 472907967 752848417 351753638 96490191 773581354 970829059 239259998 916099244 964098794 560888650 130417908 169507385 840422190 385047378 988877230 862294477 747086817 328789347 906888572 606231633 677945720 905968397 641811750 249199107 173149434 843926961 26646295 819393306 923882631 708262142 898551368 835688592 802541255 460206808 995989306 139818041 294507837 503605586 227287321 998290464 159950790 838992410 823252386 939992918 216636526 281495594 425460509 760514525 923920171 270609221 811228383 166380590 966911211 434654625 580089218 875305123 819989047 853564845 544574799 867951476 984929217 69757846 787096918 426303261 850367389 844304093 319049422 784151847 386484045 752139206 559840866 751823408 996784936 829847672 173607028 541018557 752090018 190321215 895851052 167873407 607653616 796134212 368747074 648857873 350279609 971811398 317536315 695112301 959003068 167388536 177419848 859078859 722835020 150731166 806428653 904664560 334740601 643463632 737977824 294298325 629198432 294932073 704212935 75704669 675514485 527900913 836542385 740334638 945564949 793663702 507832340 538895644 911174735 744115777 755700817 130869619 816917912 996828241 972499435 880356078 163923048 502222549 936502017 309250725 415485680 216544888 340884859 124979852 984118393 353580642 550260340 527885499 420259101 946161766 895501639 330815084 279787559 763767457 804891209 378586311 907943316 898084483 756952783 994972971 463458446 52743084 746703435 737966451 905332090 237211491 868894191 29233676 752116120 341961316 984493716 896439161 806849746 515217061 819980000 443021010 264509558 737020247 648088236 944018421 970350403 830462166 214596370 876398385 781799458 781502305 776859392 981815345 18453142 924097911 889537221 942300379 471231543 808525383 562987775 790725471 106655311 831142736 816616322 830594974 302347050 942478795 169074161 240426244 737020247 248610842 40900484 539878650 769217164 862508066 947806475 443450312 561658475 899448071 791275834 804482079 113972720 403758294 748582479 992651386 44012633 91222716 841494028 774162344 930790166 166725850 443449730 786650779 794251064 971182161 905398358 896692819 349645655 882391096 737020247 481825642 779143592 200130094 532334422 308096427 882919854 978705404 750660125 987498005 80936249 255948368 468059305 858864019 409585842 807938036 769229925 330070664 413386448 531325901 958189101 932451995 773434977 991839099 995892939 379298414 803829554 647655709 298875882 716902919 957671325 395806794 822810684 383173776 812215354 5709916 293093231 211339017 572402709 949429146 900587678 358238541 971372879 822372052 93584200 785855196 863746272 269408881 935725280 119649832 684463955 840401125 246567533 638001122 727999685 798070163 528481476 895866398 690879749 737562789 248482025 116047573 37893 724752807 60946690 752114096 97873711 823169951 350269434 861349239 246864249 4875501 738454825 450546337 16169121 831480247 848183596 531433274 948122485 482352963 807310143 795521695 99213354 198457111 819989961 816473362 304505967 953080098 923220967 176611324 339472899 734322804 974355269 548782532 60837344 785650549 288546838 773368468 767058019 972389599 810401434 997304581 943496163 942778284 667422074 864409979 952663164 181764630 631554710 784792461 339426340 714143329 395157098 994769446 639805170 810942178 821225340 547556394 980155261 774429107 917478685 961522850 909619955 487238951 901469912 754337896 729186372 865267977 788058752 724602910 895415664 506231276 111236122 667349562 390623146 201300296 984850689 727255136 360380899 984980043 300286125 832856362 829701136 401062057 281674727 299002743 369184992 373428317 879554583 971519830 709733459 826981167 915293185 44510913 489187779 804125325 527914965 815669684 324849372 906698094 976323242 902199119 881045874 28610317 104506362 986854686 4839714 382819020 326562708 920607616 862002722 813751658 382633905 192410892 200738475 595363373 386023130 930156617 256649031 985400583 856404485 635988295 776824411 620740264 872012821 990905788 439707798 302925116 860691446 427830822 747629339 536142069 76542283 832122600 74927234 814794931 560281163 149229979 531530236 782139614 974162865 28022130 896815628 934722437 861929728 708028569 753047213 649858189 897540000 189842555 575025565 872529528 751350833 893793397 779018996 792309613 770441381 808430717 172867542 777085648 862244875 801189790 470992247 392938738 685061962 574751041 88124584 480693759 860540268 937832014 6088097 459962569 960225089 348701967 930066779 167075101 482074654 839939816 755236386 837996594 737020247 907320421 852728171 879822314 955223575 881066822 765867868 946066512 755096475 89569025 949255110 171126226 977423986 774315610 792091035 372730 617134970 338610077 116877610 818364467 460028758 908300550 224631706 552202410 424549577 288312791 345713303 755472824 452361539 258778584 171620418 58146213 600507246 510684791 928361674 792306671 275717330 656148291 938241598 374889009 42495791 737020247 802873471 715214846 822974213 680306532 366763882 300535833 997876166 672928163 197819366 459951031 549120392 846309295 817547346 852401818 313315428 132488316 810980146 564445151 890384395 905718731 990981530 339992860 922732659 962060707 527689530 167285174 102776676 601207065 587810680 641131239 805396125 470532215 896909149 799713621 506649316 162645187 661780759 823042030 987715643 815219467 184539729 948112249 537402085 565470631 850249896 752238084 762991464 926734126 845756112 586187648 955522181 305923210 154240442 468208173 255952542 53798728 33723094 341825001 765666843 999521836 347554294 958598860 793571738 798247978 37160801 767808043 995258306 971449619 759098954 872529105 673179105 867868418 846384472 995456822 771621325 757863645 999662652 758123389 903524169 945685007 234999982 469522659 657005264 771950642 854356386 800894439 788479829 997767281 969937447 848404896 763751446 964679671 928814061 834022018 380881540 970396786 472903559 861857533 351087004 824934643 375573249 562377096 704400802 214550737 848339563 459129480 454846956 278047350 815244938 130655288 847894274 532654591 24978221 112226733 913545365 441882894 962943738 304258530 865243069 739957741 69541560 782406566 772793504 268001409 828863051 55133278 878567067 71283222 139522308 913736696 476274263 180941394 793759974 988658631 834732955 776494255 922492636 495110742 267032809 972077215 967300638 986861379 466909892 984207223 773976652 888469447 841399827 375653800 762472128 326084690 908864333 795666609 825122601 614869557 913883062 323368140 557188062 621916216 230203602 183370223 875528276 840228134 637965018 81803326 990656418 930420640 85790334 141364834 705409306 611536013 91504112 882112551 337807421 934119731 116453833 552456652 950073144 956369718 881223427 924275799 753241173 20057662 844214254 164602548 547083250 939271380 870709472 729196227 631830366 832550266 989000825 319723145 652080732 256572898 104340618 958131089 343289955 838027741 46025576 156371346 21638460 847140629 846933179 143741248 748208542 391863619 356410219 758915804 686505166 281192006 805565425 163178905 768862434 756080722 709192730 918327844 972594920 800967472 974421704 398495444 857452071 113530614 747952687 816867860 817897566 878297426 747553131 106450833 499180570 986104569 965725697 811741628 584356429 810727071 191245532 774288272 865626341 717270435 880816490 625932514 789549520 410407606 772845940 282299144 985946602 123384516 550131851 856042877 936412288 770515352 824018438 521412002 870437704 360858448 816046695 915257528 980661815 885541863 438164615 948268317 761438133 793832086 525310678 290238553 985193594 940527733 706929628 446272498 348309972 104224445 772293547 814144766 841501640 12209538 132907395 958862464 43222299 890346793 102522533 705467519 348965976 987638633 444103583 23771227 346936248 983728233 740233106 982506552 911647346 243854539 945058040 440656396 818467122 262095377 931970724 794370488 677390135 71567350 377068223 497544183 850250295 340597133 463563913 729932468 190070484 885373722 876063819 591344630 248550143 615577099 124006483 830592961 637292913 742514689 984295670 135499481 600823012 899466082 950544540 820845233 183355784 921454801 964465307 274450599 939614849 445529229 519401892 474219917 946339750 896310687 539279177 135223533 614344023 602259481 273447654 823829313 398030143 879704297 983329539 835278773 871893562 852119174 939018635 750851329 831410462 835911897 101143129 893997253 255010165 70503401 776946586 52270343 825585891 761210019 990709833 2602633 820533517 178612167 120761811 224716536 251687204 568939110 414148533 966111695 730270734 396717096 798940240 549129879 877709769 828310960 268234551 291099925 338550853 142683000 980823983 873166226 479871076 932618641 920226136 48914431 849105619 912536043 902015752 856119634 776773286 522311691 294873770 951677949 46658390 259801628 225258737 754182201 857369195 780027735 863503006 854671100 787291741 818556581 880167790 908189476 6987217 926914525 19478970 998074848 63139816 564571905 237857176 172020587 853392260 775690065 160411188 763655889 77087169 462379351 253037367 883232059 783175242 910633189 854107661 828841796 863572735 87654834 708248349 900829171 564416630 810941572 89596229 86884355 757297274 500869413 603453958 886423537 643707231 902691307 860763114 325856425 551752781 857648054 594878208 771025556 992276122 464453552 131721994 928748296 238542556 866385491 885075733 753849040 885882644 849948552 938372338 816038787 966911675 599105610 866394082 866423468 173456195 777280510 550661632 592594287 736628029 737020247 401710291 842342310 300741863 773146516 73178675 756327862 392422780 113791835 820637969 258760454 681354906 913582895 687039935 936446942 617041479 818252194 31966644 880064211 873017266 203323533 749240305 936835092 778461174 868653938 275662756 281684579 324927312 767283785 846987617 798879989 429160067 820756826 412630304 777156838 995458744 624190386 996686139 924735196 99638570 674678057 200748944 246756810 402844954 725032424 881511450 667863094 592698022 140486492 880057217 251727072 41514260 854736724 385641357 903075894 991219961 715039309 866174352 782774986 890525494 634258872 854937868 917680611 207571379 847724612 758662337 910547855 579398667 619959527 753294263 155344350 944545495 249457681 800052830 662282962 361280241 870812348 146618912 827433555 240731082 132984586 852251899 485474949 949003068 964520996 422842417 715892568 933879565 86570973 52527852 817494341 286290666 269653692 246374177 185574058 815215819 606710165 387024928 898485586 838802251 399956398 942959919 23574422 410404121 975939642 827064641 724273258 796809597 649271046 975768487 309124648 967283643 985697462 758918329 948680190 835161403 927910093 197520268 140060988 98659414 784398555 841640104 798283545 871711998 819303276 696672245 805934924 973097401 828491655 155403970 609837600 635385858 826256442 805673575 389673194 889569948 233903955 598813223 552143920 87103480 946445384 781594549 788630141 192263499 808065390 844830384 531976851 468227616 751322016 899019022 539278491 971288698 801901541 961271881 825684539 347437874 959835487 228886199 873820479 470990481 370664772 760392414 533905133 66121764 984139739 720139200 768491769 787505161 768372448 340816538 332043715 595608296 66272769 893430520 785604948 806395879 937869844 543932527 881396191 894204150 824745339 10535180 434204071 243264185 824262829 297321952 626673560 37319061 911601221 903458711 973215642 880512893 782181253 94883604 952105277 361313564 743105792 992045077 947264728 62382720 477939146 935167872 224828881 428521990 525649081 853355210 969199634 776900873 9973342 748398931 945654222 785724160 577942453 247675062 299358409 550187500 850662563 744399448 888938711 6687827 172488224 480855084 846206091 532532250 982296125 261673074 954556947 368552989 185794684 813718550 920160957 896000330 994449835 806974993 925513105 579768291 959197432 801324777 651521745 282535523 956884702 231766820 992135421 561790044 506101799 836909238 904038531 808262138 912671552 27142349 581518531 666552980 98202561 256761105 392994202 537343637 927592532 212742643 982563337 909237548 769256634 385364223 868414925 894538968 960873488 435374701 111053072 830674024 908758465 242862121 346142075 573978852 77666953 295773064 903575482 631554658 919125723 878496186 871938271 759006412 269144624 960036178 473378192 617245007 582985904 819940003 544629359 944807419 309543614 548430714 806896910 348509501 684726406 416762515 927625091 898141292 876416957 38002829 169289675 968754297 835789071 441452554 893746923 161411351 549040379 737020247 120085186 652281348 862161669 346168827 479661400 883007319 786582896 219351317 601632526 785560893 744057892 901740939 786388705 610446895 641866883 815876742 230618184 935166374 797377149 810743662 583039139 272742915 390700023 616210810 819375931 770193915 965207830 936152520 809000283 849587420 996732833 808064225 789255644 758596953 954540720 702015720 782549020 915485042 373825623 937482544 957302201 860163376 426664767 915365833 868388807 856235424 932141575 534550652 329058261 776143205 913271139 378497596 971048329 969530571 832685602 226261242 737020247 58102034 963868091 737020247 297471382 166999314 975158363 334505291 330333791 251742921 833432126 498646926 460928479 566862650 843090453 515990666 936694303 418909702 981304451 568634250 903591001 711512001 26952142 514543526 954497706 816809599 905294021 913576886 784636066 410098573 922189816 644070298 882472176 765679705 890299235 839436638 386970458 360653495 883866894 993813275 266409752 11817392 910821753 563938433 724583633 968489938 436357126 763842023 844241099 921569027 310859966 862554475 151931093 812982116 332806133 739811462 581674480 881333016 169858034 770227388 853634653 36647348 856979942 743451920 821502918 328733529 356108999 287649180 976924368 245122645 915215842 415709635 236947949 271711113 67869051 308558011 850006554 796743843 255221607 970302171 791585166 740653432 950430947 3541347 822888666 750201010 562831895 760679173 231525018 893914905 8645199 924680857 692518190 965659524 380277367 549689596 755205179 975155054 337306179 72208157 679587182 557770672 771203554 160464245 92571242 788593171 351289023 931581453 655828442 825723717 381835820 575301569 755812027 54779357 768621514 936162083 492277094 213562810 265037721 659680806 904812514 789216940 835814444 789175730 197294947 839257610 317893753 979838798 475161798 241513021 300601262 852428250 27552399 830949129 945520735 674062696 116855190 964441794 724004675 982115410 241729859 805118876 366518549 290067615 752275173 17808244 864457617 927749337 497704791 754170527 997174337 253292598 704872101 155722953 266918157 76644690 697049445 824296857 751976793 272197309 597383826 66130881 459414570 280018263 833301002 866652654 569759995 945872363 714875977 499220308 829143266 605648924 217610421 942505033 335804849 739897098 112119373 419327154 974559329 839263139 684383460 844242303 516816448 880707347 61165924 35618598 872660960 891677987 919271084 688764403 858150029 729423939 402670215 447559661 692269359 77972804 913526668 302206275 959387883 810472965 518372790 245610707 844048209 917526985 525485376 722054446 891063671 524430528 311292248 756376767 907443456 694269551 454912619 868230505 997324525 146926208 765126452 769521530 697788096 822912340 949504738 767647054 834615674 886833322 776769849 849861828 857396950 518911020 989689358 587622855 365519086 502381153 862275282 918349508 815908562 177076571 741909632 779671840 438837484 740126873 271118661 918430705 587006113 111689987 440167280 401712247 475392293 811876700 996999267 578949128 991215407 739121075 238503892 260286271 72726216 45923312 470909592 561262971 915991456 835123844 39101432 889286359 304532544 881733695 252235953 868189918 580722130 886650738 476844346 772740938 776299465 910304973 554833467 210401016 393794840 690154839 760694803 911695393 842046950 839494812 62804762 763131376 187750618 39033720 764683799 802809702 922732110 642146329 783091895 244197931 829083902 912455130 749218068 718863352 389487645 260655760 602495275 912419145 905539907 365531925 23023984 906013331 836308741 541691999 560467386 825652580 539094284 811285833 928963674 830824919 890562020 874397327 651951943 346457460 522662687 835821531 41054578 514759672 833644091 436355349 25879161 931852885 856961341 135235079 144820946 805092741 223541622 544005410 757050266 943812492 842917604 963887839 981258352 992067204 974975795 837645613 786895987 385713021 260124241 903503360 656407201 962219892 864986819 280478162 832827910 500539179 865235788 141628636 384843068 40093000 427119267 697325237 908054564 755703590 892141706 963241069 935347540 250571080 779191967 216839499 61577293 490633985 839131353 252658211 955385168 172905843 897903658 973265571 955144684 831750296 930922724 167470235 671865963 646462503 162302008 738482528 823124528 867735073 951459837 908048959 760505940 802871054 817567392 591412724 931592160 706320721 961210789 542576546 715625613 795166454 904167362 882258246 281018819 211714325 101628540 656164864 154654712 358500991 938485635 370745208 844105710 837504390 817253147 846402473 856948617 191229331 574832325 195843232 882791937 915753553 207604434 220120932 332809134 163707138 202366149 169786336 961918404 324141689 894094684 169002628 680693713 741250299 919549672 33831362 60623828 876523465 605488271 55487043 130142698 425819833 739138302 2554327 499002442 496136140 110546585 383881966 777267534 795373668 505057612 769809920 353888086 522602326 799925073 20419937 979714621 881533453 14252455 899658794 784119227 798739193 996112649 845141793 346948675 583032575 836286763 939096569 30122069 813979316 835389167 839345356 905118592 653007475 763743432 993374873 175240324 141014461 539863340 60566016 820599893 918376467 909540662 943764318 972494430 807007628 344506272 785013079 932360211 775397105 894945203 905780650 705914559 788652834 538966386 57899552 15362673 772303202 210078842 204474368 122572760 893747079 155599439 944993297 866956661 932844443 284017979 532187145 858357242 857133731 948383162 652412296 853536207 82067275 7465445 559475807 752573239 984963864 447102906 878245148 572981836 807061975 280686698 855101242 749363095 647803766 974927010 212588597 69817029 45831652 995862590 900982487 269074268 880615006 262075040 984302848 331531523 809425626 22164657 20567600 359390405 930987187 751759402 224660513 438960289 855874258 114601805 774677256 755584380 758507955 974396656 920870811 500513422 342701004 931871255 195750143 778683977 394071503 791437380 503688010 127004565 619470107 208907816 543333965 880786344 863409975 445778154 955519030 738345093 892469195 631374896 466070260 381802011 99004735 936613483 804435488 658673543 757863700 663121686 816206827 517770324 5335994 897922705 942711241 128509305 806476241 807253173 213707912 986455551 882760865 511435692 627329805 900137041 945456605 45018718 291618325 847542277 356191354 740377744 299477286 969657160 771010195 832247821 727762383 453764776 790395116 964980532 166425065 870579651 422038542 223690335 384963727 102906495 689905636 780134154 721568300 755247681 947539007 516864833 593180601 989695197 3489607 920155647 779892284 646302454 230043543 144922692 934789375 779468123 16143035 955572763 965406707 978186356 961398865 509714317 885014930 997101433 799838273 471865025 453464321 922136924 290651713 563942828 596419935 912522751 967491822 787181763 815872284 338976104 35820268 148781308 98691286 796388745 325936746 16974169 920035735 978261455 828482566 286659325 357177046 321399813 872662734 81261329 914449428 781073278 155330996 729081885 747431098 754970818 896726569 286594452 915080589 935982158 623160276 273778533 129052014 714853583 407435058 785312283 438927940 324918624 968320666 759739020 475415879 110439708 773030251 865420191 28604745 866858140 100152462 307547729 622052185 201470908 604705257 925852355 455416344 124167057 785289349 826855805 39576825 744971315 987923603 895234553 750018867 894770482 790259370 859424881 543203995 243323510 811416207 100027433 926900856 326956755 927304113 454318856 769507085 936051742 891612886 809649811 579924834 456832981 836874491 805761623 850255477 748779064 187531895 942124108 692476710 931681414 828747913 776087249 862659468 514911179 928337748 862505650 510097681 960823527 655153757 690637270 105494116 49386093 905488670 741782252 152399624 970070206 577168319 925038279 929160709 67725425 830656947 785992965 359670199 133986073 979018935 924600610 604130365 440208890 509373316 643817049 125324970 604713077 231232719 302654007 741444356 7621603 496067323 835183728 816550816 958641360 907840440 952578906 633012769 821491036 754221221 967250073 68923911 508776137 914522037 322593792 992216016 805057902 746175983 51278620 290332436 962020896 954075778 484761018 846525966 757256742 845417864 836869638 190045870 661848219 788928234 766561874 912454359 459277773 545001316 192993386 13859314 886655300 654504116 816174885 620152966 351900105 308605055 837772735 876513860 858826288 489910932 499604549 234957044 992286600 998797067 403777642 694189927 914884946 928530950 374301253 903412267 970977018 203935607 102396729 819999913 958693957 840471324 937937910 42584126 864948660 953610599 974261245 475874167 75742881 785579111 518233531 847059683 78022342 36221835 716726475 972602484 701308161 968082252 700237235 598551801 675803834 552756852 284118362 586522544 587282113 427362638 790629713 919576209 767680331 759597677 746862191 757155928 114485838 108391699 977316119 880481310 288539795 491657216 782044571 793845829 917183924 597806676 709999216 980264652 770940995 493837121 642460843 28835545 321942728 895836307 777851529 765108481 814893677 262003666 903850984 65311871 471546377 303782185 609158426 175527263 743353613 27980786 335665623 777082776 88545491 809749699 928531960 965729926 684522584 651146216 746429472 981046145 793346524 56372174 882622444 702023984 552097044 476156436 1008322 762609514 956401825 973839495 850576548 841373049 408310385 304104301 769890780 589744047 933227886 564320966 783808716 703237053 570687004 869176094 989694261 741312664 858676838 97393243 860780447 795818031 775233818 722015404 898861760 781885553 946600873 354592588 957986957 840908142 576076566 887728474 690568272 272926138 780189944 832106913 379800961 770684895 826746676 917056002 345784541 379333671 342353039 545496141 865632203 234787631 681801539 601850034 374764706 335473635 344873195 904743054 651477331 849225136 354786561 17586748 852372923 42170986 631261993 855009930 411466605 61253159 815997938 738519589 346215618 995607201 143566430 508965072 788345742 96914881 896719859 846502158 641294298 123530621 800164874 889638361 333407552 569352475 567791681 625167385 890535564 50974480 981285757 550200934 809496114 838763011 893536248 293202158 885374310 822717874 784064775 911549791 336525892 368308383 664730845 736300099 753133009 112556754 842109172 893460228 959909709 885871705 46966709 807555537 811596586 813184364 782459628 192239693 805987085 640595709 542455987 613241094 376865304 68109890 174685857 515737994 927349434 659363153 888022641 887176944 798496713 945857673 436990935 512785895 125920921 183371266 511853891 597033292 395706550 770573717 773879473 431369817 193837760 470844331 868609052 947849798 851588704 510561144 879430085 753533742 816338610 827065303 579229164 436782910 725876996 35542838 804406905 835480889 949849402 845275517 765206833 393010235 134579448 588808617 722771861 472710770 903367544 367855364 925534797 447021207 953867988 638041147 959282031 707232795 874498731 801732143 132213119 807534253 370361759 888788215 977299218 983313707 943630797 658578018 98849832 291556843 852837606 540490580 387388719 771985836 826926751 827957959 288176297 71047492 836023631 617658528 919056434 7026585 873152078 155666513 965099241 193702762 700902676 645981602 977549913 969171116 635256897 282319190 169946515 602470928 899823104 814056929 610588428 961852224 50484516 790854229 999036819 867597158 710095415 241883895 742476454 997623957 409125217 741656843 855065548 106930553 465043409 657221998 917595224 683001608 499195737 865850746 742532027 825849973 991340901 93406243 464613777 313703674 309012245 768422928 523720695 953875729 695287100 857725966 58920980 154778146 162628302 123533312 322968985 361383508 171602886 783209067 161833839 209574996 404209381 761488188 619627245 978130839 934768846 944067135 780334301 467067996 575848143 780957993 109350345 665391498 635793402 610075010 767020132 774248449 469482960 730420411 653703621 782453674 848597059 753109401 770245698 888581160 577140823 529679707 668886780 684848853 686162720 921459645 843743716 969620194 841021619 956483826 486325938 102647393 208939269 150921124 499002602 979087887 562781630 872320059 450822707 704111934 630959559 954523634 588373798 965753858 221596061 373065273 878558341 843177532 703348018 550208379 504392214 760745815 737020247 850550950 875160411 553695401 215978087 849923849 71913038 258933835 533017247 913312235 406456804 169605066 829200148 447068066 737870842 93942269 667213397 76077928 540192590 967656458 141231345 980558231 738843622 743596431 857567135 469749 882782040 515808977 804159959 381914984 833844665 890983592 889040684 321590928 267770743 277483279 893817008 215370824 197807934 334018891 969426823 770797834 22429087 945622119 543809906 740969168 834011815 929653524 885031389 878056011 251336742 589096691 855710302 835113922 72368693 868609211 835738626 412286313 449291912 770207857 930970209 20331701 981929444 358082778 782938515 958826874 769034563 141348461 588551243 835094041 988739635 703227949 770755080 410482255 565940712 750555503 453705366 178472500 393928737 254573223 413494452 805508250 194805561 869473048 804146570 862016780 891829453 469934943 339432643 47895799 645202970 761880182 896787584 300089755 600790884 22528686 833164282 627557683 672923061 766048931 60357661 645532357 818985764 743556172 900913776 505360952 772096907 751660243 810562966 784066610 646803645 401011735 964137861 964894976 291207207 956298728 330141799 867066433 224888732 917140340 936187145 512421890 799453523 821789751 621256429 834900238 789339746 578023350 340843593 221016600 265341849 170339183 618834049 888905374 813882946 82407921 217470285 624008242 409624628 454401318 927335571 772560765 871405937 450897559 70726817 240617565 824991564 863659160 947419521 536775521 97310056 867458805 923828820 962329805 953574113 481895316 207341354 470521053 960364920 54618590 970877767 752089161 976425715 868295979 95225687 741689888 890071925 425328145 170025102 616057776 902725760 991302177 919263191 745401339 953145208 794335099 884720353 612491653 909088561 846512387 891791031 152635505 914538578 564993274 501729050 560364911 956743650 15842390 282538248 790145805 523986017 909601185 822835270 390743731 956527738 810630415 794354145 834213629 155273520 364835927 467958276 900216843 700718558 437810959 741707225 762953813 772825428 539228097 249628183 137453280 732614283 774813401 964506374 847708647 801637987 765429409 751752186 817854053 944956604 47084063 933471077 737020247 972817723 661348090 770930831 71829954 639678782 907286078 250695719 821037168 305987383 292215566 891402471 758715529 926124916 942323278 826758083 656298570 145510274 238650852 986224783 904290192 827489056 578370000 799168607 869539556 947328673 931716336 792885265 430206883 227877638 841792685 851815884 800093686 856463988 840678653 271406266 508504348 753146284 71124538 749040747 848786016 115127961 906066109 595469947 12453044 978833022 108220926 69300565 940536892 730375717 759784195 433163144 109227044 172734731 748635973 502083438 802922291 983441035 102489491 933526530 438818503 956401914 741060306 302161834 756945330 313659188 296298399 56313668 5157843 863562795 884838599 847010447 40879509 668235386 928553130 757020778 983261909 809127758 827991443 425426176 941382400 57674071 972798592 921047853 658585308 902282471 68000507 208330505 898322309 148620235 780777421 173444928 235463295 858450987 252147919 285779820 944189726 772455086 952653883 892431299 702827711 839346662 340282489 573709425 795144079 960556770 768801427 688503095 883437153 922742254 826870561 838048874 874278420 945159160 199287902 944511100 882253138 316193577 181285352 143097824 934529665 795293087 756457123 273868384 15759743 765240508 316530128 840743846 742087111 985611283 837812524 780825244 924824250 941172785 671670634 801437591 877198577 301765578 869094843 842315178 407610639 566487563 895417145 199754998 30428378 938373744 945993566 358548464 884206844 273839280 858051141 274855790 746026168 581408099 670461674 953723895 803265577 768998093 315105405 924304843 240765713 674340156 634869532 796563166 393673137 415599187 474541557 253063766 339902512 819042669 912070459 124225804 358397363 858018499 370508738 772501619 550496382 619065415 123482668 119367416 719651235 837333921 332750955 899395327 978047932 821360588 835700487 701810710 47409881 190643915 796344533 814583458 68946474 616071897 563648981 541802072 893154239 830532705 881906977 436766142 569010802 772897304 673550672 6239805 738676171 803473036 63964504 223215288 559776659 218874326 461368133 12087899 400473177 474139202 472478989 757174549 436519185 8440590 168750790 815124529 668946393 83451902 929604163 25084302 795272772 943907885 975491773 824017424 932780115 478204989 795469052 340264082 264367392 749767395 225949493 224583377 536290792 25485862 754938365 146734739 793388271 749002990 826812713 558858198 903671887 727778929 191589950 648464175 887082233 648904685 644900803 399762331 955093746 935447485 732143294 813839038 856587302 428751926 733673965 787628355 868264666 905663669 840169155 854432053 147492497 845262572 549057223 234016230 414468302 574854412 537737948 806693788 305041082 975852456 7063197 82741881 642433560 976625437 817213599 28593164 841535039 679620245 881056368 560730949 849798929 437320600 584333912 878020638 690426867 121421600 387908412 217739752 757004562 122295434 149185808 769576553 590392244 9650376 223812691 131297715 292246203 996452746 992880719 345679606 130969829 240323537 963055309 274581415 544990796 169231507 966734543 167757421 726751373 902936744 188520863 406944880 415186978 581435476 866577385 989685450 955888063 307627790 15191538 393007350 984527514 946047152 743296353 308039342 336519719 756834375 769243831 839139309 978617315 682940157 606680727 861662021 737020247 808429930 911275011 86547988 639102482 788435032 812176520 801079092 433577980 797901640 841459273 782466399 663983567 869146641 907334558 431940339 570000761 827980965 265203474 638226439 183214424 855917666 838549854 918614938 981588345 991235615 338569952 772852914 947847135 941348870 568670794 588112327 320268813 865242159 706153597 945866055 962330338 675871646 737020247 907768984 98397266 773603162 76473225 44864252 475389868 25825315 822322535 853571280 539347224 60894050 617966534 301320682 262627059 936057582 741835014 931707344 475490704 607905527 600554011 568788842 539810361 897781152 582242748 837656081 672868582 568032717 381468207 746756739 780997741 150541352 798579110 818004445 737706974 315339770 863120432 473147726 624760015 766229306 727973017 20507571 886228900 457287889 268675717 799738729 783598620 366040127 914602257 328159938 845518577 916706262 846194219 441355288 920831350 835314093 829245774 938638699 33065170 879873647 843446204 159783702 792854855 863170172 384884476 928059515 214358105 983164030 894304421 533802163 625069536 123799647 754672293 360945425 772959059 422262816 997195600 411317868 745261429 166695183 981750071 99075535 708136480 126513550 917555184 520332563 594820337 774747301 945171037 770585779 286225889 997430802 787639648 740181035 882165105 41405824 639815115 747063320 825227701 796356880 135555133 550464103 764867253 964991897 605863300 134027533 595975389 204463682 737020247 863851012 844878888 16269603 278331632 958501048 812137096 762707557 567800637 473863167 897109434 7741958 870270623 581429582 737020247 716700480 740185671 133901184 858223818 10149241 199130111 71839095 849766353 851906217 853173935 593250849 973500271 714085910 966356660 873127990 863923566 993318628 567136378 846623235 760412412 368228351 254455584 46443856 21538166 844427581 845718758 778677114 800426195 849701192 952542401 205770275 888378900 873724519 948250738 965860145 908430608 393148509 468483933 42963358 822561123 76108757 966510011 846312990 651046216 139163626 666093622 860745634 954457001 599767939 975264586 141079546 965362951 830096428 157953336 227975089 649472185 425262470 928531221 831479223 784128031 340250622 672912600 782229102 101042343 25872934 997898066 934445681 918165915 719643779 754463611 368401525 990092516 531485832 680850177 704977137 690609049 750080775 918485438 280100272 370909073 815399913 958183853 459448796 142434846 726630981 790421718 895881671 917148710 589715599 814067838 577196180 805944789 742731318 127469039 907244460 819259466 665794077 90177869 323253292 428563190 772339928 34281231 790686194 190547833 700848072 796001912 793792867 454681070 886923164 781745430 860998988 25085850 753897106 820861011 795455213 753193137 400494487 597538566 771234052 479348874 841490737 857738743 482859542 648151448 892537880 704431732 801913273 756957089 877558206 994520945 92564649 190262435 776428560 460138845 556226640 639889946 848151866 855253568 905580067 515305757 898628448 335445171 816437317 779975417 389226189 861781897 499200091 202612278 737020247 751769422 948406031 615463544 928096596 895677479 845187917 972166236 800290677 828026137 930867610 6420027 725416137 916871917 581803322 994376753 575056227 772706614 303658587 818585757 824943196 608518994 97401492 694468859 726968392 516548796 958606607 478068992 737020247 738784709 775410760 31303332 710729532 22935279 482282516 941388473 867137393 970586268 584363127 609102597 634914390 869015857 523218752 915658468 219894647 965534094 641819504 905234459 204423526 913729181 998136147 967139121 910667912 406305793 275699428 858310135 193300799 837204657 837632897 865811137 148800719 275788786 381551754 575310806 849599939 889317250 901998967 135515555 978207871 824625434 398300655 790380262 998550504 913800404 681975202 826578029 398713999 357580586 511779968 840201922 108627218 961052683 737020247 884664338 364981340 283629204 967374612 936630556 858168735 464869505 652524348 329489458 817389504 745804850 118190479 101076964 425096420 993415623 865879517 776997423 346878378 377749369 696796918 319223010 148526631 802540392 878306195 947390559 948459792 956516209 348824825 808312857 154623992 970444418 762790866 879255362 975992691 60423835 611201471 245804266 966872902 845857355 274096761 911970723 777969659 886103575 233269416 729513661 600809745 999272198 961159550 509140447 924489175 220368517 805327415 926994024 259663291 856665293 753393083 638090752 259177520 343573530 869326932 929356578 363240793 921219128 185389708 501392909 255875577 491672531 822582525 750950458 226226628 744364692 552539583 955214224 916300392 878499722 961102831 258529546 826294343 854994318 528708524 740912010 529116552 220115699 901139949 21061608 114416039 395769608 898794829 965492403 33020034 895735754 621650358 885877776 443984525 954570645 864750887 110099584 544905816 920386412 772596403 22883214 875099990 923650690 166421969 758463211 461134594 280612156 446679320 506589622 836206288 602269351 842117859 981317744 427915091 835657571 241586637 813999030 744704830 814199825 2284919 738444257 151452688 949312902 373368747 699506216 969738509 629076171 842585063 392045072 469295989 222559591 361694085 903524139 602746588 547909360 784845583 530075311 999114496 762692954 31804030 232603704 852764158 855629662 201495872 752711968 643407518 684681022 918220604 176202488 801071769 815285350 212393476 800977912 1633229 942547548 875293728 732359624 181578359 436620231 511412226 577314774 949736582 856428814 498973168 906466860 811848186 889301588 973981992 445139402 71956365 497875370 394995596 781156127 868800553 656133342 10907080 950111901 410441335 219503653 347261167 420446022 968767171 980606109 49508263 604289333 853648924 182097519 980343543 147070322 958685146 954682897 695524154 62369048 757257001 588684615 969621501 408883680 309080902 553373247 886697968 893751626 37406404 316830028 780458477 981995994 833395207 737020247 145698517 250017046 392564425 880283481 845193120 465072153 864621379 723333737 749083079 397238333 675282613 675397413 259359700 781571582 411350713 984222665 274293440 868653579 979614908 95489945 749980081 887955966 883621003 676016742 551949557 317648794 827952891 489548312 436487333 588147544 870487534 722333678 941287700 993850126 768205684 983169773 808820201 916785009 276516843 782965719 778396764 310677528 917884821 124896571 273751192 727443600 984748813 942426011 285223614 737020247 796085588 415818271 906422119 914817598 784606800 640510650 382628391 445264260 987785692 719585897 953274911 145291147 761669362 263220336 157631937 106068835 26900955 876654493 777551046 86190626 897821344 960434254 831826061 915073091 853888695 852669244 315061966 387234450 924850862 994439077 164327746 232896612 924602129 386070450 953918963 870453676 294354527 90375580 300274286 259335220 796561699 101898573 898593685 782009918 895445437 62973299 920670895 299465815 396157796 956939228 968355602 952119664 795843107 637071776 901985226 462063051 903351328 772707761 321350594 784575194 962490289 34155433 931375706 793067106 368524630 81168679 393416854 802662116 911543744 930025072 858377098 853166107 945719486 63775040 868868363 170510581 164612504 783092932 967094956 882468413 880974688 944786624 222691053 610992861 759247128 814589014 859635286 845704194 897312211 359884247 602470971 736100017 412796354 948244918 648483057 605491137 98528267 779132311 462496377 267215135 149713533 347772007 695694139 292324447 69109544 678274616 31184422 151386092 143467523 227167715 312768933 930837795 484897922 154796099 762870993 239053135 771116594 417662628 822829995 928843381 760032912 988407807 395482644 976697242 392429485 212870188 254201926 347714115 812355201 944625830 288337782 808149692 192821248 431784994 228009183 799375919 907991810 37807676 956368609 41175831 799964273 806482497 982746479 902522786 708715599 63916534 821191458 722300477 741378211 864455056 945104322 777584775 264003795 828449883 246039792 898628911 4300753 919509361 211225066 696964713 965688618 968954135 916197467 961213093 859114524 829245567 187277260 974952054 99533415 117237957 802359518 593585062 751108430 674727725 981737520 815855565 770347074 794685016 452562220 925525757 613961858 793957511 886095550 858278567 905563764 831557462 777250370 971072180 774119206 101313947 855228031 899931774 857141958 908173767 555548184 947904220 999852499 81792390 809924615 285216589 176880414 987495921 741402687 486642699 822123698 576994840 257457992 132269689 466324960 142597418 891190165 643181749 758261871 896212505 321567347 894858066 771130651 704087705 431233024 917980395 842014420 92248058 994899297 224599410 804780984 83714223 432701906 845303952 779802231 134756946 317525332 870828165 252378458 943844347 891257055 912621957 819842056 917586903 922392470 700970013 397268346 781674340 811883732 533019482 60712659 662159385 888223287 976919569 513423686 379479770 629564805 892451749 119427857 918125294 635794981 983099485 773345960 35645644 216361329 786186082 805834114 863566042 330575304 405963769 742730084 149279629 637217503 718027792 38258898 642091306 24558103 470865779 874103178 491059215 823163954 923911202 297098662 551823382 497266296 923065225 162926769 374054046 27110085 785918063 756997304 885845468 805664132 772070213 859160201 523956529 922997944 830668536 743205598 978170078 950749372 359019979 133912588 33928494 935128735 971777643 399160816 508069509 196519377 296205199 737020247 896782453 781805325 445953466 678043850 335237240 309597450 272724166 744979185 6095891 864237979 907502275 970799723 237012260 494197263 895362236 914460988 993850941 942270164 616306836 310530073 882579587 791887144 185183282 207858167 86953038 842575178 224604866 955089040 132283259 530143166 201699865 294339753 153775777 679760424 807940129 791530209 744228841 876168066 836011635 80090414 826577265 842089421 346236623 851203921 939511954 201020030 263028047 759793354 791411978 960498512 897453659 85369183 24963724 42115794 516721229 33251068 594913575 998029901 606070712 831457279 241337279 978009248 761416643 216521585 120714291 918509243 95812061 786911747 96727235 779037630 911223273 737020247 943057656 882001057 742495003 787250037 870508850 753730180 865411306 393728189 957143783 575687766 368447630 440359444 747670560 919566447 624628219 626739368 873708366 988727467 349355781 689985468 9935205 867945182 368277538 464319798 5446252 957965476 100720111 755560229 431241308 892077519 267624916 649974992 79764306 665439710 949210113 926703405 709718849 444438487 792554504 516169667 810856865 401096052 379572583 773525917 814727491 183456100 391713382 71389047 839303011 706856728 560918288 272824954 706297097 829339887 659103599 315516663 831862920 210848617 861633760 827384793 740912395 796470363 457564403 400825024 773030596 969834463 956353646 484072906 469303611 23753402 785103908 800358130 870742366 860864183 854985880 119698617 452983688 803311507 55635923 40741946 607647802 597530218 225364671 273591697 791160097 932426024 346090010 52643588 827172899 725998101 198590996 994642262 845113060 914806859 827507864 74205412 116989372 976334865 285196200 222679005 104879636 764333020 923668640 125087657 823407376 447684869 270786345 372575619 777433512 838306668 870694995 948368932 723964174 11575124 963007786 984475604 738535108 835468786 86539959 951156131 52996700 958461358 16266467 28026018 693131854 345052129 757069888 709736151 306959430 845232490 202605546 938282312 831445383 199969095 735261785 400591098 371193473 751706140 327047983 264333835 975993596 758102308 879735798 49922888 973521784 820865271 920787726 275955957 311577845 902551258 101387246 781172680 961294308 3723291 110982667 110552879 852154335 229976860 504825465 940653710 710428457 306272750 485388595 652432969 26508446 954060568 865094350 917183508 952886714 567304096 795818967 280651504 901849579 982557067 467443087 820648200 835966983 553838983 746233900 23669438 479586833 9123408 597449112 912803843 752377135 960295192 982068843 810442669 301270232 832967720 957399351 89713575 797729762 880885026 749943216 934301340 768760587 280298249 965987150 414037215 823856748 826405594 126632083 454586687 438722335 875022685 727222994 783206786 829157791 533933775 259841889 771302304 173597077 772183012 43926419 984569033 662672540 562359712 608347975 497328106 599951376 881257967 985754608 946911399 915022244 916909359 737020247 354264663 915233973 927279419 200360368 473717390 552294252 870820157 926744605 350026693 391707309 810982574 107179579 820517034 631037079 826378275 905410757 91363691 968578630 900656680 836542659 802229371 650499255 86956290 795536747 116398186 829831044 855976711 218545484 851223603 22382263 288616337 691015059 74363869 565072705 961168972 658832885 790610338 627873658 903720365 243502515 354089944 900449854 914775000 865043630 834278349 876434617 346618925 873733446 849642478 849118653 622773630 59832644 670428009 642781351 563734613 655539501 715746980 990525312 491039867 874705306 814043022 190208123 335889770 897718031 814650904 352387140 353478322 338134260 762015453 923768830 373429900 199065615 760459305 843447383 525457920 107631275 980361020 61544650 102274768 362681461 464925075 348892458 568730954 764036516 558149932 111894049 541250086 821400241 430679447 544671404 826264600 626552807 540209077 403749893 282387338 848323705 321804901 968501505 751647420 860081183 834016674 113412830 618837928 237914717 840560520 801538237 507228966 833392511 262388147 865212505 999612582 629492719 92303926 774104222 772909389 931099257 962391677 340818202 855701213 872666029 935899450 699859865 419578394 604277704 801472093 423911752 524025257 654847192 664200665 867821664 65225543 678165266 879216103 102627372 836090832 631572565 960101146 969612794 827392882 64049223 748639363 366730785 168079738 461576471 585023513 367844257 571211963 772983309 833263812 446683378 809274908 978972001 759117602 973702298 859590701 865394194 982135947 23335290 971738355 955900274 747446145 842106990 303924121 64755545 194380211 913432346 140334458 861310268 182838622 456684636 960937464 853375514 661340305 699507919 614380882 563789178 678435942 770370009 658017228 750907042 991980759 737020247 553354892 570287570 161311765 700615881 956735847 630051926 367017728 972588801 939052046 691761238 924793508 877393124 898223828 981056697 285137590 8320868 741746462 44288107 224022840 761415217 766589953 969764434 910106380 59366437 434294200 93167074 837831520 909311200 851901744 737020247 817360610 925394834 4261962 674364695 298858954 797903299 914990667 959491998 969280815 908596521 214788045 790391454 304825217 98914235 559722636 986352631 975268075 707998836 271761366 127929179 424134083 769989830 711324312 958414532 900595465 986425621 480746785 978508372 109367669 868732675 490714225 880665405 343780289 408605176 494550041 837496893 214143425 575053571 298426556 389068843 889539499 932093681 851846856 776828455 489948402 489937874 792091100 352239107 807221379 807408934 789542972 25511261 805887985 275122697 956280825 374200634 939638076 880536556 601726440 931591495 81337763 864104386 764461891 372674497 968127626 745574641 592002922 416323769 787456948 955488370 997384272 900960343 217750904 791227690 454522750 166962758 911248392 726207633 949952453 664673949 373951793 372044270 882605105 153534073 3913238 893209066 740729397 818104216 863553259 548904759 817429717 741032703 563156176 743182806 867819606 973328642 316590452 27568474 24624528 903551633 359198041 878235241 194831696 775893513 825405576 91835741 881552992 10785795 470251377 9964750 539639605 958939950 236155746 445580972 34130193 927291522 70033261 56554955 55784132 56863939 165333326 545512901 772344141 861541580 757410490 556046432 952347512 651493607 80414635 643580103 583960858 911493919 793228834 955984554 177296031 697335978 797937934 470546692 894290177 954718176 924018854 775340814 968927565 81234592 689527531 119354442 948452804 979970844 815797195 626036331 588692846 168955580 141243971 565347763 51254219 728815241 790568933 855545790 295383795 970401814 453559885 870625294 806005052 998956061 727161611 960934482 191812328 571487431 168688575 779570594 869960879 73280469 157981905 495673621 943513588 921994024 591010248 245058154 993833567 24273381 570810472 461607419 898081674 223875746 613894504 794966698 374875705 206660476 120271667 571564147 772261630 126245423 949918366 2197216 676697622 666268034 399818729 908915064 998333564 829138105 589791192 530589125 756194975 808521134 915483347 167856350 763196095 979403715 359886943 791631197 774535131 907224395 853220874 838578461 536598915 947360939 988230852 408363584 793371219 710347852 946487948 892565446 590655777 736541438 839843750 415064698 586436458 967289482 972587983 137307575 177092779 561911099 448053596 810097277 761790642 888899359 100257381 268694684 648564601 43381333 873088361 127992873 435273067 44725999 819365749 826487761 270110956 318813601 349017027 937223815 273266753 321406631 363610362 222582125 292793917 994976349 274850273 996980155 19275314 50682891 679613453 53504147 911029499 393985753 971980912 396113003 854936883 887662564 163424406 777959032 748030121 348868419 868131127 824876990 903920445 982731541 922931236 413022880 739656330 668123450 945061842 584917340 903491319 92732622 800981530 854052421 780423882 945487074 983478602 983933703 508474394 111341986 987597616 917941865 857571548 967842133 644435224 230990148 443346671 356529482 914721439 775892188 493788794 718232762 317890443 741739193 60620897 833658925 484905724 861203832 668375609 136908230 841145479 795193194 17129837 182655809 351000812 961262593 957813969 972054457 317226113 872094857 823306895 989338410 785109184 163205763 10806108 972845868 885297547 786128988 815026639 513366154 278938270 780004829 646266519 814704016 459523292 273994361 749704565 674449933 987832746 66871727 454471610 768283448 509479758 570086015 84900909 801780855 978718257 966965129 742457770 771710311 877754506 988824098 548442050 397842765 644451149 977383204 746861152 949138115 979222545 807069954 163325389 22673612 897021847 829784907 909002685 784606534 785621010 738791450 252799980 624806853 634817049 856588081 793798856 478488564 143690281 222659870 345505019 763149082 923017600 102536903 934173289 112053144 398091892 960100098 692757163 737020247 763734690 941459633 876685435 167921543 787574783 108326959 273413475 245482283 816294408 451985867 879574095 361867564 948273541 888211709 991584983 122240403 848895990 522050965 808956661 121923061 960325958 857691165 905828246 864119902 520191278 437171799 851607013 985536965 911076430 245771781 736389959 980660241 142645140 869462427 299698135 309495746 792319807 524979288 821618946 792713887 864684742 744571035 848752666 806248062 325635264 684331399 871208942 755290988 994478999 981135630 502607697 910777251 747775303 845375920 550186923 57770744 968438191 980833472 988417815 522367690 904397826 94713166 589288839 167520448 696414242 918642102 895558515 864089937 831450044 963281182 966338043 408349174 896770657 267728650 901452524 82035358 837289040 300220958 755747377 119006588 383032071 835048352 70242493 547225178 743947128 787972902 883233289 883007170 63946237 57033407 599421889 121801869 311814418 139951735 994443147 318531607 943977932 777543737 743685695 94933879 784771971 345216664 728411826 891837910 893698891 865555918 470593726 333937294 715595985 210213631 921525043 981444787 767977425 625182194 944404365 765557535 757827263 385280769 478299173 807844988 493806324 797773763 924413972 715179649 949434624 817834618 759724458 85007752 962986894 953833753 440538291 759489495 53779102 679543013 856696347 859552441 653221941 941195604 110043170 930691303 992993890 886504481 812658870 747131683 881303590 435010721 935728539 704498289 783265850 876880716 140415789 889630573 495797313 853363457 337598581 185976236 166443864 833283812 327026973 291134270 23410783 813853067 634625643 423448812 854767324 244320962 875910695 941699588 988738719 958442626 516883536 866503455 293819355 281712265 873780146 515413790 975743364 559145444 494865833 394111135 270706145 923380154 138651560 939998883 333709708 541632325 540495656 898136753 605682393 240644655 747829621 9818874 291925498 847084946 819598140 274926109 22043747 919605903 849351030 895321824 987875996 324575886 335867235 978406811 504131856 745751426 763501374 821345851 738450364 228821663 942156489 346662973 899940548 894609863 327467695 561489668 778837247 980670583 540278679 956618533 984364446 652989344 838301938 718871815 844322776 68438277 683493558 897811702 803922907 861306052 13878992 448285310 844126733 595117656 966739221 14498063 813838629 673129074 952222369 961041894 527198394 428855142 267983809 433060503 902180392 858087289 717629557 190548103 644129404 312369856 536789178 17589783 867532664 605833854 904861613 55849698 15016324 750184291 713004346 173486625 988298876 745529847 767011783 944166978 349708568 117098490 967499259 3351899 545802031 956475045 828169666 529098106 888403010 179967982 415814496 49536305 891375114 891960596 376115988 991626184 838293635 842548928 126131319 314439771 814362932 639728722 270195083 524058266 805691232 504546652 492494047 913148841 135455620 920863718 996230766 217859990 235694837 353629015 101801891 79362393 940050270 338433850 915991373 620143119 845773967 738246906 346206298 831767412 805071020 654204863 502587660 698541849 527142341 110926178 820812607 747305085 62082327 536390983 816807032 479412690 742799929 522254462 628179186 609801931 675104932 995918920 981431342 730451423 615687422 22563610 371163610 17139165 521470711 383648573 236205483 764259237 391522355 891800614 714543481 745975122 614031343 783943640 831970759 307165348 956816891 164094123 913960742 726427574 904696611 2308834 769452969 804545526 443394233 1285198 810256839 844170991 370260069 962590759 898097177 304331326 301042711 288422127 892782444 505984340 220498894 453950196 995442666 758068732 338439748 147542632 830964907 966087616 958025801 833178234 849842689 169080654 841725421 842819026 618719338 995373773 234043729 708019177 926127531 431401185 151309411 410844930 558745138 786032607 568861955 852813523 931729618 833208266 820404587 958185148 403290469 293357781 737020247 975926361 635978918 139432797 61305156 100199121 747043831 968345733 427780150 832329401 844173016 40283060 736904221 306930575 168431560 429245374 708953244 787445310 930506202 132998281 923370716 823357379 949288830 927284207 753606721 503547164 824332047 948561264 96325811 447795338 829193295 772335356 734546346 873728477 922972299 859268491 654342507 157524864 813262472 935387588 437946911 775562499 867835411 822706539 980831971 926174810 829429310 206145486 860673338 187200554 946377856 502022969 892527492 965582887 853196628 572780505 481039080 845761812 401813869 955442184 297239216 836941072 519562371 873198012 393571745 906390413 762621854 486899012 605303578 989289280 846160455 893878510 191660711 813042196 86914389 825991528 967743237 522548897 747030785 828193873 879805337 874712149 88134106 707695827 485058352 981019002 941502711 900178384 924382849 491610416 441135336 714384983 282104468 687727884 371412472 466206207 641113179 882828992 953181914 428718889 703764348 945633203 856739340 920117783 368943326 982557438 435393763 189297547 571696376 944175559 470340348 938092448 737020247 115595293 431149607 498617855 861699455 85211047 730173684 997478464 542707064 285781777 650190421 202300432 414102290 924847370 163556911 485471642 344932882 918759277 260858872 436840408 486960437 336764658 177580794 155988744 892777391 489017108 14849435 820539955 780811514 692783813 562223469 125736607 931088010 406363800 837681220 888867270 432971282 706138226 906644499 734398048 960857705 903701578 823592104 374527575 94324287 457482307 517680377 808354872 946399574 543276044 933532775 247335736 74077205 502089821 908066518 944526692 695373920 746187948 928398593 472940827 896765191 896802258 340996429 884266427 494225440 470499345 863556257 941183377 143580871 822134752 406742149 241543936 669597559 952791669 623559157 988178767 635919633 14445930 935921659 981319416 194108391 690065606 658432126 760558985 573852545 792110461 160326041 756669376 640734618 250033817 592236593 991730402 360566786 458474043 962607217 795630437 838080728 470262184 434319962 973985380 598537611 331160612 986460193 811346401 211285611 64802237 935701436 771939625 625256953 295420883 822815863 133834262 802278920 898866206 647451838 888606968 63119624 671828665 43696297 517087150 918184663 702448578 179612603 924358578 173284621 852925470 786281382 818030859 765881830 836825121 238537311 920997555 270595370 723887476 566525753 910376177 24666962 804285403 948521211 904225105 910100749 230512918 459243663 692668424 146662284 315561101 35631989 864665243 344167308 814630817 447016174 770432590 868432993 921826081 234235833 886142479 486160167 868198951 936058898 487323305 595382015 564371747 837397447 737020247 266811316 505057515 948733752 388926342 608133626 265112536 997349530 865003800 528870938 955747790 683131646 940866446 55163662 758065496 951353657 591722397 902974117 147142714 907913250 141289273 99435156 346711134 653874117 984299230 926901166 817171637 894369037 806106401 171977847 105288359 813141038 160219307 527053448 967383177 923075779 753925277 40115356 413294626 942093352 346095487 777889905 846573561 680831154 310900427 161101932 934370471 144115158 991760886 791445719 598685020 889557340 828320250 966741516 120300639 565478547 688823477 956822841 449851371 952650047 783953292 617186480 779869543 120370465 215634178 557901224 847236255 255675886 831018243 754732608 382241993 127835676 942352395 410876044 993397222 600192129 963473506 269540013 236337025 763766442 948158678 630030321 106882192 374885276 75038560 136460458 777510802 577821321 66904765 809220019 609737604 957558786 826557761 927991225 637133692 985889697 232185106 138281318 542125875 190577496 99479999 899755897 238144345 960514407 853248502 17073509 397736697 797520028 886410577 913696230 655192651 808060102 223214958 214534229 462104361 875211976 474321904 557708073 770621758 912435326 768965654 499528791 176083438 878674646 111321114 710484059 471831741 14429920 892946205 896081862 340504875 729528961 931415078 496226427 936162233 865719735 420189874 492816579 867698097 953554314 855181165 409679681 918810681 186956791 872759454 127051635 114637324 15112755 685933887 816277526 873666178 682122347 922139292 798744795 872144626 720403308 937432644 208157044 539395462 558167146 897912623 990908995 932754569 315277866 941972574 682780956 722149407 648888635 698361301 574963898 560827210 999750671 863689901 860607211 640187427 723743846 654411379 69171857 839130638 847273888 943177024 564440998 768811771 950553221 470943560 471195966 818369931 789085725 354041993 975813625 716760945 951057828 992230392 887407497 825389774 913915502 478144115 689018747 774889197 849583811 505967878 827346650 950087937 974881740 857753151 735636889 127318195 2100021 747549191 755252995 651639336 768477212 698915770 291904388 989325231 861833219 960202018 973412974 270194665 890236524 363757086 901727601 865056694 893766897 982043350 558853807 711131767 815812614 556498504 777503601 203450200 688525858 920898303 789082038 629282156 304532220 410587319 962316702 456106823 459487344 419771917 850927408 879503646 445181036 876654243 413372715 663455281 974652119 837260466 969478508 288572852 243851640 440790009 842573698 883944031 810236702 784967901 96940023 827687980 699481991 122308003 65586118 235298232 182993777 952314047 804891433 324277746 868601042 970864330 598007385 793195044 401588156 977371012 369403034 69006492 794325982 921730354 955576688 449955334 887176009 942182496 834753931 795005739 575408966 222603390 329148217 436269421 951055677 251199237 237051204 770493035 509818428 921219440 837786849 968542221 880914666 549890595 475180784 754359162 746602602 152103170 806920903 591129053 771556618 363755344 998106163 902846735 782351824 769002830 616717359 73949175 489158283 902977625 722701083 785664378 349505793 839520124 918098683 301236222 132467709 977113912 475818254 661063752 873560842 201978825 253539568 202159647 292817759 485886104 247997441 4016946 982847317 545348543 953992735 709937089 387519503 791462667 14810336 909748244 494511870 352075169 219849185 953590092 881320991 851278198 875783960 33227122 886447833 737088092 834752895 771966195 575849997 875286565 894701799 115518320 779984918 853708721 813883010 391035687 212921631 471587630 820893847 564241527 826011612 914325337 65333681 781610276 907555124 995868824 464193564 737020247 28331281 819448965 448195305 369365716 896693456 107456381 918484246 942173161 109446127 583766907 251102530 22244006 390036059 871251697 666256926 446913328 264444490 892403751 941203368 908596891 745196982 562755324 210012397 873405510 871489622 911050891 153791556 274917681 388985368 946721300 730783165 521453637 828998361 255025331 344966452 73914907 525589274 748954194 930057752 613295816 928129687 985420379 39659524 76355439 990342257 684495391 269006639 28231458 887600189 744789865 783411827 861218481 775549385 748428342 698819390 202526599 815672757 422404125 313722157 397701653 985377682 431581640 995864739 931040770 576932826 763633325 319803716 764300993 208315848 789935528 651722402 906957070 308667437 334266901 726189863 129404898 600871039 982307070 868969859 158177093 783739484 753693147 735383222 348120319 176136084 587386769 270679911 343192376 682790662 973940610 515129293 764591228 741452483 483646567 882591627 127902678 815068473 552445506 886212892 542163567 987235852 488784479 129653095 772791570 915216945 843171375 761852927 676400983 392542633 762607015 383390788 768056339 746208703 115502431 942873113 792461627 416323283 625467467 604853106 120400403 256142448 268320848 907721761 481615302 987133720 800538103 365356199 973580304 76138095 248195539 984676373 580636615 718450377 826257141 974854816 270538374 52251228 827762293 324184234 723381861 645675761 831201094 639095456 898385401 479760148 872282974 918772797 906000490 346633612 775772676 225267852 938634435 961479549 810815953 899432961 785866758 805388476 926549992 841786966 782574874 430679590 885840809 572027045 886179531 81471338 842898414 858156413 34884617 302143816 757525096 752204806 517656693 230688006 154375869 809505528 100068165 175859433 916167366 769527825 387888340 42053740 894602029 185436726 863476773 780848639 781635454 201985143 762013777 228223324 965656944 214757315 589358105 446233511 938832354 920850328 935476562 133340133 917529574 937409304 931915269 869677108 966989106 901458154 263576031 691555461 449347523 892952084 232796918 776463660 47076663 140128513 392953874 432453929 27586396 280131021 754410036 340140605 796206116 159987481 835465805 926668890 758927758 52071625 340299396 931545128 893178034 938621736 117764733 987911247 135798090 819691805 706589470 338240530 941362489 830296531 975573793 575991362 614365247 190659821 34801352 908118967 36818612 988730324 980811335 441529905 978379352 896346675 185397085 555378599 916256813 620980051 778473245 971318682 813520987 381088934 213703977 922893978 173582475 845049161 855663438 827616605 918671688 54582695 926571145 984339151 916956869 567231800 539849188 772830509 761498690 780221684 940228971 901748797 355861518 698863811 737020247 730716993 138716402 843786174 969904223 934726967 950339583 184844505 908373099 724493141 327308605 643667602 942719579 800444426 927171326 993853453 684517295 835431666 74401452 903790388 890212945 156965553 930905778 722308802 568319552 728995380 331970074 882876351 999911336 403670300 980452161 803686252 752520234 895393754 404244497 958289346 915233065 844795554 324412925 982921743 987983181 802316646 58195528 965530368 941882198 995135690 898759551 15172958 844473814 132430173 115747589 450364033 453954301 909693179 682200101 198081689 741983848 738858281 2314023 947782495 212734014 883541070 878974571 450044631 235677813 9917118 849399660 694375141 842989588 295387119 598000459 828814459 668322127 484584446 664954912 956199709 491634523 847341843 50590416 910447053 902169316 634950246 207349940 786711015 920421385 975300850 726132069 89191689 902954997 735691872 425610667 733599383 609191672 480356713 901463879 215102665 891513230 347516396 183105636 284642537 876883557 65124171 907636415 788910718 980059539 685885996 153373884 537423843 897685050 815651364 680774384 991121707 754298083 138346959 937682224 708498093 876531440 730088335 432855342 744127225 834924136 96502334 765180549 754732714 737151420 375870243 793374176 406370174 671232051 613635062 291212459 309425016 813831202 891548731 938745886 514545362 869330209 857271848 998231801 113443329 920483891 780715869 930642711 267730329 864010685 679584961 28574515 876202441 769899794 278583700 635199168 871498212 974349710 868436259 976082168 413714268 808210188 425838574 899725586 768123604 986853407 791216120 587971659 889411814 161636874 294805720 935710967 848629883 271719930 997573606 467989549 187461600 292906466 33988241 991494783 711610011 443676009 891350271 82757539 854606529 847169417 780268389 109709308 748755918 829951701 815448307 752320871 672882263 407527176 596761740 377028953 748095219 764510957 756087598 951560409 826366062 976647747 850656278 677514977 284896470 904500260 131516286 551561471 91016188 938859672 682065459 407633428 980555986 462279595 555045806 793529003 874391901 108789029 854882529 804652536 948223809 308676158 746697061 899954029 857952355 196526565 952508531 408439416 84356748 528645464 561815425 37440702 9472167 950876760 823488502 145193842 381222712 716529449 516696731 207697289 854853338 491356341 997933545 934790181 988457472 840949769 845406063 376030913 250534390 621157248 914193386 521611733 392306914 136276379 932430086 539762924 822499344 135496661 203438099 962004264 893114245 59851865 765081678 958170919 886101072 248077880 903822809 517121570 583788352 336264512 749491368 846480071 603508219 746942573 945928309 341459295 901781951 861535605 975182332 784515122 960655786 357927725 126988886 329365931 878076975 741497145 794693843 837547309 178315261 963714444 818356712 618685242 840827031 878434036 884006931 393043729 166445028 189644997 138364498 213074937 577786390 381781073 804606098 737452109 857281991 867601175 437090196 557826850 600199934 281798835 809002557 564927959 742604215 152653818 417840388 722825354 773521074 688687901 580046437 576730047 950657667 778202414 409047768 946197179 481534970 948459943 804519911 729621849 525952930 839443582 869907271 661779960 254950099 782246362 529165581 219389103 821565868 422701662 784409381 431287102 670857932 434606417 207235535 770312196 127746321 486189363 57533127 962917476 280169302 890875273 906581467 680531696 267453313 731045102 913254404 872184285 799639795 822081349 391883176 904037083 843382497 970233001 19606769 175507202 570207518 959687455 461049747 998381106 78937873 731377023 925841429 683173423 985214668 112439063 952704981 303686227 916692400 909131908 870913600 798145687 956372882 865178358 884276807 701783071 344889060 965574931 143304335 809589620 221396688 938069657 964735116 988958929 792860807 990903421 718669753 661225580 943107611 579977225 202950230 874051262 964528730 960538014 701897331 742438687 379134909 841551634 62638166 902411955 527071794 439925750 968153277 819960311 115088562 809947561 363803586 974882258 72077188 902047879 788975436 741296127 972205910 190750466 971514190 405951797 488860313 377758715 780766879 809142495 799239435 740925458 744835958 828364138 845699378 681075096 45226743 841722275 751746158 568889741 820413110 907379704 60279891 953579894 662150755 867854812 834789968 237625647 126065634 897513020 184584183 828083696 855278493 840703879 944686875 876758081 516823031 959431814 969737234 508871471 850208426 11741020 392881645 804456473 867790735 952738885 789926871 973796104 429949519 990791729 770831855 708872827 230463421 500792176 967266777 828607585 15403556 501407055 900488481 789725890 247935183 788596175 307262501 414184391 936922987 68202440 269593162 543090471 973061259 90582281 897970406 805636228 776465452 629687261 478148618 349987503 604990097 166238990 199378793 945348914 525747302 898932450 611796095 952066170 787740244 873874659 753974881 329833504 550181138 590319730 494238744 324992628 44288039 146470632 297385768 869572430 708884925 937436923 681253983 647654873 137876857 373048328 48868428 852823128 50710774 564638392 86851391 844172204 949392980 329323112 817741515 162117480 569994422 90655299 903607077 619282932 885816281 794507516 760908884 880993798 829774039 226337539 935324613 462173644 170281665 460100081 779676786 978023781 192359997 531933373 87422443 379283555 65535772 419503775 830215319 832436300 963728789 576896082 439315836 18352524 454283027 908454103 239391171 806220469 680273301 798028633 801901647 721348487 838587968 881066630 809578058 701606130 837405264 380082000 586955252 864244294 987244394 913717677 591172974 823935386 229405753 860628864 324429667 699100088 743010252 506883421 889781240 840172696 756228804 354283996 678129074 793294998 983851041 62193369 894785943 857740661 858185097 898495274 163013212 782490553 874334491 895348873 380720134 363585568 389763796 309850242 744745583 931753609 768179597 893675455 807211831 236238877 841019380 957341841 826836114 867584215 521607922 982522980 900210421 731884414 333087468 410454132 911753227 161342475 878427457 378962516 266447467 213648 909860946 837981370 979027825 575611332 79362025 809079353 863498484 615963699 727626854 239184859 26568252 298843252 935891223 882624880 697931294 901890525 622885200 904534342 613284905 758486987 813254142 514867994 809595666 804243723 897151821 740633981 677044984 989342222 737020247 491170295 803414862 250045334 763518335 835369758 771458170 460374726 454079898 830236679 824000358 882001683 647989536 980029758 899199640 839666510 604164751 931008086 142008857 892431848 826483136 977195239 162834401 819424844 970423761 425432402 813556257 960905040 905328386 428327431 168971534 961105022 37872392 915301404 970909632 799419745 248424545 819500125 556661787 878948955 900419615 220699735 894161325 817463549 294707699 875108325 308087022 747461840 710509144 478660640 63599081 184318159 471454570 744250192 980823865 385291938 893773917 227363728 35608746 681507057 759799624 741014457 909216171 892791269 8674788 461671577 867746774 129776802 817699411 794172592 182012493 741114289 50545142 745848567 202402649 558658647 166084654 961375752 915473267 571908212 737860544 810095528 955099866 968927198 812419371 436924135 720282225 912331062 441119336 890497260 878700389 770876859 349570522 829282632 300223099 972667539 258286319 595371690 333692375 924896035 147027066 689945679 832701653 510119521 489187557 271974026 616069145 717582217 997086036 970266436 976748417 867287134 111874356 829901933 166858520 707893795 115465892 742295675 447119945 699988885 626501222 36450897 877000593 853143952 830909961 989539923 33347111 876060220 793419584 750342524 846085831 666327488 782199355 330580285 788453250 569238378 65574351 762441533 788065728 101014731 762815177 987199788 857793467 34933941 105095684 315270700 824839886 194618784 916370009 803170988 249707910 920144100 779514676 585730587 85464205 920999011 294303679 966530476 697943351 299681197 990514681 96644575 264577020 757935482 31968829 570815874 992741273 217689836 655436978 759624626 903218829 793367791 533495226 960161504 975752049 992622414 207477001 620612296 317041653 596644144 831198626 709970838 817706009 47228699 827025582 813267329 980639362 803281219 825957140 921984359 860432985 941717426 984290618 445615696 941197948 876319141 409848622 57530101 366144599 760946438 925184602 771977707 990116096 897042070 855330651 214855317 46920427 906246016 830061467 990251781 370892362 916885071 897300174 126912958 740626661 498046639 933031912 288300734 976324769 832634093 75974681 492528229 944671558 864618825 800331005 413567295 986371633 966598224 732556657 804794121 992006740 220067172 984941764 344476637 22469429 73670610 383063177 829303590 89173505 983176100 748397440 928746439 565603926 581376461 815108051 576074863 925767657 813134285 744500235 379038194 948635074 491168068 199226628 325452037 837056106 817037961 419166675 994341910 985413635 880599832 679034732 98184426 747048905 748694040 440626352 122331523 50811674 843532045 423277273 663681701 783887283 455526058 129694 333523034 550281906 771204027 807990655 871305529 556292946 914310612 484102969 958360518 391762298 856257239 819113405 756104506 748164605 624996113 884528548 235544831 892037278 890449185 822819999 93924415 572278084 115653346 759123082 564625842 543892376 211139801 414622657 778968434 273381788 911796205 715833936 754893618 924968590 722830475 347081980 453357336 828872925 815411655 509735890 974321184 812282474 751253258 89797559 170964711 179897174 614133339 863734433 68023515 578249314 803504754 61227766 950585374 370073717 230972456 540947934 902510456 83091553 730825348 418787232 319205123 722032172 975074842 996004372 906550547 743863309 269460725 821383072 672425818 807599852 894237142 688729628 758621309 981427375 33709061 988970110 906552232 36428976 791079798 215022279 127754553 612415164 757737866 387769288 848935896 738170714 817539986 749788380 743123032 742371845 81138511 101596039 912739256 780759552 251624025 506475183 750264694 15002904 810943065 982494795 517928094 319741167 813525508 423081059 200247909 318585414 314531687 992467370 463485721 889119016 961896516 898667178 383251429 862807280 653818408 503862473 936610743 839297135 667298965 887364258 993136793 912987354 390961214 65110781 846499366 924092764 512132744 358003639 531764176 852452209 718380608 980485159 531613791 266468385 958957285 902456925 963670233 622311428 436126908 943283268 679097099 989284137 690081302 989969934 436322147 984758025 770197242 772759133 756451093 858525690 330829724 108117967 181531396 816357432 657800252 895835496 468316987 830555895 894845772 307018136 72384460 571720728 609102249 139430761 227275852 517499516 611087917 722094526 989612819 928308010 402026599 678916193 738694711 54610960 46256602 848585440 77482014 720825141 371917596 220620023 763824320 676147564 894241646 385270151 834634136 158644571 371072237 901847981 775379067 827959323 661789460 239596847 414727902 702117242 929379899 659222018 135516097 371946637 910122991 117644984 274956664 934499486 871639078 872250888 204983395 801433610 486423604 961632727 518975961 978229919 223686337 698791209 232569655 908133109 793123957 622904122 962302742 490582090 950885769 306612793 940409891 947726993 405551468 216712123 953914049 493436423 430092541 759770902 821238864 338336757 728520118 234287746 268010532 764088168 862821795 545947729 976648574 309608833 902375687 675509764 512039769 891653571 913235816 813702868 929044606 212351056 138498021 794532833 801833621 741721782 933334430 962502434 934392948 767952565 854155193 930159805 55001196 907765535 311515812 989536475 632506648 30960334 849455881 504970839 252408763 908209468 354970720 412642862 761291469 950663431 615847066 539741188 916348353 383915868 873935238 767261932 386120046 875430819 847407583 770117675 333171665 251839974 931661298 458641275 189814826 160759266 686842279 587620003 851081966 876754957 130583728 872005114 820550801 863496420 814092453 515047136 861717151 793643251 328007850 291735638 939657517 666817589 114573718 679927045 781432453 977666275 980560280 930566725 340856861 872585243 3473875 794075052 554403412 954609180 759197942 185297652 743645392 528381254 677178825 641128186 777186953 742846106 640831646 749641292 514699015 780261412 816554035 632836024 241472650 437616023 129004151 853228484 455432274 846540339 69515031 911248213 516733386 805274037 551376601 855859110 867963213 41027229 13981249 982274874 822541656 966948876 946493919 522919355 675507131 593693603 810127405 519877952 617232045 774802871 908120892 641606070 845759679 50309571 507872339 511452252 158816037 735613138 894866360 41470065 853606328 491982504 829742856 809261661 929673207 981040479 459235819 968177252 851135913 64408784 648206637 125502565 979165956 274620156 211086378 298647012 224174662 837917506 58021244 716977621 750094382 45138023 454573411 600544947 886317119 34680187 798235082 912516178 614924926 948193821 140525164 569797315 782398925 852893741 952468791 344145540 161225820 227093788 69080709 727751100 893877750 806386857 873122536 38530556 897838456 854085727 756786514 443944638 942933080 316042382 896389980 238491125 808031382 391767979 752564883 416399411 807552882 367832803 519346164 915167324 566435445 550751561 348997088 311022410 413114406 229723393 8343342 674729480 435239530 266234761 900845119 410295540 761280888 993805774 221147829 953646676 230769314 861204304 870674508 634689304 731270732 735924912 484446818 597025346 920247010 309236220 865358169 461501973 105305128 503542768 777441211 869690070 904893776 911527550 956389416 885059224 411183575 890468658 921708547 505472131 750600699 807982166 928949863 796433782 836409514 290749401 731841233 561673306 901726194 422737631 861115159 841553324 117711586 809727254 758999820 301964816 827642937 918479929 814969377 449719526 933319472 415302038 922788311 52176386 256375724 416277990 200366793 739418960 780497797 747505621 893326004 228029430 743721375 935982162 885921855 140143293 87874384 717318253 618645815 883012879 768452155 494053227 819672446 168420933 989191039 794464020 846673323 877614869 600479421 802635869 263990975 864063024 880436033 796162785 409868052 615378144 86654085 799510288 773216662 248379230 926636872 296209653 586760640 997013003 11764500 770985318 973506706 655204635 336206824 740259193 909908878 69610252 816322640 744352984 740126733 743339381 797686973 964135344 809778902 401956987 325223753 413631343 147659698 228987586 461832412 887641449 474434917 176188020 283191928 457243769 971598159 786973381 774044910 841345992 538368172 231596539 378660593 574739893 490221290 587484823 575561378 976574005 978950452 930392521 541313422 3609742 569324115 436788348 886561226 504553025 651526034 819811856 571864824 886999553 752731757 761867912 175669945 983183461 55294387 987050886 540184356 165255647 172978169 663441801 277751259 554777643 572421596 491643686 775367932 816249327 789616029 872476960 625258979 900361559 764042293 128998772 986014540 300997916 813962280 866168542 358230339 827030648 969577106 23483836 956982214 869195326 835266296 829143231 45836645 850991743 160224267 935140861 965805635 471272541 569281396 433795919 295508524 891795281 271434833 862800824 768420870 899662970 882399005 789210682 590471400 232166091 863084943 162233830 888622494 899100022 88795674 827681024 935335874 334909647 165148136 421976342 764295700 791502761 298442758 283730761 809848880 405347683 740117594 641289502 18437550 395568259 775711055 796951023 243794879 949764111 845691872 947530597 400419698 803915084 391884975 666895809 791213277 949367483 699906973 955450268 776067844 180522365 984306684 847070382 132239417 236274502 842217817 138353418 183967547 925677901 945697733 737456601 705690264 141796656 769144802 904883332 959391664 687946700 791823458 805323172 901173405 737789879 379282569 345224640 74614810 257021326 883315029 781886540 202333758 781600688 840815324 720829614 741937099 738496203 191180693 897234346 247264181 781940478 916341282 157592600 715003458 886926137 133677470 691046951 740275001 921716242 261494363 892867983 874806486 970274447 195358303 904155810 618770729 740996072 437813998 746006793 576840232 817463269 797658097 658815203 245267262 584607631 394381458 981419808 19903912 342417824 908832931 96632623 852641646 245084067 842610295 423782343 126236102 556545076 461058672 729979883 759287537 900991980 714409216 365948854 712824968 749680967 932638317 302311845 988248468 411827692 875756050 772528986 882306103 193580186 249392830 298362250 863378057 375758868 209626244 350361854 820955402 859344056 584729733 964714084 790365399 784514953 944593618 98986214 463708841 718095302 651298946 288855969 243670369 154553018 838663748 928542090 802352408 16781496 782335285 956003920 920244533 972032919 982429578 631343611 275781128 242760471 525071035 985480330 161338057 927038737 9666576 955951081 888678001 385551875 826161062 999841006 756456253 809427256 913520314 953305290 268194387 931629885 643572297 990944086 524617384 616485991 194074971 800460515 873334912 938762893 730008463 849669751 310206782 556238986 907523211 870567093 145434903 298936185 114570 383918745 736726202 868441980 34795680 9642011 863779711 737020247 787503148 987244102 869060910 33318983 666895983 815113952 835421458 963379915 107920015 766800328 561833920 50341517 289747120 219113601 355315382 899628863 963200944 940656545 796078978 255531936 528817410 242112264 237187990 969192645 622755309 796349652 948191351 815309309 800723248 6833806 839400635 464564395 987953699 983063534 263289908 765332185 581504807 192605673 750589952 980678140 10096616 964044010 790887506 620704836 852564071 995269362 859028516 944223051 776071852 733681166 861287249 599043879 896045592 899900222 700101643 498167776 968813058 307020610 748179517 57944010 334760541 889494652 742796658 620966836 900081253 813288973 183705586 798898640 251339063 644349376 815527453 975329944 773431287 935397661 332526998 597059245 437346153 751694266 826346305 783891242 338221149 506076252 521820825 935616377 752154338 848606231 891290667 532895248 970342070 766451912 902904424 125708172 821696357 477666829 205610014 734368860 797530686 411165350 394777204 948477372 802377608 828998985 557442095 409420688 80824916 800536850 832269856 71928235 627036887 567484527 127252079 867461396 465600066 835060169 80556376 850871482 648181720 205473752 926637829 878305688 889988617 378531786 926560317 505024084 749505078 825399027 874507222 326738572 959590565 514625377 852803764 456153306 661190522 421457425 516872699 895938945 570298726 653186785 921768089 124153098 938125913 760942599 282320563 270843624 872696727 787457662 921501538 727319325 383349481 775757820 110741125 845164116 855017034 823931897 388475062 997433408 926892323 959061482 877318237 698318540 684334635 282714470 141142749 977209200 749407933 454818339 130770652 91261148 800011554 737020247 193191554 316439036 835157400 826185744 642192013 758452864 827675435 621757687 432745803 961460060 407424541 908500928 980586456 403152325 507808294 591840259 856541149 955545629 215287752 947031343 984678761 354824194 117066423 489350174 994202140 536375886 248143773 579568095 308109199 38102281 911427489 942605492 418822920 988412628 862853547 187643666 96626981 493682756 97362562 929813850 146351104 992869625 129675866 862949818 898608315 971441835 908011939 59851888 940449460 811825657 289952261 775190886 805635660 797209342 259906979 808203668 16074601 118417182 890608733 708998396 970099350 114204482 831231825 218161436 899968130 716824821 764334640 659900300 629588069 288970835 985765767 784163907 932288494 263824838 838079379 293227638 497521873 18554668 939479842 436679324 736505882 137401208 781598746 800188411 935685589 979575814 745720370 870577686 169227737 308022833 769525146 844061958 933762045 405017851 530346322 324709767 421155531 326080779 851987899 521649852 181073932 959532912 863671365 12746501 869943501 950199593 986101453 715306216 869564721 893154986 975174707 938647342 954028988 890545957 57260452 788489888 182033227 799247954 484907331 700333919 716374012 80841801 249477934 356446608 336406624 923174772 480178788 991576625 766763584 616976706 727750743 830075379 52324076 84232573 827999389 960359464 854426641 464211030 853603340 74971198 401900755 800542901 103044284 812270669 757358482 863589829 917618794 965585697 872282552 837126771 136343141 744038100 981290100 795079482 383647332 780706667 488827520 771682186 834158790 936453774 946227491 993691571 850916211 945582678 446805199 928287343 819298819 203191299 308383172 905540644 820660473 648605246 949280923 702141926 373623464 563436172 98945368 788030623 807578134 779371256 96304351 957095772 401017295 776076119 565792538 857313201 372885575 656919581 778426877 536762869 813356713 755702196 581568441 603388200 266528221 689992087 868330577 754193822 191017517 25524053 541861870 638180831 910982915 999466390 767613436 790763036 819118688 916146620 516053277 747464380 154714897 170070137 367546102 52755730 975903874 14944832 689023872 569789210 751026907 113853468 790161652 581202061 721916924 797569453 810430270 146298235 344301606 922439836 539062047 98674378 805078700 941758552 262473206 959683898 476825227 924330021 105231779 376311236 473806416 895237032 989993152 839708953 143319087 862924625 328147826 974505980 336679933 952670023 996296408 902090627 617003995 783691826 772987185 999405120 569434542 65724335 291055462 358837174 786849714 783239226 974462939 648716023 364929127 959050469 292025014 589562553 946943781 992404744 371033573 459580344 924039687 757108229 753585686 751071145 335431651 480780155 967676171 327427430 754859750 838791560 198563794 39460866 970830197 27799377 903470863 502984053 994687547 859286690 801065707 898759384 999494088 953531395 521015761 810180616 880657558 35269129 955281277 459827664 870752544 687151835 103477194 854825022 788411259 179762972 708057969 791784613 756178163 784217116 185680538 783736346 993175709 99772487 921328948 303945957 499583341 888025685 414796647 937992563 863659588 65670395 971484455 906940740 50509133 762453758 915765316 854507344 980944743 585211063 562025008 957893038 477545805 922799501 747601301 682548450 825902777 802410054 414306565 474234999 306731266 956952982 933373036 930485166 414481028 892671595 971198374 872760972 545624021 869183937 67775354 353210691 41448261 431337890 941841997 595719305 362106350 777118271 971096050 769020566 193319509 347644688 481742383 802405282 968006731 778231890 765729203 891031495 936799491 765974203 125545982 900387383 886553477 54952773 988313570 382221797 873186015 662899087 505255189 741280423 32674570 883622593 395223994 463346626 170970865 250806424 901766356 166783650 53110208 984568622 912248892 202630360 205987863 238389772 966584371 867221739 5958165 591516891 54994663 455581077 626273631 342953702 834849449 997549117 205722663 921566299 46980250 985027099 923279497 46277614 762052842 354529355 812159722 828477976 728693359 975147708 422102200 930224791 27374540 771919328 679518699 252214136 545877112 430784536 183104844 821434474 845953699 766424836 781692489 786619873 413899225 926530878 515894440 700850214 645903207 16196036 917749812 984674586 296301555 903294255 515267887 442884350 865884799 950518897 346739915 790508715 892151474 912049997 942187398 102069572 15020221 84399711 138700533 888907219 967420700 967207576 934522654 508121900 506878457 836228425 812037236 100976389 860466118 479779380 998732871 982065953 368732185 803645521 973306944 219055158 362304789 102388190 743664638 689839023 104946000 456480563 408571240 924315013 724166183 624039062 110917412 763333660 184006208 617798055 228219096 5996648 874044590 514368353 467204376 985465565 26510817 759785160 761185638 994571284 985807189 777090194 261319278 667943179 692540974 331069073 264820168 254795973 27153451 411909742 94037267 891833141 787603758 419179519 201339768 800061495 206233009 905206552 123257507 909275342 311413675 712215224 737258936 794560694 412698558 832485265 870996206 757777929 38349835 688839023 738866368 593465078 770568575 90802735 888679351 914164852 871335566 579626707 806041112 892020180 883655202 90008083 782161515 754294082 661786294 976826482 667828259 101381295 483943151 955252212 778299171 884568711 821765084 758819636 880719864 915009566 816457004 633520514 748923793 868903048 989118191 276628692 143354475 487777797 456287749 881319702 820171849 447581321 593158180 882678927 921040163 915784149 948669721 843115079 176313057 479748187 744394289 383697384 293819529 886257942 88892547 577959349 932233002 769007003 985893534 497476447 949098592 837214519 576507225 247831967 621856776 789197693 959405914 515001858 986879937 93578040 985323425 140357887 280053411 52500006 918140742 928884254 190473610 693558347 465595307 938261208 299751897 556366220 454176257 985392501 463926938 910143358 777339185 707712740 993430570 945553431 961430252 855468089 804731311 516862998 501808529 946406248 793260093 954428766 369048856 124655949 788630672 906954449 775588507 478492386 603755722 499509354 787646958 753523612 738236144 271061557 601336669 897307238 338517065 995672335 524441900 935209242 759149105 174622986 830900689 947494465 973804970 948942425 636126803 21989988 53073184 917973603 980270575 248217104 644779875 903536387 560368399 285642316 987308974 797101128 645620001 462505068 915443173 495639649 939886057 182804909 761656787 377016656 854358954 68086773 683984944 648962042 967884338 755613888 972171645 138583752 939040293 195515414 754967526 955788151 87172653 823640396 122732339 505885618 733330997 782202106 389893096 795886560 874161459 978546574 815883859 147347467 38471077 948881880 871548613 418350432 646523914 291331162 629992145 53862718 636605071 891494325 82635590 522726187 808929402 820652880 517383462 121225506 70351874 663618425 658487619 37951985 985189886 770885193 756815092 835166116 503988939 968186281 980373372 887473543 824451621 860528716 177891194 879944936 990657739 326400779 775178945 381948038 908471204 950049316 942002681 643789784 561492646 112466392 967513112 651497818 596927163 993287181 12718040 710329728 777124953 841123948 934419894 806794091 220396042 337200357 595712832 582942811 585385934 656864817 337169857 422001679 861631314 559316262 737757430 714040795 679807065 970373759 271520409 950662951 982121239 967605507 905535876 4706700 799930106 890260699 973663893 771708958 990928401 25369415 609992998 674938177 495953116 580416941 371368552 972032904 459945401 748825451 890410316 802680456 977971686 746173009 471830153 874793236 751734803 150804443 162488809 38346485 986049650 210699806 977192858 973364731 809979750 522994574 809941552 247665787 612110464 990756778 831240748 652774895 977462383 828721634 758513651 687122502 318677244 976348483 947942137 146227011 670663420 323451941 293271253 201566849 171615138 788698493 126153530 987787114 751491769 512410917 405099359 536232268 909764508 542847270 891735230 385290736 846831061 944044474 509372018 743634802 741398876 452639924 62138613 117748474 909426432 355987393 636877151 741001266 964976616 743275191 846130858 588637371 248092696 546296496 341841665 364540795 878433672 416871685 771866068 849533041 870259747 454691507 954636741 769537971 793969174 318197465 978958294 785481901 339589568 315343774 863319089 634572319 815945456 592672437 783415183 852638891 818755710 91979649 158169025 930120736 599770071 386290741 986933711 968879467 949014183 790201027 984621636 262791022 143954274 561594684 297236536 278335274 745656632 884345656 408287327 565280393 895086597 189337306 653176856 311121222 884484587 997343990 751483688 841447070 737020247 784202911 952431096 947373123 708728708 874682046 126535576 149484829 798428151 609596076 526636351 410214974 617924768 833232479 986714594 121881719 969914393 981211906 762376603 655758751 128225707 725344183 578915226 335573444 649163954 302065300 270848501 884234424 806327677 837832953 891556044 807175464 938212839 971556229 914936060 812639960 498042405 882519543 426862038 836277296 829609216 396640811 28894618 121952252 617222048 915350666 604839928 998830731 919541515 958864409 57164007 993612567 953137513 501643627 804682441 134849981 754404658 166876463 664755417 358297142 616381492 883507712 917381186 731781820 827349138 192616062 852859804 919203188 177049600 995526670 985724845 902461472 884746220 906198700 562016637 788911137 773472136 814753288 400106837 48828671 632788172 997325454 830324055 333359516 276893527 883550880 931481413 583268050 737020247 921660532 939431861 493061675 864911507 935180509 946404124 321736039 828347483 303243619 225066459 122718256 918587246 750676120 874037310 811998202 790359707 945716479 852225094 877625294 946381177 537773908 95594713 902722481 785781888 911089041 303052338 214463074 856367076 345260604 845729699 707764210 164920514 254686389 792767780 222355199 641517627 226350077 846069152 427160407 725171250 343576583 915018651 291136269 937269248 622658224 846726074 195514173 948201292 765651942 152444816 772125344 915659224 645472175 840594279 904580923 92445958 428430468 214952062 827094542 674278459 289358403 798264714 496173340 150146718 996329755 337184455 187118230 521033017 158900947 727683103 246866214 770481228 718196779 847231202 846204807 334689721 991765714 43065717 771357394 390410450 860613148 724708673 799047636 514560030 965138025 833563279 796580139 464232688 853293006 829160622 245021598 793109271 317026509 868867923 182945466 891432018 331760332 510422407 153702872 924919082 928379394 436848462 489782198 887942025 103756548 977329748 633876484 893122792 748065341 745552688 952637283 946953002 973694286 873296528 56464675 929921269 910954126 217204008 929440114 963459584 358625772 978324427 826086733 177314048 285060400 930947689 75661937 852312017 855003258 947802157 443640416 468236673 181028387 411983823 278143493 995276525 488338592 580993666 843916941 904399499 417982919 785477743 639577046 993942146 944353712 751320168 906901540 586134345 862149250 887285883 473282210 738835042 209379982 80331255 333054506 299138880 721760198 960264413 944612923 935317469 889551490 825568802 801832526 635178039 755733780 767647684 640926642 812000903 781545682 268341196 927674981 744138371 739436898 795719160 313221416 758978733 121268220 228224512 850455441 381887831 857108941 570627870 99010900 454973260 487254520 811107421 935596709 62914896 883799583 777947219 928707366 670736762 923933022 827401168 324040297 371357993 907164648 895649168 216741539 909922732 837895051 880093396 539452586 527467306 984455913 51557980 596106470 798036087 855069166 393781447 673044765 563251060 548619762 984915422 875078935 608790641 907717159 597937055 820040720 963176981 972603295 247917883 972257884 999387500 974443519 762580925 805326402 588773572 361886548 662875698 982616481 801555562 974625986 208985723 948209482 753260500 525476584 555846088 893009038 617002444 485443 832863003 712813331 708720631 758211954 998911081 194081888 236737578 883411449 772951959 166977820 737020247 816074870 782882287 240277100 985030078 748233674 33715313 752760044 946007586 65146376 737020247 904899888 524221491 847282207 339728767 756935344 771884875 822050753 844985699 745136354 448141077 591234598 358955544 604201440 11605236 743900571 537353779 741430337 380453219 919268767 813929762 888187903 920405170 983848343 872413519 161109052 66623748 791720287 179040056 612504065 892862273 658986427 616719098 279566724 938084734 238181775 22117137 258634078 835825083 940260709 898024441 282384926 570266010 217681921 738516248 156948121 994019177 460432410 887191946 759582845 747112455 934808928 338425215 267191408 947646756 209329461 945625758 134697186 737672276 257257607 852876563 348506935 235695093 608883239 729942836 835310138 998360280 587222794 183708269 494111491 38166357 555843483 409292692 246577479 214300578 775589737 229892690 233293675 666796728 583281869 773338660 190341532 135780875 964637781 785049939 310491728 654052307 939528550 860509070 895592165 413382931 874403618 563757412 775933325 477028015 511369050 392299534 633109366 937642210 814797808 829232973 177076103 662010861 885397459 954627863 73865701 919174724 807066778 488348538 863368819 923480938 727228953 891557254 438349804 885061546 834878343 810838707 502678607 560556972 903142171 352183728 969329613 359113823 300643843 708429056 393052297 859554232 506449296 545182648 911503186 145771558 441776128 648970815 971656534 801365611 890465822 5453162 498794230 551658403 293979064 428109646 484650141 757477747 567360768 741884267 917718577 523278378 753898823 132174485 928736159 992100298 862387857 677043792 812118165 962309260 118662488 946830924 890432245 817117392 404498304 906550681 931121948 756445016 997332733 883623740 23662197 837506245 252886590 753328063 319865297 621890014 479125046 233932153 37485560 790269212 763524238 738796861 386150703 14995626 881178053 775336926 800920628 674158602 831509974 94351352 108283016 974147574 616891326 79428205 675833687 998284261 312446762 416332024 9951485 341557000 763400367 875242940 257857248 542392926 268528124 885209432 804473433 427313507 854730220 750631538 529457797 737135841 317714049 600345454 399613509 993790724 897818138 688441767 971149921 80468987 53667688 776908373 895413639 851809993 621214238 767829319 858097211 854014491 910424169 566998086 740480212 953566523 338079822 408507400 148604081 750032893 761597527 478771497 469298207 973909862 256587473 893968600 944105083 298249957 818029449 657521358 747766999 984931674 939094959 625774527 860290518 660435169 842856528 934158510 524809998 639078235 766449383 995139197 741974226 813699282 862647376 354586371 646082568 814632453 52939659 911415737 715234045 938990278 724783081 784761968 179566884 859948146 298453013 706956096 906233175 521253051 846689565 681478000 799409914 557853104 298493777 260384116 632665805 168050607 970265443 995175483 650833195 439086613 911030981 956189959 738570807 382197765 984094069 164318051 767506162 118200348 743181811 369142622 496719455 901629437 837830793 953962494 812108103 752747136 282387618 923982128 730465735 672809983 938881926 114269697 696357883 909677142 750038708 353779330 240391991 288047791 903233739 946296469 289831591 191124769 371938892 777969284 875019470 761486594 274608897 960643936 598320792 74354104 776633054 765418860 863694743 727120623 884169001 952668044 749911825 616818776 354442674 782971242 997553600 320276165 744973354 869982314 756149791 939823077 443176065 958348936 340813716 882169899 963727365 125301876 10148245 39640053 321670628 499054789 907105144 786079962 932050146 885012211 723451789 89375689 880793171 848164714 944136166 486309508 76612576 355231365 689923484 753942081 928849348 810833483 210598880 84804541 767884158 930545189 910391463 37987758 852090316 994456850 794651513 919512850 541255851 959198356 915812216 468488224 581237215 999387166 848230456 339013432 877043400 824334559 925260964 437957174 226717876 967505883 996034482 986970560 780881502 689343366 697385146 173693093 896989477 432034537 935704717 629912101 846238307 88503827 700068556 456073463 488477848 746768473 775608633 944553823 368330710 682862289 569305511 606413656 550821956 164012280 462587978 825850282 740975242 917662754 545342692 158108409 643186515 770369974 886302573 619127095 287973909 409950672 881402103 862874299 913269104 975337086 972437297 745323006 353532565 380788760 616123421 908630379 490236398 903961762 992104627 865287929 897605435 508790904 328637733 791574907 958450054 610710008 446369775 282282037 924611209 362540013 532865847 249807485 456955025 205562865 115047376 965630881 407746206 3932352 131787726 919237994 1344293 969027886 190999891 353510603 450441114 754172577 320189418 576092783 322204391 522208630 751840668 132310855 414489535 965307614 148518699 408957129 90096172 933573728 787933405 998805950 196519055 45796740 240020031 857910568 663605215 857503403 699182492 148553917 655837310 476234198 964963087 402746544 189653495 483040066 609753176 928778096 363275858 791193208 756506505 36200004 733580535 602016672 733447154 991869105 386685601 66284395 19501050 933516194 655963047 780309671 540187692 808924862 76869421 397405547 795650891 932921509 484892556 17103400 789306449 770110127 381765508 906979918 210933940 942137141 40509323 909407553 946541276 895696424 171821440 747948670 232032300 553095875 907825410 309746272 968878256 908566688 207539558 711190114 132549553 385075921 741444946 577821608 914400214 890358162 241702593 711472623 965343944 973327066 813812940 271260048 585959642 907853410 929152520 169989465 184803364 646174961 444786791 860012931 356941187 604690041 601774148 927313461 737020247 591820417 976560775 14375856 951354306 832482693 891774186 673234210 977509472 946312302 885130716 509953089 982537366 845647016 170662314 192376301 757628475 137783642 133408090 406715903 760690214 85606932 866860886 944763251 793953690 439484856 38622429 7530865 814140522 386395348 911866630 924776183 773853366 565443903 521868976 894785621 624460014 333440250 477399404 515023031 763109874 803400519 424810954 939111985 411650874 250092630 810129638 354462806 281034274 712005520 743407096 320511976 918969173 5870094 180827799 165026198 161346702 978286824 142145405 353666363 908981960 838336360 302691838 707185833 232411534 975360751 919057439 39074727 279716732 252555830 904049330 816918878 851846372 784909445 144406150 734140434 960838003 718396306 541235972 181631951 891300800 847856643 43873833 668996677 740869250 377069313 943735020 748034056 590331076 756687270 443693344 874474484 331685695 868296215 937455816 453162352 906183258 924207023 463062066 741655612 456143611 360502998 903702280 890731816 259421378 746419749 925055101 277181379 984436302 782928063 816138610 883861223 934199616 234470869 897415541 248490424 932770756 508016708 928406821 287267388 841307080 358388296 789803053 372054864 73464693 16250203 48999496 781519984 855306692 809743539 863076335 210223065 994982981 842189398 799862542 786385990 295669141 749369502 746630632 940910922 738556885 882656073 868252174 302231175 763211377 738459512 565239980 231655380 708807656 205787952 265131509 927013666 304314347 943342144 801480003 732000980 930474793 783315929 399163464 825967064 578932287 864939573 918698231 290782323 899779189 630749846 846139021 653871982 668633114 832892818 920524732 947156986 318192829 662188827 764827054 952507388 963551265 339832743 824170571 909265162 781466571 503158840 157511167 511463058 914838367 897339493 969748948 939697542 746882762 555961664 213022956 346125590 710751274 844952638 579395725 963303282 989882208 856797915 4204093 437242436 573230785 688679890 838002193 953688370 260891247 566962230 517019413 273512874 686307345 785486226 112237936 737647174 888969417 778018989 952506263 916831923 890905862 930260227 621718364 384058199 735862733 39570115 849440871 799427476 740585988 915914731 120982175 802911646 66438745 831057983 719413138 26469000 272452682 998801507 167210879 892480022 812132076 780119357 808812473 267590616 927227851 902073258 114584357 205606084 263208699 802214935 201391091 483681172 832626698 23130727 310253916 108225687 581779734 326220146 676543045 494073080 482496523 958890820 518709548 172226705 71642868 952807224 806241888 909161206 947391448 303109135 347190981 421117918 811518062 325492824 812503398 362832052 100015287 405779048 887935728 869358515 468268913 479172130 974773796 827082684 760806134 736929939 270917193 186350007 760587389 824832657 808005913 993382951 904675683 838173405 39347431 806649754 457253701 748621668 124122836 85484904 417087513 105928726 996893217 22516419 360113532 560929779 807684533 797229255 981420742 719385225 492909865 721778803 988962286 522262010 854555377 188815685 167475267 964518991 630674226 507422123 963757743 320725561 573321173 904753470 209145884 920007368 133574136 445030511 427944956 631423531 948699598 806560991 545574507 757758464 876050265 814232939 118497016 55845900 925941146 278658876 858576757 256813803 834321709 847830512 450982027 807499853 950161556 389169736 760970920 133868333 807334534 849004765 978038919 776519619 612100983 817387043 881311798 308352421 462519708 548139125 299333443 959914208 815276657 680907925 152201944 393879980 501356043 757257740 413885358 837743328 850282759 60625482 31085086 449401825 2149818 319943218 800394274 220223834 339241004 967087274 765751001 997541443 296558727 783427685 203827752 644580362 842684022 196983882 360084597 394871013 482269413 626942074 865964102 886161430 490348898 328886282 894912975 909581246 780898228 238239098 584033524 622820400 263124694 572757781 594225308 769361272 967797477 986332935 651931372 504589898 376229418 977680429 581431649 674367218 76789420 104002323 899438374 870179841 834830834 940483662 363550203 160426167 762600023 808971153 312457105 960624398 692295303 890119841 717504940 738504794 97378940 441623890 777719302 780463704 680881155 832351029 915875434 920081672 964089759 940198631 990338080 168479988 248765053 756118517 489120391 628788359 689146154 116520193 831365836 789902863 764271522 850918118 887914038 192805131 445236230 839778517 835412422 889469577 90647786 915618922 744353700 594626697 88565046 925590879 897439193 503809850 319841635 886043437 220099463 343845603 744557612 804467378 892242302 36746599 173296831 632624635 798162806 893712549 440350481 884579444 762934413 362177618 739118398 210070680 962923336 865025377 101009154 130070626 606365110 154636090 264070178 889286624 621949593 238869764 339181586 999381492 996006967 471431429 351571064 975110289 552850083 976627624 480467482 988410783 999979738 219319250 914310709 749184157 118429731 145478637 685583002 775073153 710929605 306859463 947565649 876780312 254042416 347723820 906594506 837899613 815256097 744120827 906925053 975932145 48569068 855991769 260621722 925950414 861289031 973532522 801689610 440166367 524719561 745509716 763194428 565873564 126046113 6319353 744549411 997195110 543649566 771297178 943460378 954573910 402785721 418411152 868808616 518008693 740691145 115075516 800027794 867998796 553135153 883751151 253472359 909291198 723379747 813990923 976394655 296565962 793861403 761527362 351847267 177791634 884811626 955982273 31750434 794055733 621098798 585308199 268355859 54317734 612790575 292272190 30040617 551662488 881943130 988467569 475013832 775741174 87776197 939814317 883213059 438974486 153623622 853524659 663984523 208519946 361771257 929879904 704367252 994744055 756549671 973180584 70135655 891649456 521337513 929301961 555671532 978173603 897290037 776370838 32772065 692100685 565745654 680167361 179881992 871099988 874164099 976868676 574107872 415044784 897696016 844044078 857494353 288713623 870023141 910003453 403111298 747709611 238390660 465628009 927265032 918926882 940816223 894597484 231026872 17646075 782333546 464513136 965508521 223612070 994187619 790814415 954466911 986595892 11629387 984096080 318130531 741406873 524010541 927426279 856418932 943552210 741600740 82270463 942817989 874499086 335330316 831003840 936999225 496837430 505741117 884082891 20356347 700481518 204778784 886440345 373888263 192271426 773374859 821928975 268162546 216606620 945971812 787117398 889982364 995411096 388627833 947410563 296628755 798565779 920762798 174631974 157497537 749815584 513842436 996940091 846834742 788730008 725366843 845848847 830822785 331411802 417790744 516814669 821735545 536132259 124217024 642083482 670073473 102957734 879086673 298335966 930932328 483016450 810979926 793667017 528837005 754425148 702662049 453944739 265193386 920807782 821423746 76332551 172914667 814760268 840515348 619867829 646978439 695510764 787930380 829678448 561501786 306276628 820811308 812940941 958898337 214465737 358287006 573390059 54051266 58776004 75199043 779817339 792285245 716516854 957406633 669661031 612963873 498829143 652014189 389499545 692891434 587179284 559409746 917461084 942880885 310829376 418217906 210391851 846020962 171950470 984048808 819711570 102129736 917381610 205182437 35960999 209389691 338357545 891178639 777061605 848436845 63019777 415923770 273730937 780536056 198588386 819032080 479172069 543363948 922054787 230145215 294886915 406257333 825823548 950298832 980408459 974121722 909466080 134357312 980187902 824239219 332863912 119813536 161007006 146645819 423259501 753089997 151317241 785919138 570823759 460030971 804689740 851906844 61223546 829736223 456255911 996880834 901755528 606683805 983584428 894227938 753677639 486480939 80387284 395981484 849408912 313033643 955758566 904974360 618414542 90250690 766600082 882785025 784455280 799957968 923034274 93408044 759834653 412728261 771289744 764112342 284711330 902983711 658536328 669878854 811966033 851858695 37194764 787742709 774785101 973006714 193925609 716260870 253658232 235453769 822577089 982760751 477122385 402514376 305504618 287580135 836549968 771591363 73574342 525235703 880993562 781822764 907670735 753340513 871546993 336790864 125190127 903237547 843875204 985409467 958952942 722089835 375486745 846610754 957476933 954605694 548487529 8611460 331746176 255569112 170109630 93134956 359093777 131499333 976206374 329200869 928269524 968496441 462047569 436206650 150711342 458196322 797777988 761384889 756199990 591491769 407771430 973357634 526229702 618152251 149577642 184708678 952073191 901356986 965160310 599326577 914941383 718725093 879358165 778477400 972324700 957126708 751022086 19407762 933954898 204149668 335943983 896821782 8392878 889340264 995736548 737020247 752575862 746249319 721190365 442679917 132463932 520013128 564896861 766523293 925575000 830803868 889809222 588117227 171064241 481351014 173508265 108651375 168496208 850560486 781588239 917830428 148249161 161596865 933407422 585248891 250816908 471777062 791603647 441506768 976158223 749981941 432769764 811712640 541962238 765148256 140317019 844201663 366892640 4331158 290089055 148832862 91579339 967601134 291981231 881609994 881873066 103336430 972115733 373489657 801227093 811370919 757717825 833056895 566463372 470200597 815605919 814782978 758496833 871261997 888325848 895301472 848013802 889676219 908593772 902016900 922531700 591403335 941798358 169796813 41563948 993754566 770862608 293103827 976693466 225477918 271952284 840994037 930655525 864053696 923480306 115734173 922624038 434336182 895468696 458962050 922737901 142291208 720729613 693301296 240535845 262537460 748646477 766180702 841501845 987179737 175555247 335482945 852113090 525763102 506124427 723600754 104135530 800614997 719507482 789682276 831246704 90062980 637955374 196001035 974702852 186220001 543945715 291440077 667848174 802435737 485057097 175141412 778100564 919097680 865274551 742801237 931355961 933180754 997000660 944369021 512714085 891407541 424899106 819911362 767691671 61323201 485260302 145159385 16467674 877638127 201974537 37669816 503727561 711160960 767571842 781082459 25098476 49034711 770757747 975229323 389005416 172342632 324690653 921636850 780686939 12073336 946565637 970655245 472656207 672234284 738739795 809780567 754070302 22169979 904610111 867526918 459073491 957914516 846867181 84294987 204351780 759965693 364773040 161957988 226804589 241527577 709368781 717862612 775768631 886429769 75770044 793905714 538413735 150108586 949135506 991925298 42724907 922406455 377335795 202116946 567700320 19305588 803438634 431673612 262505995 583256119 126780448 983391629 928192653 511010710 350898772 866292032 72352530 383975370 901241051 699829571 444418512 755217369 617550270 986221158 233656724 838125374 922790305 127264265 381889232 861567528 626955204 54615762 502383804 494441476 964777221 815969890 586334960 883856288 193764772 805604903 961086820 836927204 722973218 8460407 967824306 806127505 836301594 44081426 429041338 964316354 967685692 963926749 173260692 980266409 952223070 128681576 826767735 296278892 905713630 634154507 927942529 184948068 992102748 774470227 239493194 776023633 773392076 136443955 345474549 848232249 548013763 457417204 872238600 601664987 931661820 544787434 8056880 737920591 418323349 972910324 875025108 615814143 423913731 649764356 98410971 821126971 426572939 649141707 854092563 758501449 899973584 977724837 612734241 827598275 756729652 860491766 739132441 769055743 761863936 917540176 772605186 980093759 993850215 290815690 22625838 539869233 612867202 883294825 63247373 755207143 979039675 714990501 702056254 866638907 785049997 203548569 811457925 825840817 95471599 501363817 888344965 864831446 780542837 622881051 784082490 528500508 942357750 248471195 911676776 490401059 420474932 78360920 594698567 540892730 674188385 951056713 145221229 416506191 527665650 838340303 426439543 730059697 756658664 956352233 482294793 924930687 829302592 780943182 374080508 3234337 892202004 113373444 220912705 996620529 955248735 630028347 705217752 316795419 759953057 934290853 858363853 441230202 975216522 877763731 630010206 578376419 56981071 983506646 587811071 487265070 756932227 763775764 995155141 908797150 777664651 216091404 781370397 828637005 712166152 508934796 934009117 735052855 171831020 799876155 569446691 905356486 949883786 896148893 780704560 341199287 260811739 791046733 918890443 819182780 907912541 121809826 596189775 882277974 267289777 875929504 367708472 906992376 876721997 817995983 857352107 797733044 714533782 332693991 968162866 99885371 1632991 727420879 829395160 207210034 927669150 583561589 883545178 797896522 622825054 250615978 817650919 946068670 952688119 822438650 647234110 966008654 875087615 281890374 329213828 943631122 915758151 100910675 862574830 435917950 920999797 427514570 39477578 922321321 992940772 81894585 771036655 662031535 738589942 161126275 784883431 366369381 894387206 943559025 587131123 747760470 234051636 943794657 744291631 450998399 268233747 937386271 8279642 638536953 872405590 941534315 876387934 887986610 362858657 228060014 379771879 841423757 873778144 978942901 884204160 177596632 954907824 875285393 801120198 18835428 96878020 978973611 778645543 917106627 983921766 365592741 689870054 553603689 958845788 746935865 467312779 706718750 194914014 938034571 913213162 933917870 137089381 911865410 772641776 954968070 555473636 286650745 986865541 5779161 943340705 990994704 185328309 997342430 407733698 807845198 883734842 562114455 508399422 963128915 851624169 799187250 743639255 997841707 450887526 380760813 833124989 998994755 826650956 784006785 358392691 187852273 700063247 756374580 977461790 737020247 354756698 937343954 604450181 601632489 537524152 491586531 973708769 689910991 341144327 761889024 63916117 952433654 198141220 176351168 351258308 305213279 388652531 530570124 785129734 591305958 244137679 947791962 797770020 278221365 249462082 260018859 640558375 312115772 558192801 836997438 332646903 304099492 778993957 520438349 981319099 295061008 551577730 565066346 878786414 635066225 216172317 355785266 961709784 440928908 397359469 164984241 775389483 668155674 902761722 266659894 944168152 887464689 931069373 906480793 128177924 50277687 478283079 70991201 965290107 618864371 379509503 899003819 192335917 825446272 927981948 294810347 421991168 715914666 945926252 410736431 801368049 926216547 861734640 757467310 717649638 797754603 479693317 587727651 836297767 970666938 90887367 148792873 644839104 923068211 672590251 814763639 878342016 895540274 935689927 616749849 739849418 17433329 230212313 980348171 346786800 853387563 909420479 751293592 351228942 861193813 743603206 574762998 183375346 741093958 969967714 677897624 764031062 150799736 952867806 548545109 893895715 282734070 994262429 557466331 967280360 982716768 619945388 798760144 168238909 501749510 941371624 74089493 961702353 258178361 97672594 236871920 944205113 324691239 587980679 555186289 390921324 551273082 123865522 105402882 131286916 323328571 863843995 987968852 935375892 925422877 470140563 888018527 315678746 402377201 797601031 171160206 948378728 978852447 223223343 963322991 890930730 162395994 737072500 43000560 325917920 155288369 647082906 613468845 544780257 659423179 945515314 688166681 762668899 861698847 359418190 512235868 747345204 316770864 898062352 893749042 861624091 977993233 891948999 184898463 85520533 129413667 969813593 60777663 160781720 702318194 984661378 600559645 886918119 985456713 378946532 405632555 305295656 165013120 871454324 907818843 789338849 800261758 911679026 488920988 960155758 340136601 294251265 337472860 926764383 979080090 372914020 319334571 809296227 971062831 56949998 754808858 255422702 665903737 951845850 6981432 544397236 130972557 307255993 951056485 857708822 953271772 913920885 872409998 800707701 686942458 900588108 520063884 387504539 19055028 379458584 737020247 414815078 651370796 695738466 810073136 963352645 367606425 876068254 405835507 933350354 585025176 894497530 431089784 708148211 981626815 412533969 743500005 991761265 591370675 351314085 342579302 886494816 136692625 868045928 986733933 936672488 833348394 924395956 764064646 861928490 557979402 709338760 971716446 853198430 973573313 221298105 862377881 857780290 691670588 774760457 880435349 611333915 886316190 905590860 862438236 981782122 261776279 955852607 276265278 467549543 811425788 22677949 506823157 475495703 205756958 999726209 248748119 858299798 773989724 93581735 918730855 876443322 551108872 853393625 626704054 777241929 171668073 981688244 766186464 165563188 210596895 831555825 576973950 82268653 788362344 910543307 173842276 912247127 690567548 954666002 177524889 976524539 986436540 8520875 826911013 754160674 402901531 384198816 980454040 927946135 19948722 452952122 829558620 924257789 796369910 932452814 800410044 914558860 795515374 35993238 892677587 926330831 992488264 900873926 122373135 315240419 901195401 393646609 829657662 983998292 555137721 573004786 404760695 346831341 523935318 251418522 160232603 924596709 786527157 887964476 746133412 926377881 941951739 961074061 320473776 728822835 23116857 829146949 485084443 328701517 378398281 559463099 388533603 833071072 569276981 905402339 452761790 680137332 53787201 40207516 524428066 196094319 37235172 178210890 864423721 834251528 969710989 226121562 740429569 887557692 936299195 72124978 763024291 743065801 956499140 559529217 614900159 845452243 907042137 460821560 103949022 787223433 741296830 737020247 874625272 627746550 719565250 319734290 394424511 738973962 974962173 692453883 890355426 415609858 486092186 756491784 971906893 926913520 568105718 973987868 192828870 756550044 301469845 214192122 903159914 912422730 931707104 630324960 393859570 229485646 753341670 836510812 499697554 969378455 894672465 940772602 16127522 132880502 755832919 907372652 841831796 707066459 832575473 202402660 224474916 921326466 757812429 79730065 26758161 905995583 296992816 968944203 950633959 890824006 763786369 42525062 778941013 972588289 913836624 913001452 339755038 737893336 835735693 809014749 809470365 755937011 976520521 47242515 846276763 345861003 931754934 963765209 934047901 214518248 955823165 161680984 725885247 124691932 87632185 22889258 479750325 830168134 478822664 957590055 962161765 338798731 988186677 809342864 115264608 39475381 642754220 333139879 881961037 348900055 875560171 74752544 61722508 748813857 947202781 990543005 16707471 191537006 866234743 757963095 190668787 42760025 408571970 238014812 915298578 47769202 969474264 846833446 740672632 986300826 917658354 554760965 138965667 757185062 803518128 343871266 483536707 815342804 543850107 949705804 993642050 588982322 810257167 523352327 330198230 620548944 455050964 830364759 87773126 967957965 840316570 680240959 955859916 878430867 987515125 794319279 362123504 294532266 954417749 738827320 572722640 885940460 892511220 610780077 532627488 785501395 507813145 498518813 311330064 384893027 742452956 266474547 939542164 693995112 367357714 861575538 277478432 928078486 314009126 158260769 502155428 708409090 728213163 453897002 89783032 827231010 995554606 480300467 224055231 990651741 219885887 676712946 910485081 872653872 210022550 750586866 471738829 836746805 590568899 378321865 340661417 769606075 806255983 339342789 439848702 120999867 464014948 200317333 865523345 652610664 893523810 345487863 90697567 743090171 959550450 597097241 632960318 312332841 756092783 412494393 166970703 946281249 667852010 819308865 669062317 210875530 136519973 544648962 891847803 887539621 853393267 553130764 409495313 806440914 736934484 579391920 49557943 687578801 924419130 255470616 647023947 998032457 759404521 966345664 726709633 281130993 306683099 791182670 952133377 903754497 915152256 942780406 884537004 976490275 899586799 913217612 768660471 854077331 593552123 657075765 949351798 953020006 92971619 340323769 874524642 802773061 420107688 15354571 345937856 582932370 778595877 48044310 783077703 303003947 700498968 202889916 741482058 985002858 667748874 510275727 868330354 878368377 285334346 996567363 809429438 275449063 909786718 336566743 288595110 546541296 816898447 884641828 892101411 182328581 451333614 399957378 854423801 135288486 814225735 644453315 835728223 95004682 387584636 530220715 613504137 905193230 827947169 854776708 845612394 989271064 268829074 871846038 851925945 210368762 931792161 123817490 787417636 806778250 867662420 857261441 828593113 932829298 212208978 842934924 157007803 798548916 752632994 598850642 826406100 453341932 612731403 911433729 938673660 746392983 239940804 61947631 973752751 936386564 809804195 811986881 905914312 957357795 121765837 827415137 527925090 320079534 93515875 774565855 770969096 496332931 435314521 230835093 849409933 900231981 799080897 389611777 999363936 780595852 997030713 931905220 325638936 815408442 473163469 874183213 839732569 961868015 226575499 810807164 576510840 886687103 835052206 544769620 801022643 805784033 884028823 962463117 763875818 321989499 373243450 711862704 395604487 74741913 820419322 911239869 315831669 324664959 44612012 819825966 9561533 400283278 72185716 767715664 381957988 924959838 368909213 933417111 894033548 841179510 519339095 274324662 878596663 380902390 586680524 262620372 791387091 881804530 180697770 999388262 706391575 684729432 287652701 767616090 627270508 568433122 923270394 87277288 838412291 953439216 141625468 788178691 872239875 811907605 742487047 760749020 995454464 929934785 474507224 866020253 152037538 843834552 305265221 534907274 977959627 932554976 871112075 333382821 872947310 929896400 888375198 515349133 366473242 368993945 978867705 35225317 862485926 836359942 242592104 970319299 727381674 823889085 264804286 913731641 707732585 904789887 463812261 995316552 268986921 697148333 918271033 116825346 968150646 249854793 605589607 935432555 857803141 779914983 907130244 666772952 847965727 841175924 20901707 838775924 437908512 837506689 881429901 171673160 299422769 729952180 113320519 874734834 177773896 913526090 967843449 797159630 698111281 328514998 980580644 390389110 879208666 249679979 842767892 689376880 631786118 943762524 779603278 198457419 750651206 560941944 855723360 435034357 215090410 574262053 802732201 515083613 466330460 18605317 627316322 883564020 813469875 305665009 78907767 737020247 528810342 485117365 376407853 580603209 797009691 762096178 100043920 46078826 186025918 862953928 985750873 867550992 524110369 168427011 951825591 665223674 506247164 948015698 931036800 765102817 330969929 537214157 401750236 783951085 528888285 264654228 265389875 927320250 873926990 455578464 33674624 738183585 383757610 832133081 987452576 987393574 366650598 518008225 611133936 551210123 791437502 936654212 314822635 947973687 299772399 87764661 751925123 737020247 945826923 913582407 676739977 653313566 849598787 295325422 840557633 580551103 743219259 407448440 390247649 267229595 805554413 774001671 790798933 878663125 56040737 919679966 509051527 774929088 337302964 62349665 786988552 471851045 191798580 741516118 622621555 956476744 452139121 653966399 926066288 926097562 931357103 878270014 340141471 406233279 718112614 832545879 859632794 960908467 858305742 986985173 786737743 775051439 175266554 998308205 920261747 491456946 945542158 139930567 746226890 54010246 946511927 950297368 273722075 806092644 884294342 147312020 453961831 822080928 343091058 957661713 851923811 900138616 363638159 976153972 855902467 909580370 562130901 860575325 972650533 902258922 80434214 841266481 156708055 994037293 563562075 692118321 815501254 191087775 80252863 996616066 817207846 777411158 745073109 860495482 921250369 927909354 971482168 952545586 142455529 981784789 729212675 943876525 421890329 752258911 804106568 175295357 991339165 470897011 177835853 51825711 853173408 962368515 829758361 764162575 977489915 210069737 219772744 839338248 382316111 515777173 38830079 443868609 826788680 98351289 932461423 974496971 118520264 558391958 990134984 881918152 343366040 981737441 602018215 811281913 998432608 581851439 826325291 596343018 802675883 762632003 173234638 217118128 101569354 705700122 527193860 748034610 968994847 832133733 634274195 857512574 190094059 629212792 765101505 861559805 105147672 919854728 824328557 898196872 870564655 168780380 722385311 781629052 60511254 197109392 418634618 229777992 350739228 18421497 853636177 918176735 773236448 912011163 23870689 657021332 758564182 987525051 96830259 988692795 942752593 963506057 908113846 159038174 244509878 912472162 981095612 495598364 978800490 607882449 579184540 519905701 292096599 591519746 244627066 71818647 956837937 211612887 380376872 368963673 859116120 646897605 937451347 107679461 676768995 639496595 491373530 984000141 878390674 876987904 578331498 319362890 689827294 198654412 621343777 849331910 960641004 939819690 935302027 937515731 660305103 767579644 18648075 382150052 816825208 483767242 925635680 691323207 756292863 571415102 941089320 274834475 18441152 264015671 680519807 573283830 440234593 58802771 836063323 542590224 63841935 994985864 852583722 766773960 823494410 753306207 737765429 995624118 291907160 192007547 439527129 984139103 887665371 699624967 855710595 59161616 534093714 924648892 887517340 127837292 62527710 622215548 776760645 788393671 952968755 360486952 994425993 645906532 87661416 978664678 813263870 37988720 931546836 537034531 762688315 344139932 755246477 827895726 837413742 802254775 978870565 256116677 465960129 791319817 778411665 151138318 937743311 755780570 866973904 894620384 399387857 870297797 556015429 799336992 120681344 898164990 239898009 754128033 199935022 610702700 878941971 916251364 86600035 311803326 959875912 766655512 527636346 303538397 288507385 987841509 786004894 266550317 123674617 563543406 228237117 771968881 509041099 738232283 772937889 738509842 360232397 308013769 881879114 797766884 985117010 743259796 912826423 634848230 750940689 875875464 388029212 605969563 79339278 809383404 848641478 815484130 465224734 61270612 778623558 402098879 709065525 923186477 780983878 955527734 805028837 86031741 29337667 792537763 751301162 203790516 780551289 790787030 969185825 187158273 872674270 228308661 319023703 836485243 297562977 875987409 744469075 897490259 654305693 467570367 909746026 302815368 715235739 906724104 854932549 327905485 243850839 902530597 953974954 979812218 169961832 55131988 959102013 876905031 57259547 986212759 465463721 719995875 672322385 806941424 760615295 893058319 720844821 935506379 888983954 949424315 533345407 742675879 284524732 633442450 839846855 281652554 35071959 759544337 213417176 214053049 578288424 445189318 639952064 868496214 879385059 569177059 852173623 21545000 248025629 102994610 410423926 646173313 379717954 932827341 487636537 991309302 682833424 260627971 213911293 716939286 424933543 632356316 623282681 227527774 28422127 335025967 853667395 513107856 832666417 71651535 527038211 737020247 838936733 837974748 890561885 377758367 999592740 76233565 605804558 262171639 692176580 827650171 270109766 799757815 345045398 20716674 61219763 593136252 765976282 801292938 843442145 458327257 818398560 910809378 923812237 112592120 897433358 636239027 772428091 275273879 917375402 645716312 878338200 7025348 917574462 267765905 978050751 145054757 989107247 620537607 23783789 882120250 759727383 25606869 595896957 653701538 247968279 837038607 523176544 891382686 969718425 898007203 66024478 193596215 836867861 702650963 214871285 67227880 922784419 814950079 397339523 141540518 500357134 816436487 754656087 758572238 328490089 752659836 166953165 453244360 906064927 752890807 764524170 868846794 38646821 793216489 137200052 237290796 893541839 471238688 153999967 954900604 785017886 565595144 429131009 839804929 889855528 762046665 351749541 834271631 926933417 618322212 715409015 945252731 29397660 821457213 529485310 973494106 180151191 170284285 911014053 489852397 565128021 152242267 205318058 571842055 113605066 634301520 565424877 817349471 747108290 337894354 129497168 502526131 985550473 357954974 234232590 274252156 97006430 939615528 969536214 569614971 958973993 194388043 132247086 383426994 151795324 737550068 787579317 987329940 824860916 549037611 917877681 749408899 183702176 993292941 256904037 929142864 540940325 940256679 881319797 11045791 92353979 793116869 639248064 208126075 455056638 72190768 791256792 797555568 443288883 846347304 899609778 58112696 846367167 736185080 875554850 883003710 969083396 265563207 419085844 280890894 42058375 755906548 832146999 769582105 956601393 373727346 25033410 811179038 95540148 864067165 937311413 58923858 830233819 952173450 304605574 884595913 751614882 362611628 231510788 982395263 750054845 849048901 34337470 387448691 854986850 811037709 112676687 998479120 2058387 11306023 738615458 994902108 995558891 313501343 754732771 186990245 811089744 845345378 378648301 968912910 959384781 833602711 882224000 924896955 788893717 331237801 182745018 293398949 109391512 820619202 683141700 799445788 392517344 127302948 626756704 818438243 855700677 223241055 770025777 869867866 738218742 786606508 801450610 844657019 297030270 214889114 151872505 970731018 886825632 111232656 926577999 935120871 958508511 721995482 935709897 776134029 819670409 257528812 852788955 835907103 457755141 362026439 906908119 674750490 977258447 855784886 876303953 780206538 202789883 756486421 924499417 204977548 900114564 143675058 306058061 892693119 214903742 106825084 774585662 268889256 437256061 745962996 969417337 892917053 354263974 877128133 919697534 405022251 275600294 565520850 169181198 717898289 803520248 794349238 857568696 744690073 851865268 375839826 884093987 606642668 6139406 688659112 852606920 356045514 8593330 519029893 105104068 875078421 203293889 737319208 860292143 515854167 789035510 519662882 257625330 922253378 865817099 395847067 766292509 21418627 824069842 797785705 830546091 785075934 453129109 853885060 860142488 129725579 377624835 591802653 829979455 803036193 110503514 798235198 626517247 530898707 935869520 834509318 942908119 819323734 663255066 827755826 37808527 604502733 936943203 74374071 900110122 897973768 902806063 835575830 807178876 938475017 533915888 13312091 861146286 511950160 938721858 330501440 990984893 16715451 972935915 480775939 702032376 713382273 544609324 435648113 232596621 928683833 806282324 345109167 926715191 983549343 991604898 995302098 950282339 668654692 793577646 918451270 266905583 897604331 855664329 393490052 932460395 606184460 634823178 362763839 994036547 586714802 872842671 875314819 428815989 929585003 650519624 44922964 648595036 810264375 313379512 793332791 737020247 821804481 791338548 481077938 64556645 517036597 31982315 798246043 552220135 771458639 854168576 533301230 493961000 860045700 887440808 835404628 882698948 789243242 690073785 914656585 588702274 482024989 846732922 306566491 802385520 754790792 748979183 221771654 587162785 319171096 54089287 234973664 823745004 167818270 673434234 835525641 131436879 178367804 908044432 751305893 804363669 754668581 391584237 264392664 975071399 848193484 800461366 428336195 98330172 747802793 790923605 787458823 408754262 833602998 940811423 290688327 726215273 419595703 680317259 782145553 736321430 896680663 738950782 898969799 907765646 624530570 948138170 970026440 883532772 846087971 230413385 941356236 843980786 209081625 774579965 738919205 239761292 720619739 925045341 459356429 188679980 815004779 799342736 802497081 277486105 215023566 988401649 728860749 554708537 900128621 992944885 662223153 94091765 335727767 832355709 105349123 241355957 740632598 581594298 922927309 364284137 924457379 280055784 72067456 620558503 881072730 738238566 631320079 689826864 916110605 703706697 978875023 796600408 522829818 896392293 907579914 985591319 519838318 342839060 756817832 857471156 597426646 530984626 920396546 870076658 755222560 112000029 674604781 840727021 4383667 336692055 943683346 757780202 974493835 95388313 250836112 654101141 781595892 491170768 141428030 176047914 615054544 698620434 842146333 825005924 252370995 974400793 303510837 112590650 378667174 551570078 810931907 872221029 583245044 82031680 397359619 680250003 650051778 287758261 888342995 447777171 859986739 801759458 811387055 3666224 207033186 112730481 903463650 171343990 379478245 128611640 938947137 938482150 802949702 407828499 566674035 13275323 639363650 20639319 114875492 918166188 758542710 874843206 589985887 888933937 927056011 290886138 623033012 532353660 848423504 474612761 327684843 64489279 536281457 31594196 113349062 839850332 470562425 281441498 294560045 444430086 890476580 489158405 780254757 637476244 883513508 373979670 835833047 995607169 903903952 969494508 911848988 421128450 260838895 260037505 318027649 862247035 804235683 926157539 967944240 911685550 802734419 979039436 813170482 496317479 246760663 927688826 3875629 306160609 111500705 417610366 683150166 879552943 445368770 807881088 421800540 932299092 716319547 957866901 673363823 909522419 637794630 990071672 544552897 236674101 904635004 705174856 650184571 105336025 121949255 800378621 13251889 672695864 548812498 25065998 28122852 604047333 126569704 842193942 92665757 829364041 518407288 669169466 779347934 189026205 86843620 969687238 315597533 664569492 884280428 345995107 123639057 470734666 872833516 985959268 799499762 935727977 379990749 534778129 790958033 888994155 672861890 766979961 286905864 982818869 893344544 639751345 915391264 96087377 114339674 524967520 652567496 917186132 918058319 222752624 659207942 499693263 167181073 404774677 410501780 772224959 928143763 535296616 842397386 495195526 852028943 438126031 467950583 353086077 944679016 352607608 984245459 741283427 798755675 101455885 873539520 929501576 625092132 821461717 605926479 740130348 132371802 983084080 805351487 794356786 13485846 583772054 549759889 984679868 19202175 935274762 731102358 453416696 647719021 900813059 962326458 176856519 895414104 571540669 975666689 918902793 402699520 792390641 855517557 446331609 363704005 12002424 389109951 767838920 859576514 443750512 143118941 385422892 997107018 992923407 801188967 885656381 950911195 515070719 415310592 919871790 465999135 197398514 315878786 370480221 309419662 825772593 180617763 338610108 338160544 716226071 76519791 591077382 814143523 908378378 364759188 896824083 377375741 360117545 81902070 888382652 933967861 769925532 634313360 760188629 170256543 944947183 829736852 8828197 687930271 344778514 450287455 142110299 775158766 350791023 983275909 994354065 203803299 977237087 622882381 243711792 868084046 869464800 198387884 682407717 822090994 191353961 808180454 885023847 943855500 331222449 762823731 816816323 195450420 440334717 875090829 945955434 744601401 702008175 750947587 526397536 661221743 566732200 619232303 491029122 784524522 568725080 278590535 866452674 398080330 953582363 99642529 210524543 451170744 775161566 154146071 853063417 74954433 696588024 582034328 993153396 855135286 364845548 984813190 782760521 731769419 969086381 349191171 862930462 51708488 934653193 258427383 204581747 302314835 11087010 770691989 109701508 226809041 750763408 9314542 763020170 839257572 951507801 897396542 987236340 155691902 503942004 981408657 612276008 356063634 340080655 875032606 780434939 169899226 994856813 853177687 334417270 926688401 629213681 545677916 737020247 675875266 348777627 764320070 898857528 927203979 597209697 777216890 914594029 110292616 529293281 848778950 968198160 307292611 554894919 123845769 854753795 779634519 570792057 77702820 91573737 928206056 868661650 798812615 873076359 325145374 887626756 841321161 554530280 938216154 701397953 935852630 40317591 576370657 852209554 909768609 956464300 897640704 804868967 59704902 768487505 601462513 703387265 857261847 248797152 559360657 917618541 139161624 671905690 468634556 268113272 149789234 733361989 665372325 909786415 802987869 114803887 177202033 978043218 963612539 503319212 188998445 159408865 592190943 349564868 469731433 335384243 809803455 311265871 876717748 240972035 15508266 850086732 645360359 789745630 617674189 636927573 888265785 763764309 449500047 833661606 604166406 986350877 678270643 119754027 988105537 455987358 300227363 749189556 739088005 791344434 866326328 772057697 722744406 365709511 925927913 668016119 972538528 799521770 500865507 954829171 125257661 522139504 127010319 453751743 681294368 82988606 918998027 562939131 534277457 411702290 590397122 538900551 795960812 479709480 160853060 938082215 914348553 873323389 919570104 897604617 649752690 868541785 972526862 478632595 591703706 720277431 350728455 786240139 878760677 858073360 351723715 953455046 175340972 922708379 807848236 421902890 458468989 638620135 191745344 361354380 940032975 940080010 392576591 799504817 833974708 149098062 682697093 781461063 700370277 874493041 817282170 928892714 337648898 466846128 150854685 129066771 574188450 933223548 388604470 905035453 953288273 814210428 652967717 882618295 982813907 876121858 48327386 852716534 623608306 190413268 937872071 55873964 428495349 972212162 967379999 563788530 292734409 824794314 381378883 414221261 278176167 109093390 974710712 626412381 601099260 612323885 158593287 800124025 914947024 931215805 701030520 917979334 32602109 778636704 420659050 894956118 709951536 851781449 841823991 953943718 964734806 829692949 800107534 98939438 980432420 994922203 797969486 902800881 126169109 936521974 982301897 120680721 237719685 883613852 975767249 938495815 915826561 31265181 293394409 802784741 781762483 80829266 636060824 862383932 824631843 134340495 870155487 565163452 321881466 855735014 298994464 184166971 402078884 802559039 850629484 376449547 758558913 813939312 227749460 964512610 728162864 750533505 731551564 453190823 552867086 782361647 934593616 41324794 778846945 819456039 966289801 653140889 204517066 939333868 145271351 943342323 887245106 289508544 272851311 95515780 853312885 504766936 804573489 794122240 964407370 862784308 523590991 27246821 933620865 630097514 878300815 612079311 57170813 984323533 876421362 741508136 90871937 807279671 6633793 110716622 192194211 969425125 134994418 543896173 792660076 291504532 788713389 334575879 444507745 364076436 981751060 402274071 609152292 756982939 913106448 724697798 120285295 598665018 147077174 458122127 780828798 189263116 8013284 12849229 826788491 549605750 309303006 893332771 964767376 99096934 832301221 247963141 638178807 864243211 766563562 750759031 853303847 145634822 775681847 774792972 732036622 547871997 965363379 943112582 803322108 21598088 907508885 211493010 231050323 112478291 379642307 842656199 2572541 761600245 848486753 451255294 752762377 446542912 423432509 227923804 866496221 666657545 167025862 733543815 877878810 45116689 860018445 608331918 920325112 251540958 373666529 925043929 243497361 906048443 807891885 410605041 7480922 444006546 80314206 170626769 933294620 78364430 998339721 338844036 759970279 832003314 80100094 639453806 719971671 327438544 572115204 516008961 492728876 950878980 66112546 583760932 289414519 85554260 742899527 94856777 962954936 744188408 94271840 995108441 367151263 882514810 858417968 904704123 940768261 883743271 867175567 614547827 980550352 765919088 167609594 190411389 997119078 614575791 939962151 556523047 240761885 564048001 943230881 50733144 338936720 391887271 534375081 621166037 632811867 498757170 750477858 915227805 495926681 950915003 927127163 823579205 881317549 498949906 713511719 439461003 940141778 150247885 239940154 101630859 161906732 365702202 551003640 814303231 730201825 591614698 535053235 637150058 819350343 344897337 237680567 610916005 430678614 266071718 255310176 188687966 602753236 944601507 351522924 744287866 686753293 689888563 785268285 708579416 785125338 758485729 385341075 943024992 68799355 755090126 779104266 984074095 995030361 798473829 23388369 749166447 757325113 721359823 791173846 660025340 691870795 952162552 6341577 773916316 152833776 881969056 369114502 144245512 244503362 824668743 187615885 943594476 860264232 404968503 392140551 221603748 784401891 808743819 466896522 540694417 405503348 457379906 972667672 43121802 897568272 700671604 825663157 228428322 368884008 548353977 355837379 55162036 891892230 872687155 235976421 778160047 988433236 967333736 678494586 900928594 990967142 941598260 301584750 766732786 299507966 638449147 639859448 954101846 758876512 169359923 311731866 327764449 912036209 343611756 396611486 872496649 943834504 734218400 904887246 820991309 855073429 404548959 886743847 693996936 865976067 808292843 972930528 403288246 6586942 952280436 799040517 465936012 247890724 368003038 824866381 139425416 880523200 268520416 153369788 833105364 245700439 915666532 753875589 295734142 739275230 947689889 501981024 203961027 824866438 795502038 159404859 184517451 454150808 503205438 737282146 779238341 402118880 799674136 920796476 907448769 719299306 609163053 759370016 919440594 969287105 323321612 512689463 869955702 911332631 818917524 9365931 841347393 736862498 975341451 246781332 753949866 976719907 873002459 395252627 935409796 975645989 400958610 820826838 763825261 865778260 818502652 70230092 968407498 921277192 242912213 481635390 860724247 477627913 215367933 493976200 413941655 331417431 782590374 983841505 546599291 792513232 900260731 969063751 956590898 781200440 849411400 795854422 910235825 887931091 857449633 875432453 268342783 634314963 781474530 242965016 698681289 617633360 343866681 907262708 731401975 814487744 20880832 72013543 834438847 972738679 20070207 964674513 132052126 853222791 780151804 526865158 692710313 498283030 740100581 567597819 938764389 393689442 689812581 822671720 658421757 154720829 969516710 820513001 756989484 828110790 639909916 973893118 625717322 846569320 673583293 694930783 526380126 162762803 8531329 310604021 906774753 941350021 184525179 991761701 908555948 986465398 671251545 634313760 661952638 311946255 947272307 393772119 776264528 970142933 973073362 387509290 881133649 203192692 771087951 543570502 741072162 980399780 989460400 408431043 737020247 28595533 974655670 218193867 458548269 686443895 925686614 879990064 454142386 839346692 926074213 976716698 941403916 376809654 956623437 730659882 930429879 856589830 838808307 41582610 775868879 810139484 561608450 511013475 995623321 929155071 870689364 936509046 626623870 770046019 848188945 409515260 804211095 660039192 562268330 883631835 947691802 754068073 187621230 473958658 952106762 55226045 297258865 953820381 728155013 426437921 732235608 804596895 213460160 606383822 360073908 50437074 876101634 843283688 844931993 999894062 152353010 904117943 315956792 982203645 257376606 863384063 258308493 146823343 898194045 803256846 864197674 976428204 340936730 776829202 36240105 828600633 847478454 584457444 422070890 956437071 105270125 789716124 803176784 956977309 802955107 604377917 870939615 894271723 533741725 968189061 850151541 974852109 453741290 754790099 878183845 917198739 569938462 829316612 50243221 126226854 320475014 959257203 439718482 318483005 524961932 585930230 774490531 291576685 899453176 11235463 805125195 961644730 740744490 295884566 362303088 851831806 540267052 332848441 173613482 951952839 887879010 889102653 351426400 840374764 493988372 365339432 674683187 856503526 361535571 160577859 6407778 812514359 794076351 609352376 859420450 612941920 992429820 846047920 683947631 111947964 60441077 208129176 840820092 35464912 793033510 36675391 873694351 318283232 171812666 468930289 143926995 617608832 282272446 871136675 272729278 71763920 574447302 721672674 457297824 333960664 790249478 852472717 744264614 985838522 583968633 95472696 916811708 496452483 983927061 847063472 371256377 883246897 438647219 376385448 948731778 765856977 411017776 138930728 814384409 481361504 379206934 160094324 173829763 387512232 588205414 480219083 819299496 526415993 914639741 938773725 698182618 846064328 994857360 555954264 59101902 825566376 167497830 331852579 989769923 879563648 872275926 996996792 933588755 840995887 834098593 965470172 380632038 644000247 9570169 962669414 333943340 817894542 146435244 244004892 813434600 20729905 768014216 461864468 483004367 880046572 759468625 836752734 453815906 563062598 617493529 743553088 874572412 950423572 785132137 42245600 220015365 926067981 770859297 976382887 952436148 669096884 431677000 768929259 367156039 890535180 125545233 987054691 706972893 605558398 771276900 768106929 769051845 775396638 923633374 815804693 617719907 927273000 701439340 790668811 819546992 977095111 273848139 313016906 974579616 890798606 406369474 148258103 879530499 208954085 885417781 332270289 992230111 900788193 671031287 811354072 583067288 996529427 922692556 993370388 753873116 253525153 870975868 983798415 376742591 97617583 778640851 740317394 929889073 963227372 777903026 588273507 152303210 594675879 404118139 202425347 685482578 364958122 601266005 833040525 873900897 925841011 806743572 751575515 146730368 941970057 875509514 771359278 792593682 654040256 400480800 499105077 229504010 842473008 675229269 114477067 483188659 927490913 452976014 495457882 119433739 959777104 101713380 164418891 645827287 852219107 487075064 767539155 848463481 904281494 711550256 806817438 397522084 905239953 303538744 757328724 964685048 846369033 539686621 590287255 388752981 746297324 784710728 923973948 892984012 867038738 858350834 45624908 944108204 45014741 926397658 462790146 620207070 745325955 798113058 904504154 984860876 748124880 143650632 949017425 349988802 869022682 802857401 779415125 130860313 775680762 807481944 146956162 959556136 586075856 499026598 973171262 752504340 750670566 464771364 787037125 939822717 946972224 345373661 269106005 647015161 327240611 779007113 11297872 338454757 572597629 131592484 249281137 873752363 811352940 653760904 532310270 874096245 784236603 901753569 645742998 938400124 796172657 735902804 398935256 803951692 990835909 999925756 806636018 350708188 953776530 900935333 830475734 676161470 88181386 69995427 922090442 933508478 744987601 942522023 952876997 698920834 643363247 278332934 131195604 768097902 28514694 128788963 806056030 10900187 11297801 482573937 564802225 599688246 867345095 843627802 495841818 728631262 915626845 647068097 860992321 811491925 931579280 843898120 860267577 319762443 800292869 999801531 46392438 783165516 927883808 799318584 601961772 819905832 923836534 789870492 872236652 800388834 758425674 399837912 923277259 382119580 3024660 805033991 754911708 694331664 69287639 947848498 801350455 43146012 634932343 449052992 841902822 872927972 891845567 917919759 904051004 458323917 760552733 503824418 489617945 911976436 171904651 778522183 802715332 825957881 864678072 929523062 747206014 932099640 342994237 842283903 241919679 578553302 152164651 496124381 829214854 289305742 758541950 542880752 893055897 825613478 649186730 889251621 811911665 596392581 775657355 747101928 207745705 334163467 973675726 819873506 768529951 12002872 192709114 914473123 289645076 608376762 893623935 432584181 651676051 493220807 24296135 299386847 672250616 103202307 892352061 583802738 625924146 914286630 852075223 865348123 795639002 851752819 975148278 937117865 854803560 911006959 959294979 525838391 980827612 965167505 703691552 898725883 703558179 128897415 406809127 357184747 921367707 197378136 953691268 174385491 772637248 889667615 781573584 985361669 47187651 969349408 865088648 704973736 383111131 341171575 912686129 925650678 958690800 615777251 768822497 845002169 358612970 55104259 812910525 101392346 877950310 740913913 283963457 554522537 990327397 874257668 139366301 87653423 838454714 850122287 40200656 56724795 340893116 994738542 172529400 967068861 878001676 908708704 369960213 579927002 895832590 180720859 831293021 950181574 639008590 2872944 700999512 901756916 592629892 369527143 384114312 172560829 773863828 980702640 904265738 601874638 869856256 321101087 851221062 886998941 430119773 304133261 358633824 472692280 639400031 916661465 975097567 903385187 369254239 757379893 857387657 945442586 705074845 941679655 832601206 841270550 903102438 873138743 875847371 749265052 796982255 587360574 665993371 182935444 238114336 962991090 359733444 647916948 212413221 806274124 46099932 654614306 512534089 995263041 81305888 921689158 630599528 847307681 632469996 598207358 714848397 343652430 771484458 969666050 356225124 929392885 445631452 532725266 967149910 934537003 764529440 155789882 889719058 246912588 759454952 842432752 790281875 913787400 63379722 688430013 502855785 240862055 41498834 284061470 950321644 937150129 335512088 230486619 984728439 819482474 229238790 901104106 517032543 491084652 747399868 988406352 197560567 733983573 943600199 885849781 900107410 900377341 907188916 260615629 155140739 158152269 744689307 781379071 220350598 214451267 923814875 294522456 893033410 882084437 189148384 346242403 812034174 861508001 912184077 828456408 544668668 775860218 4837680 651115270 236176690 859667314 282780162 884048425 410828833 814824527 900307203 386621530 761956226 266300648 738778237 766548334 428095847 441753869 818620988 951761143 833935050 818788012 396263334 386237829 234909847 934324936 955333205 606149383 950836689 968531365 686650486 895501514 870413231 781468308 933650962 31452496 180873320 752674045 56660135 285790725 50889830 158326981 751005271 96469822 415199338 770868441 361890769 195267395 916393626 966494208 881792533 954555754 706226312 784373709 443496560 755033896 695047225 982381952 734388735 922688881 652077304 917519945 305624375 854141273 786857475 618091616 70467752 795077571 13525012 291046028 460874235 440054483 121816108 671551151 370863569 326197424 732320543 899175232 715653676 445040988 539460452 86824405 969776191 138791923 376897192 22265726 859173124 924715016 899448803 722448286 918067191 642266301 757898843 859347794 526445604 922077429 871768636 898116876 573246038 987516303 565955457 975879738 799374013 860053968 200922859 231212195 427160187 194981506 253374306 935187865 767104221 835166435 563543275 417836891 895111126 50405241 522640871 857272758 193498025 599816706 354653437 877930607 222822829 553052191 855804240 620716064 48482608 871008018 780136553 827306708 978213834 379211385 994007466 63038156 56323496 915938396 650479754 75368837 596371562 741766529 376258075 432000747 868216470 801516975 435273156 868660974 654831670 344931251 370654661 64977426 82615942 736628240 460984692 857899024 602074038 583757438 758656852 891376211 528342849 207099140 792605221 867291838 213261962 796948251 828073005 974491721 305757568 992457630 742617093 842616136 948854927 777246232 982658346 877264135 674599948 967487278 424893251 757320915 541585264 906498635 997127785 933334958 973073589 28440944 134160881 646523097 247292865 66461649 351995676 659447865 657299067 258444861 636935610 711142244 773555313 890428304 138310458 482978649 509590043 35678275 335108823 961987621 998923157 709250591 231327457 924465759 904666134 868203951 858094047 653372475 24460384 452799836 753518044 669797603 62567922 619604018 903965841 172107862 802586050 758321648 268448855 180817150 941042003 964668094 976194191 925622128 863537760 785968217 129463142 818354545 249800312 626503499 867926004 780236348 74753815 780108468 178723590 564915996 777836898 859895840 900013910 667041577 773669973 926943803 900645948 886164538 896506277 74305678 660314939 200402933 303827027 882069658 915316606 609361103 251530763 997446059 192694205 585458718 643357093 926103673 868531627 251511041 630185587 813259411 116507180 725119689 285909307 797350722 829679712 92752567 741065289 926357953 407899439 97240142 711800540 631698701 371080393 667600000 457150938 786967734 881370801 375911203 88626809 613818156 996486719 761751423 845981796 742028227 307007347 798616018 639861890 879278552 645833212 755914651 758374595 278206279 946402129 272274107 763447855 773005861 835935769 798913278 342684873 358451959 566200622 347794611 931135400 274972507 590166251 837247053 460442849 742226891 874863322 609295812 844696908 974740999 32537823 311293270 38691844 411029004 157664705 235384741 205994039 866454591 877827615 461913341 983740466 990722947 888552334 738161531 905457460 486494259 795592908 753309994 613066150 436324025 909016829 424267595 461574914 108790418 982503500 811158447 770252682 920620919 800499763 92607741 149681789 955105655 546372035 586493610 826347544 366680338 881675216 948459440 950543558 999429429 237466759 771388085 731068621 613747716 921097672 869238521 981445918 791559339 818282119 774756910 831309377 221659799 490487867 207424342 943834149 803611533 956093164 960443336 308587190 829750743 809294648 960680365 744572264 470860959 658040023 72791112 818071226 737020247 159708664 965811590 370180377 998749282 767669041 887643658 769526199 952937256 629801346 786867354 757376366 973130030 612379731 156771079 660339881 759649558 240105017 826149628 357557253 967485587 639303647 764783159 896388802 971345178 981914558 765600437 773559676 806420874 861413695 911191664 801520162 790832839 352934131 905221349 385773562 945611385 808891781 918183915 932724635 110501518 382259966 783154006 265498457 203305253 405864894 101532339 685090325 597860145 991186291 864724058 863629924 805078781 416212540 430568929 635979688 677275221 805370436 914960521 790189286 752641081 976610890 153888942 155929946 917709173 888592594 900572086 991426077 851914761 100997798 950882209 558297708 905902320 88473856 614288169 2975998 943481287 807838969 447325810 56867296 809123629 841929905 870702795 943969145 833284783 400151511 153669934 907610895 423862022 755961354 259713982 265824986 148004613 510353460 217189820 689989650 46501719 792043669 477345870 755835790 157382755 473484281 629182355 332835849 977620137 266073825 685961095 908732054 482280630 928571776 940523823 724545829 702306222 699727524 298434321 185063798 747574832 681383091 934358714 679101048 159267924 851596764 338147412 923640806 71457436 478251560 123471285 477617502 742368057 965397899 965259979 183635607 370899758 849279535 588683278 377379245 5519702 998770455 781595785 970595755 836579480 682525423 925316670 890728289 402506434 760575673 526348204 380303494 327813477 495573785 849912054 937120284 796351394 967234117 738960887 561354159 751654713 586042505 263630790 308177015 182985872 494101841 782980158 174683661 285880519 756223597 675707121 541316458 79988538 895256189 924689288 992061223 763188071 687206059 338897754 159993767 562683835 387230065 3589353 936201103 443299111 832726983 52448622 333810713 685359905 935474658 243118079 470770260 329247358 547752601 918583328 823595693 795429276 353549478 795814161 218240386 613005268 847282314 915845601 787475373 254895689 666947351 246375176 741993943 657685527 630084352 914975415 71575396 993622791 865904647 368279856 962023098 847605552 75737314 958178683 550785251 77647444 113671732 626893377 983878286 978240312 804865343 760610334 883396876 329136289 770632363 953832968 162428892 899897847 486355953 799678889 499564857 338369439 973456953 590304281 969648410 745739937 877119835 327679508 355948397 959194614 975607232 272862298 640961229 126672356 712216700 588470274 751207552 968542149 923951757 761776198 742214479 501800072 470108730 242203652 735809712 204230309 883391504 846005833 274531734 666242200 806590058 607442838 110168133 876520133 886910237 823755027 967946214 817037890 807340681 230191751 696550828 905230470 789989995 922695996 200622889 604888286 847129721 130958778 847860053 284945711 752060390 852136953 115838878 973555816 303401350 17469024 396610660 995354327 703525840 882298927 691014561 780162464 612647922 896735756 979231717 793913449 908483426 354235537 752381694 604147834 183200384 943338092 41418207 175309728 888993439 814137549 875072293 667865505 821756851 849119 641094417 715121227 950377206 862771214 976768551 868393630 975712655 40770412 620205179 631577228 26265816 408832337 874761274 429217278 779949025 367738961 457723516 555461731 782393731 751896851 801049018 216336407 845252324 602440220 460506395 112532 352810985 724947443 867457931 809061947 585361686 610352055 414379998 665910352 710768319 782492670 805872530 944455564 650728203 824954281 461976817 38143604 959509451 357550632 768440964 708660346 680139834 743596503 403805418 791705652 759043546 637697061 910222759 522061382 333241687 944708083 813586654 30286440 297221857 856231607 576323577 870165226 944711635 17067836 352019636 495832008 165709072 905755434 228173558 781594758 953538124 815073913 800451057 772713711 260671743 853065682 135582493 833453279 522387335 318046888 313044071 185327775 866158338 883795378 747221221 141880326 191733681 213164036 53749496 541263438 47788893 700301430 907665 975233095 769730332 780709894 227114258 756129362 765118835 202656599 987314111 298970650 911462094 495054534 666392986 845675382 546792489 55899840 782888959 822995586 246998246 986761893 876470078 905141502 413604748 757607224 743415761 394527294 978725900 952974220 557200582 478466488 983312652 984660995 998247468 713664931 89681131 867491635 462018943 919572798 600358258 782425328 641050640 112085272 864212211 763250730 629419024 779555686 856666278 837384624 924061281 217605121 834263428 286736193 926662542 174057029 690413086 907047619 896854276 261093135 869229783 800369408 988810276 151162016 730707517 782853407 949476710 814766210 281806957 68147983 865679938 783898662 503673937 21198808 819232883 828604284 458848745 971629018 928111157 46170217 901403239 810927081 676854521 672185855 939488401 821730579 13038873 21918670 473987526 828009237 519095351 371355393 783884908 403938941 544228719 879334151 893905333 951656881 373037838 757962432 522929456 777521323 182743021 946435872 343332477 967868979 317999740 853657868 118079704 317896180 354069606 834897230 946363637 370600298 846497972 814108637 793365610 875433304 876467864 187114140 382895946 864635053 595241330 254674757 83069741 341746634 366216230 235035209 859539007 919347285 994357222 396183951 945719263 953454781 76788141 845107302 531090198 782385863 841779546 902417316 857920969 884197078 837936216 902705130 776238478 230722326 911420837 959807740 902184204 481237429 683130375 825730798 895030808 908208261 720593923 959712747 757431288 749062284 767203734 2581402 871507860 961583031 393205649 362269498 744451045 273486073 865740036 660703462 961340199 819341508 990024203 74010822 919853275 772926910 899845021 905513252 752758797 820001580 818862590 829100265 704467759 556008173 19298989 761566444 782959461 870477618 859445759 841563109 232670541 821946694 713417806 627520642 951490358 196190733 836526051 931625199 792137301 61828432 147692108 765270560 669411158 777141734 315275494 155537191 56328582 806591708 570197959 407876570 568573204 990049565 283047978 523411479 330945324 975385514 705668159 478985864 881626680 557111003 879329775 872690665 908144812 61600590 763648342 367618029 860799300 886189160 756819712 611704648 978019134 912433981 115300638 894153009 802957079 777700074 306650993 624882849 991201998 355541869 654842349 746655842 258406405 81584555 862160475 671600472 246021998 726949172 274796570 826455385 83162016 125375731 214679654 500030736 956337908 732751730 941569722 154849253 213467609 230261552 785153777 981792648 648833353 737020247 666742742 898869359 350874756 572508473 187024122 814761326 899982263 614626783 886847132 923114215 357197759 499735259 968446486 853153991 47485862 943209187 371108936 123361225 521515639 929219035 138141989 535196608 859553353 954314726 222658193 136920012 864932251 852140995 939069093 954193955 29800331 565431243 167977238 885312663 125539960 626961868 245313731 922149117 422986430 816149242 828635607 522305727 824196568 914260630 297180871 921163238 140087715 100938718 251081960 936394684 768797274 750544997 644773615 417129272 989984601 605090288 952077021 582815207 884126646 847875964 404534926 838729779 381979225 256885468 85893415 908857698 461242411 888322958 599491876 576306649 237084812 909563581 421085455 778108530 892004352 998374530 861218819 696932343 392429879 695049043 880812128 338534799 401329336 749391863 642068897 966721353 967343296 859136031 805466940 757863496 901359115 942871586 656953296 582539908 752715401 838072516 637754522 948781982 52242124 342301414 983174453 929206549 874261459 656833123 843866544 344285991 347810275 902674543 538170681 808552612 933598569 810911939 535030146 107200608 993449430 887666406 755853763 866252235 659246200 115083175 182616241 868068945 861361234 214907564 536703646 701883759 251470182 965670577 911819177 971315374 791342831 955811051 5150096 862628051 566804988 601240459 458779137 561706127 823019539 336898710 766348083 393010934 434588992 228682387 187823433 902184849 146453363 642451353 6951974 627133324 592816038 723300387 33034402 746196609 913249109 834837450 948281216 909961533 774387879 564520096 347444995 694816668 756150795 764835606 742677154 317126171 115331200 281580285 73911068 936158324 995807264 926926005 383825527 533181377 153196678 837557279 768284107 83053144 376755985 981885699 787023135 827043879 915567115 560195033 537761110 599716441 923939016 787493932 946494186 746606435 162118919 536403736 824257570 905040741 346344448 701828555 764093238 327474984 963964215 820407923 961642424 909821958 921135388 224958709 58132919 832248252 976042102 630900953 525080509 841389687 735504101 289495948 867045000 377922290 630518505 877952646 553865369 775598171 825730192 554324369 926063269 36449808 483208231 836831054 635558592 239191034 241938553 411905370 953571933 181633766 960475519 824768814 864067100 922909712 577116709 635122929 912548081 283761788 820360709 279030303 642189705 566408977 674834851 363297203 963372407 844800880 443700907 206531350 521088245 443564258 182151042 854835107 757590800 843357790 978770603 861695899 273006996 819267766 791768581 438649761 910146732 2102837 835442649 363909868 900922459 218809384 668046183 862227727 469662680 945430894 393558444 13880626 953328395 808122083 846246296 995971089 894457390 433375710 77406451 967695481 635030013 130905476 4428429 355892696 783784947 116513091 853575982 815404154 313428942 392493026 749598919 832160575 300148600 403653617 570351467 857572434 895957124 292643983 445739743 980086421 355371662 324048754 900660173 689643593 450078039 907713272 892711029 837565511 909182626 418539963 842381348 971731090 759196153 877364727 149939928 627262816 317315405 178084927 859219802 365119726 717027709 317979450 296868765 781571588 574545318 328173409 736691014 648125990 963591475 596188607 565949557 342848080 139361132 894270679 791194327 832210670 330398233 466173216 930567175 579969739 246678481 786877436 502119305 999073686 228903457 878619586 153853793 604687410 918131542 698268400 595914110 13734071 822124611 169008774 282237727 157271595 52174996 782840780 31769388 912894226 759787164 264957800 384373773 516562833 768089128 776848538 437922566 284857012 168602522 519192830 961042921 334309921 666293327 536228729 239613245 369865210 833644525 438322933 976308455 813069096 792455539 385780467 926750977 908932632 801001346 707283484 192667678 599174810 438261027 420010880 783957191 743043790 930822286 941141057 968865645 636501726 342219475 781693462 873931777 921064532 867769385 678062635 966649234 406715769 204514124 853809541 322826112 765434294 911756301 910283159 829929840 38262300 60872525 865357389 865765188 815972964 101088750 987445407 37605947 777252825 139980756 398644846 903852043 971949423 825422858 69812613 177992864 703143399 800637922 853804988 564370393 189744042 232360015 53883006 790243251 350975202 357051396 893199022 92870361 46107910 252862129 69434600 189153337 196598788 22369374 557116043 697306374 738938540 108393675 23750538 864097715 789425116 509830925 219516320 211732137 894134323 926694721 501034799 986368540 978077334 765697568 940629822 578951934 803662957 140089386 916028943 801067878 745416884 973633750 951079309 356553720 342956106 118218668 467445625 622841025 980284597 908335374 584710866 398568794 941359415 371270261 669571182 989097987 696124110 815733716 252267414 402525581 900286188 552308075 442470272 778943026 965365104 88820342 866766288 425529748 987121758 211664784 765299823 706302943 271198134 805810153 428609169 741785689 120548670 450244480 173772457 450498179 776897451 137384741 414730678 66856941 509448918 116323605 539114881 917980635 799764378 969235856 748312953 493154300 498052490 845641115 798010637 882184348 7430451 746396757 768193537 935719375 186192484 226972141 540840393 233111600 818196827 107262899 181266750 882063201 609252731 588496457 980520392 873793137 927844791 698846872 962083134 981906897 892545302 235560701 748432882 926316406 622104992 781062481 69780204 389682419 837790825 916322010 397744733 899989883 594743239 216103294 787293175 716652400 43095110 736474238 204682962 639744069 872676855 843562266 976813651 884353573 896668929 855160275 940468522 254380349 652407739 819061658 535518919 769296303 819938301 872976880 11919890 597745789 897662660 937365518 986838951 838227851 823421649 333314993 464440469 161114876 749797718 222909231 737020247 783643755 848952206 789036045 445052938 582797680 771821450 350071999 194526087 980285207 808066059 565769432 194707696 771178564 319906950 894112352 756690853 595304516 825269745 338450330 895156635 896284165 807827283 289336584 772758653 882309148 512449642 759596302 961022711 950532218 301003484 303902232 381985865 833228089 876665180 71581965 474326939 840820215 743000371 511362433 386893416 606434113 766369002 766251218 811335907 536916170 809460301 497732069 504188801 838997119 429236574 250811566 711747226 444429031 707579168 790902747 921078074 672957697 469736804 836777034 312439685 913953007 599744453 775926630 834785217 70812109 875428829 865074530 966749707 845961911 769986080 830635029 91132698 353619560 326782895 519421774 875997318 568787296 939652655 10212257 283766219 321123541 682256116 985799260 85207488 738055745 973010981 955919047 893156679 841924074 597849360 843538022 755220942 808212590 318488494 789563659 796858327 788195251 918368994 944922494 59298285 27007885 808682419 165928285 770851270 36939564 328916893 558071022 368708097 856149728 799101125 137649695 854465441 152706786 744203399 935769685 801129062 979652215 961489297 826892724 737020247 123227016 807241439 22890549 705450762 929730418 312099309 741908820 632919228 751680828 776431404 887171422 797118704 829245967 930612162 883041781 712300640 997426731 768445471 916369181 429433925 971849504 787108062 937807434 528356866 832141234 728213807 708637058 819410493 737020247 855405551 71611256 271128495 800544594 715625660 302188406 762999137 581547868 94028442 449834808 77691087 168648834 143256730 72049811 828038943 899612994 578447628 216965443 847065728 785052242 977027714 873947726 953865863 346804533 737981025 445983058 545750071 616950202 240496024 359275804 757640655 816109070 664626788 999425675 340268849 948954587 367844848 961605286 984402168 284557024 985782926 829432667 628623703 859824752 997337774 333703432 992608196 417433780 784937182 783695008 151828372 959690104 825908827 788821532 925895972 199276506 602525265 475100452 730917469 908139504 771326133 636025192 784751075 888234609 576340649 956137500 824845433 423259612 620320332 71220398 767867164 921674895 471702463 995955794 720321940 323537892 374220076 850529471 198690773 374450706 410813711 320434485 658274372 642750625 894620280 503870498 537572208 989283031 610236047 860805610 826898345 625326809 981432610 859330175 321441721 113803143 55399549 952409747 761429254 990561107 137186176 792914285 842304230 851471909 943657617 224538702 236420451 597956011 847911003 795477572 44884078 841824948 858009752 542771799 196391517 970786863 235076429 634845627 889610201 871838994 227650117 867847330 106351782 782071331 305553437 854918736 888492775 890686592 269750225 386726697 842085492 917419310 221177009 276484882 741473914 793529460 756455553 949707291 427505085 653776400 296517715 995439253 273818212 582843050 985211423 616225808 695922667 981001091 529216516 811233333 137790579 527955342 998952550 659201367 854468016 160945209 967883884 784421691 830893863 71741325 351093541 771654878 759989302 918622394 983327580 920446289 247579998 908163256 13846192 162633165 602990546 6142152 425345699 265344883 127914887 504410639 292483083 306451151 461367983 866004331 569035068 803553015 994547565 507844893 879671139 546472371 867135884 165092730 257637298 933109549 810684434 493349638 785747894 828256174 917291373 892269740 822223427 839980536 909564458 79688517 204059936 28508429 689386305 284796983 944177206 295223566 595408174 464439473 71342625 503697655 585611969 377864417 926772056 514144413 92271641 873502695 992372146 746670395 816847115 425596173 291846099 741872831 839886675 822107826 910884046 175735244 985984668 917622960 686868826 923611743 335763789 448032688 41715353 983908604 337938612 884545394 986361319 990248363 64880922 891578795 989232875 805660870 998033147 974140301 767341877 885514437 652942526 289634008 740672349 754888735 969631304 750671194 762301432 894014603 846412684 564735076 918913096 15938100 251330435 768443450 147720777 898847484 966349103 669834416 890800928 945489344 442145676 806445390 909882580 426958391 565176830 863882453 960078077 891559246 131304873 700089453 701471859 898726981 646450891 565121686 902436842 133350945 281834739 97316684 613600544 962718571 883681269 935288119 918609449 503618905 401364452 759781242 489353128 251692176 794731282 400182634 161773123 711127661 833342194 788707962 906595891 110935858 811115009 759869380 948901180 980159772 875193924 170336187 740426589 885784190 260275647 366738798 782730339 989896093 630427669 580816346 903656667 914078429 349905298 840815548 861372473 737020247 557108259 793992961 2381345 165961128 958616431 913033464 966490177 908030403 844704675 713586889 902425600 13682304 991171743 994363680 644900562 673395137 88476731 755566095 757639999 961091361 680048275 513541269 333856313 885946187 938541722 518647050 959355830 864102449 959789756 849719093 258029979 442663804 910598951 849662260 999698347 402780670 860311275 833720354 933516281 355979223 601615318 792334773 935108484 220808689 894426115 948984689 792808582 17134285 482805570 174540204 772973900 882585724 846549835 833790043 913555766 877303756 169795894 338707237 974937494 112260184 137849350 897744977 944911764 944925720 232147504 769642807 763847223 582030314 961056199 456793819 806592692 465600557 956860925 737018014 727099973 831778202 943039322 856974373 416528269 522426837 230121354 65009020 622450460 989176167 518959343 868320797 809646345 810523474 952507157 743762769 864982051 743982858 231364581 819381652 757492138 912739580 918265868 292017741 760407846 916011494 121571171 651157372 675622704 917822757 871245725 176117556 767235413 758865300 465212810 898856722 810124017 700204898 998216614 919945729 536383629 592091905 505154318 14020932 743190596 901936529 841241440 927784558 704184280 74062916 58423754 963337798 323164387 203073187 849985435 789796989 926106900 143765017 686396451 908270298 737020247 107147814 190259999 922474222 94797195 170130689 862173514 879126288 876601753 801977761 187848984 800589040 948085799 916347295 657376964 981959400 600722750 572548924 897757663 660793442 48151068 444837814 922342333 145167651 985460924 703158048 530781443 964566375 569639225 705974805 586939631 62632350 959974831 179821856 529895419 827851178 124540017 979534106 398591188 687214688 492685897 860413541 342829354 434096351 793861938 856173766 769685271 45331655 899999552 994758781 704964645 168629437 755364570 525158919 903087978 963906403 967966658 902729992 176184961 616669498 761771854 188968300 772095066 562497302 949609286 515543140 765341180 627574561 882427142 537842171 571645829 537254773 829144881 899874473 94027988 325000022 923856832 92277912 207663553 867453930 357312661 935660518 920950863 781939320 808666335 444699484 167441183 958154448 737020247 941969194 895224233 973225684 688051488 3996961 268814036 751661511 375415087 698685852 214533894 187312544 867182235 683213028 568470682 17874103 115054100 161056875 623582229 992416903 432531353 783961720 538381355 219870809 449312982 59316081 905518847 755998045 946907954 491973798 844667757 892357139 634069893 943808960 499504440 916272965 689287306 987427295 743067211 86032239 516627785 996684771 750057334 621136452 996866412 845756202 136829983 816215448 549478670 457412567 766359289 910066666 868531421 570433373 590808295 964451803 147376960 955633277 902953348 234739152 813589521 934988185 840160669 828288513 63782075 640040007 665148652 805958844 576256994 175341033 781366055 808792245 979505889 102708274 603292070 327204666 755743273 214026226 846058615 758142040 418702212 942635992 848022573 932108353 625124385 104228425 780320869 940119613 130012558 901862092 781832538 163825097 751485909 828967440 310570244 968029289 342539022 910060152 797341910 268907546 934365026 896724172 895541313 831607848 290864332 797222255 766425994 321280836 889610361 860645828 868105540 181657095 289295876 848773105 280877871 871333382 451791109 796184347 811765769 964012155 641000492 749410015 516368769 885260638 931070722 443458027 957957372 772268771 426337399 880927913 445902721 27560124 596741425 107115761 753575487 538052995 744984194 767045120 630802149 890509809 925146001 534470324 40352865 206219791 2943280 755452722 417563770 746938248 906008094 964364044 876457248 436389745 891797908 855829124 901307118 628339929 339400647 942339993 585160095 84073063 797957170 235345903 145056872 156153113 953827033 861941001 750399682 346271403 906506666 961854943 977261237 842239114 337216752 755659515 478741665 410713847 792570849 769416070 921292098 760625000 740053175 936359776 732213740 202374303 397310934 701352423 737020247 851949803 488858682 945859429 800172385 926324124 886882553 754777925 421466577 494916952 635729775 251602498 613734438 580103189 700482040 828573309 591486109 416038971 921929693 496767147 934747856 937336527 939984631 912235304 754657641 254839575 797477880 176125131 478820547 2689235 41537170 966487120 859079046 939329655 424877360 518855582 352738025 573171396 394207596 845632038 831709979 398832971 916014161 395380256 961310562 824644648 886831486 866588868 741151920 576520579 963863933 294896950 915904611 968927871 340542686 875575817 323776954 774145021 604518018 625044715 31999717 153002677 902472529 924594351 620067665 774038772 739424952 12822128 393020293 712883974 908194178 900049364 355636776 934914140 189329666 933935467 678396352 270749230 835009140 879472490 838031042 866724269 861014921 168723896 761098878 835058219 875379595 569695809 760815788 887021269 172668110 23755136 920179815 871257368 656176976 957545612 636599128 780757758 145691244 365493275 368802264 5334660 27620996 480488765 497241625 777595332 485853964 749964046 885877540 84277045 999821535 905629374 793223699 867084748 352503353 632025014 982863157 429276819 872912390 872270932 695469544 8538811 152490582 160451099 989870198 102323605 989983565 747824794 796401776 705149605 786865480 991075312 693718091 976916497 993286006 400930661 350223217 835729911 393357618 842345280 531225044 174927802 767493171 296235481 267528322 996656937 834710448 755849300 189879108 725482494 195116582 825399814 903232108 905052861 907253269 470064330 17751220 975419613 27375923 845725830 854624739 387552073 263187475 506019611 690827226 811700792 136091315 175920423 866036661 780173808 860347836 737020247 773617878 663568751 386264557 959827003 828031320 619919846 977892690 222142588 201875513 724096444 900020654 459339326 999233343 393757027 488466123 890344290 843588573 689779494 686397799 420167209 986270379 262163399 797626232 813666966 718803221 263207529 705766075 948588013 679319628 946130304 543375656 761401663 919069034 40369540 283477570 823480340 796912849 878169618 916035948 842936715 117267629 140866079 563329362 456883744 731931625 955153108 971631478 716862653 424978453 390502799 746919240 224213191 240179709 550130152 818287625 496891383 394538216 821665657 843024999 896104746 46756142 769498416 954343259 264229635 225798801 746412394 901749497 770433544 932262838 693233919 917757918 796820252 351425439 921633683 859105565 953288271 534482891 131463879 24875407 56668266 768041310 889222990 906092334 512536499 120315061 885034860 790563796 959212372 979520856 727710000 403992431 211072851 571872694 824865840 980521781 989142132 884741158 211672461 748702735 797136618 743777720 749264945 716403720 96040482 300088203 142273047 874689244 331976470 844682237 969399312 401536464 343475163 473149328 758523792 318667092 459776686 391311817 59467434 782555976 791513514 696806472 746050576 420779451 814745256 26005034 883556293 286099235 898180083 768973685 963543909 497417298 832483750 807172005 988828710 885326591 808186861 427617740 654145415 591807414 594024106 591793901 630750060 953291143 851362028 528860966 40125855 612356017 743385088 767904898 746486523 489196746 61507558 211237181 216291355 207837535 500425897 930813548 678920725 922485402 573415239 152044740 920764075 807263235 754527371 940242773 867701077 453507301 993400113 922396099 784686124 97371357 696613632 724753211 982247376 810017314 280226050 824881759 619298566 941180337 448647457 573489032 742647046 841383021 702902239 807768639 464937185 975122197 737020247 698074911 807400810 975131744 404184223 798838399 618031052 66028863 966558802 794412339 950047763 200032832 791564461 964162215 167897069 763735019 841426831 691174776 901731952 910912574 936246895 949009356 927748105 843365046 264891898 726041740 394809854 721964429 419766992 128143582 340118782 14559835 916161360 150288067 983607876 877612125 940827542 428560096 999409269 531945282 477700961 922168213 113354859 875960768 475223000 876581437 936012596 947482604 753302027 856940457 391938790 899302667 286346224 695370242 338498708 812790930 135948372 772034750 957173782 974914339 955151358 897336826 999523856 71093255 900630761 874922782 915842373 542760195 787692847 180437137 898725309 959586898 446085553 403934674 604963640 86361378 388768485 78731659 798006901 950284667 737020247 756584727 859414147 956888452 990187719 827506691 222038191 69621010 26581226 878785597 677497418 938551002 38312665 240230002 789876819 870694906 662629724 889547448 966003548 250179191 748022705 97425791 899504609 685837873 684161026 942110340 753471035 16067165 842147062 560053382 745313222 634078631 101665941 763695680 753940784 384158140 345783420 401386070 96728111 23631055 891291668 317466383 772386143 582948306 756394632 553519560 963691484 828442213 544314362 996355006 121552849 375622873 27580335 38469542 282407006 133906298 36867479 197708126 942094825 351536386 905995052 707885173 929431764 742689047 835276033 922808449 217776247 808054988 684689430 831693920 691823501 970782122 609323163 482402466 106946163 979772640 893058763 765437121 360869539 554648457 149062110 849225057 714019511 117448757 642885013 314859033 528528494 465520034 521137623 48482680 159876704 879916378 333500484 161977748 938527110 42805562 546648366 368803128 59521859 876535576 459943916 765982983 471533594 231865530 759424492 209221189 920643517 803266449 943611488 919308166 600916619 830449896 738533847 925789181 445085368 874214544 489778390 823044264 632495911 961634802 763334328 129106939 998442844 7669393 799832911 458909277 954956546 665680564 999419731 915718276 947436468 743348331 861778773 907591243 979879493 92335526 943992742 797457868 859707148 857813956 669939755 383387301 617097918 585514235 897814115 499950160 853149974 52882917 109418786 438789321 767400510 332777889 676948672 737020247 831568162 77329805 433891253 116185189 711184666 978203319 859919048 73976744 448175426 896704771 894308378 191168488 909507237 858657183 616005361 375448612 408531936 900336064 921203562 464329292 26028195 222108982 946158730 959729193 137818957 841704031 437746932 491697972 395869942 776338831 400868077 563983462 816126702 279330959 745598759 950883260 987384675 890261184 715791636 747511170 838929105 115201276 871487158 934036099 765687374 187540489 463192965 446100325 458450519 767009058 980828001 12101186 555377505 273237718 920190746 730363922 278724744 875663498 303989304 896234368 863325017 271491515 808964054 953940106 656544762 507160391 868623066 793033357 895542877 974921244 513818406 902040687 787879685 933254160 876596411 858006838 633757813 801166965 538531116 903470976 764697026 626726402 881136735 895485324 859717509 861420257 429138274 143231879 875119335 218486499 19926820 789568593 158677624 745253703 905123430 220310641 53139474 901247031 645921930 878921694 156544559 398279158 832559566 833154821 706884266 829313959 53314793 885734015 682868696 908803225 924444229 265907633 856385454 916361362 930795186 211833153 126146408 600772477 11370378 785894724 592989345 910244185 65129222 747171894 875234142 868795592 625883144 15862736 896781 720537567 352471820 97863339 876852739 985389692 944027890 928385889 951411994 953040031 295884446 240266228 899430568 655315508 85820692 768298481 224109893 350970000 768214150 437168995 801212034 547166114 862908876 866691689 503693639 362501332 288211924 804429719 252216031 991969054 323297141 882172377 805824018 945809798 428624180 67091318 905501582 879294740 594158240 576590701 256259132 881333023 853607123 805973582 208535754 662941084 497861882 415448220 240339805 363024689 893943472 171053772 985847008 744151069 812743547 685070023 934780337 368286143 901916174 53065825 807149851 567370400 207846801 624857177 841871954 485748005 206202288 851214266 843756269 87190010 477947827 950736221 758418054 863592538 63118148 730048500 979125057 620274425 836515649 456753658 240592097 204368838 604280206 911125991 838366644 723876931 398574065 968564902 754127626 144504322 629474573 437387896 836963552 969869513 915345763 871171088 999712295 57877296 878259517 817613059 727625293 502455794 927413149 819669912 737020247 810644434 325772651 350278275 710771621 562059592 986258701 836792290 950892514 561511825 748613076 100943275 38332405 530784820 982331045 346279922 965463506 810623318 997108109 746911107 363652008 757075269 934372373 199366565 803604569 677302060 737280944 919974728 848104447 465070975 373559477 838623730 851281433 795075924 389516747 810807770 937157515 973364660 143212511 287331225 384969867 760499232 303391920 218021639 980410078 653185474 442774915 607209514 608427753 985166129 503075564 913983802 726843384 58808053 980147287 803645689 824839598 759462601 256173633 681985003 741832645 950433828 554142857 700976437 573345477 920672765 941132373 586284737 811669629 64664222 800956376 226514213 332904541 13136574 755152119 923504302 833951466 953831764 996789992 923782812 512529991 400327862 973837328 799472071 809579162 479303117 426127317 217199706 761897589 123374004 447357359 786159767 491396191 323530118 234269557 902465215 576315940 819117786 615783981 943880701 737020247 186787721 655672477 788089288 14002978 191299284 511062656 424885890 415724191 973318584 813568997 932413577 76710430 174937906 432893384 646634517 902866097 774803499 232222977 283180191 37784536 10287864 743593530 162422585 755649895 688996861 998752281 330285376 764465236 739638919 982389439 814863262 924836434 582392863 533797919 889422534 516205560 928659153 197399567 91596700 512351624 855647173 868348551 777434543 803314704 921454504 198104741 425007880 513402272 363624280 236109107 892900427 225277993 158245983 686665674 403777116 963728345 946729234 981076988 901128444 871547350 415786262 908162221 827806220 909864187 749195697 312319952 984037833 845481743 909707866 674913230 117297945 885323843 439915833 116911619 114519066 413136649 311287404 933580415 759143172 671326094 917398621 583486677 878398340 117602209 273327881 64710979 792900266 714220140 189893593 760983989 530581780 877412950 72401806 60558273 950065097 257382605 47219078 900512077 319718121 363541435 930804203 157411108 908197270 171739992 184957334 238781914 444776502 102518686 816504957 286977238 742808369 858160869 592061256 838129272 898818545 142449922 770382177 816535314 881233759 239370619 827475795 528705735 32648780 248642572 958589081 364916629 737020247 648144849 406665306 15998866 881227895 637281888 708764391 236293522 742880850 853775827 212828281 165894335 933589293 171550 874890334 404308677 740588681 703592865 994230874 70346592 675113594 860923223 681092723 800907422 785672801 815819521 442580432 707833 944361649 941211121 456740357 965276116 896960198 46270451 948447095 861950211 885725504 431852249 966263544 905679413 745684987 327705052 857198356 231132008 819138099 921315570 889669750 95122076 8596180 76045100 280505605 541869628 343387745 944521519 840342493 835845793 865480633 891835637 819930618 993860146 66166593 255626740 856918479 146396203 869585751 708082114 876983900 775241880 938471552 701392406 853113995 814872606 862813438 162123144 481137667 949342404 766128245 79957863 863368630 831024092 572502721 964574168 929745009 23047034 873827187 900099974 752046904 206568604 883069316 927336225 587163934 910597305 56915857 827741322 801846179 110522891 24690825 617830461 956094951 467513189 992218451 324035624 739991129 663819956 689378820 333393976 466663320 949638772 853513862 984866140 941350165 824701791 793729298 811680144 890206511 15137132 886730338 957228848 992658137 937520360 367289699 924233910 536382230 334135231 368925489 814781497 674917515 808163797 457359450 615938973 894556681 910405297 39680454 951970975 850618518 470104635 806838254 39012277 361194008 567144985 319431624 880523764 943105146 843417379 497071857 12190495 28540493 686535866 489683876 401278529 493616978 189795700 217018754 849079666 940774390 918204520 748705283 804514121 87789699 777413588 969365577 379459094 727813395 902021887 138123787 990863653 836721154 18695674 282591365 996777190 943300814 949659431 836616999 328706161 526567680 319056939 931095313 745577288 543268429 818261208 759075402 2090582 626564815 188976067 856784955 325391368 465666284 650914219 760033661 800084487 69635856 976375995 778777042 739439564 845548263 280786730 519778783 98319445 586608622 737032120 363035624 768745461 226978369 486113826 164727379 755798171 601832581 196574379 888776236 763658559 419651838 320871059 696048784 531458639 956126851 872075424 812465290 301383565 322171910 777708823 770464078 765966530 664956496 166000894 276884007 829374351 497639086 888427067 923918539 809754701 388053985 381259842 895001092 890297000 958430053 987515123 319906806 600548215 973533707 742397134 597847927 240614813 817316816 825047833 760861540 983444972 255691366 832760394 883854301 27350628 673280453 791261222 893059548 377711256 269498904 238016446 782471211 62300556 836143019 544811540 809428046 697790700 937925636 914003155 525859100 916949044 99811783 839845431 927273294 948729026 520272665 406131018 68709725 21864101 771467877 848028527 958084474 923019809 882396127 565484001 543847496 861468027 936441288 972669017 386986289 969789588 436050111 886847959 984794386 313716816 128532493 982945876 724535752 966483151 472147940 294587156 411285109 931825071 857544558 516594563 547597334 873090583 545940194 940383956 759956827 176775224 678818065 371808101 963448621 555011215 957954357 999153491 890183458 875450916 359125253 510519737 505384810 819071185 448257866 828534817 544714312 934874453 680481966 819528422 928185184 812517037 329363544 792761388 310819531 324727563 949658624 10490825 323612299 899861738 369500667 376097254 782789433 72895 935499023 149294487 892663391 997329808 602968543 932154528 110913770 974784080 515346943 955187137 479313639 629116635 117572081 929891723 827555301 687601891 940739686 883573045 566372993 894293058 67594562 130252350 741541971 445686510 558758564 521808414 855548829 870644963 946700114 984771342 783014068 96758694 430429529 860714593 883145145 869432692 950225981 883760456 888064069 776530422 868666433 871150745 484567180 326695208 626229484 154734478 342759448 467037571 907765471 389624066 60326799 674985786 831207383 677568897 445057406 884688931 247934819 853160256 803438989 603121699 776300251 998441731 83201163 864574165 383902303 961436599 773974737 868233233 50881026 752404093 189677861 64663496 7117289 946849720 994295181 617797854 174301746 743498150 789702587 834386421 882679821 94049781 235631420 349141046 335804744 811055386 966410258 858128504 968482309 923793532 820404363 89338685 956870301 704063348 44898584 802408395 443901353 976606823 999828437 564282931 818975861 241106545 950926258 128289129 328897603 433392972 803835404 220030034 755520469 327940201 966349160 583970254 487185890 871519847 582512169 957802963 828567290 178923769 839201756 981163492 788004886 833883056 717839472 783999714 741672005 563474162 986180707 939251556 987273185 953790282 834058048 965705635 836223680 969137441 872642648 814389493 30507768 947098888 972644584 760262362 921369275 932368283 857133528 363417265 891940332 904191849 824870663 306290952 437602993 267496868 897306328 709388751 782779710 577022455 929635001 78797566 991889354 652538067 955650588 279127889 601359879 544293880 383733206 275689799 631893108 904353832 787533907 95450655 403622323 2193553 937836219 940535191 939846908 270486984 877293724 5847386 949786231 950142679 260671295 662283706 843395167 11801091 280861909 966424714 753580391 55476433 949830512 844652484 848669160 829045156 351430503 581436643 815748221 838576381 879526519 868513393 554586848 413493632 737020247 992290446 988629050 834893950 763479928 600320692 873320166 725465406 973830888 218706585 777366744 990145769 883434390 762703790 286682657 358035080 860028359 526520915 647378947 959303414 924191578 953327412 72611039 863791874 300035039 774944559 265091153 591376077 483153732 388962802 822719641 458696134 288232924 967604203 895844498 370624959 157540721 794624073 297200196 565869970 855409591 133239240 977492974 802040158 195763246 994676038 989520104 940194447 865436095 889971651 825107054 486939071 900512509 786584040 328729211 130269622 372675479 456015640 911447917 94712141 870885062 850659738 70756134 151772223 386011614 231252030 908739873 895956331 792893568 360768493 215327947 539785876 922149651 812199952 780621177 839253764 921285620 438161626 322511604 366894210 172653659 861419428 914682397 985006309 876714461 385511671 995639236 773751803 809242588 498010315 931418852 737020247 845199659 317054905 516349879 277360076 953494076 501094839 613288731 872395908 753633783 482057443 855679349 992542493 604426379 960218254 156469230 737020247 191913076 738205843 675217593 69469356 970387792 998943212 914766324 488379971 765581478 781083071 737020247 743604303 747361190 80787127 612634054 206992340 809817341 759048871 834566138 97226306 525286074 784544554 8244289 997990850 477657259 657908739 826385060 342863058 778607950 652285398 596553793 7725020 665094992 110827298 135252429 604627280 928000570 331176188 887175760 805008792 668065332 671159934 105938836 838318384 962643269 958915793 992567822 850205557 749263294 540070699 882416252 566144521 807612735 933029836 624767699 910430447 121305311 413807636 107708795 935567465 929108663 503721110 841407026 209579049 894955867 790459741 499431579 897290518 417341649 196854998 965913968 849578538 976795706 21098038 562528532 214231299 533669375 44932562 973280586 44568961 832673373 152355573 334142304 216501543 131581390 771727796 561883659 101977190 380635572 676937621 393127045 872038281 935775903 883499104 735040953 285114976 836901939 834433348 195103206 405658444 809085648 540949116 65393062 338804531 378537587 817040966 962076269 889206702 973523051 790132586 586325203 2924525 764294425 292065900 726574326 791504362 574532734 144981226 856880946 919762051 898314259 980078799 777791483 510842305 806420475 850803038 808728647 983033382 501926436 823232070 922173675 883855506 217952575 336617102 689238356 114471773 805543566 69882772 417616810 219411817 117499767 329382768 187603637 978653268 706344599 881236102 50194235 825467540 782180058 508492125 213623395 421085080 790716981 703245603 33784301 230324835 97741271 756296459 911573642 908790236 993038017 928388331 959533812 745672547 95953263 46244447 926660580 288482650 893087503 881873932 940070020 744589432 662136478 995164717 878982373 135250437 843509380 688492643 54433225 58382809 788777681 45119520 397198198 869345757 931472789 262355561 205908850 909926196 850738499 253265599 201728300 749080405 239676786 854470352 712252207 783195102 293758112 790728092 501933736 489534468 981926092 878786765 309788844 12224397 404122253 290376883 741328218 758532436 67163227 956881443 758445506 862664808 329200765 922803766 819055082 839585461 982976212 415173033 860856350 645623858 840524887 783185236 640123013 89594505 835076970 542781100 242317127 556330658 896173087 515177582 17327353 94611515 263998809 339794876 572818252 256169168 827318973 915538136 483520801 889756560 30634388 982719890 817762409 891667539 480774154 674651334 993837054 270757243 291276544 582447779 769341576 950471398 929580098 912109565 222936210 433790127 598589311 952468239 962818784 530857629 822702597 231947977 858252068 825286160 583018 457281799 191342458 840013236 132736894 887524730 945205616 728426413 26325417 691638669 897338154 404963149 887130419 961785761 851602265 952117955 281438080 912000073 466910465 684705753 983443104 743129071 343601874 222726536 296565080 923419385 468236954 840335110 163611504 307002799 701147585 556083944 473501751 28188470 904351852 716383265 886974325 704688906 858683192 193695849 82047031 749910922 922528061 844900457 861652313 843760162 914159894 814546018 859915672 913723953 605865560 114964393 420390736 787651893 702916730 701467883 765963092 385899447 942616481 693326559 864871759 294205591 938808012 962344286 445815387 133662048 981700532 821764130 819735662 639115354 617156550 870409891 712096951 811226036 864409369 943190296 859387250 962839326 855589131 347727384 719252323 409893257 784352351 804472146 831103868 951947204 313655730 972699216 65039129 424847794 999103376 772055676 86763853 948641125 841530677 807729302 804274392 451409032 232231736 434123711 618408713 979371265 490834976 874431274 44187725 353492060 890805399 888013697 13127834 884918091 748753740 868224526 65250770 870294727 397506398 419275943 492173931 552107957 473606471 739189997 857621480 317079103 824210123 373960923 271810683 862859159 896355747 766437879 750207660 840534903 851667490 877229115 229390242 514726443 584922440 900836372 785959968 123511543 927155609 435014456 251275024 520885893 769609912 369922136 152513709 878652513 898380293 765836333 916205624 169631207 616459279 707537759 71466317 360300185 473362973 774288272 965932675 35399522 886542148 530751256 640896556 920878894 225852537 272154814 829283015 631106113 913129883 902369296 445392887 90818155 998792447 310696247 282265178 906663063 259048823 904807677 578654568 742361531 888734202 966882901 531675582 924621211 782596453 883805418 893308438 744695568 844618192 60517361 678101438 589864365 896716278 797766827 984446846 793292844 862160418 441323116 821651071 816823106 702319887 399193928 766313881 97951696 21292082 570955315 764978182 824414597 906468969 535763388 917635432 89437899 963109233 40447533 851389152 749390312 760047100 926445879 459518947 920619591 947523177 874637369 981432427 744005470 146790767 503429003 696263802 908432616 902659890 386654927 839434267 610792563 766069371 960784884 649022879 992361837 638290707 868790521 841375325 224472629 447499552 248441651 911912940 990511586 336331713 966021079 832441846 511552921 576691461 267689591 808640984 919448196 33062161 223651923 988605975 391290801 879029864 977732174 879977481 765422978 319088655 35373125 858775239 872176264 908754385 794268106 318274529 902094794 971270262 700260629 681284197 797331781 771217955 795032882 124585295 127747180 350111512 823110284 879756755 262116095 864169745 476581329 75769421 877575660 975078788 267742186 932322021 309871026 302202430 413137484 533419595 410483656 814381860 343611981 969795399 951791377 952116797 858497461 880857226 930123066 645371142 990121506 974651025 337483773 358341550 871322709 428639590 812498863 724166325 869823091 940302392 934712683 762766294 571831926 852460205 387594860 19196302 991937936 536640543 307802690 235297970 985653049 403832623 500397884 450319658 808438761 974146593 573146234 563478706 101088811 224918168 841349186 953407509 319067953 935541396 756443567 893028205 924917734 584124070 302593076 844578773 305042588 865278286 187395370 282093397 587264619 803605996 298492432 965205668 427144153 998167498 591451537 176146502 912155205 794278238 618940567 48889195 143935266 579001570 957038784 880909168 541504010 518868021 892551199 731996625 502728051 298720334 830690051 778160933 663106154 643849833 941095946 43310893 345892000 917528294 517903155 994214869 989058032 884917137 467368266 102292911 337748688 946447542 64456669 875594743 795451975 785616342 281181618 977138564 76745473 361088780 626366529 930970048 368087420 597088284 445580374 788083409 679456386 869276609 618098435 124992936 955110870 589185921 288283159 886046042 795842177 918595141 164225446 814673523 756847366 806820469 941264800 254862286 380969437 292699129 931467916 267243009 817079015 716286632 966192015 243699512 929655897 531917677 853690841 933750423 987728376 336678725 827700748 152777003 757552137 581245956 313699040 226116576 671221355 4314649 996510376 879447688 120066320 816656442 999572486 955170333 347846315 968914728 879845285 850638419 265601294 905936757 795781200 454059023 357162658 27544272 600654739 795788073 380008648 843577640 910884734 357644405 331708849 173178492 54270275 692768758 699260890 354953938 883500774 395325379 919956402 979058412 924662212 877619941 336723198 85303253 404222479 567249842 799292838 888381010 38685716 589497711 651862960 782272812 873016284 922525614 672729746 930797287 75243774 886830478 14567636 982272600 923616585 729420216 385627922 176894192 349753763 89404717 32401059 999537440 860803433 817335400 857719718 929294791 761168241 999944425 613214989 898757619 139638132 480434711 821980072 518188103 783691175 954357575 582404949 626920784 881747617 664940193 893778749 503388012 742478416 793889236 948924497 821373578 662436097 923518455 772663027 939888816 766838745 658504825 542150688 102190904 957183984 487149025 986811735 577259849 370982860 444524663 630417375 825071320 412034994 864339255 896599617 132380314 894708695 173973035 998534482 630257596 967424207 322246819 776355540 858101984 323417035 462883062 770860435 790729119 555689206 953167543 835452483 607810228 977694714 515553602 254915879 196060402 838298200 673860080 991224756 118706225 717246954 39040747 697139701 412264283 130459805 833552535 466794156 889923361 586277703 990929033 185975186 350583893 914604510 756282993 593041977 995668769 22207448 734825194 816841159 766411722 994295760 796969226 953710350 39495504 884474174 56207298 45704991 262156922 785340271 814183838 742857303 58395073 582682435 322818434 590227857 221068254 637191023 967287414 954631977 106686216 910188568 647277920 514708075 846790185 859379368 846567241 151010447 625763877 257643548 950645034 112964889 994464364 819137912 445797634 403438078 662005892 349305094 15042717 379858869 938600931 877406637 881619989 84263477 97420110 795340030 356642780 964764110 551633201 476203370 838930830 306136441 980716541 138755118 479863174 368929546 504130519 199866962 870312490 645127091 687676892 702050418 766271619 538611876 747434156 34892357 4942264 3020403 891412210 238359386 222212408 910438532 751094776 780489908 996148298 440371429 858815813 814807762 191359336 645208243 782140443 403041075 59600560 802291280 827519012 570896178 319380480 839230251 239733795 776764166 960937208 641622752 841162016 357083353 774188978 141675729 939566247 505916449 28142876 201622136 928914077 739367625 138454317 395144552 947023001 785783979 852706401 589675543 182751052 824082914 462035717 632487099 426683917 248415775 21616377 807882194 767921222 545052197 121359375 977717971 456964029 581602538 972688719 899648848 802560681 853702532 61485032 854364959 810714362 895938744 238781491 602187247 265137123 973794317 981382416 903814125 615687068 894840537 631997340 920575313 262227477 678519331 2440221 758814775 903865691 759931245 621733886 933263234 525222801 944233217 813283221 874398021 787694006 781818277 222621452 838971761 909746402 341914515 751621962 769872754 936090819 514546749 636633599 945406647 882237810 887666572 652314081 255357101 629598329 193057204 501488276 535760351 753271154 381540587 415058356 731290719 167950621 77658439 902895329 840673758 914375612 238704016 461976077 646574137 764071147 996572840 666198956 849125021 971007761 868281262 775980556 777153909 991487684 123482945 909780349 657218245 847235983 764454720 378586374 152632841 976461386 754596622 861751410 292663196 14946805 286436556 617900734 781238277 625924461 75190213 791557456 790266516 740607025 815876147 112069235 934513675 906820879 198585336 200533791 423800025 890583684 305430575 779030470 716155680 857595016 329922741 917155043 863678959 195483478 446308825 814285718 925046081 787364559 255190307 804235292 737020247 268299683 867239585 839913627 673293740 907831482 772503791 334726877 351192687 216071672 337083921 951304826 932167709 452802975 79943168 314334769 822152891 979593025 928829013 979501406 838215845 183685769 68017069 666569419 924465277 846184288 812853532 833957113 977524878 31634706 123395471 601591700 187451348 824292813 970174502 770111258 511899414 888670979 785315037 531609459 403843776 633095209 926992528 80249882 889630040 913012519 745694267 634248125 321065194 914387245 557549626 11480529 692556149 81049419 892847780 205763441 950277490 893083093 983751093 769741433 113776249 748180681 699446616 259343843 87075936 540802130 746937985 38606048 859878096 975299942 464635258 440937769 232968798 81615000 383763320 538043149 608163747 58452072 751400650 597471967 941454657 76595793 77421051 165451002 334397661 942366781 857497695 844051011 218137723 470101562 787910597 945760650 789845250 276308632 739562238 751508504 771619218 805960990 913401640 909799393 796800259 89482271 106170505 792246154 41509564 781120638 934913534 433949407 975184791 313809950 189700953 246827304 505430063 801785274 331627223 29194783 748450557 446623894 862813699 736514103 111564932 402512469 283845060 918350429 949349129 792187627 798888161 201386571 61438347 535964839 933198194 82324957 478649200 746534550 487516294 519156659 947011546 45802505 973692323 858910560 830510404 434779547 836113877 859091992 471234910 264889842 537048940 964696899 679028035 883771183 226172308 63885455 553350966 948860294 371759929 825836974 973870536 12705806 379451836 438657773 905179125 593258485 906441893 136240021 245490711 802563327 851126508 773241425 577331576 213406154 913553367 394604867 436076297 346392742 850520794 809930636 783307539 491175102 873506298 806765862 879201444 126051181 877712578 323814149 831474616 859908194 10605066 813275446 902189689 680078652 935796037 811637536 2844609 890496501 728167859 393185549 768847821 197267828 167563812 768293440 614715676 234049238 591082405 968356774 918904821 507993689 848305394 788807974 124893337 298267661 911752633 704151626 760933691 340661651 835051919 658930293 342023680 432381722 775297509 522845328 47218042 763363010 624397669 450364778 540142086 792614098 779317642 981476789 819884147 808585761 876911164 809945335 16426323 963583202 990390007 622256642 730511943 48873775 961889655 562692293 967473224 823607779 133807527 600417123 931504855 744343260 978779029 776435633 759158760 665058297 988790735 802053342 806295186 824036010 282175262 923236635 101782302 917019638 810053166 996759312 972823182 458366465 116951444 48362098 208289168 402003871 981735841 7054321 815096382 890170346 754532709 959829258 984790283 670765781 151538885 599375100 547646606 503524903 800815119 965604381 457816258 877201430 172858020 70968701 466068540 809318614 505008957 829917473 92421403 944213732 773359687 289388 823650497 184283418 882852861 825503584 720721248 128909843 739987484 636445832 689227929 547796519 922649320 922139487 185537426 110609808 948660066 834875153 94611462 890236306 560625810 987938143 777249292 209284374 868320410 589841872 658883008 928407897 328141382 404426012 225856668 598704736 512114190 998760270 755871726 654528588 538838161 122122859 839306208 882490398 234687262 664281679 566985466 791062026 942356516 400913161 779112718 574603346 904332135 605842015 848990379 113437332 19511365 910346927 277865210 210454758 881366791 268400085 572350216 730010245 635504632 203236167 57755076 593116441 799636746 791663215 721237447 222088238 474335722 141134328 299241610 826642314 751497129 378408313 192372109 308706391 428632943 503302478 806114008 740252397 950257914 391059171 294618696 902693040 759711555 312089238 840998981 699552613 443361785 346446244 805695582 972579688 919561695 956390723 550323193 892528695 591721583 915143707 978138194 4387982 692078819 782994107 207055358 900529991 459783387 975091217 495979114 652736003 897391333 785431014 709096786 922029838 852483656 396111735 539921098 690570603 687000327 562393837 967630396 981769831 587271395 861817725 789488125 321750314 885404347 604169101 972557147 98790227 905689371 382994036 334975482 244970129 852202072 749996266 669488400 545843161 949122931 939758985 141731245 306562623 127732943 766351632 709365105 756108670 967838636 268300855 952964359 544297375 775635948 394053362 917830987 764048092 737020247 879535279 533497144 746446647 188855603 964703588 944913361 990567033 11246456 881852192 778086318 541743919 361364881 848167113 890095383 917623577 976109504 827966902 904480853 210341492 620097883 930976917 159041764 990442016 118978959 109059145 838569152 633748979 396932697 606920830 165000581 398984092 850442883 801176791 131927173 836758139 881323734 47503229 242858999 858753125 735228246 273621280 334643697 756641737 979756090 764425937 283188645 912726675 370639974 931293088 886666522 908526759 514699462 954743681 943771345 248734671 967476254 926273860 530564580 904570799 737020247 232689789 162665982 381938031 935412035 438059805 672241444 532335062 429569235 83963549 416708790 971542753 627758779 870077538 978114491 645157889 155289716 951037738 962904550 789921937 55416679 367288272 636546388 30352714 503227519 15274493 951143755 805336946 635991633 414881072 877568538 62990903 737533594 628229703 965538180 320529450 840919848 1260800 903993446 301254004 801063539 886620147 899950414 882881262 539347998 65841483 942501153 447952324 335740311 588067925 910953321 854190273 37732113 572694194 978656437 998290471 769771564 955869856 809538152 881772130 921435607 241878846 992091603 525349036 103737157 642495397 912546590 128096651 469609232 914755413 735922898 517311007 702413515 902451010 370544760 975578903 835273440 803175945 936890907 691514746 825865452 939095054 844651347 470616084 50908169 308251511 904158729 412512901 802625372 744861417 992853280 985490441 774027179 932682885 318691089 709315253 695429275 254651364 832156344 767711742 789514727 284206597 487516168 100508820 906420394 401964284 550072494 699483629 183049050 950195684 125480279 524551764 806700986 897098234 677834258 802329822 625951819 766411590 514502581 522498815 715450066 588848148 945074278 858543509 172495986 532949447 904584281 160662064 265389663 736654987 547702307 70724125 956440828 991697324 767644890 933339869 604137143 949923268 769656485 95186249 956550695 862605195 848085622 849855188 828583218 743940474 571128671 20748985 947340687 816222668 45836451 284708233 292922264 773862015 843310757 176055367 226074808 163879982 811895449 280488311 777540730 626561527 781727550 966751531 803017996 740346589 766190954 25297368 67992472 999564856 581090521 39293838 125895580 867447389 890769010 183174214 222039010 689049055 577096515 377742758 304397013 544873368 849352007 585082692 617161428 886015420 972395475 308764675 839484509 788715499 748266373 155992919 317128710 588606888 804312975 482465751 574964340 77605815 306003680 816416558 894955723 111272551 768178125 145155621 565683568 763017149 606393994 979639301 900928144 920480258 767120156 579594907 382087666 813316116 748411378 171637973 862591220 670940893 283587116 570405428 867012989 956825489 744933323 738148757 980421704 807868173 837324946 826936152 716687201 758126282 877450378 977375010 969243319 1482758 876018140 985631863 833013733 1677468 914061850 610254084 35639558 27146921 103230357 735787360 669874526 319037803 786415542 219919250 880967772 647822017 834220538 969060419 910641221 922876609 780441692 220873040 882635104 288681045 806224389 805121604 175534991 21206092 498325627 356830025 781917393 488470030 88616955 233308275 427046161 960219663 832877235 819864799 612094064 111122196 187732318 798416310 111469208 804572180 990997372 999987393 613505623 767450985 805484102 516134049 977790551 360346111 997615568 923146742 851735931 70026295 344163352 839458795 893498788 858224081 932190100 957578255 992703592 890849952 785276023 224456381 465391784 887402289 482712907 13683272 898444323 976303204 972415883 83035915 846571708 4263260 851919909 802821279 870914858 988881769 318305165 597566306 184284230 304867565 884631766 870204095 68096011 831621674 171688588 600273957 799509468 939493030 986123151 3246256 716897581 329310887 134634456 868146161 242075430 278566205 824226392 682672734 393675377 1333565 873245695 847534270 68395002 471787411 740712883 842145533 395900556 46229839 953832350 372524506 84420680 806872224 892123102 950755459 762907855 237897101 837233825 186776769 880396294 968304033 831515984 921724264 563772680 819343123 786191905 837123423 164181089 849129226 776294526 904223789 769630576 177039005 789173393 469800345 711083119 785848264 676630951 972812256 218888333 886297353 714293089 539217265 527453171 353208236 34301250 151217007 839093734 4946186 882373064 828289026 324055485 867616259 868394952 90872280 962476430 980938269 823466950 5426936 989000739 773395512 779730993 951361757 275813713 825505577 992523966 770668995 836442900 107482590 680326330 957247222 454885273 488507959 550618544 775263305 451461102 833525360 854138223 112943351 375554178 461897222 831935472 473186604 597617164 278806726 908999194 762499389 823575198 180821029 979973230 677759573 936158776 169122429 268064823 328491445 809345381 657165642 45206748 707214990 549720277 813912394 163751293 773233826 996249080 931566682 952031776 373798027 92960434 355660055 910772025 894640170 622933832 998706381 826828771 14446152 961197444 830682496 758642801 533986677 892794351 532329883 931090277 648121325 810317204 978673987 399382532 789612047 867982389 954601694 15082801 676180550 819359291 655518724 707071844 981243212 281819141 992903685 819762780 697165931 11043858 454387787 986811682 740373437 706801051 774064888 931954300 782260908 300460165 530544195 404650761 856841752 238207706 9421589 899295951 712100602 536062496 399254575 472936085 486898290 843623332 38064529 69312604 486103663 296731809 905427103 928757996 831579622 886957793 971648245 161815319 70043252 759557485 751653005 606930023 996955982 985435269 834328132 390629159 942028359 470593577 754219437 941319076 905051892 969358809 265578920 516923767 260644281 16367984 762793659 394413326 787436197 860249490 938710707 35271531 558050590 892342749 590615809 860786344 983428347 867187536 615134110 601475712 462524897 946121647 871337419 876189619 970163315 671110990 144024887 351288065 844939598 723793552 929322647 962479803 839625199 30275765 523808767 966359492 944540578 737020247 517534441 802652695 33738678 808349592 563256394 172260328 762437004 174424869 836647306 669389853 143323329 21221031 355430529 763518278 461480352 619757672 836775263 825729546 929369042 30833400 459863559 998392158 237440772 979845050 530023008 920986798 806515089 584623880 856491891 638888257 519050506 206594851 529993984 732027039 346874285 266026325 558008210 965436324 757418299 925557935 844963425 648227214 821651434 385402200 749341262 959257552 896669547 961077048 973436663 929096758 877422004 131923674 450746110 740057199 775105920 651481907 954899662 872257370 976944892 375224935 985295100 53939794 824912836 988000323 993771311 895168373 652260272 846698641 979252723 993379203 514889726 648175401 954583874 833000274 829078562 900486379 489311093 574471615 781205277 409976877 799285433 657685383 225158627 575185243 189055566 374646693 859972141 726765786 853533565 572658391 391854240 866890577 971369224 854141442 132284980 668238901 849465922 866282156 826548067 958551812 813369403 873246769 891380511 103235595 852108068 942801678 169269807 870543082 407466691 484759882 670497564 892146468 352722310 708601781 929934456 579643366 147804254 513028049 885918651 738047871 338094427 897438852 961701978 20273340 301672013 755892231 959031873 698651510 119611448 221995812 998335011 794609308 874768400 978661350 782038952 245576725 890077696 783988336 812097521 595428359 571347307 611839755 475970823 502250549 665841591 382161801 758903689 782128401 53540706 854574266 323053439 933043999 840665269 830360370 787227285 788242480 852624367 865895272 28537168 501622471 158304993 628778407 954175356 954016973 183215858 859165588 817542919 920394684 376341085 45798833 296774134 936180908 920167809 798798734 899123787 905144761 579376731 35852572 824389662 211328946 600219302 837748959 20724308 994459023 818862113 966798270 758929000 38898825 746820938 323471961 748278335 867788334 759427891 146174713 915295257 901241706 599457608 783523211 872207841 128163762 8954950 597897590 973913856 933445651 257550553 906880773 511679362 126420028 861485486 183817901 863878911 945756978 861360448 979192270 587208829 971080695 266282332 2673736 806718839 131265920 860330354 786433277 523838365 472890780 431773971 149554369 903736059 113818063 843707194 822032375 552118076 118823410 949234060 310967892 790350572 736556943 969492216 41722748 225220797 537620737 924164685 973127254 257682661 925430691 835168112 945637742 59849365 449124545 376233316 437238697 892058714 943466599 783515429 857781080 499819334 875265349 341597127 42467970 810036857 376112631 294525927 267758772 681711381 807415762 174027476 4396639 391438450 425894953 486705771 829679316 117493130 745776050 709387016 670150281 186377870 515687557 867856894 919548126 326997866 179651010 966956328 906285167 309431760 827231834 561419442 591232984 924659058 808573014 615387689 888157802 809699569 840010374 132985709 903070506 218752655 43087935 334946933 935323333 57684905 748419510 303030756 947922275 945547390 721192584 547952001 273770758 13505160 599926999 679247385 590154135 922768696 202283188 631628951 951530761 66904440 958652932 573467142 656336682 764661776 915294478 830003478 762925632 880732184 936782039 430216944 867369879 841276759 556425184 876697854 18506970 57731019 510569193 67859505 848974671 949828494 480349726 67436542 954679570 796494712 837577904 769015252 112808736 90018008 148922728 240435162 854605996 994866391 360104414 484224469 891047050 43671317 610533981 583490889 975230412 818319384 515756456 665780306 524430124 562752346 642546767 605978562 964262082 497217822 170271450 953445685 561930388 658423866 59700472 354850185 498289594 546642414 178821276 791028486 493564785 67427569 935793139 798716517 129912395 147216369 687275491 471538469 379170856 867912396 297536050 854527674 403897532 862849443 890964088 290068430 907502041 248056647 522393795 352229804 877860275 743257429 537120055 749885065 854584688 895997656 583327769 942880644 941717298 169645846 920430536 907451222 62521626 808719831 752433578 924960610 316509560 210217157 887654032 977310716 169427778 175985408 264857956 724532024 410767527 22313909 907117465 988177767 613960865 610087485 174634870 982083540 597000886 277811241 783080416 783227828 607274584 825299178 879528021 672651952 159723403 626992185 89552696 998002321 508144147 959834088 447356540 138576029 808292782 921516102 840890654 836914229 751035680 916164817 336381648 564937269 761892425 940769431 464610029 719552054 974101665 827643129 260849498 789684373 335842447 821990478 762429867 122107329 46562671 486264418 121203583 909002493 805643996 256904130 83548423 177528210 853006627 979481653 725909044 526613044 47785465 929597987 970774506 376614522 66771172 761349284 366023474 628749820 778403779 925966886 910202661 498447051 991953563 65046219 749599724 950589321 498117430 495022715 627110408 874720163 477991629 409161555 875511467 554646693 737085336 746089788 958698830 223792456 209608382 50977830 884213717 330058384 282418390 172941741 821929498 17126840 382359407 914419347 913409649 896804073 162267012 717531903 826675462 945099398 900459955 842001242 273884679 798908997 306301442 607464218 759400234 408842365 899298009 930911774 757824435 812234754 954643784 946921351 664038638 926651020 786719649 539642528 958831750 781476403 865168488 117905356 228801069 741021807 61428542 136696625 832606379 861959466 902777975 665069840 328469954 784228519 434451202 763238472 914995952 435890827 914140851 784988111 586761642 871351612 206064657 175270267 126554700 652871127 981777055 583272806 636907611 846298976 863482594 73554637 542307877 18786378 994828418 310932587 429747602 57967545 886437904 875449410 791186438 86973306 464793163 631700620 29228712 915586789 490266032 633718743 122647997 950939432 701477515 785198080 938844357 675819021 935317244 979030925 212700649 658413574 358022134 777681296 927499205 331479945 864995671 757666277 917209439 498875702 883989847 817662465 794385490 843277338 986924808 757874014 166042371 611924100 756895402 990413020 998589594 985981186 444563045 55293974 361721264 425502952 760998057 77163769 378967483 810531659 558760421 891670682 577788267 940253664 304571048 982694781 421328000 859026659 950047774 739925569 833021565 951377910 272743495 466954092 882891036 345410053 854024437 16455812 862606021 939054166 880520142 591698524 155909627 732186192 791801860 830044717 364485108 851703439 713765080 939706391 998567322 550051256 363033368 787943940 246128893 957477840 654664865 748803204 681898572 695154839 939250618 211225144 565252922 441110340 67425443 337227452 816019534 964533309 385406266 703603813 893092001 253463674 837702208 982878373 757624857 781824517 918072522 285774971 831878709 86253955 927335817 216856768 844578129 993422613 139863845 897095113 990386712 996765559 748999306 795555212 752357540 468626033 722645474 966268145 892323456 361586908 563730830 935476952 942236547 135540210 996287714 751674362 248543757 850972202 755965597 514889963 903987425 32732510 833326609 906422770 755341292 882159436 162923710 789672002 180820353 878048553 531501064 754957360 741592503 976578893 624582440 618919223 567025760 379304325 923137122 449634898 465191375 855410438 786845738 761923079 356341146 64445254 971812725 842421094 459785853 744825454 795204642 78789223 776091244 319819870 778412831 95123368 825876232 988427548 914930963 804826701 888614649 612916835 924956081 480363 601235943 994707346 300885301 33699174 761715838 958732116 135348855 360980964 708541776 558136830 481644627 266953709 55699680 320040796 93793944 156145002 650332103 714275394 887234941 897109818 938353433 798401138 886932892 797495144 714833967 149668764 279271146 682109341 463781342 831865067 446678773 961682869 201479351 49953287 131316404 826049201 812198066 939051708 822002517 875454910 803733057 919101117 140715372 813035309 759233133 464876795 670004050 831775830 270504823 821001387 1134657 905447668 739035045 960360447 868685576 980557035 972743597 881100802 381266491 862653654 844274723 527813805 939302716 903693563 761376085 239298631 875697125 963054640 668631281 273545344 852895011 906966931 331501495 973725645 750054482 397863128 402235237 895381674 896375123 925405465 848464045 836928419 872573194 60977631 571520830 293470182 815489464 295575578 899782742 422134233 820633880 184110754 916864044 760817645 869667133 393702893 739593678 747189973 667751869 230241807 876585903 753846352 861814275 929822634 854106742 930377407 123227287 898696779 1438974 752883614 350690656 349699739 678174613 280178607 968514837 888262682 225750580 77659768 236415544 623761801 965157141 539472150 319782619 357165779 495785459 905424054 897093703 582372323 177154566 313442560 758965467 491332991 291002417 730701509 935804181 863233338 878834766 915717490 990686430 829265673 489325367 400464195 580065654 48986304 336792343 562834846 858681052 993282838 905061056 956580931 103667227 548642668 922162600 287849529 862614395 826399149 783119349 209809780 276676488 667293418 830287905 277896430 386000607 628678935 232546035 708288646 745468841 894046048 918204661 377698761 766213924 751883605 933209867 464439923 173882925 932363332 8185825 453751860 356504266 276749575 225802757 844308168 793560486 744394103 878294070 804014945 889929807 511631038 921836703 617168129 937942991 883717759 329975568 776846960 388174156 599143061 907349598 779803776 475503033 24975254 695119818 257627588 381134532 836392814 943661865 890341031 432034690 547292209 313106484 605404440 756782147 39619804 193261346 19253263 210353364 833172941 940995513 563446371 584636189 171769811 14058462 712611210 956465262 811680509 276917310 650199295 353660118 604069847 958376261 812429912 804111262 814741842 174564810 778630788 964348354 794792447 196969826 213293853 859412484 694563842 38298655 941609886 367212965 773325989 608845553 594807214 886645689 399778327 794458336 781416682 314202423 927645515 825096714 71092803 814724904 929747904 923746901 410693145 813009678 681193548 821455656 399211480 970533547 850152910 502547732 499143673 883591414 114609726 911033112 766806072 915062343 512009167 502325746 934179721 913237757 931006568 954139932 256223061 666182091 865385541 174351121 599604307 919381511 738161318 756284030 731839162 520231676 882296543 87072661 505516607 844198983 357568180 167404975 581787182 8195337 186679417 30970776 853994063 314658266 76242435 19023204 853349858 23594369 232860864 877727034 716081983 901435837 824428132 799372344 961374087 786715982 563301785 833703480 847061703 347032862 618195803 344316535 899146424 116101653 952665780 737020247 870306869 677420854 789585340 512742620 741364749 935627927 843124448 704503263 335854915 633083859 663364777 683728222 7143883 773249148 776651103 186154542 933601786 255704890 172821094 330460907 179685558 469419148 818609864 832344070 596978222 40187198 881027351 911582016 848413212 909710814 752089767 879954480 766963099 753209044 382559488 41896468 881423736 449952391 814801134 429804343 639415125 588601259 111605896 64475993 756433310 993706547 472320597 455085722 475451075 675910910 201096634 684875708 421810565 925937925 117890904 503985047 60705749 941140282 973935832 897386302 656102897 737020247 207895276 299336217 529358591 772431543 308191818 968937974 57439524 774246671 739336841 457745816 866359649 616261046 350482673 544201263 191489723 194138723 29335132 355574589 95371017 380256867 622848020 995735038 115469988 782857725 389852427 888884542 861979170 866682019 728332063 953425404 762669496 805373240 741232098 934481384 985409449 888973229 534351030 977709372 882379909 563884483 815184723 522775304 897908298 912029406 95214928 628390667 503473483 950620501 33617907 908466083 858141127 969365182 119329010 658252690 698291866 834718517 740992593 912645883 906386602 88240274 897934386 959038974 936874990 807701386 37545118 744631450 428836022 850036327 493446431 715078139 18016839 976019921 347012876 577293490 894621028 786940221 738244275 711413999 187101080 909849414 762261199 94381650 969664171 995376781 884909759 874866976 973557857 776060847 153713705 578542243 635348197 303995610 847594720 883270225 1320921 243036158 703446425 946873886 266344574 771659837 614882212 402534964 310134888 866745741 264442022 577248792 481100736 829211286 66833239 956710957 416355366 831341071 856275986 808959834 989604605 844308159 771113665 927516942 987389265 764539615 846546735 452463889 955920954 962989948 102722615 997574217 869169588 394812346 966892951 840410330 369020154 859291531 477359999 216571027 945375218 312411854 554740158 63960732 297865061 903206546 771484966 828192786 481792311 563218032 878507218 738855787 529278074 894012877 965415693 833909156 28025877 78389759 381849198 468009162 543805940 626960910 981673063 70427286 14894853 868219161 144417829 109312081 959528309 530444935 461075602 748434000 797920659 757034473 953005515 755421832 421291290 753486536 893024099 903024620 765713865 937957685 512949816 898684429 494894788 500031108 935616082 818632271 831771043 875121673 774143007 643433448 427207102 263124253 902376703 806944406 942952532 962863874 103878512 838203754 88595939 759956780 804366781 407984050 387982289 185236201 689160415 439764270 312312868 838834513 792041280 74140246 889278317 28938365 396873016 973311694 880486645 257512492 859811528 500167864 588700344 759968557 288113972 589278722 842771012 676726757 921700093 805705852 231230109 842691431 939899244 846430917 763525261 787565740 885893592 250528410 604339232 757068937 469908923 128735065 812627873 259748698 994134835 555516814 145504456 739385153 866438492 993592292 287122469 363312448 679623028 828283714 37251803 827514500 437578349 809851745 701719515 501177545 221045414 310647167 757676994 660710628 669873440 739260323 748934764 127446586 354941526 854234431 970010531 847692325 85541139 755373085 798510104 528308183 980229727 271899733 870040872 864461860 130452168 831747373 220867556 80650096 883273100 819059385 600374443 744004791 259405324 782443104 640693601 657425356 914994640 907374625 895930266 964070513 877059147 890459975 807217104 683615785 745091110 631484703 934448176 999375605 758816660 113925038 770145113 944909291 403518699 648422330 198873424 753706234 647599501 368679896 770076241 805281706 946547337 336838212 889355370 62790354 245842332 805569097 599482106 996718553 789086242 691700371 431615488 261163770 465843985 898409958 221904433 149716140 247420151 453463225 245023342 977786533 174158827 458610042 600347484 834268769 947357871 820804449 704660209 756898625 446831809 867214640 969549329 366675709 844863553 824526278 25607312 317721011 714100162 820256047 868050852 663230452 214204836 112956694 11557595 658417589 952448441 175728823 77898860 371882984 2359115 150018427 365658395 794633785 200536323 947274099 907056050 545908460 691401639 920985401 758664182 409942592 893753359 883255075 946614690 621081373 825441122 854871283 574576815 772465310 970429532 810747039 92529547 442589196 817916451 600092016 469238413 576178051 879038936 450089886 217992497 183421563 467434674 758626216 285437028 553545258 748644635 450406106 903348304 737637617 853713612 781248427 951379750 606457113 940739606 862110610 989227966 617320054 527818214 755608976 85094871 920982792 791172613 844851955 283851750 924945013 442812984 221936420 936663980 752063021 905742358 805536625 789958987 973410230 421892253 970446397 66234183 3398536 611435164 748959466 473880164 701034149 368781137 883371273 650849759 363340520 821848370 695760893 935360480 107016662 87213011 670746214 252951912 864398551 97163722 493912762 373662558 946268964 673496277 759944599 717039416 775936713 678793683 306136805 417411515 405636120 87998053 882078816 7141006 759750642 794283713 925934721 684565306 860890634 950721810 921580818 959227069 998099899 922750917 944168144 101487107 42379307 161623809 887212998 268267445 860408682 742046435 295934303 29631984 126665368 313357829 150527942 955576940 740157559 912976228 494855744 181901317 864485873 872844582 728964884 870437883 400531090 672753600 954011231 71218382 873275163 885727852 425651861 58640786 430249518 291139196 612081706 52253379 272471478 380764001 732547875 611019782 341980763 850898064 447022360 988740541 116053321 868427938 777818914 776062312 774602917 943390909 93810528 763262141 81536153 961636911 643733241 725620414 847268439 602683613 805629055 653604008 4560429 622186295 745394719 842308255 358906571 294498677 999802817 882651955 878217623 757317309 449914676 175072712 59681501 687107023 419491555 490389403 999653747 197671613 971123838 493909739 979231789 766403029 909500369 598606236 787373595 914890790 898410040 592577556 815343909 925977529 886544004 487530640 967180501 227312999 222997147 819203493 626297992 775882808 968709378 156036533 903353179 893553533 820066952 122711463 820497867 984385348 777685082 167619569 485882733 912790982 839162331 798240723 188497364 943558283 321505270 745322683 142875772 905025675 817904906 759789516 756540986 416676296 787559433 398270803 647071005 515021538 583851316 939593255 933893199 763671390 437232866 693710248 36807300 618749928 985635972 858495912 176303116 940909695 860159128 105571594 774538134 267347473 879940049 12695233 499106261 898838029 799470088 431438376 925986731 344432695 877730939 194317526 271007599 336210894 929639846 730248727 477506229 939671427 764669094 121290200 776276229 653832649 336704089 177374824 720998724 345175632 343520815 595979157 158068661 834207362 993153172 173109130 563872771 909015414 299276725 450151755 118651726 430391686 775678754 331748135 822589986 330784826 623435135 67180386 775342113 802074363 888611015 628292066 947408194 760965283 481042684 1484463 398097219 18863029 795029530 577216018 779990655 768184682 462590566 381121114 833217733 826622161 991236578 969571212 21465399 124267521 598389379 890746330 916925153 983441910 421046588 205870927 749284686 90083977 803835178 495640281 45670472 958439595 811554462 342488330 142768279 586503100 165924055 366376500 851180244 997952515 472774044 625704621 554496741 918180041 845620621 258499984 620527771 377271021 769648071 737020247 267879340 344189130 956055073 897251733 745819738 952593354 342591660 970563571 771540042 915165365 697243417 949532083 866713348 238471705 450004951 842489819 695813871 30083798 294668077 143437222 426026253 738629301 795853480 811222757 541006013 935822836 800817839 38592321 770928498 304522728 995696670 337863979 973327954 748658535 766781048 514254585 537039727 491892690 801071458 300632830 349426335 900763327 781763178 156683557 643205906 13748784 752571927 536422436 973805465 918541930 703341431 858847647 834147934 323177136 924667271 695086629 19155233 838931061 90454604 807490719 751709427 883774381 521617534 887446267 846374567 962429195 736489789 472949967 778696232 345942401 352169001 958423389 999497199 745145813 381070124 759361818 248955642 935137888 909791042 975690061 657638982 922533377 200281443 163044196 494386870 600969753 855870677 914384053 841495686 930544293 269916482 550574435 69102383 980871206 562520123 545948125 880496369 90622978 940061400 424938268 443316663 777914400 417347600 259044427 597672263 788111908 721068844 997553199 832763497 995653154 46145789 380539973 664197320 939617587 809221361 253891826 596351486 453080692 633224559 342580387 994093127 419727814 37475811 961410530 975010467 486003517 445370351 510052469 816934985 573221064 329030952 842446049 175585915 630484538 324610621 290191917 139195732 373960958 331290907 184750622 816817354 750949597 766246193 614878176 924057926 237837337 526748826 926801529 89577904 239628666 769573449 107742299 62033173 1553762 835258013 761167570 343009530 234831329 652227499 295213519 615068848 583518242 987406507 405095170 498088224 855388877 844652379 271357709 734234398 934876208 803357428 337446834 106557671 806095853 932231653 399065914 8312610 620040024 854702656 262717639 298326092 489855459 978567975 443608065 978043135 788759976 855019913 951796881 737020247 742712303 849235043 768722320 929982312 967647348 876221823 856008733 781532408 414479518 801126186 796421702 903516116 915300082 957031744 149502344 500974675 801613019 450008799 484404090 880380376 316902531 998448828 167885761 867552942 405178917 660015417 926346338 932785029 969659243 863571158 785131074 950222078 892503067 28672532 576501374 824637305 885064934 679068352 891445577 255391773 341986349 403665839 288737321 864672774 975408911 846610918 985213745 592398772 634921532 756637316 571696462 961190840 792844640 25775358 759408598 25399664 916098799 806115642 229611564 233647416 915839308 265524315 805992159 747196469 326077976 287462426 981862531 879951637 685626126 243645024 868348 867864456 237876591 328765309 908563013 932992175 930845319 59984938 52380781 348138666 698363895 814891167 782436419 18341748 676059742 542977023 809528460 860666012 582785618 213440717 194962755 831437327 153509579 158080497 993885976 387128738 149397982 946920124 396670947 763141495 813788361 885885665 68554712 351401044 8836204 974335687 783869102 776303803 901855728 871900287 785950694 706162951 903857593 857611244 411504134 964476443 836643880 498040259 769269479 899682806 739829942 885404094 376604185 992143967 329579078 584751851 916641434 504592676 243796386 805520553 595980933 920556846 741001162 924033827 409700426 955938593 986364655 665566311 738200153 791060301 784120778 944018222 688652592 855333389 820914771 886608771 325326383 754342262 280006611 795909707 365747966 878891025 25465578 759506795 510512238 845050456 702610729 506075262 634123373 817425623 94624112 671288897 904724505 187121733 968559309 722332815 957618105 731708608 226922990 587114600 765615613 70884996 896296636 878350497 737020247 198848608 241507322 991069696 450903652 740012290 921781818 977364257 510455204 194645549 513039787 763933325 722891331 995016239 868824897 240649406 105439196 897424046 889896128 930658285 726476400 768087869 100224533 72480864 920561568 136400638 816048822 137093727 599407097 219607412 930284528 520515290 64070091 938474233 868729204 914689897 836776952 963982328 691806981 708439412 807044029 783149288 712578326 713928956 720050848 932728926 704373560 52076365 839503683 747475227 762574654 770275523 289720141 883407707 980718191 604973262 833604521 691121634 178844418 62218114 820860631 404648221 807429854 864183185 818952202 831729805 352288368 887889495 118009346 955244929 242841678 913291950 818657741 835412939 831451540 799627010 83512494 311934115 776704877 207009928 916578820 720094179 103339600 941168424 786554884 923560805 747675567 845610915 945321011 8957270 841634933 242243351 648439334 762406581 990009620 676109026 307438960 913665513 627563914 873511747 102604201 813051833 426921025 994524545 620256853 966471743 845321702 151783896 315508029 42116671 779566321 129389285 669648057 795906735 981038925 792450621 855106993 861527628 352434381 886450858 732468701 842538750 943786972 773727352 918443505 922353567 873420537 805265285 88013978 836558996 442348344 863435971 776797156 443686921 883392403 878027301 66039002 745962255 533110582 767447491 955577646 326475902 900082000 867204825 902069327 997501015 571189125 819671678 703317400 758990540 945122296 895416490 123590099 797472639 973002190 376693958 123589859 705202292 966391875 989326817 434472285 160737685 837043803 671732259 111870047 813939896 997894343 963933654 978727593 852898762 944235119 847700653 879355750 10697840 971605180 950778920 818165089 972985860 497723289 569147671 620594350 607388152 933086791 854139380 846727753 91979222 811298558 932634564 889786256 938366349 737509706 766235683 791594936 84035707 771011256 204011207 961613846 139804969 790783454 891259449 348740079 459145003 814983753 803779767 832465156 299054859 689529475 11329117 821143839 996660317 890978450 798476499 879964363 939976166 152572723 501005805 219444945 997171417 620843250 308413286 829376353 963467633 782397642 221012001 65532077 45893949 818152896 535570183 983386939 821957885 127288532 902271321 867293305 737422484 918303451 805700542 977301991 886605498 627171435 812766934 191403481 281126399 856325867 986962114 191607012 523735075 689646232 52940030 350996182 891434172 162415975 992903381 74707501 847841952 690399556 503339113 832814383 698531247 498395557 182112089 826443533 994923593 909334851 130737614 913938364 746322673 992848479 993459395 768297941 163704435 857568028 961994856 608448481 789841603 834372149 89598017 809521528 37637415 356990480 745413158 832309172 156767098 258608090 687661271 195271198 402110089 792361672 554028002 878997793 905718555 734568732 35988579 930874208 504906814 967310157 915378257 407327616 704551411 951705371 390576394 860837663 865875413 171399480 356279278 971145699 230040686 681349087 531274581 696918792 271757291 815082291 859303036 230072665 282837358 337127731 47859345 843082620 814201299 940656705 818554901 277967459 780193211 89742918 516302925 411929364 406541738 992389068 830563511 22344311 981085474 419379021 835973087 544009478 667184464 906690394 525111094 41046945 213925216 771545107 469284164 47149241 798587491 797063722 521324276 186180818 224914607 737626702 464981148 981739701 96488367 341652170 292063903 905784027 557790137 868147476 919791539 885919851 809391218 902718012 245849441 918790709 508481795 856919789 809670961 904037852 839153048 824640567 818673850 891654307 705989992 644231352 855592147 994402350 737053271 229742275 846813995 22058442 757120414 307875986 818426610 7198625 171761425 896435087 511906175 588610742 716404612 752726719 947989412 537403896 858274151 770831665 862396462 916618165 598511861 108727718 134244988 743118053 256663684 422743479 708828323 77373617 814285707 744121589 785063060 967092213 362245818 947853690 700684442 914177333 497662327 536097517 735056129 829549815 693848170 912582640 577342241 470326294 272995417 717174094 759839085 557937021 573845420 940661874 215779162 956165895 468696359 177314327 850540314 72026748 104426767 179422931 724855323 361629344 761987030 852308710 705110997 14265879 512714840 983938003 952035801 756402828 546330063 960242650 793008981 975252149 927802143 960352748 276673999 234622656 802532245 758580480 335062533 827879027 936681263 967155117 359145716 697059133 136748030 804694104 783921418 799383948 878692109 657203676 563385951 778102254 997848210 776627159 931266680 36779594 555300863 53111633 940197089 634048539 783777173 322293327 843351236 297934181 344422738 477081789 731254923 893735369 479929527 170945219 792948530 41351876 942800418 401590280 831481313 745946730 726688169 48810169 842402318 636889116 997958628 229861166 644336953 847487784 969409258 601435608 873922957 688412413 761783270 866057466 757007379 813710532 753880432 11099701 818391145 361821840 347681199 990239801 882045153 456246736 326587069 773849666 61103830 18907135 342482749 895960645 505961566 989466717 939854066 928747872 874158303 895553529 803863862 219299157 40997599 646314300 862105378 225358283 534504366 899741160 74792662 521209203 959856769 900744072 975498206 988122818 906466462 741164022 333088987 940370998 738743674 860811877 731824685 746524043 865348664 221415365 77089600 914572378 741909304 970239672 426251471 16903361 391401523 691410769 713442058 983508554 805232283 479972836 129482912 835229616 392736588 926333967 975222046 373308363 203020276 399723133 158141843 701473113 328028850 978792259 588930322 425079672 667390890 862556303 407560876 926194130 988295138 840921028 741311311 995005876 908880978 818265290 15384132 391385412 820396477 837836299 770606841 308499472 103760257 986498110 812149725 880272388 395737245 941775461 253717899 536413659 933337584 858620886 691796228 84874706 397670261 81510439 859208744 299968708 809819639 448981151 920595206 967865146 774990225 696167558 916360427 148140728 204973043 798559401 434537489 880410119 544554891 430125525 856817234 265988757 971914972 834210554 495460067 737020247 317399293 635445437 589046140 576426700 590656996 854084237 795545838 966010270 879237751 603886771 471794761 951839826 683243225 955829515 753452874 223385014 988314804 716118052 948217198 393018932 806773354 965170121 576744182 674830707 863624394 417226851 559571185 742988707 60793418 413740277 4558244 563931295 179957313 286898807 921711374 935085868 990838208 859351283 445557650 766491608 604274668 491506697 143825146 827276778 645933576 647660884 891587551 494728247 364121789 104806305 830046647 907629197 144517540 740138569 887933947 571653337 994558667 725578775 860102578 539860139 996561453 925851392 14859677 873670213 792245844 592617410 880382042 853811406 774346061 998201444 896080504 866592428 917122253 864152385 900294021 783424146 813167619 130691180 560667981 994939110 260177828 678626844 75421360 714399948 793379409 696380330 871581211 137802889 908758287 908694127 361080143 84690993 319134284 89095107 634528461 204420949 824651560 776786849 819692371 938523353 547229892 763738982 401729066 240932230 820887099 922405717 345419539 638448511 973523961 766219740 945662629 845796998 302713620 313630860 23216119 140087267 241428542 355678307 923328548 285216381 916678462 472168284 845235261 785871061 15568591 283464710 797307248 816503907 952235865 991980362 928269501 867529321 395591768 220998741 803106712 417643787 768853985 339362058 898418563 519413097 489858003 986691822 958578699 428408065 546673067 954187378 918752000 820651467 873482280 758932760 996453169 113498604 427487047 772395626 532339773 838975339 639220056 911283717 63126371 832019065 813035887 610790032 900192695 775153351 770543629 287092019 842061613 895957687 837534915 805305722 57534628 745511594 541751775 842507064 388975661 989099322 756684569 935716891 545234898 201188373 263931190 391131697 777897022 995353949 290799977 967405271 499678509 285641210 93756036 587907825 711302962 806215975 883305944 52335290 605305532 659025944 776119608 822034832 994540326 848240432 339385616 11033707 484703635 2746429 830053025 977711649 789099884 247033323 40410725 252159371 439405510 422486298 452396082 700360686 606797766 60716550 762121723 915110667 799592800 311406680 850744680 108653502 732051284 800681528 971602881 475707457 860590926 496212763 431040834 953459690 886215597 111566526 38750640 592332501 925764474 648510959 97753393 971551315 978075422 328848071 185145050 981876335 874198034 749877303 23702827 819283173 711602888 590716227 760368166 679282903 547452317 633660471 782556189 430310953 802494412 854461454 815175475 760192589 887522703 26692315 492219704 448606972 784371466 385071540 767302202 776639895 493986155 913224978 755917425 796029288 518096303 427326158 883865111 906222157 971353683 141959673 883928364 621564236 324946161 846021201 926537575 65058975 727510079 993949508 591623355 365705109 125844443 24004256 522850558 469720287 502488551 932371313 842498678 366959340 822646218 338311697 783431585 794359891 788055849 292286817 921591183 135845393 484392268 86305009 791142856 496250870 750586467 794328748 379148082 777360284 959085249 594218168 208623339 781753474 767401550 819848512 38122901 243999845 283954733 993871432 38554258 750386234 621229035 977664808 896743481 94284293 509121577 998941129 100509102 739104299 406379318 898079597 766567521 821547895 473116689 157928072 363407478 850028529 395548172 739744103 890421958 180127005 767454344 738809721 884962816 136370049 892449389 74735057 783435795 912896259 754054579 817975514 900739628 414712522 440922104 29231566 950328642 15383291 273875078 828344812 559540378 162751276 944098737 891313122 843915473 126789969 948392418 961599797 324864336 850665278 662663648 859755121 534508344 570355649 443154280 369942710 14151623 830613777 743036249 998782172 872565875 863339669 816149270 995358774 922555596 903189154 753583934 773832234 66452722 833348375 797966322 828561026 169396136 771418862 759643702 677773362 818398902 392671205 384176879 257416688 780744136 512272145 170189987 92994187 893002865 820674062 758623380 329621499 655374771 77884942 903056130 756653922 558137222 718664631 517029846 995590710 884337030 165129712 906307881 450718605 770118461 887776731 495815448 312828172 793170543 922954437 394005467 856311944 749122687 305753121 299054250 581966531 226708586 142016645 643972419 934581857 586065548 896479782 982622868 454098916 336485951 853542923 876122754 919824861 978135449 801563328 849782701 965136522 796308604 912380470 198679920 469252151 850073161 470011996 369882086 894894102 944967003 863883149 511480778 890734599 507965639 949749992 869761683 733133078 508012998 471648337 996327359 858110292 327006810 468377838 30808269 941253870 874596244 476733132 438526157 977183773 944126457 205307243 280972642 613297344 579611341 775602670 805173970 312750913 895935114 626524104 417895748 189467859 220731157 914005239 690619085 840617406 636808755 477336570 848764088 704724628 936399458 317674943 301513142 304112334 493051727 950077077 370223514 767944125 183395743 442727072 326639669 975071445 810879789 970709475 930254903 517769175 398444891 970026798 268167192 866293944 915772729 854737950 856727805 273314032 849775382 270882432 560390730 825531237 873955374 522232634 868098056 875797009 290399614 760631048 556225116 82495142 774949912 164301676 64506258 195590673 733005004 515065094 818507332 915087564 251956939 42113704 835074040 705911969 298384871 770185327 990834435 573332259 876992506 952324625 195699337 797402463 939675852 763170250 840585560 647873961 358633684 773785967 948573124 968143699 510190528 212141330 185514791 983031684 444384600 174285105 316215661 825879126 796458219 747946465 553969775 952498297 990741829 762765463 924773589 774900534 56558549 799819008 55913721 698879552 52410291 219207801 556776837 830229974 813345899 922729764 61759542 504873858 751748858 468431680 567197893 880068526 230500439 209754986 945337830 858808441 658729692 777477493 782209148 95130347 895940862 944155750 899973352 656174331 193158641 962601659 8188585 852958476 796677060 235823419 214673430 948221254 871887182 508540824 796492112 766801202 676581829 867680002 205344091 964059216 998917600 670256538 743052477 545101107 874178822 867250877 452190906 905537214 824594305 1122850 829171916 7859929 845620346 903610702 4131231 985323200 242110715 460374449 651324016 898704533 830980521 7700271 751637475 122696613 667821588 17032245 765332664 937906797 889774518 858352616 332384916 265557180 627451367 859535910 227211630 998956947 950813889 957427961 726110326 979221041 200683828 379588919 642481316 77749269 978580535 583308336 758268124 349811717 468413668 846888215 185571923 361694292 851168652 978636780 822898422 325044842 971841707 784396539 417312809 531359735 639390790 949903608 86382449 773147281 432900669 924762217 349529312 717391835 879613395 860891026 969407041 896103911 994547189 484750739 437893842 766968043 196520761 666671994 813878123 956624608 313931100 702791545 829961902 706636733 560529410 368240940 512010639 888652317 176083747 787966731 424774917 285598089 915754695 452763827 983442040 699292714 852904688 286561609 640643080 739837903 929212671 796255158 884172867 516716916 938906756 868671178 739280698 463520033 960073411 908932799 942772188 430325607 830364583 982163041 438625324 898051472 302183583 755062037 254194789 889075796 970948562 956001612 902979807 797425589 599063726 348337130 718829631 763407178 318021004 481639525 491348804 639974639 774104479 362498804 438335502 328129469 187276372 807457496 826967007 634282442 831311337 858652503 103447051 663347794 962504274 763795150 820607409 997932600 780954554 399418066 364364591 784409544 157087246 967312937 196317137 835661908 768202099 829446907 550664337 273225788 891475118 969280702 139804735 970028974 814534307 998493622 235639771 195022946 348635 817781748 660808529 490931131 786087721 757813104 663199201 785495658 381226624 854179298 256924694 182979268 609497329 823507988 786927762 770059768 26831334 282418889 395355840 999793312 403138339 792757169 238234200 930058125 173643843 670995092 912165220 506175129 931321280 806480902 48364292 477039382 6019401 744839407 885496305 705699351 309831832 793960463 899922673 939207502 866547887 960998193 335004383 777773693 865778583 258345853 258443974 436226423 970412193 837927274 875520399 964889089 562124806 610750221 892805019 286470437 766895073 895328737 815075617 921053853 293045129 390922336 646797541 565986617 786867950 124457329 358816287 481865636 790731920 917178133 936790379 158804826 683763531 656119317 116866382 669944890 886720636 932191138 870895882 948887619 58899381 790415017 913109895 251903516 397288015 183064952 751937674 636751759 720022185 835862853 379670429 345527970 966531244 559235310 885737224 952509854 788865134 525953225 840995816 175646965 912361436 779690984 448036808 871198467 737020247 364759280 990714817 835193305 400612546 638804261 674068145 688393433 987570495 71744708 415667330 994916726 962778065 976113877 919108541 938168146 425032762 251712474 558885995 941301040 7025625 803780532 900815498 768952055 922324223 275426867 878025127 424693111 148664649 608488118 384161965 722021624 56354022 384643265 765780331 949492304 788283943 686270427 977390245 792908536 967237610 791880520 353982098 891446597 776853460 800442611 910095967 101351909 875309601 788041387 806596386 888697817 909550777 945890762 819314582 737020247 368341175 164782713 108200383 994613459 326023440 982012450 754971186 872032064 904544037 430842235 3078957 808181737 309698006 716321845 701508087 791527666 686865771 167731908 951778520 104959735 955996936 769756563 364542348 741526749 769914157 368701717 788688503 635703801 687596936 477088853 172001652 845921563 563217007 90783262 948669072 469470571 756424095 517223414 444904310 120528000 944720845 701605110 983886494 144349782 287930630 939428386 793638249 768596555 575100067 581106484 554166357 929574481 632998422 266888811 154435386 262842365 787704415 340817196 604603838 755664305 141426767 967336079 286315920 659821637 816269839 234528042 818840143 692503801 951991458 891171409 366121174 97451826 381501463 955855627 983914535 924559306 186222970 788972472 876590190 883017925 893844807 869857506 900507463 929414964 955085212 142945951 157180081 984287140 626229671 192579420 828821983 996873483 248680234 171287380 411656499 566089789 699960258 402071587 931919978 918106635 489570478 356198439 130364763 359445045 844818835 760603420 219599500 360036392 895774898 627374814 795748807 663459980 326383582 690730685 926339328 116687093 276725970 531519634 219258870 928972873 155910097 950985781 760988649 641579314 724178702 407644121 336799267 408256499 862578121 839154244 161415879 793199023 928522817 970856898 936867727 810839666 450486633 952361535 818162211 756696655 815547746 269845250 955529926 866504480 844394371 727951992 934148997 315279978 938918202 535609274 541289924 772738639 80747754 851206119 886187086 370173999 806778307 848459523 410659397 945341356 601917815 111828031 947101069 165556593 770562055 941158747 409998510 266930139 828799327 872521594 203230641 545918502 369274402 163691605 66134219 76657583 470676574 109080242 848852676 19005961 682986934 910988814 550209017 693757775 956771045 813463126 141683163 175624073 967194527 961919192 339057941 755811532 878039154 167063446 99315566 78421894 827175180 853723847 927431523 567120706 757002658 107745217 737020247 932702092 25956724 285893805 572280489 633883654 854218587 203158927 250363840 801265305 967253898 352159126 868508680 185757592 850999259 688941751 293368634 785603100 948295588 857515492 342573332 691120933 859189228 20039801 871350511 895101635 924326205 838226447 757635261 256638172 531588955 473891943 828360352 877809771 767158151 603816718 16499619 66162452 621550416 216134972 746598002 508649309 735648348 744823183 845644987 632679912 259671499 798008058 976013259 646115699 371311894 31418677 818788941 241243979 127011600 241692566 420946232 132342760 746608645 921271960 149541217 41764386 249397938 175523926 488397762 109066314 700393662 922669677 106498112 574863067 837406929 388357088 314648738 269750933 625571528 382778969 867016522 737421014 430530518 726250260 753510121 768896736 841724058 72495446 520647673 283313885 753678800 857163357 353962405 970290859 705663602 920432746 874664728 828225411 795367801 292041114 870288624 835066993 628972673 747990860 832867636 887454577 942372697 872937506 983787838 797376031 114043024 857944043 773758365 953396243 986042078 349718956 134873231 269392954 142608818 362048869 286160574 369782502 835154228 315633445 81338101 466614474 205835082 236015581 878909328 663814976 836457120 740205966 909649298 876577533 829659237 944035350 995418733 939232792 874930032 774805704 388994856 281081850 774571792 546736179 71555807 9651917 9534889 829402833 919582508 937166995 162955723 881917705 255983104 901995342 249423524 823156554 727464529 13270854 37309848 448638219 778689522 999657704 43525831 292017543 860290115 218884544 814803691 984393609 952155684 995594575 780521296 244537649 609969736 883494077 567744589 156362207 942645650 531813831 625948971 152067626 811615290 953545408 33915601 414543311 966785222 954205523 114937332 978085894 305532184 181689346 152783079 367023662 851406326 136280362 760733104 763878702 903390293 807997318 995907066 715596078 919553363 816063820 821953906 830498234 648250268 934657294 887016679 881171370 747960234 161203316 877475934 847051478 920320017 238933911 808516723 525627334 677573036 393966653 746159754 959136589 313013048 887982655 466402925 769123537 267054484 323202359 893723545 773483636 800034416 776613795 558824226 57402743 994975726 730232198 918216331 38460635 905689168 813221761 893434219 452198216 908933686 575254921 182337002 887021944 924678818 845533243 684337227 864574244 183319043 251557326 122509353 261639028 453573690 740965492 24397529 72158251 861642192 750879657 858441063 97113661 584748403 244614184 726888687 827878414 898116838 506896060 868592987 717415343 438835743 34731764 299524337 867005694 133182422 581619310 751889609 164665705 330683025 503845720 996041789 356495332 549511358 888920962 87374247 42094267 955264933 868643795 950299242 618744314 457899338 990665347 415300105 631470197 200241877 324848138 820184430 870314230 974227161 750474282 566703799 849581307 843498948 885815165 239449825 954292372 775506107 926870364 118179248 779524978 998016164 534604733 882356698 863598212 926883494 903908664 939267751 653481806 138320182 856101987 825151777 459161509 835074503 463942673 995075355 286748053 64360790 324824218 85387446 244073840 278378017 892506275 914823466 368318700 541482000 697640555 510546752 549441807 835140475 751179353 950834039 802702419 848249839 837753468 390272837 826235651 922968192 265566812 928547867 132731227 819237999 420983963 756205222 737020247 129914451 891582141 473880323 114409932 244844384 764941276 900716157 812684828 996404081 825997873 39198325 447527741 981114021 571185675 498682297 109619406 910983076 426842085 185191930 761316746 301305408 859110579 946140670 799151229 35228587 660478168 988766136 623883966 850199795 387082294 1814781 109269477 713903258 986742539 946707457 192692748 146132328 954589135 323202472 511210628 146780449 881879876 764481041 831147120 834370377 827979962 772987048 771392817 536545179 951615718 797279858 976740920 603070216 614212708 203026514 899592171 926916448 780869918 456115025 950851737 467644608 366940302 802533822 694221427 809670782 908928992 426784982 994753259 984990409 548701372 480181915 941721661 280610917 939335382 777219808 394117815 372745996 348688833 463723906 892618736 494550956 765736126 737020247 471096945 510212517 42595227 931072302 775044969 866364511 899366112 793512417 210205062 301513364 508025684 562065361 38869732 965077682 910223283 663312101 880148986 324654509 871147394 981753319 675655888 908615263 913586746 108442034 188584297 225828081 556424111 958420032 372860546 756350856 863266423 675083017 610686277 921563133 906127270 943390942 595970191 737095732 613322563 112323460 451632145 775972421 395707744 571848454 244929377 530525762 235728791 723626056 180550975 644917553 998124600 853314176 209623346 740039749 193880815 588756378 923300330 710409667 828568680 134005597 531891278 55613009 993739366 339220113 175283068 165795824 243823281 828265459 898854527 542320036 413451791 975414915 230081081 289622716 786289426 969675021 475933677 834556408 733167471 143161973 620697443 245493220 700000841 916403953 229929478 120420597 975092581 884747139 880998420 888356858 760310653 906649837 228033609 939493704 468637535 921153182 348103977 576323947 260708383 650694955 371394568 781292582 183039168 500831005 651749558 922756942 959378719 479055376 887721881 265057522 558588919 939562986 427697881 883486166 922460476 776607665 890748289 925641126 632606506 832201826 745120193 609661345 449994420 832552872 965833971 373133005 956636701 920618154 871821718 161386264 989095406 47041565 257200333 827382211 673195487 702399121 22311080 830730146 157611875 398603008 894078162 872602645 687869198 436997132 257915606 378723252 388589114 821234250 991043261 901486215 746692194 473067621 924849923 234102537 952281255 750261041 264437652 768204978 976355908 24420173 826794469 107772034 906653308 44135741 799765280 941835169 978611778 151974714 957274687 456835678 706030091 764566420 710635168 864972902 310311979 932312738 941924172 817551633 962651528 782960390 880602611 132962535 109854933 445992028 785755779 806735112 740330366 916500787 173106889 850383180 691796587 917299002 939513477 698879304 167852687 805983471 416650305 41370604 920194087 924575239 938265009 914148472 934367067 612606224 879849186 255417782 764532640 977514716 751501557 989041689 95727110 930010955 124511733 90482756 865972582 875562504 749859684 649390269 459887066 784603963 985722201 891676218 831174421 973497381 64081742 758720386 820113601 365814708 46195550 960802064 770387724 733223744 960596080 111387736 378195264 505292646 464296743 605330668 775364202 844664260 780512049 756889530 158585845 43274981 484758150 773347366 46362689 931197372 468869169 248930529 398870796 785125793 69717728 742942007 343321602 820786596 128722055 272284786 440489711 439085530 831862182 987121785 191536112 217308750 523801324 309439856 421547741 691421740 90313091 377158508 860806936 663854254 407233872 118313887 288876294 544180735 742292346 581637249 956129530 874827530 565694952 307086539 753615518 689496703 792327617 860142957 407010174 616209829 927796427 933659111 680666378 691610488 856306495 63197546 778913988 941019722 739444433 887433506 862177308 896789473 204451208 794432840 793056771 872174890 339226554 381727965 964290976 949284860 866517798 973892213 557589550 360438613 247136379 812880648 881742891 985554777 922597139 69240759 792190167 269596915 61863784 254901875 730031120 726933785 763693082 350371208 841972084 931694235 151199355 837789961 776348372 657718143 520628738 688828781 919217506 869024311 746725886 585179077 984967941 742925540 804867961 815947303 204946494 508993324 331795078 848289553 600277171 842383653 487557942 462188907 311877257 751083147 752015166 289510091 662362120 975050911 259622923 674729096 530677425 939532861 606750628 744634671 982064532 447975927 95660134 300648347 261393392 924445482 885385270 752021160 497539737 919874251 83335873 292716551 229897187 870373622 670964280 191253475 229794069 906755934 592551576 643415129 621638385 185500290 740135281 819332446 996929539 918464682 846713108 813147159 134157518 212918254 853956577 584463203 843458010 2475620 959242320 302667277 432139111 886095449 434523477 513224164 291026106 441800342 871722369 416900449 759424768 565887580 834394800 840526897 808367563 695617111 786652743 902108419 803365621 560103177 965248765 937455657 600579535 879605486 101220206 751380873 412890842 899930468 916884447 266136720 445492777 812966183 488530743 756301614 939810399 821647106 817333519 782697860 741015623 760335220 937318415 845751552 525079336 897867053 554568967 203253495 803168184 776073005 987140862 123926227 708905479 982144517 56321578 370020208 31782491 783342627 525602791 326418049 740944276 414897985 795795393 331561417 832201590 808640586 837348414 966289951 994441467 402504562 843115058 826587000 765861375 825250922 890407681 796216729 776294195 763085962 835569819 825187728 887525843 72845446 937260979 786051822 429479458 981421542 320004894 784063837 947959678 449199806 968230953 943099852 826518980 759328859 587000506 761445684 674049430 862777399 718352440 741794245 827293714 404505925 74751049 608413503 784499198 622305386 341545225 568746942 671026788 213012619 892212533 646911055 652031896 677483460 84347154 953574362 879102544 399150578 471849177 793370279 809920165 869229510 474636973 298350602 941626316 977698756 381077540 675214050 29945946 664158539 319924828 795078484 928954205 741532899 831985750 7731308 617004079 807789046 835795494 963894404 662308332 912421745 790688930 696911240 992571616 948970974 591234807 912542312 638039516 509171733 225633982 734056357 804323913 845406740 315283912 498266119 970359266 879742959 742213989 994798813 42423507 647607288 221000003 945219283 366142177 758115801 649053781 980755337 740193799 188262972 131789408 911302242 888243751 976041107 860219261 792762370 843687274 300405128 519351801 760553052 831699805 110260175 923930425 16876677 992513013 782160740 956150739 985440349 833688690 788629460 462971237 3984600 250500584 122156390 784123734 747145827 448356756 82188125 502519797 670940954 841103174 321093052 235544639 882499117 989618031 942044764 730141933 877762819 299954838 86240286 733544492 382826802 954334911 529876265 307964969 895073767 5049770 970380985 776122373 111257900 398016416 432563314 267754454 894840509 581598117 860123802 463563858 897475891 722313381 784071641 258602871 340859019 86172308 555151907 916030972 116667273 972980658 878390155 248886770 846061189 391860818 528823868 201376796 704619326 616279366 821990473 868173961 496593246 423400948 445571536 890382400 492220741 64358440 954560255 557226024 993556256 365316397 850782709 793476233 158547204 755845728 501348421 850244817 2176761 703154248 790686581 319379083 668165893 812622250 494736950 223912657 930110222 866500279 847678388 220936606 811229112 146139572 460811606 476556340 262284184 865787093 13704606 587933241 857694671 358676294 753120467 253240450 306160654 389907360 774467242 444321215 999182907 755245729 877494558 82192237 928115890 984480939 939373041 790389051 651989984 86872728 894898192 794915550 569212424 370684926 939385262 808721386 100314077 737020247 909138118 928921115 711179311 827633542 723793059 849704812 986553171 888912909 953033220 779617198 790727390 938229030 894002888 579276548 719631346 297626597 992872165 716875166 815356576 537373686 921809928 946652368 913081297 528081461 101497831 947398601 750671003 814235500 752227925 810958946 299004474 610373830 885137936 491546881 731671409 652705713 105920156 775858012 761300043 748768571 202009882 950937129 280366953 770378797 887081519 192794063 859248521 387674228 758218116 892474625 112640383 798828961 40212165 797454212 814512881 338878267 61503739 182962398 912214368 814417450 448755627 18295755 503191218 856756093 949536019 981496450 492655491 169461201 942488160 399868858 352152141 57712316 691294606 783450470 791539483 935687429 225259912 161204865 801728916 400155197 265740523 840782273 854734670 140224795 557407175 850649747 711423188 683638979 920298557 401337781 67541777 827061807 851186172 876680562 243263918 980377562 56615785 76651204 991973010 52591923 895064572 927466222 471244393 460542286 206986313 580598248 565884357 675527700 887330846 568932130 981019614 860875079 594041674 244276376 958561989 796728691 89153798 801618796 747675860 695866858 895852256 966942207 888913611 781520678 733387472 797522889 509208925 806579336 974006856 967781634 962689194 875097891 812442961 644348518 288121499 812377602 919297051 810209714 178179530 555203797 593142461 731697611 639835173 682666823 181132151 79669687 881328460 832214936 81196269 836217497 278588668 800631573 748257369 106325720 290472637 186332832 60476751 477938732 953473358 25318451 30973193 430010686 838659648 993576703 935650323 271683714 114500756 863019130 301011441 914372939 968883755 889336325 327536025 823143460 909513551 109561935 804590591 895749097 862540016 2622385 896677790 956193244 860975256 27945173 885970398 690796998 861208912 717244947 514905517 625768012 177578391 125242006 636373582 810198014 209642678 309843882 425153261 379929289 838405000 904896545 40174241 278477824 913596282 880611701 664662330 141188864 149001702 904445639 40932932 836755068 704819977 825594962 575505852 13023678 753125484 409847854 493792901 637769746 765013926 946063873 917103778 76778370 462584756 798662886 831331169 992380045 927548712 841948285 374786741 811360383 761025873 408532988 749815359 500015679 866696891 894552458 216429274 40260185 957052392 929127317 33952964 319682322 452912654 955228299 78920969 976331645 826164040 719827181 826413834 745316478 278034996 186536429 294526155 750480946 798885298 713260018 826823652 262987440 162955591 256668933 780598421 796637110 864042746 911763888 864627069 168183147 212618093 459822122 205465833 827174409 193045232 900530047 954210873 880500590 707593735 422797506 633523698 146578693 861315411 832444797 539771184 786682452 981945849 263016328 727258778 487208753 327071549 173147471 903189551 701697693 236214245 568401140 824919293 455980587 394237741 620147880 932938698 602701204 516946555 879432595 188382487 886193614 331733629 203688233 668291859 983180159 904599680 910908054 174263505 368090625 803154706 791201496 204395303 939005451 937232322 16242777 983154733 946656443 780029582 839134361 576058972 389019122 843035387 365859804 959875873 141122255 241209857 135256844 833954091 828372196 507021210 40525303 802999083 997073282 623127126 618931776 217176700 565338003 887405250 877920556 765094150 137807802 854789662 137834985 674315838 181781386 933725735 149188319 289805650 263361442 936255995 374884337 887307037 430846781 938481592 573122087 419326226 90441167 880000339 952616476 245591459 716384965 930799197 963483516 914718393 726664299 589095164 649982594 852695576 853578367 875842046 889395711 655475650 474204187 756354766 283289343 968916908 8390167 916025756 809635566 286964318 638721039 868757194 757833301 390849334 877898259 591761426 46548012 878883348 897156285 677901791 179262176 790593314 150965999 361623236 826050358 849662355 721451887 893118320 360015125 838296632 763841219 910776630 913466368 788709271 922465154 236123350 592431300 629365362 738441930 466768894 663444842 256086507 737020247 988870257 943786612 921261514 779352319 944807062 290399388 259478552 949114414 552974676 3469202 738338288 865126237 850495774 64720268 171326955 786729475 835749521 356938162 702084170 644134208 64610685 759377675 988745375 754000574 167038703 454829052 866717386 88154043 646024903 988604488 791139322 891209217 759864450 825010913 650857194 759320765 573530020 500784747 778191114 209912585 250247480 706458087 929077530 783035938 620423809 307906935 197489151 72363127 120885330 929658046 737443540 975856600 631485848 272988305 522922262 765133089 650094252 824078499 947054915 76295846 938547725 106488696 587958504 599264106 937273182 862581423 881780227 824934922 193176925 915875538 909348565 169671596 425520753 944668117 24631783 885541350 855189089 858691298 247367401 974931213 831524697 368806736 936235762 373946212 686934191 359703644 95597598 734119991 856732721 831585829 202194536 966912834 699653251 601441100 971062831 318283105 853904135 905085803 748108509 48934020 744811170 17411027 27629747 225457139 876420549 938016328 755819879 689716017 519503413 180527260 378341077 599033621 746731277 44479387 544668922 709150885 899651276 804788203 901995771 191169349 587199516 84055504 976176234 846344611 73654956 562824473 820410938 732830039 575224692 391804000 952695915 941634731 940613285 978747075 519623718 354231989 250223548 453643636 885222315 747887096 49258139 990676510 361554449 718577100 808157379 609638954 428465963 911028660 302541616 739044749 826559275 815620439 596991960 741554005 826737499 843622687 991421828 814131745 760904555 847144049 981927442 158146891 759990530 977228635 873690191 990821388 811262292 167670837 504503422 808435759 894727335 670573776 879770648 986475680 299674147 817593156 805699272 885656590 794702645 558992811 877900197 666327498 791946123 894132115 880552630 758443085 318616646 411142325 737020247 438737143 859772626 243636436 916416205 239454836 256868895 638103459 927402880 855253688 470708371 874618197 921498853 531716806 997659175 967321106 343078586 966922529 563594630 523836989 852006787 754645023 361755884 509622546 976024207 766114226 827213060 277559231 737794118 258029344 965533036 100425216 126682630 956494144 934984502 719657674 394176197 956317384 488975542 509272682 810112891 940512340 664843517 777155659 575627560 264295229 855840672 981540055 199543111 763092407 777043571 708711515 907800467 872196754 25235674 503534347 836634725 911496449 10032458 285010975 791980897 894947653 291418990 660427241 322745332 120998777 244619429 710902022 805817838 901184110 680211978 856027993 877880454 931811335 401298743 921069546 965689485 203534121 154736099 843045063 223361447 883182055 698273309 205051187 367042568 524952885 992034551 140873010 937355377 311959405 855933955 762093115 157417654 879177974 941418353 897633603 816303606 102937432 814364564 744015061 244122999 141822353 995532643 751913514 705452142 822512189 503736980 941719872 834807095 963476790 610675934 174559374 222728740 617250895 760619796 803162693 922196009 833954708 730783970 677913366 83359962 804229858 586411928 66586778 322820487 839755648 777698703 122260587 660168221 495227583 984411461 142599217 263434308 610271048 445633086 534009060 748333468 837753015 732894364 838869115 883868242 937478327 273294864 690865907 779335784 396080305 918480036 400935240 849173410 904455107 165319649 237398836 429837994 204571246 797460154 836473535 843096543 824024439 781869935 921880989 820226521 642602269 214031265 881079455 85891085 61377573 148119916 401836674 930414162 370015206 233428370 465248819 985989853 137385965 742775312 805185821 419261724 228283216 793976541 104849233 428314266 84938474 899297638 668421380 567578604 509236224 239687893 273462848 275603974 293119498 837218427 79824639 477253688 704734745 917053545 613934193 261525252 772012306 121393544 417762063 715791920 984607907 365285015 822192665 341551054 473529129 355652861 737020247 776903356 314629642 59419608 243929222 380879931 843459745 934401609 278099629 732847251 874108932 925927544 310413395 868062308 502666859 964624244 548969616 971994571 941908681 758814153 959691471 301259263 370179839 509571762 987821617 890781972 566622195 159770826 918712226 443323044 278442069 802386956 791580352 676573714 906194532 546072637 797953665 376878378 894987768 309721426 659749280 799452651 913655090 333186591 868603912 225468088 80621144 836938028 691608981 281854443 848818020 280792609 927730395 854739714 16882863 279194191 647486748 280490048 238192532 931210825 339145346 787102003 265574241 993548892 983790543 812416002 945672393 676584193 806562675 945475324 742274359 181543282 145934626 928633096 637607785 518828344 464591438 925717900 717505593 954813835 825598832 945991767 832126240 917526600 157757504 898971178 874834748 963183523 171872051 861221730 643657715 388456351 369472405 420295811 953436757 308979334 709499276 947404003 887707370 810622892 435955134 981079145 899360877 248012195 291788202 720781615 495859872 567044570 801697253 662199216 892966988 222867797 367543858 742980231 579776475 771010217 905718102 499606603 606173278 532867516 897166292 501627199 279509072 805139622 825736103 649835591 946029749 551469225 574833056 945782768 781193967 39063534 771666608 477641353 87965104 594256747 232394782 743593829 911725647 978072447 986863427 916035585 540509835 843778269 313023439 796680074 973851949 288266708 488662820 412823101 683413483 813934348 308987702 953019810 866516915 737518582 639695211 357570338 982754184 813964448 427473345 711056635 502919740 70316425 760950221 219743407 659150933 303201809 124155897 324440451 569082064 970294424 759087176 571213271 944228252 809293752 749817214 101333759 874145595 240424582 737639940 909894563 423577643 76228068 290521999 807579982 352972609 399744315 940413305 937151137 310420568 282133396 807720481 131927040 18373720 110281288 500836882 358942677 935880114 327944898 131264523 887331266 953888724 270668698 789732796 880683858 945581705 21805690 974196349 856654987 951031340 125780032 935428214 702470532 759283228 521761930 936886782 597734319 919461204 330813343 515998990 951356666 238777593 927603679 732067984 839751780 87570308 866191012 866530663 748573187 101141179 912345271 881436077 788442442 15700501 845539293 400903566 509181006 914198736 166856792 748775556 231169037 255741591 557181896 591466566 858361415 530975777 275328238 787510192 870302125 902598527 852647058 784960115 811730170 952915736 639988042 123857316 394532239 501234475 881955494 661041029 862717528 146995224 879989931 980571240 896741175 21789686 821590940 442583880 834033181 776478064 959254501 242275264 978288304 741086911 689544617 381518595 652577826 897710612 753838678 462546182 914860635 887109119 17055995 542596920 678453770 590563594 896172846 422113509 848877693 546949672 760482491 79294794 875913462 632646077 343431869 97682837 785030748 876864170 313933606 648324617 778117661 679524257 731173489 434400985 39533050 80710223 327984658 140003785 963821878 335587690 658066241 947700007 785707114 723818737 92629105 616594184 769796375 213647858 840155686 507483947 487736029 436329948 186732296 850098274 979347318 11631892 241705216 338721454 143178516 940979908 976361694 653809303 387040705 977784264 879362575 71889183 334171422 500293731 508804541 987665952 826292330 790796232 963152297 931404662 135828717 970658726 640357928 101496023 823212926 809677159 985228378 396050444 320183148 360880006 365582185 565561881 854449516 917186994 752860388 731446497 577094310 195327103 685252575 944607161 736159465 354530883 850795350 785696709 939417125 746882306 139127789 359093332 566131594 689160878 481590278 528950313 506701065 847293074 612975577 367569528 251531363 747346101 964078873 909575857 895622058 309564991 61677313 925848757 925004762 64188951 935451707 992588246 769979148 641417574 438574905 939647556 2716750 521766320 522109369 6526571 943730841 966605047 812710265 500655097 891503405 782592561 980465642 190048683 359199986 822671693 963588790 800182483 46327453 478311689 719962828 928888681 822179183 923093919 309146079 219690587 242515576 39589244 967638247 763016480 454182661 660088736 947797930 231988886 140024214 788535411 594098675 890105356 872436025 771644716 674526132 457153393 913555770 828231038 632835290 333535761 870108377 559411679 712531437 876880583 117500247 821726056 536372053 645717294 387944442 855805358 848830091 782072525 860992321 738812466 18962727 980287557 779038299 369961914 901968542 937703440 595662810 40795626 159265131 509178278 257604752 805260990 740357893 820036788 946805047 177143927 560152630 841291275 906847992 933136397 254100039 822145396 462172376 800116141 793928675 608173502 955022067 626251807 935473305 767527137 284630587 22588038 270499701 484602047 101402325 912040837 110915109 334252613 640234659 757881069 743527388 586037167 900955179 855842096 604661382 431039484 875308471 564502485 91742245 272812426 939090129 834172045 536144193 897892421 821127047 304590833 762968156 536726162 811808923 559620190 266681995 815860322 238400591 172374880 165316836 418420199 405614741 268607408 554409836 461237812 826233156 694750375 600204615 910415872 86055773 797003780 493845358 265779252 393303418 491201556 636209401 257338997 382061719 40589074 27710660 828506472 495113389 880041269 779784059 455353079 868102935 943386433 4053148 918156318 314348919 771228582 925975045 938542325 852172335 847535240 952332197 942387343 191096761 917248775 729605109 850837500 687985383 480598373 203565137 46352535 440492704 974850180 937073057 883952207 977057694 939588474 220820773 894336245 864291375 969648629 404585983 963553366 620269960 844479544 829844434 974688245 231872208 350394123 814531320 454580294 939204500 813316474 573493495 824341813 301609535 144921468 453839748 946169386 70212310 789771359 296461720 387691926 981910439 36296548 445399510 755450641 407327798 803936154 907739556 987086713 859043970 800449796 848104288 938530480 204443491 419067369 451878419 603239615 191947420 627008368 452459248 408008897 461157978 39735198 404351187 14524950 599939321 633942679 788264578 277945350 883987436 314296210 407185445 755427552 949453008 785014453 106178033 449194288 164770926 936267841 909213107 623176558 958788674 980726860 687631944 800873813 761914084 543789603 459234203 509669587 395816504 38392272 697668610 508322955 175370716 106245951 600988785 53751703 396815227 573231271 760952197 530647167 940603928 250621636 999459571 949493313 210702898 815981348 991680522 825804617 796119265 806445326 18569062 836173218 787548627 18863745 818513780 834552072 243939536 751763119 658836775 865305105 509055519 210645801 763323197 906604970 810584489 341310172 966276754 698683043 851497919 960275599 792385814 950145280 46900183 3669657 886683845 806882688 64849265 802506512 194521364 768702859 691267146 144312049 762697596 850567007 745133634 995741119 940213828 522294394 129814509 279969049 76695797 303842844 936025780 601593774 888316669 39360280 354373990 977972030 908217414 947590988 67798455 803383702 945418384 835105473 868590700 918431474 59259207 260017258 363432590 862697944 96835676 171675440 812082446 559479650 904726169 764757080 995742618 397762566 379223502 299800416 323902659 747191725 962700789 978233242 957363538 471247751 186922391 57635842 373539075 870100306 190344588 160339048 313146446 386089053 170551690 823515449 372843515 194106630 405459271 870116363 131061519 160866969 713436105 546019883 431887129 818655045 132543099 803449556 171406033 841184910 976256256 509232845 320879980 736763109 905398847 534827325 616529094 560300965 421847497 275401903 298577548 820003042 865002652 554193197 436327307 270440819 770952046 397702301 864324189 996596076 762703493 157331043 778229847 399217981 371163640 361569738 511475421 963952372 870050833 121415196 751543286 781367511 475383208 519199092 495809361 319727617 579605059 328504470 410536598 984708168 141334394 319741186 172429081 203070478 902343720 599825148 517994675 550671228 773902499 995650267 87964043 248673941 441972449 999224690 952961085 846504361 169224727 491663212 963221977 791396931 350244401 812122731 375742889 599991146 192228222 223856600 935710995 903058235 18055482 68342359 965055030 419663478 862460323 671216616 479089113 857892179 846853323 332657553 189630586 68323942 381040729 779352861 593727043 396681675 985069296 652727330 975804730 753109615 756611759 517080170 925230676 594892665 97834151 986888275 285961007 785191947 915075514 822445269 724594948 794273417 759848923 26566304 836075074 9836225 995580315 239287027 128228870 843318036 933435963 750323147 484190460 935662891 80736553 608168415 202392141 802357244 787615063 883934314 769950314 897653845 965470282 833761823 215417073 596294976 981196260 938938411 806639203 282962068 705737594 481850520 994022168 898585773 97578082 262860562 847897241 840204441 722670918 118956012 254042700 842705901 847922399 899006773 644402581 762291871 419574076 366118207 938545571 747432505 527846906 949640447 908772656 788816869 102200154 581055681 237383185 61708661 995816475 902018269 945567833 611371592 968877872 937985218 918643632 776487097 766168192 909368191 304416138 207503360 638835629 853861168 354809555 975457772 473085850 725035213 861522411 386464179 260424338 218931885 149131185 772295293 206335172 255101379 411820804 30820763 672711415 878524014 874685814 896367369 424252742 740179260 59444696 21885569 869982377 591835092 465666822 342406819 351392243 974820290 982645498 16166930 224482424 738838874 194988942 190102109 199129858 78207998 884602232 96093085 728731738 851400756 294449921 927854240 979365018 757815265 366810762 934958160 892421367 841201704 416871227 723675403 233788710 10893311 931541320 834242842 674237197 439569275 968772828 600824760 761433647 994701744 236466551 620241135 465515990 172979224 823504519 38263215 29229411 920979013 864078869 782553440 721567293 307764753 755454926 32911778 578496946 755947417 746475985 791957811 868868991 305554644 62927909 898892225 668976013 896564151 949865866 839700931 598431421 952048321 874537491 831669905 755339249 340600730 801783739 190118521 18393521 657376304 918118119 925103540 487592032 766811972 200217563 939123231 820190404 159070705 562597160 537180173 888543022 474253479 141569883 786020829 851157847 150091648 537117837 74116986 681752241 71529988 267385124 43558793 824229314 984089335 758935892 592581246 762579431 840801857 863013613 813025260 876007431 168403937 891594471 479815994 828238169 118996879 926857961 779247107 927949377 947417783 797530547 969224248 534780368 136860051 15694527 157831305 922826868 336960621 905073775 696035288 758640574 56694732 255982964 621035968 874278355 803193136 444676675 976564763 537973368 700594010 479931201 680573731 610292177 972198665 199440343 331606317 647385928 987934309 624262416 728418283 820438552 165502678 796105318 964459743 780921080 827590121 465957955 624087354 392919235 813426006 177836661 766854402 703105033 115677723 829713123 94544064 523174672 756175698 846618319 783525527 849350718 187955298 575245794 171581081 484130303 566281653 523568575 886994539 267953953 989104018 68479177 616454281 742945988 927569820 46296935 989274778 520977929 990104713 626274256 765107401 298164078 894974347 937588812 858056198 604710736 318585500 786654238 22099815 700396903 45063943 746440206 904843705 214069168 742227353 883362244 974906269 581447554 798993740 985762536 601370747 915352393 870170094 837325200 813207900 817846882 830709872 139322742 819076875 47382993 788333148 936261665 170763282 963071625 530020080 788746066 804969094 895799523 998411983 700337996 923800824 990386762 812950544 213754376 938614325 830181394 832634074 749894331 985826719 750084903 387572146 794606607 410797166 657429572 770427108 837898462 115704634 855159716 812360372 900061196 972500104 490549303 480335097 18282952 464090298 137517258 982073433 816946901 815445178 90361744 910659259 221674086 477815826 796721100 609514927 535576837 820494375 212490588 407415991 919236316 955730555 903302470 957034596 980706455 979623490 876572277 999176891 968991910 49793827 435818745 373967613 890208264 484786523 16649306 460432392 371458419 827646922 595529891 96833995 956650401 649105483 200894071 735930937 872532474 741520960 453234158 863102581 870230803 125537842 561569095 108706125 627717799 79115707 233768557 345017978 371007301 891228267 30933273 468637974 782870096 119304136 976747874 107466244 829662675 363484268 621031095 782956402 888265873 821989501 334949201 557264403 956699026 7203579 608612878 194754246 913331271 767430209 29878115 997662134 662400818 935143549 585714009 211579983 801745887 943450985 969386009 932165708 773099291 807625689 135414938 864717047 196984726 734911782 270809429 621522830 958053166 95874872 825521777 600623608 819656656 915168091 785252193 855456647 281416235 258738702 971742133 748514663 794017824 208794991 264978048 805562977 458226717 846089411 838314694 341915152 826408137 141194893 857746567 967349234 105358017 795259205 766370351 920567136 285457392 885516110 886357379 10756336 15725134 512723137 903761490 948375343 838096644 779606445 80803101 858050291 247617409 837526039 892493484 92441902 130175384 5051748 282020667 330590038 583269895 990654897 787752136 772278318 714820532 947290913 825678406 692566762 907575593 791975470 503280118 461275260 96964192 222311253 230761098 851413918 799201727 766780417 498518935 901922630 441513792 276823706 516408314 709726257 117463335 942420562 775403201 970954557 408645157 783754056 767242106 979874087 334594149 984455378 986209567 479216069 822578328 102805780 650005045 943730276 759635970 927198947 846631086 944767633 762777482 998076565 169981873 721225761 140112521 378843091 726980598 231062717 966952272 819307357 37149229 778773132 266602916 21082782 660751751 754994479 804749697 977990240 115517638 891607218 43520655 995755827 984913560 116623367 771013290 388169095 84141238 86487894 940783016 950494548 36121343 368754662 333771999 967059326 818949202 828045433 752753667 295381 953940366 822160536 612540002 960038279 955924367 946733751 867694319 767949213 998178714 858721017 179611135 519394998 878314396 822517214 121569193 404118399 48479975 601391131 869522544 167117699 944667611 856709729 821641052 968020767 482202733 942882546 852766386 771761049 999042662 886355088 917080642 883974233 823877874 971922445 963899971 414548176 567718584 511444289 742962485 831972016 913142962 675331056 102352289 451590542 343926277 789008297 548919662 487469887 59824283 640096727 868174318 843081351 911138849 242299755 825758316 226046437 755616006 948756011 284215938 92600110 933354163 803512040 829142045 788435822 645131787 225319401 686464625 491209883 959192786 860563410 875066230 225187032 965966426 491560398 750956608 821576539 98479695 54141218 931935853 833825874 992232802 971980786 361556703 967449009 517933712 771104250 331460467 640212961 874807435 836772055 925581775 817139416 945197826 962220972 682418626 495066692 861975566 879767441 859823932 689388458 933916894 348144149 899096751 665275501 473410234 772468268 988462586 540860920 233464033 670321619 939763154 83617091 209477614 968109487 382493916 864568228 992922835 976255943 957376003 817838009 779863666 773068696 101125907 996055787 192887250 112893675 753128830 910718008 848287031 542377019 884325885 515994526 89013883 890374567 201163361 714477118 638569896 73097190 177615845 427383850 870565373 883139330 461057915 328043529 908859927 649193489 535739703 48736378 182011270 833394579 371336647 808990873 634257003 943636455 787791954 751548450 833839763 107616350 804007464 92557847 937792047 675540289 854318112 205054668 449373601 857714774 233794733 570658330 384332234 631810137 760847911 757565871 15098232 611120463 253544275 209745577 233769869 862274378 872238997 922915192 885983434 216548562 252069104 980158632 998450037 181335221 321249228 790978043 254971163 898583295 505645342 873374513 947435313 802254801 232530079 343112804 181011253 995529734 820776486 2215277 953525551 763978153 103554395 772141820 486559679 382198338 42292499 925965451 725453591 244088139 861296448 901293695 124048299 591470890 462509374 832760270 945534588 978285427 147662650 195176623 771245236 861207792 353088570 132012548 98593755 989909107 971750624 933109867 877678553 553027525 562412068 201075198 888580149 943188454 210973884 950808642 848698308 407061821 876031074 470886984 212709526 997057760 855118607 8660640 990913154 322760923 987026667 264275098 468359948 910567878 947907127 348209773 915086037 773238692 262522870 906643148 448468951 716909142 300851380 36791151 821273331 164286504 957888371 874247052 209376296 285979568 44733757 302804639 789803165 744299959 895519052 440947357 975777587 575202655 973249291 943361108 938514343 935341671 211543229 787012797 521997892 522366563 213647307 264394584 948094130 973708023 773257029 684513722 178216838 901126414 963179963 912980204 372549053 966338604 532730012 822575696 265413358 404684106 260692032 293706840 991836629 973560028 887054524 815020091 156834059 931887013 880335250 698289169 578055942 461368367 618967739 931511646 957686232 562500545 776673021 738681761 866052604 953538324 697195468 741165728 774079950 930877706 873836288 38412518 819465413 861863934 777509730 261301500 878836459 273960465 999038788 878175410 795367368 914597969 298912709 264508080 578116836 200763726 567934954 332328917 819636581 963799400 594819978 244938847 184650091 813248528 284260044 967165312 776858835 278748916 221449540 384762893 954596502 509966230 633948149 868022208 991347500 907271618 612646673 748110953 758244954 905896662 414036016 826505510 864030363 259073296 381502557 767986957 798107329 966502096 841706477 203574400 289365338 29452972 960728271 183208871 625801419 280691220 740062452 278633348 784359075 107809773 758940740 825495214 743209399 211777269 760133364 881548414 242751150 271079578 837213531 956508258 863395489 86284044 924860245 414493659 207121274 910976653 915964514 396416579 739178162 569328146 816666648 148809181 609130433 762546598 723600405 88803073 901056582 866733081 773878200 141027482 889096357 645898430 60699349 313754050 870877566 341846541 246153024 399493572 749271661 922254247 789668372 816921662 345553022 773936927 957659913 884328575 145914130 119653239 237214441 761910440 742606319 751986062 481476192 183598999 867846530 200931345 939064926 236263341 751609916 992639144 769167266 979879638 301587299 160866169 449461975 879045571 76182570 848742055 250727542 765519766 932457931 734395604 945431617 955202727 441692603 454311682 384285075 141293760 525785092 63359218 672007955 318813545 285665874 137356903 518898227 399731668 828249495 131993880 821115053 889052877 400389184 990450233 878830537 52174922 755491376 967821044 818576780 985082795 276535895 923109741 814812231 997412743 952183343 976825462 221011435 340728487 791304914 473235908 852134701 117289234 810448773 948166627 845285802 431899285 968905328 686060073 632869333 992032811 127997310 655552714 399763437 242786595 947101389 183804427 841891521 755416045 820065274 967659009 900019160 457667133 929750689 986904734 103544718 374409509 836523453 596602043 188190777 902331735 336699286 991518834 839264198 964954505 602124255 816524500 985656652 427336140 644494753 975179521 714573748 524233870 631715379 971362269 280286429 883188281 802222121 643097615 596907686 172750067 943008624 718015318 627760207 293165319 824449764 782171155 3579132 911706181 125906706 180400948 788916432 84382449 102528661 575080855 597037083 592171291 336382497 944773373 850017142 879001457 918671314 623124130 59347426 71707255 539068163 468232222 761065047 767267054 941863023 360588565 317587415 737020247 470419962 840524653 832546366 809019956 717453611 942213847 520609995 924861924 167936668 944329264 112002549 152924270 869303990 93090532 950013518 951300663 826215390 884307941 781279199 279081051 520410469 971129578 915006086 428137086 854030848 747900888 685886202 990958471 804768773 756683968 445631257 909533892 837953567 958953543 318368219 781057312 889327913 173797058 988791091 909146208 898138538 855995972 710565400 962031994 862262864 840635523 210402575 766161368 401042691 757432206 167981697 833984571 273130608 236094003 704263079 445670174 831782224 833214213 837138052 993959533 860581611 888448236 829738942 483677140 944941511 920297403 178707534 844891047 482379468 963695342 357921125 836626720 808037204 956408805 211732662 768415201 856421084 30341428 6559705 755062011 99742833 994780249 254511370 425513500 283864141 716525264 541220176 852287953 802307298 806366169 958985594 532193888 369491138 26026523 938190208 225418693 733864036 741888673 259767512 961247744 88440283 207968231 930039674 932920213 855845312 176661081 775278284 958911580 989842473 196041014 257371465 993048578 470395532 907083583 710277081 197952190 808633922 492207441 352639006 455833030 460315065 745644223 496633998 671906977 698660386 322448489 813699674 442551196 830516412 588998824 893107354 456179655 839265360 841081351 392860517 715210544 843691800 777918060 966095331 798298471 862454646 821936202 700832154 198731452 952300083 435239270 405289841 815677219 502255156 585910574 916442897 487650692 694167313 157241447 776555447 234485902 737973049 334003114 91050468 572904466 469977683 118630323 903875526 54096200 872193889 838056605 134674343 959965806 151768652 617404353 388850627 753544701 378541114 439855566 900008119 474978447 652929134 102713934 782773250 921119645 350683560 108981786 546409807 894662988 744071930 427675332 845002553 1054288 945759578 337335733 925879516 964476232 871369661 920117848 749826618 864729884 976853072 658741146 887219821 129043218 815391549 776719107 908044871 210758952 69826610 914142959 801046912 508937784 423956869 910435443 830750403 848759466 716422441 160865593 627994282 482658737 931958884 851587255 694872803 915992593 683503655 812524477 869514123 474683488 259395146 110325604 47023456 121192293 435724018 808524511 315441660 218358877 902378401 655119422 553458462 381344646 76127751 19367193 954080317 395917850 850231743 761699906 965500382 517290212 889858845 109586758 107084720 898106363 895552806 520104134 744530937 481988258 288056154 917395210 380589618 427650177 856899232 934178544 916454411 768116863 47237501 49117176 251601807 829892685 507900743 979800076 992903977 758252964 128841643 852213377 764497585 952392198 880857585 62995599 369993823 950297716 756615808 947090993 460150714 910858500 906103700 994509351 814545913 972548134 767324392 934242298 209932995 718655602 535598060 269734187 828412624 932694854 982748718 858708412 986512675 17218567 625045906 847904337 547602645 739828392 346398160 901859318 987096944 848417519 197950323 334710049 139132774 211924237 881797431 304002445 112178346 605212814 879142368 846868784 985162840 550700519 147037101 298743592 82722784 900655633 919587230 124851666 749750768 817153928 912063328 271478885 917599292 895911444 98410723 793325868 169639330 396779123 625621460 949559832 870231698 423897065 128143199 299810956 923754754 993932128 906865074 406282713 118146878 160137726 754159552 636665662 439838062 949936321 717506795 722913664 815684871 746415904 184505619 910327389 540194980 561800981 639568151 520214886 17367320 941831219 564707602 588240100 400882140 776611194 660509467 959278622 460595766 912157614 545821689 175434365 106261636 671534641 680763487 839286176 534389827 757073625 764352201 382031212 64140542 766058249 830715661 680330750 646700337 940581280 64002119 550401521 908417134 955130257 727263937 752098889 979026547 991713095 221686333 452488339 760209088 108627062 938119652 875823845 751508561 944259548 930210755 941229038 475177376 870999052 921351489 813691717 776670951 852613284 800989193 681734821 920489426 401438647 229871986 243622754 837959637 761361873 917552919 846600971 853766669 824472153 430379968 827587083 926996941 44499509 63614760 838734455 294491127 869643047 116014625 919011287 318107544 389316816 962696803 289545437 569737389 666931334 944196392 240948792 346161930 888740369 604497834 543051630 814703030 224836146 65280252 77580880 158395874 626006509 672990858 127849207 883656156 788688364 335091678 648354373 990885044 555366142 201874252 837780123 977829348 25965786 536015445 840040386 971572858 878820489 230246145 969985608 296413536 990584808 740024622 867477138 842965324 21233772 894616168 896480376 511310874 901095781 974806794 908037261 398441071 300348971 844244365 520480517 43008347 629657062 695348661 421273897 713260997 898269577 923214863 227230785 978134063 439461613 40551929 92754120 851627629 840791926 980940844 747955393 978854350 167707045 887619078 111008676 282802115 698904648 760523572 912100167 831875150 900168966 330189220 341219027 327225276 986354984 87127324 354046795 944274376 93363076 955676866 536627343 99359358 403240288 551383221 864630661 577788788 72876066 306165881 336027598 960196040 258057845 226165191 124975660 935450176 43254284 797655098 846173493 864220126 453520748 439247703 808924967 934316295 860765994 446629870 787263939 756849543 349763276 682045824 975152559 498361740 830943483 874098234 942056735 495423853 996818598 869291069 3765661 264013319 121890218 458707868 590928064 870438212 847603392 938370549 516730159 767226246 911213019 214733911 192393560 527201544 505018020 333322510 859702190 539452232 797319447 871382109 770521890 651398609 68582366 879845623 768472481 463677532 392107514 926761001 945423710 980996560 804641801 535145248 799300565 814206056 265178892 817708994 814741367 964291949 795354702 246155398 433291278 855030054 948782859 769938074 537366486 855188236 783664148 903496699 330413606 12497450 325835287 944267319 301058923 752418376 888781353 172715899 382858869 93063360 226494704 865114731 267827917 806082652 176683099 482805761 560859269 740115663 996762302 873363542 181190380 714668859 690964223 518321683 947233057 433683397 671089487 757648517 639720513 907447894 389109541 224976482 468887614 734158766 849038983 549595218 937239493 861237863 303605359 347165921 863771927 799920210 605897978 861117403 538912944 7347959 260351002 636254217 951782508 690916921 146381948 392083193 929904752 239330081 2708188 768058848 820871016 603142853 849339639 765776245 233985391 716669347 917290776 647942613 264802865 459950309 743558961 986857029 750204362 805395656 288403963 814475134 409719313 801849102 923749339 317638038 981329012 866229564 553051506 103039804 863387489 901797343 794942141 890612187 540499429 839884273 878629970 50458588 11607283 851717978 233770550 750517254 717838312 756408725 349289115 745770306 920222309 841576451 846477521 963366235 637963866 166049528 887104675 710811049 831252688 909577343 558720070 691786877 556886753 386107417 627073522 774127571 253759956 920838046 450790378 191320976 864137712 980474827 996654860 222331050 752696016 776982283 719946412 970332414 583124204 772149499 76545991 438953350 804612063 907989674 254846553 739942193 27678811 28185685 16636484 152454183 820544273 914556945 77470778 638305379 535248123 583825945 168207024 737184694 701135949 45255834 758493504 363399524 540259328 821455384 188124134 851693084 908806436 526143200 940379284 887660634 910423657 579510843 524341744 912079192 558594965 889139604 289934956 908899702 217934304 672998098 940532374 844392026 442120552 326067311 796484086 920243037 47808762 818546374 699026902 934275263 199496806 984888066 954845706 307072773 754120863 969419659 41621072 831165599 463437540 423359839 786769236 763962584 807475809 767333616 934826677 791243432 371807615 991020222 573715257 301574574 688111714 998382114 31356617 460236827 756505132 730485450 970842217 778873198 833443140 951510448 636635593 385743965 674448092 812550331 10212323 938031044 932649560 182715558 12660911 30493206 118161739 875344989 773214686 196502263 158431559 121786116 246880691 683805242 382216290 933460149 489841654 649882938 732942752 987964717 913566291 93942416 862397880 902302162 860260975 393038127 764775994 279976593 625817679 998529519 881313930 673804479 817496837 909474321 563357265 849493397 675842346 179134029 753834092 798589384 658799724 74348459 835462902 569268449 378798914 777899287 965515854 863319092 664047808 159514092 739762452 222502374 409293775 759800882 63313688 549634265 860075740 603762207 935057094 841056659 483483846 980686238 829732688 833340944 467450979 250663417 779521534 476228047 359321028 395333358 358609741 880132453 985107057 322858929 859828879 810948014 858051805 363916632 85907223 67653448 905374912 857968161 694539549 559594334 950367009 995145851 475081136 991301117 912891807 826800699 827054553 882195358 956441861 471789699 824087159 793587632 433339525 624039631 945360994 807194739 857613284 186321881 427863576 980994519 62942078 144554380 662196356 803857173 780077279 663109775 929536472 329841373 240025239 890187084 145830533 863520559 952913545 4684436 904590884 841228470 579864225 944198377 211982433 524220571 808380118 445212382 933859134 906441106 904116589 747922464 784130733 257861031 129199499 353510396 817311763 283085843 86083058 753393881 49774045 880547008 663177121 50933706 771061567 861116624 980652642 988206191 881657006 11221630 177030268 939411468 791261255 629495072 973722019 824324398 864204733 893136044 764550763 270392759 191570383 986641970 747940306 754923115 844334151 205781309 176569910 680115536 998785371 976590087 912183875 271827671 861408953 14112653 947013722 82997636 633267573 715252888 287325064 970795626 981948952 994500672 997173921 62963837 237411101 760911219 955258981 202716045 876794727 450828399 847368965 946258403 498985615 254362343 865056401 414854415 994893580 386182780 654149424 755757309 980756768 588778218 910229094 609929740 924952533 196427183 162933686 600489667 625633438 939893395 822158493 291063656 956653365 872282064 311362351 488350424 52662360 76611857 520135209 837074953 382172429 789173261 623181997 524665699 746661185 182994878 639688150 880611078 181260377 495458732 918569744 950789712 963920323 900544341 840794326 652285791 909637089 832020466 853121168 873966505 656682664 774462365 974507681 967808157 347404491 878554880 880969501 857653016 589558677 141381817 174098736 67187854 752068362 484890729 930117380 791520931 746758210 855012431 821069797 347804985 72662605 210942916 408704697 884557943 360991443 192436209 633690073 851110090 560760843 338421524 879405698 923702380 183357091 787608 513260144 880137013 400424846 65942834 442762960 228650170 363343018 912461358 817581717 551588387 861133961 689829273 1289815 337975282 368099735 401148871 971810748 501001977 916305586 789076151 960135146 330675728 41068042 842617764 939531071 106945196 775924788 702028668 944515970 706489862 558744786 973160961 658155925 737020247 762502429 885731608 618119018 921752943 916243925 460706503 430174794 956061519 836651805 614986173 261913287 616561083 823486305 22084014 681998929 860667525 960678948 608027067 836961586 973481826 334909926 427816299 877651316 113286751 809056708 661438711 971934744 224568671 955176805 886322493 348612668 921438910 336237096 984773497 904743074 699591112 972064912 885126924 771669177 570609271 144911821 842941827 357084041 43365661 955783696 761307076 284789143 634475931 775009387 479181560 839923509 831466811 678810417 196351403 873332004 31829943 825569816 998559000 599371961 656660959 867087172 761073794 609427997 70000502 25908771 876669284 16559134 461579752 861683308 422201754 460930613 829499984 489044841 341855390 611777518 432270126 580651726 201503523 226562030 226189024 307758744 255659303 275379041 180048851 875870868 338802744 867105251 802909850 543742576 398893161 552128924 749609949 775305674 771559327 400919727 472753053 775184058 77674023 644262974 300759644 76781189 996428414 75682098 500017154 985095007 329269469 361656018 300489336 207209049 888033177 336938943 420235065 868651195 133940290 444098285 264916685 938064205 789407923 906236713 50938896 418228532 20665484 409068095 101280681 586195570 981643896 135452193 339832701 253519684 779900599 636837259 146017200 479382743 346958478 691758861 913715695 468324749 865269135 587793177 988282683 81111717 72018558 485301134 247242533 920347197 394238511 916606513 446214927 946520050 587365870 591947900 757328740 525947908 893758484 825081109 273371334 781331165 791764853 506804504 602141320 859081218 910052832 141308091 816419088 379883769 173794453 911640682 915920598 956505994 772687918 326199715 864300132 77065685 978435043 631897244 569962268 571437026 802727894 431396800 113556119 944564440 425366525 417072216 542323416 994581719 912216979 995787547 858224077 110153958 376432610 562914458 688368518 737736874 862185864 27325944 815957742 198632485 272062710 876427669 986360667 960746339 283166365 825976990 752909474 779740153 825457988 860252034 891127377 919503877 305203071 755413920 40317481 243717299 335749041 256384195 722371165 878153773 189434284 993854015 751243754 70288936 761467317 770498947 671464887 563065339 810365452 975518168 988285509 306162468 738899590 546451009 114878266 226786561 563850515 528825314 949634518 923475690 351740261 474126338 921939649 673141238 762411301 899249943 758616285 722909570 999242200 470424516 214564644 840761045 737679841 792626138 936076167 864997140 861653218 828040541 445368330 776565457 854400099 824927577 125833890 947102979 763508088 840653062 783944722 606231698 387625250 933368173 501219709 972891656 866319068 981240595 800257884 659944281 850220637 908776691 867019998 565359352 785260231 909022610 569762247 408880519 796895283 525943486 357320101 6823323 841608094 295639007 989965727 865000306 777970707 301003219 428042125 967349271 77859112 630568044 922556328 579394579 913571368 972149202 579204720 300229163 863135588 911266995 80570581 440260484 650318045 112049596 947472185 451827582 88945752 554388940 795230937 129799575 966409089 644715435 8918170 541331822 764885096 672975640 773630997 498489837 82159531 862497512 72445299 492525173 184314325 964770252 956840479 70224526 596820079 836300538 252185861 967036093 187983932 968631484 752599937 828063868 246489991 740974273 103283838 880151710 890574651 398600082 914466319 39210540 185761906 568571693 258670742 559182385 989664330 884741622 804470327 552125583 795925564 557641139 237858383 740026992 224764189 954178035 769537729 505292990 518808609 917361675 797892962 651402602 298221064 752796139 720521050 135909776 984945572 597308708 35816639 12096869 948063362 952891637 165501478 997449375 746145159 869449860 280564440 879214312 907248634 981932766 840970300 528711337 886195788 143360278 320830629 334208765 911605271 621681840 530327652 433401746 970378033 692123713 848489002 707236103 725485542 376462652 470948613 976187570 744161838 779491143 823873369 816873167 742121806 877135780 862156588 198900824 987460614 353168277 245028289 914645858 892631666 276249922 395108640 971114425 738191654 989896532 730769229 674545750 384841269 979024906 844868450 826752743 807247565 73692289 280356893 638401859 369406676 881254196 730534931 825619904 879782807 684910199 115125450 775642323 239263420 196153411 118636585 740997173 779716614 933998545 510249520 734030221 447661520 10495225 139700660 466030344 869050293 752151167 591752707 913515233 902701188 870430106 293965633 983406220 994231024 152222456 67858783 989190662 861785050 903365367 98882767 872615297 777872075 60338980 880474197 467311213 162538955 243073075 920859757 871651259 116738590 787330208 111336952 720568033 465409367 786481814 982130285 367145125 673930281 707589994 814326638 790099387 439427846 151529977 373434362 136964321 718025282 817360223 486262992 184736677 865853727 252964805 734539681 126867732 820519540 496770646 471946637 443456270 242757938 429851573 626896659 426223089 867270775 867793356 931297538 254186071 771784065 57237055 873341584 896742684 829888088 256991100 676648218 872114851 970410835 748663096 668441404 613899446 271671077 956908606 853474726 784468791 973548714 916647524 849175157 679167178 329121979 593066848 436355921 938122096 379730086 968432657 881302866 453337614 988297070 933416258 191146176 772491140 956117913 827003658 978767478 792144551 244469097 169875687 116732809 525189557 981421422 683004799 660251248 200721990 853020051 677956697 903816882 17756734 633080237 657504982 139250505 953406110 548012918 883621108 858371822 950255717 45920645 499642300 192431034 194016437 246475922 87516014 930121898 666574012 52956141 356356878 228741311 803480210 21723046 767599795 602167850 399135437 949868240 151739324 651746781 984203247 595340464 916198541 248566702 874590179 126206519 674697609 771183557 786615547 631230639 170261986 866857308 313309977 900034094 992181661 860621523 852256965 930049564 166620485 752228154 80486258 671289519 558108802 694054808 18323714 47042494 602426182 336362290 91429895 748221886 928298168 799966405 235322370 10635973 984103141 600401823 790549430 918691844 438368840 523058336 489885138 922725682 788745474 816066625 879138501 631517235 945564261 962338055 424750694 944871377 880146895 805708042 778555997 176433 70084368 761346213 838745915 172691658 232235129 850960843 630766473 525189618 738172403 317770730 548749065 519478294 991293378 766122754 932823523 971349349 999439443 962854368 121112022 949002426 752477581 228079554 819335078 779400488 755256596 775519998 904876894 42736696 825158975 667977982 845306336 241458310 939449483 793353450 827165983 92684769 956608285 299396300 940614877 701648072 612744275 316540923 112572178 583193847 291829349 786354260 874298462 972191718 884570556 912697468 643376728 749800132 848683650 219785532 741202926 577527598 407850016 990981006 917909760 895802137 765285945 895138696 737020247 890558935 885835942 792570337 762137336 411418742 992044949 664237294 167253852 319536690 267423961 854234422 792381893 885460970 652582506 729486392 682864596 833530799 835213638 791681153 409758681 820617348 892917026 42687545 449854517 737020247 768831298 50219594 879455405 633368374 830685753 204371188 746548826 786982577 442673805 583273678 916029272 817801915 205585479 848218725 478966586 713721429 76469394 904826408 947862247 381813132 880578179 994472436 845323184 832125701 914806856 990442288 830479958 552833169 53522509 50151015 824363512 833792410 805723651 181088298 360616562 927758802 542698295 529542237 995369523 759510749 968346770 40469532 873264522 17964367 918634497 901561180 291044647 39774040 957237583 7349553 894044092 999566985 27107831 823200777 597336213 942901989 805354714 203840876 801831933 418792020 59884115 889846717 396774208 996772189 976015689 830286749 738950474 846770364 966032373 721692759 284116172 639324206 797671617 254790031 110724904 961004321 886524162 542263710 122675943 987612525 938948573 268723348 737395431 541756926 297950021 999897447 848076794 456340652 252093285 264790145 517698357 466153428 846520976 649805175 924930286 82966455 342320002 938312012 588457166 876606149 598330223 951156494 853491571 624429600 233696720 860474621 874133532 749572372 50805372 822151966 885318914 49768419 548600737 226150106 150070168 910118271 923848559 948591550 570748198 946660650 27540259 770828626 870011998 771768773 395134861 505826064 560965738 481105433 930022510 872296286 179145718 810955258 968384445 762077488 133985010 977126971 922318755 263996655 808638524 788481224 492019459 836354742 622057708 974161267 638359089 802832472 639670851 906274031 902342424 483106166 929597388 791299004 893223502 2847142 423369563 833684025 389973754 160615383 406304239 4151196 979823903 441019772 78369400 833648042 759678577 998375362 723717281 121633617 835295438 945572490 19086876 965333398 131971933 753995949 427152336 888819751 360805344 23621839 803005090 110437799 631759151 209816443 852503302 810287133 515663345 802010170 733474827 13383629 868171924 525632866 777334763 631654982 773904254 167649801 89824586 903629732 719057856 760000231 833983086 971585478 946137061 969970916 164248288 803668455 190232517 337734644 927549086 866139680 806279725 967635874 881696337 738621245 930093563 560498787 565217854 275015124 31843466 952748609 893473174 341970310 547959419 898969154 332278508 625754346 249786081 845199091 672438913 933399135 793516295 376439025 890017689 275860253 558273593 912910251 585451312 855419739 887251423 300362963 556750697 994477985 714926558 446116239 183610489 967922578 40483770 493695895 820315782 785959395 823953427 975042279 827371765 714646606 88813 895106279 159159867 719925533 925444371 557565157 909511366 518585971 783355489 738628435 284916821 926876407 311887588 880980430 951095322 910197316 545998591 608984592 942840321 627082681 157443597 593198263 534100463 338895258 822165573 995467252 747443168 888978598 777900273 236842327 943309049 223136131 308914032 915967414 806960822 516203607 857883463 2064414 953529721 393927681 84303032 762928885 473143454 950287888 553053552 872479146 368842543 326121989 921090943 759987948 525096544 856434398 182218762 756050990 835050057 661781265 482859321 810080981 517122733 57721483 293917472 968130007 863433140 862325218 865396945 314190912 720054558 862465697 853662326 477939338 337381922 261447370 776997990 971921957 559107007 36713355 458403237 954850557 311189722 393148419 775269272 827741134 949086696 998041627 821462859 596258962 868674495 915890557 950521220 296700998 499394751 516515994 722001079 891871588 777346410 754764592 433522359 316233999 837473840 842563971 867773709 379622811 716989628 963297764 926768519 819419129 676876436 338385397 88603761 489073703 442797731 11142209 158287096 844953039 782558148 800570256 251244396 856903997 856621966 963991613 371573233 782049402 599890883 784298217 445944190 951443368 152615980 939211764 802900309 871167982 46425736 381206911 798579721 594556662 690253905 929259331 105406566 950861598 500384371 930111069 184671929 87201620 919906055 646805791 292771302 641037230 959474172 752714497 932267629 904656840 614530711 985589636 44092789 121040613 999618239 743067762 299465 868190883 564492452 218884602 990486563 371183485 787175119 773765043 618165653 995339437 904833523 876789309 874765908 912537401 832877353 927722841 553466592 175188754 760883350 816489976 867232331 674282642 8022270 790959898 281394248 986201329 963734913 759486770 812877518 57851747 959336694 586072890 537234190 999790902 776211540 512273931 918708752 647934530 99492565 108935750 910646862 241442980 968088291 99394247 758247545 186734835 767890966 658812686 802964287 85852997 477125427 462735297 765980222 967845541 299234165 981287453 242607631 662794224 900987450 996669632 926857972 936501270 851137579 934340487 915427187 37859443 48229120 552504599 445312950 746427145 890134171 372096205 796210187 877187027 994969827 825925452 769270337 720134159 969717497 234486301 198741022 510075425 975868886 80411434 762630777 70225293 996189491 68035764 761272059 682141700 789258055 929100466 792991811 652920951 993045507 381600680 862647277 786175167 697251322 555900144 706812344 680538210 910702407 244253419 329299647 842996889 991360917 788897045 874459834 968119028 468222579 794549963 331377771 812054479 879634680 770071931 925002726 901785840 916055014 69106004 96369685 660663062 829865134 863186820 463605209 825648505 341881981 331744144 975253990 333989899 916994936 503477122 849448259 821576696 291879319 479758915 549734247 802683379 893886176 172183579 43710947 746098299 986748331 982972825 716081857 443622947 389003493 401245295 997793155 442812426 83196460 366476757 737121024 711781219 465873255 360666695 249860533 386799026 193156253 700561548 344980625 758820120 622981794 978397126 80736817 219388824 951609421 742080944 990016483 152355183 875893752 148499128 229269552 907930555 523511 893804485 513534431 720204110 788648032 471692424 995046840 743037594 347177767 863576083 794999042 162130499 831813444 915139480 532628405 548536569 741882074 761749987 750183984 982058686 830839163 848360991 535709369 997273675 951329272 965720388 869283010 207596456 952467244 826278291 27926635 171864585 358163974 189521376 572362586 504318603 727392182 464132745 813690661 851427102 525864294 40347273 664215551 693683188 809971184 397702054 846791322 131487395 39501598 505436810 656729293 194931753 985577935 861394965 278913867 945196611 750943488 328147088 924908479 814766936 973153279 463735561 988728141 782777422 813493667 928986141 793996100 908445778 767775139 485093218 54602781 930069545 378878866 154256694 914579017 745256572 843228374 355464000 100718906 322705983 544821713 559820170 774228297 363964618 872602259 984469445 174801517 469157621 68037555 291681649 730260430 776009253 985163912 137079927 934529722 832096423 990188025 803170375 811256334 965943147 391399736 950836884 761819954 325931301 415032003 401702245 976190402 264068461 924879168 781295282 941628240 768748097 762602642 466003704 547242400 972935336 123076764 868443548 964058481 345016332 855385028 81039556 668176174 449199048 945553279 669035045 263911911 544468630 417805073 674775134 920303341 846069741 726545968 943276034 450945324 790522975 965342239 786492943 897079625 905979527 781100385 938069820 380168180 430521885 516100188 785108214 20088459 703152055 34284635 809855042 584648529 10181976 716106835 244963630 509687055 736328409 985279582 492179117 242562365 962471038 872503642 908428868 19956435 188352032 847540740 966846005 922965083 694999261 975045896 532888567 367645263 861846686 788094442 814381225 787013129 328516222 918561339 806776282 131281601 879283004 436041346 659333075 121779678 379862824 936867942 448741831 472173448 44079210 803990314 839068448 507817214 849449875 811885772 539230204 633741579 739069810 962022883 969819449 894936167 758930751 543282493 4648345 12263016 906469176 617308177 224045435 770986578 772102819 428446507 511271815 983885436 457806255 659757000 899313190 926560711 737266977 761763438 737534781 682523389 814079485 682668279 217921771 776687009 484349442 621853920 618604672 868718952 252741559 201185210 754466715 449527249 773146536 318770447 392303065 82791541 612152992 795304839 337103494 238291103 948457165 146226606 848776065 802588170 961842918 865973984 892985963 554004170 103842218 847879828 286131685 904467123 343963453 710903892 317281076 819065742 250218131 446216585 87053534 494189594 338603914 853527006 615703759 854498333 877448037 845972815 830276491 557014296 747224499 907823630 375544995 944045333 560226664 982610295 770188413 937387298 239658654 856785478 379421603 944628225 853606678 749580021 242770156 374752941 716674423 951538614 998211098 973175759 81470150 741178062 980604295 405603260 123033003 909614697 591280890 919889576 338725115 341952484 985213116 885607901 40163666 132498501 772706767 777874143 615800275 966343305 929594074 771204037 938172831 998835928 763151292 481201258 952453326 854102000 560818825 972468141 965683398 244960062 922199528 252558782 356643182 134924070 900094371 124142035 760771515 744337571 21321338 702194770 236648799 892081551 805277146 908316776 910403896 452212692 829901787 867149076 204490501 304977709 148651984 219194546 991455080 579713565 889913051 377023633 68453755 945869953 173579186 248441001 470024655 177472166 213623910 951816212 769205829 679214118 813117935 105306406 368639956 989552924 322058903 933270023 192902140 825233645 933784024 606685528 871609613 676174626 200417328 926298473 614960116 771183369 668591817 303577927 575783116 846354212 992742428 877939012 543769438 818024142 660350409 844511812 635498857 581876482 868031562 750812165 848083198 147575581 842085591 737020247 148770366 132969341 634808284 28386297 995989185 854644332 821503051 424023940 926599185 127219727 552192499 949686242 527085777 779847569 759133693 184482756 678575556 959489596 922354290 820107070 696729306 829931760 847254519 740330656 287556346 43027223 122293656 767739974 935993653 955565978 794972773 522327295 32739557 803654237 132789756 688776952 842079075 912291672 298103703 849330508 965287517 740228075 267526057 257496483 432434570 404492055 649980802 309931791 16044018 749275594 885882713 920522806 311096826 865213924 400468213 924505976 647968285 907378404 912457301 315999456 529702389 717343611 736502655 466630130 448245927 481651268 488866387 799558505 905337550 55021893 456448168 872114645 344659655 489134708 46657176 918628552 238961721 444813304 457246586 558065174 760858826 366719653 488121004 326612160 62676036 712006125 162615874 948539358 427553281 960144062 740448954 749808076 993705522 47459701 778252879 18688695 851583372 842766051 608144119 832405810 771637501 869151692 538131976 580792561 894086565 919263271 681818771 492125240 951093787 290834434 979838498 963922340 767820563 790867670 500502119 478711378 190097284 276578538 990650515 877392455 722036019 605660627 181627511 115185658 376753945 375507586 198225317 530370157 585248742 613221554 739930714 984155698 948421119 685121862 282602930 208523132 439050767 704526061 947953347 135911997 840434011 717510677 810638683 460305729 868955670 977991902 897872094 581112112 826689557 89957401 759235854 435537456 883583592 850847462 738058103 810092500 31781528 562128303 438739516 793412797 952918244 73027177 803295257 855536149 818923221 923035217 2614114 809015410 547153478 172998695 947283055 724285418 914439856 360457526 383309625 417181109 145807059 531940456 897544019 831468753 434342930 582248106 837037371 889345976 56598404 947986555 776790273 286587165 421414203 887023657 744676595 738963098 970285637 575646184 604638241 930317703 994299102 489832959 799041370 854499178 949803674 357449516 621320790 877377040 424618434 16965457 66719636 658504030 785504239 458595282 937681508 36444603 239536233 549604798 754072001 578554981 761539703 460071968 10646891 896174313 913258944 877925801 431916010 242906188 698893082 648350995 944445920 292976386 94178666 893818227 978291985 974745716 936050573 820792340 396205875 493147233 264526381 760202536 975077312 415274338 945963619 480655355 991003328 253319410 456114151 639265943 754029253 435312771 652804354 561050820 916806770 966973905 762800400 992342927 486684929 210830230 804227471 795605426 508756563 320912075 363719128 859483374 210154783 953974426 700209750 223630900 528866952 777738404 92047949 88567068 768495998 388462818 979143242 826049729 789371486 829365002 823060655 729780913 321345435 647769617 746024966 800032982 926491978 324137032 911361609 997289600 417489692 992725796 804776800 694248775 995082314 518344189 116621562 583963840 286460647 963369200 783828225 742506796 926730177 902677828 789583424 883728400 56650516 16682015 330092915 964645232 96089011 958295133 16495000 762350450 915050553 716217072 774033970 571267267 870546884 556741777 467038963 54860531 687608133 790373618 183229752 602202680 978958703 833040293 763981278 530013226 571643762 506486579 377162323 15267798 118345423 107309362 178534290 800988641 246834620 646612722 423220454 951535652 499605662 791683048 623473167 702237209 101131411 568861885 760084435 210911471 728310841 12660916 985110790 491109742 491143951 798595129 958903995 743513849 757808452 841251075 750974610 919937902 365668454 587434629 458055904 446128732 172837709 923071108 859995548 586256884 697293754 669699357 822054414 649989375 830269684 984919645 813487671 773539811 362235222 297449048 412242143 29685566 377911505 714213951 996111266 710544216 442377507 823261233 758057704 845651881 461703627 993654156 155339768 922421499 738383125 785775620 779104091 462830050 895511985 818553073 902631895 197449847 517001834 266592246 361556788 781538658 724860562 871316232 14420102 86429749 820725196 850222713 955967904 847654615 815674576 712869827 962212182 737020247 331118635 312986611 822198709 789947527 774077278 580790646 766965628 365033904 759887075 843134807 198120838 435791375 75293488 287460698 53067474 956402525 147878265 832513770 980991136 543904768 919197359 281430703 816322295 457384693 463896915 565308116 73291097 963250377 930606870 514125665 263938763 992819589 992806773 155406556 962793593 286454757 748611575 816239865 568110541 937745080 904462659 315093832 35610364 866431833 163759239 829901263 805407384 49337969 287540814 902891018 887772733 921704394 744383260 762742476 928768571 927677943 894852305 717609442 765339932 69868127 80993035 731998449 888387851 827573239 606341660 750077320 155399513 904424568 973324698 424942136 721423484 568296746 734439879 321309182 789909151 16167558 927165676 764448704 816706141 825557569 596585135 986553726 428015148 74987315 789139203 608423308 802115948 181406251 240346198 751608725 952030013 560402467 440886136 222424128 800850822 817880464 104472021 820975882 197296338 368249537 855402980 123008373 689623178 267319566 346552540 960356123 224318652 388029703 884513432 774660469 899008290 862306458 555093416 928638304 862497157 918972108 891664267 846005546 151953486 920843567 820697619 465080316 776880636 507889849 805646514 777340567 183263248 750053315 826608895 858018854 737423172 743463955 961130489 392300116 444841820 229927195 747847309 898599044 99297197 595402652 919484947 297441431 550160201 804500997 936351335 232677993 896486769 846044503 823191420 937015802 602598783 797426678 49035792 386871996 507362932 890028454 496219033 114103035 447313000 845824593 685633337 972950169 346872292 51487730 307071531 276879600 805393805 746920096 787126933 858295450 643676159 544008169 588672906 956355115 834641276 904397328 17527237 757554266 803882271 359650687 785232979 384483750 895635215 992722029 998033602 826716403 894014483 613973608 742726064 751493690 959871812 940807826 979179111 661871127 489505229 796156048 87708329 894840870 443933129 840748705 855904941 78075881 394447613 506572726 619692164 183279803 952581541 782586889 968045263 411138117 400215945 621012753 157467833 863008629 691228037 865209278 769498529 331022405 304331495 818837012 925021973 46482810 527378364 825879627 849164698 740563358 911775093 791766918 661484270 892987790 436948177 611387661 966353900 608084401 428565154 850111615 800205230 277285721 192173679 871459474 11092785 857315127 487671598 614803066 749952614 768821345 792572934 944763428 198631223 352809366 828881970 889619975 211844545 779529008 823756607 861426909 888785962 204789491 897317804 773004332 709166968 765379031 587785709 18408960 431794461 404368721 148534221 744788357 883359760 102415518 340363897 889327497 802265690 784456021 325225719 846418846 275482440 960167464 707922485 835927286 789510813 95214624 24487719 861836092 866049868 205730865 110003607 656259136 740347046 377334948 144051814 684828014 726573745 775614667 106246925 389253995 767550982 882095039 875292321 893948967 253620002 17782041 847861462 912899351 97307363 627822967 111036985 903519711 857774533 856862823 689396904 854341932 386084921 911845188 807112347 230324702 920847310 226439354 120157619 800566760 802213033 59578824 585712680 874998232 924545279 151804666 776716573 664114587 925073486 878360293 748037555 859774515 739027354 944060179 266372248 355818015 953146788 256953697 837714141 231445233 597993161 755320263 802386090 488130509 57226582 932716306 195594569 950732861 934382030 279020596 766102989 900345587 661822057 892272590 519048274 828960246 881965222 686935119 902997198 744926440 990979095 871661501 103611962 738383454 171982235 630342906 919848623 597208300 637699993 455498404 272736520 836305088 749876046 927445628 219215762 350549621 776167494 384410486 991419654 202888721 366395165 862418753 867273551 85139927 14471567 895741532 932849700 546553780 719543737 951931861 386135131 101793787 743393314 442332325 791659687 99869006 951411757 39443628 863959515 994991623 878611762 790674281 806004366 501035147 890259857 842707016 406112364 955185613 257922907 714940048 540638310 577389981 697006021 812208803 308089604 831900959 375589848 733992267 929004518 523023079 664653300 929816284 995901392 997403747 182002385 754317318 30939742 36134787 340303472 951329585 861018400 795943834 986562080 85745403 715192891 931129628 346093358 212323636 967711781 982175915 310595121 803760525 252026357 993948329 715975132 407730849 882073693 815452792 212801906 944611221 966875787 627837845 974925172 12032727 776446926 967950519 113485250 915741129 680781642 858958674 199977034 472640895 638846287 31669928 187706316 999564001 787900817 370415092 418996326 926567838 437457493 870169464 434814720 961687715 48147810 572081756 881437573 343631420 567493193 678342379 707390955 742904686 940957944 934226392 920152659 555564264 864878520 937461354 187568042 258465975 4158189 810285670 550072262 876636839 490444818 220743583 740924914 231471489 415700693 913096833 888742103 428477356 696958475 759144146 392615762 814005456 18555964 737020247 582663780 928588616 841175127 988022623 194232233 768511841 869368502 253602178 996533507 570799068 903797935 139033772 870253876 21547426 410441982 687442345 510229290 927209041 250680809 552942929 831231703 160879312 742983827 683107356 165784825 492824047 589826502 223127898 825466860 541914165 51530968 346932194 55725192 428936928 867887259 913541132 826690333 812488383 172273290 818440541 804669429 828255403 993489046 188887853 210801890 740907880 62394657 706448493 701777882 486235650 689220736 644673291 418715438 783820345 230685612 760769459 542918437 346062292 34994354 979139605 643504040 721813003 977728384 677698965 984007325 928541498 497609145 292028614 779182959 191386979 100793051 128413498 900397454 918284184 581470699 782398026 914438955 751350927 754732849 781651969 65708592 875480058 492345139 222079096 875232558 329898212 398887628 977570308 458263844 270065279 788183010 141458923 743841697 811445113 951048301 600578184 362602740 816236936 684665211 775840852 659056634 457460382 928956921 790608769 857033490 980712476 936322540 605964508 139608890 312363346 800108631 791697865 242091227 301797887 593998291 807046447 213508265 367404084 767614987 923433624 591892766 950746656 940623940 237017550 51406151 906824365 839511472 991805826 229543873 766237599 742762600 701001158 838936590 639519165 874100395 934669653 583485994 747798867 759046896 17857683 2902735 878817601 987175645 919706893 236000060 15198965 884068401 938757251 793988300 578271582 907218935 236053366 801569391 972946665 45048069 630380262 908133634 473586337 766830281 786458643 854527094 896597652 626181009 487469467 815643009 939438919 62448339 16691444 436407076 482108472 590263205 925338789 531915422 402970002 399233958 878748219 812918247 748791334 984723035 186568855 643896312 424398551 836378105 765277069 285381660 801750046 918264910 942561386 77335642 965733258 102911663 838054082 156405008 421490290 196953017 877820052 154815773 245105903 758807083 135442700 591626888 959917401 161408856 908253824 957437013 75616891 993188412 338744806 953345748 797380045 713614996 746694694 768609077 311409127 983503122 973338863 778644465 360270107 445101105 27873372 763811544 754165023 928458485 824151497 320721086 71306617 292688234 224027928 28081438 675734120 875537476 955639765 892359254 973881223 297897143 963724002 635141574 966376291 780190596 542531230 836831295 768655482 206131999 506770467 774657825 985556696 224964263 720255047 817922747 844995880 983577056 850321467 946963735 740526878 913977343 377061448 579803839 964668788 636942043 961195481 911987252 420068707 311590249 869133840 914654008 134924705 779849083 426854595 322021719 677866337 981552599 829467414 621108045 192541934 417205922 710776852 803538252 201441085 834233722 102617409 941201337 562978010 159524170 789087741 744653279 44664661 37697989 280375364 528485846 665004047 980454025 932312929 903452196 830760954 339942299 187769562 877952898 842560314 738028213 992818216 747131683 874585386 891438400 105072161 476476647 712974507 789079743 359140146 961036320 3815560 730702088 630200102 829533728 902119417 765268187 174460067 463091439 258472236 818452926 142243473 935400898 879176461 918822570 88664637 583988688 615336032 113900382 500590637 861775536 983496494 671709286 797949033 975675905 801857538 300778560 894826139 440838982 912540229 809381355 67169230 421446157 951829670 363903253 107569283 472820999 249095430 463894797 357027775 769057095 814785833 821297290 875707873 739525205 719712008 35199197 25372387 658953195 635470210 123859949 141840362 426531206 810884287 532578896 111147511 940975286 897550403 196615671 470738327 971144351 910843302 447882506 432050462 472377657 835196594 289451466 360949784 673039919 857471529 738570322 704175937 357296438 583457964 923007202 640916262 886735395 300898061 781955789 427556396 620186161 457568615 313152041 769557390 501048189 684413381 745183275 840795954 376669056 815830534 903715710 751694518 85023292 884325695 370148987 393430169 686336722 794095352 602610594 461180289 682929320 265198689 810954740 988733796 444322682 935561455 830010460 887851835 979868667 269878024 244227700 312810820 197192575 581144161 743482639 65972228 614667392 814372855 846383231 484559547 884952001 304236 600139919 521127266 300501721 168110523 915809856 910078618 880309575 843104833 436734102 920788475 615896738 216908256 175939680 893064568 699020327 233839592 775823856 204437683 406981230 300594967 925872852 568035647 826928723 962134573 22441141 115181438 718450664 960731883 918324616 591199561 870775519 235581831 759237517 520219389 929538051 973122796 254563451 871157410 698495090 634928371 692161056 114974468 321740284 628377861 799267656 374249524 892235074 736342927 366455388 965994171 806632014 501782631 652070864 775621641 976028239 699371518 238239522 870009954 571867361 764487022 814536115 976899507 929195041 155699323 931389912 148526552 453214177 965005485 783065767 412647355 220078957 924201245 150310251 120029629 767843814 927026356 714358558 246565955 544555941 247971351 157309307 239058082 775037982 804419658 410666234 455935294 999688729 401855553 951710346 502575222 262933015 488396646 656147793 920558020 753265144 869516532 5713602 350652067 748762705 853361644 952281225 921434493 416154435 975417690 696769958 742388409 891176209 782116998 464637535 938161196 805628971 475109860 164624852 990076945 750494233 924399158 152593906 795013840 812754111 706313074 904296556 230654893 266484917 864443145 912408234 925334659 762449557 574944250 744904224 835762641 802200557 999503350 42009248 991336404 95541874 98681098 244875469 574517383 180962565 884402844 925095199 819134988 855400936 931431189 655282277 951434429 75950734 476584167 564888947 970127348 878800120 687905672 727375419 856515125 845984072 215284893 160519042 928374218 940403499 135177975 909529244 683882563 922938457 929836731 132134789 546779016 990659803 381452344 362536766 937655522 384773320 696111478 548387597 950393991 64927099 815060372 946278230 44973650 172343144 569318270 891217160 803772822 724725315 904050647 333767209 965602191 718967487 802537224 882662911 12120127 492052720 789252764 501313746 963991892 788697334 957114138 927625033 227252753 813060852 851716185 873326780 23008211 526781317 663219288 998008542 920226748 911961802 190112591 970971840 952985474 142725587 920450278 958422348 764188320 817999655 265276780 175610836 159918576 991148051 844160872 576569024 699168193 966950706 264808950 569701903 621048074 99363100 260841580 747560183 905505077 774966173 864256740 887589718 77003292 61592993 387546624 978473948 822751102 187957281 845329090 757203350 447434180 695921593 172387851 884060344 236836598 962507684 991068022 865003102 547303268 58760871 546227697 809193179 837917785 740619708 868337457 637111821 649774169 627544922 561275715 844058370 935585317 759819125 528657655 300227235 284022957 82664991 87777075 836563476 964242972 791207325 959058800 841711120 867657292 348899345 490738700 642851936 736650275 123705239 994085428 230194929 41416324 780977388 642141387 271327930 226653784 907485917 538815864 335958006 742416172 942525007 972934364 797219248 72935891 681580348 397741730 960845723 317515691 641003312 125334594 651514804 452684327 795724419 852164865 516361395 863894274 34009384 972216384 977153627 786544027 630562971 32246360 83967597 765120846 729538319 877500214 866660947 791104739 464739556 915165349 465153349 865681444 737404168 817533301 400993941 134557303 358500106 867494998 636939475 854968795 328099792 769120836 848627790 808071044 484108374 711030301 892572690 251330011 820181052 738292927 945664988 978176999 983652399 824350908 636157179 982776804 71114068 216777598 295934998 788027618 458483523 942654385 36154921 769406077 546895213 783532586 451519569 229008038 347287244 942875280 848079979 999928808 767728600 256771478 648402478 698644608 623404480 991231255 990815673 911959878 977473682 813060023 939408527 545358467 598090572 150302240 393310455 755212559 852149686 540818591 123206794 984237916 398191852 919030641 229363472 753385182 759990672 754408984 900381834 422659700 319671184 261254963 995282880 733216847 935927200 743449959 909861046 758382283 218921865 421274425 383780604 706104286 176869413 376835107 643965090 903058372 778572687 294100687 370785511 587998379 872876270 592512737 777938712 764503403 79016454 806693195 606354559 851640875 805576397 986338384 562633338 233892361 416785738 94205578 636317186 634784451 751244724 926357686 870154566 814447456 651405147 443987007 848026729 598843808 885539082 815133576 765163033 461377513 171937891 734928844 607569426 217566870 952595382 915944399 610776425 194558947 822009952 965312067 909083906 683677961 807040931 946328252 425097597 859559466 940890727 266982108 844776902 776632428 949053193 27986571 958674119 446290834 570042011 982683831 311899317 733926892 619152446 777812346 300554115 775454520 184680145 504871366 993569261 845361979 836587756 8846617 974864546 47057605 660728438 352941996 645558376 976032791 428478998 302962098 984436236 448965940 707675810 775828836 194486687 749081271 947033982 317246601 749134333 310197868 103308587 141373484 380073577 710755238 531420379 565169574 886547362 868916727 263713550 145636951 671987332 112298401 144058423 986877107 675307861 265182555 783796117 977308196 268206059 984808853 871453160 411020408 954414336 653743045 470780500 523584281 894848124 803596565 817804246 144729312 7688910 105949813 758140843 852990900 334675956 141628096 967249693 668528114 379648265 628642003 641600916 924409876 985211559 783710918 777657136 994266861 616387972 620530037 391119219 804734014 928410908 517703657 911731693 996500787 386513777 737715089 424212333 176258923 903853818 938672652 972828451 559824969 854820915 967720951 559000420 895161285 528421750 714476404 483124984 377672601 766774531 89143972 682803105 793050034 983715415 474098729 990096523 407154669 504209348 171011910 995156889 436185860 56066066 480025179 122004937 608546946 256958222 241213162 950754860 398851354 207983501 524419939 882146965 414099136 952709924 706046448 803033455 939791946 974246476 930847604 137332620 965953699 804674726 840155212 924958643 548285634 686130261 562316047 304770456 778054501 282323890 767845294 323322823 239952642 938160363 938196946 102777115 568380337 830098875 159474957 160568574 512095214 693106703 714909135 846373060 912459436 921193338 955791302 742744459 553345135 296503156 768781200 880747561 915610645 261917720 408581234 935795816 182801368 390789819 114379834 818728553 944766272 671096030 820320585 305698170 902228672 788722274 893471553 940939538 357610019 900320532 855149691 59506318 511058730 821077243 829818505 948226028 154051149 381649144 745131464 752022476 409791412 848812576 875453742 880634723 852454966 615204444 984913406 277001782 920736787 259490353 598659328 861309792 90564226 452162196 981382453 674137763 889756800 883236117 464696627 726370414 168669229 643090446 807070471 207583649 600657248 943294307 807260568 951771331 943194367 859060169 801425104 151473926 979770083 919948200 994279006 771460639 483999185 961412430 898524701 225183005 955547456 235174190 901218634 234760866 65561531 828921084 923188287 476829775 138468382 894888965 915651878 223497250 946757617 754271251 700076305 698170411 916114697 595066768 567343909 121907052 940592892 270243264 433392106 995572031 28884837 951954212 745672150 622850121 947103982 886664868 192087890 753541592 232880978 933405319 848340421 847545717 87827478 420480685 834080658 895005266 458875534 960048938 950306262 382709255 822554907 569858022 786623804 984227626 220227097 266636892 761624951 312297483 994197980 246048616 795728948 465320834 974537936 353510942 828224661 432375966 750414893 452493349 316828289 920456788 690470893 975793301 889132969 73598356 955310909 968754129 943898728 672218442 764375465 874935882 393936475 981640661 867619971 755208505 834265258 527494621 440106496 954908611 821743038 230589489 850830240 42227588 11004211 220309953 174857673 783574364 926481066 93439866 136393644 912323620 32497742 533763583 245714169 63608276 368835371 854684137 675108736 743046957 719429581 99182311 861063945 617120827 725637879 178720502 603493604 766338554 976968340 893686675 205693144 945083415 78023979 361644684 958211308 919246000 408958387 574358218 348361102 425870490 252282113 999993387 305834077 706336747 390774018 356267886 265264786 756726188 520534627 488740025 673245616 844242072 440915227 5289584 721760460 560685143 813825384 329299289 826907911 873714991 451630205 921395650 858131363 27175601 737020247 463834991 813834028 173418150 914371551 276806316 951429751 421610324 983879793 843179653 307822914 117821379 740565357 870159486 762215987 559467818 822230963 811525353 839950457 963374972 10359419 774848270 50603102 887364523 894734914 212031223 454015713 297268492 975617359 355081815 926775275 970563963 709968887 767059368 771421495 609644388 7512256 406770918 848803668 200453960 53097352 499450593 853856466 831854410 803202833 898650715 295136288 876390749 452388139 749663277 444885882 911505047 865248881 223980085 760300983 803594580 848891227 30430813 916397125 56158827 376549428 970828876 252883470 986288169 954960738 823429665 182776960 764266750 900414162 265290672 883498854 905808022 115359507 583620305 748003582 817734576 764952691 816722572 844204182 276376629 902160587 697610796 91053129 981974237 810134942 249725979 591033045 59212456 880804828 844142388 764596429 196745288 908255542 476082701 769363961 979969312 977008435 886740472 832960613 985919373 911732144 283789794 86662671 786462501 753770788 146747029 826279746 946207376 839232378 37415488 782441621 821095104 812556259 975636281 20882521 825576088 172604421 8116674 190960444 582954398 383341210 550819976 943183768 761686693 777576313 967438039 926151406 962227042 321716553 825629057 692610029 987268773 873581033 820467405 816608445 156921551 651695640 101648556 690042210 764012348 542982985 450477022 844649109 881585873 316181832 826274521 237823998 2067582 884245881 259751205 537158248 668324896 967339210 196028068 802466306 227824867 877491044 958993181 579504783 942002485 352977815 840065684 43774449 504899698 968051458 12094503 416727693 779179952 844569012 157773365 274809856 517759705 777511574 824594642 68320000 914674965 392936036 355400504 407382001 611331890 113205052 300049687 567059727 438242477 977213074 542208437 614071854 108843986 869336533 797564064 631096455 243721828 343583906 852759061 355737840 947280439 132130137 881629457 781999453 487944398 974872345 950698732 900935465 603547537 785088360 776772126 926938391 841728791 992149045 196656079 963916849 826959182 436477416 895333772 865681232 828179956 666906624 759206929 6749597 921880966 775473836 222019970 857155590 906688759 599023413 651531711 488089 845051866 427357464 523495249 642644936 946006325 973760094 570422768 138086990 753285206 936985622 385953728 108476320 341282221 955022531 939496954 801377929 91405651 841827415 124238229 521070271 706158311 923121552 648052431 954052339 778573008 557386706 896775799 674622643 460721951 770298836 763886705 797684425 914384963 611779862 944606181 489296883 67425029 847571736 356582708 862771075 203331110 931520032 269939889 968745905 567364328 663031311 958031740 951519718 807757470 803692632 186236318 606502474 453991198 384051906 983219267 328379358 962677248 29881869 662527971 766694248 995447135 807699363 296090374 789652886 834347347 914947332 960384264 494752759 895778241 208211398 949892609 468084826 809039127 916345320 982396031 220447713 273655118 350879607 284089536 840475192 703733425 98841610 336409238 962106058 980278733 840072437 200457612 130420364 799260952 905442704 889636952 896076963 160495838 966595628 219798546 750025620 835810496 842137297 785803103 721927273 854977001 96752850 310922842 758217490 530564770 746161382 850929216 745379748 737104863 571075577 621162165 738041601 747836745 905771649 984560 173702582 849813384 863336632 870554713 665813149 765356007 626462150 838598696 944553645 957306370 872478848 249240554 671166040 840771103 999298782 515194022 307062481 696996130 800718854 816780217 690170679 983084668 708282409 173856298 788283063 375431149 834446070 767262805 805462996 762275936 35319378 674395615 654101496 649098035 873949364 680175172 965556851 808597625 74752482 452225978 239101250 768506031 504699202 907757956 628337167 750046051 10038487 918025014 984882880 948434442 985473025 829352673 829977398 949155222 452302583 151552155 779598555 181533176 5469752 306413265 203346403 916950820 839321691 416594432 358213671 843112596 867104046 833065145 958119808 907824192 985521604 921611626 392297181 905613705 957259291 71384617 732869115 715970927 399617226 709137059 606241433 81757710 862486109 389904182 316759818 795943623 256209862 411947687 884278470 884321534 590750885 289822500 754563952 148298920 804332266 119651751 490384087 770501186 668312567 923504152 292255754 213550146 164014861 46599856 803562578 78467866 866825484 476235305 927340299 537466236 709439635 852574193 112749394 213175706 56888477 625835278 242562366 387710259 69259108 168441511 936333042 849013893 781896029 179286772 337416595 882448889 823728026 866959558 937539493 895607513 136700564 797269032 923157037 185424257 840511955 995731540 762711742 717941186 120508868 107305559 191030905 893577019 546661726 899944669 612310774 203787051 246853075 799203485 513117999 739434108 11181831 780299330 188933857 271468088 840675819 808485430 826935417 822019886 37306764 823926744 979895360 863520260 653638744 948803680 323992098 775496269 577968888 669101436 833250414 633629217 961642276 739649655 516207658 869834114 954582046 844380793 830375902 774806786 689207053 928694094 838439237 788360562 175251233 983807186 967348722 240284568 949717557 828258256 737346759 965046836 782106389 826920949 629826594 911251085 962807244 866584571 801919415 749649382 899818002 410232467 949029517 402616668 829244641 829495692 866333575 25099992 833210426 213734123 565141065 980488842 937518858 276963245 812029052 833282684 741448503 570760059 827033393 458482019 723413290 408600496 926786330 913106381 939497579 530317236 345347970 210717937 817773882 820161238 741492711 787603769 502521440 967234745 860331290 90578802 543666281 740717618 383055612 847107956 421294520 860995719 124633347 179189646 800212747 812809552 317038376 253811972 884431964 767719009 867058960 83362620 625302426 873612764 959164875 898386117 340507306 475567498 310127477 977000314 128992502 59634831 733046879 491578738 971370229 964796157 938720102 377966244 915733325 247540015 831246731 404429013 228189603 171400677 485657994 605208933 16503684 894660052 879789279 771750647 323846901 704355270 814598326 432068498 121959609 974349514 142056670 883423660 990113973 800891268 111201675 717824341 957316663 977609864 995146948 898564940 225369183 268350410 837262299 720489318 472947383 852679999 260206694 889101022 324828321 921663445 757514431 841614012 245794397 160950452 568893260 50703006 955299999 941512697 947854141 772824296 869765177 251994642 747011186 87641945 328740218 198390021 842824264 352996643 206297116 381947095 574563408 115783000 186519672 856271480 969128678 779005751 921434305 936564453 905709186 412800229 231865680 513445045 117587104 547559636 391955084 988511917 925748333 83835002 332373965 254200179 703799064 992529209 265395830 977132183 863201018 136488895 889032196 859645889 713372837 769145551 577283310 896707181 879880500 915784012 737020247 3320768 990830717 604436253 309495447 655867248 418138626 987750993 378331236 244382274 773635790 333244035 922671892 211145745 203597094 700824854 866432103 149122311 277687662 578744119 796033547 902556784 466612286 906398637 465261901 902932388 405388054 234447137 968245418 579629153 337948684 941590665 99326372 126267095 515437479 388126545 527523777 182201474 612241472 847515970 626858151 953691239 3832636 929311874 43548913 775120890 941237759 486794554 995331414 945800402 834824099 984176434 636864101 863147647 241424188 974560993 803188704 549996893 955841202 548423325 986415877 909752032 792661809 847918508 45958975 252498198 787042931 752701573 261446534 811676995 740175561 939090623 324204263 987074090 693453268 751849273 981174362 974678649 353878282 996441901 776375300 913555866 982005689 952128602 250186607 927210632 289067462 914955605 338737941 763488063 600361229 1600385 892474809 55679645 677548044 778829756 549640555 956809230 72884001 903844754 563657507 896010630 512261730 350635226 272258614 271339658 672285915 597909768 596798826 920779997 244029122 33435312 814178524 105287785 383338820 67864232 793139055 827411882 903838039 750327142 687650336 812995189 786315975 968135847 972659875 764285891 548324837 218031753 452196883 987691460 684238734 773222437 316795819 526493672 151312714 479455952 932221273 586948143 487164186 879706852 856993715 844345777 804907558 688217110 671189184 762870509 37589003 880468786 543088050 8674179 678225809 452863634 416015166 427346356 611242938 998240060 7905075 148088250 587277401 820403981 79030731 298049606 282259764 898439171 602856353 443103051 475736909 737020247 857162878 91330023 884636876 779908246 926182547 700089808 387512489 47278266 304318136 641854890 878522268 3816338 664206727 631631112 827605898 774366677 291231481 203446033 23246648 8288219 25357415 783457272 606433350 208250993 937188497 84846651 336399553 999804081 826412554 341233354 914220123 885834325 924018876 992518297 281584871 372008631 944616443 891995891 939886082 876872508 720230490 646666134 925555462 997999769 989810568 909637110 478101911 356237767 940724428 417705500 854112485 980888184 946635945 44787817 819062947 826597090 898668297 515873364 38457658 900865401 908529455 418254090 597175212 639755912 622836982 951485711 560917658 345120289 532173144 682638869 193438884 752569591 445987659 788204597 409058540 777024102 448104096 809992573 744418864 321530277 278492471 937868589 569863722 347793955 913024811 443404067 797976342 917906319 890123911 516952815 999143368 884405192 468105345 787905308 983193705 993877891 463983162 844357328 829093320 187361277 149155650 351214132 711421719 21250508 149839565 30142711 80923816 506648458 940257734 42042056 890956639 599452113 800804856 422372892 766201169 763938015 914732768 636262098 351261293 120202691 50023455 665155556 974652087 457017631 961288584 995541830 404300842 614841738 264767232 272818453 525710240 58775341 949951353 830604151 444469288 912953196 510624438 837380361 943933950 405418801 251518746 434720050 793717662 6453022 203495708 941078804 909520911 274627024 796229548 825901793 270394209 298380055 376621982 846443183 539353461 746231845 865385978 437459970 519045105 369873515 18343096 811046334 919844982 50361776 843250632 813824347 921003154 525461632 336587945 67850834 370881974 344561208 888453603 755792781 862942739 275489680 765038788 19490014 512547659 807583185 198709634 904248866 895663252 1987037 793799408 322010004 437892230 713876538 737020247 909193609 121830506 969849217 608873319 823493208 641182067 909413305 287754129 911664347 828327986 930625354 740474225 997269515 519836605 887157339 12884060 130003427 238070076 50404791 823829598 528463302 854557353 885211253 813347583 207344440 134598510 576286817 420388076 883504001 429730108 997238004 894696280 190232373 498220770 32414254 777988536 136717329 750807022 875103264 329767248 213573109 135757922 879934236 464541354 548152178 795871703 72012586 337919212 447583982 860557290 8783715 837983009 815055991 599393545 375518012 963776864 442890014 439656875 175366779 900957337 339880478 996447761 606322431 404398071 978787710 677986672 305251658 450742342 903531023 755809613 637592197 798514272 990384586 5464666 920127147 980548624 907226272 315726176 852897243 67081028 242781150 264233596 430138100 806249520 941122046 419805153 822491749 859798326 772181356 907448112 140046145 632009141 338026736 750335078 737020247 809587955 188237216 705475275 939430397 223932429 973062530 420856978 85063412 751745772 756061040 408389247 219019470 823967390 37096948 468467584 493990001 590515137 663561516 83436669 796418516 491774878 737651036 987834216 979765538 861131742 796779410 765932563 969941396 697007879 800420750 682067230 855121956 758329297 997484037 973412267 327354087 14650651 611053687 755160359 390905402 787317124 645726906 767439188 954653065 998670503 123500281 718462652 739448151 554422969 840726121 808142189 962869415 890635418 814547627 884422335 867338936 932979564 37794821 532144623 917093602 913905200 986242537 486603376 948263209 230551409 54142050 174696539 436522161 663815994 428184101 780858333 746382853 716249450 781660699 886662317 497047096 824308822 807366395 936399921 5823370 992293727 883775416 696298471 174151555 852245988 356710958 772994017 824385482 688214241 964211933 389957774 829023589 655373330 994904565 252140605 830983175 899619008 649646498 819994768 931623465 304153484 764315368 692869139 963141797 839519650 997331043 318800471 964746894 761691780 529508969 487289602 375380368 726597142 641164185 956706373 289584765 593183289 778193416 899776371 264046577 474393416 995058256 997387289 977608254 755956232 913026715 660354644 127237428 678516963 640538643 810249566 938344275 255828186 124542582 391393962 702182998 423632493 703828248 172925362 777561542 136946403 811413956 323976384 642756588 554870625 674273333 848859418 944640619 857716094 747551462 941141792 731326267 965343500 183726995 168014134 701112641 741030067 295883102 441963723 863222483 498223163 928745116 322911872 829454944 258243433 357461250 822979484 996480733 466050479 396108115 394104888 545224637 455772592 176034888 434924996 990399579 149468438 944057399 966172287 925223682 231346400 753648083 566882502 704586769 932351272 751849125 320451979 872334291 698415579 846047953 847412863 675646517 617155245 423533663 167783254 542912972 507242883 115915429 463041421 956582015 946490220 943419355 702030066 789111729 270271757 39492206 715586728 597486005 378945833 438197183 460523869 57843539 487056643 171849486 57710738 893035980 251503495 976143445 854201609 5249387 771355218 625812584 540945540 228195541 917906404 298429278 886290030 719547668 949414741 758306871 943594523 896328537 879689514 776874669 741577845 974729471 26285287 873785094 806823992 384723192 948958095 145375200 392498761 578106310 363932874 399254212 553071466 68089010 421209902 436807383 900294176 967337502 663922902 889140971 468540787 841927095 388876854 923523878 543679407 741035101 114045783 260933313 781733714 742078772 893352007 583787241 119051553 495297775 921873958 835205607 175704779 544012142 283417290 970690177 772318473 843515896 618237858 505908057 977670013 741804890 921819716 304804710 347370168 278521696 867314056 798727317 991814668 371225065 125863805 355403712 89776983 331519921 83325432 805461887 171090554 769466383 367409712 993947968 791998854 672252231 251088896 907063051 759487357 959914972 836264332 805640347 905486577 855522300 55252906 438405174 884875351 848429482 878919914 745937383 226702163 740532325 345404494 969729654 364057629 944038742 772322768 52034726 642396411 684801492 315488449 400339252 741739723 930904576 727147159 44611499 959108115 147439003 863334749 29869926 54544835 898549283 748987678 737020247 800540780 260682168 963657899 348262061 978391959 127656533 624907566 964127936 11215771 752687429 740501882 841786345 109821032 744044210 432982859 943602284 457019388 41894081 641352382 917925446 495317687 639028893 473562650 8493311 739779465 361247994 916962710 738644476 787863997 200303194 811635963 149985763 960042316 592014342 398159564 916246494 904969742 6704610 534568714 828857989 102476429 918101318 510205447 51153168 700843920 788834577 898236671 973660287 866703983 998218896 305927716 52632759 756407595 983160283 872748844 478277877 784704768 524126519 34187773 645047890 769080501 841680472 824138472 987643053 904411723 953155439 821970916 824422182 437640059 820473892 708744720 870536497 972593304 310773288 264577700 438974873 316006804 909509193 729730529 945959801 810781414 840998368 355883062 117841319 764062651 950855768 859874491 814938371 788213634 803564418 948874811 688738665 750657660 323914988 64221446 835465145 605666182 443111839 303129914 224244679 928613140 874239976 520971442 261070800 923615661 403828074 673302234 102709537 816845641 201211905 616591547 866633835 986095874 492257220 479253889 28754462 948839386 72411073 867153975 519086502 859899200 539885606 822715762 142113706 867613851 516204452 966697747 950102316 560730899 811029228 166505551 892757868 877862628 100781972 320351275 802372990 250437219 153779431 949737618 848291401 56053917 758349778 655916781 789730149 829813032 909591413 229555387 461160866 745485601 417796610 731262895 770362197 58749398 763484503 808006677 499040894 440818052 802525341 792424520 775062325 126294619 764016618 746923811 753848154 138547106 387270832 520054827 202235675 203656742 927673384 271222746 613698160 848784658 480909406 764319474 350926567 739220988 876904379 976533337 862434610 455582590 823420169 363100025 834624587 155390746 805166829 275561504 218229821 992498232 82293408 38078319 747372109 505943742 494721917 411090710 896859478 874971475 775722450 553152894 619527342 599623716 853419923 180271398 949826705 102284316 966167663 287719793 328867862 487532342 473112484 805763791 992829459 400346671 338806139 176977752 814622832 884208746 881932521 740144164 896694989 217001440 782140812 362108006 931907398 854552028 328360935 333997550 550924061 944859691 399405364 944820529 39860624 211148440 780729754 831415696 717849096 15097746 189617273 622439314 907396425 988532221 948921702 249069123 32925149 263714126 797879130 767719401 922098471 828022947 355390403 830318720 581937799 947125595 899969434 887755326 955509977 993874439 703543952 785252591 251445507 986648608 761706189 902589456 795632680 884664859 785726093 954622111 795830661 852923284 505537381 885566902 162506350 904734097 30032563 76135878 961029140 3780083 845025803 867110025 152646506 304162161 880132485 802373914 811693566 779125164 927257510 968901308 467970270 985383129 301375256 984407191 525318590 814951414 745203281 960477519 664611888 949805966 148276160 568712803 896741056 950660107 187690251 949716214 78906319 806702141 86801946 277959129 814079330 794729083 860214826 411634214 699037423 954985942 486191676 734789025 326775401 261996279 941816999 775552016 525964048 377792287 748309633 219706968 241885005 911729404 30301429 991243019 940391865 773715015 417114807 997746181 716990483 315400618 803387513 705107414 806246515 965705733 969728212 861909017 443715342 790319317 447337409 891284688 958016427 477404278 426275363 575812767 475718611 393121765 910710090 267663723 340550755 903770361 783782983 836742227 880624398 989457328 34628577 944010148 772879711 991791687 210317714 840880793 275858039 847403510 101388927 991089096 709239714 860303838 894671682 134548456 994210254 807721951 691382113 972169697 792593152 715153115 298398998 801938253 925771958 785527948 260591157 84865508 893769918 903436383 534833331 772104447 672083645 367964369 32997456 450156814 415102643 282388175 843249894 124298457 994519780 280036221 882755562 294188559 746900516 129142744 288501790 881288978 591597236 715592426 936113548 174004940 758756810 947292237 993035987 884547638 355867084 474780529 955991572 556258059 616436179 803322725 808558393 774231723 801431693 722121607 938093946 955264795 722549643 722447234 989364242 942759117 953303036 8947530 884888746 782231023 910479494 290267668 861908634 830893867 642115364 963315140 705716668 89981376 853861719 366700378 259814222 8649042 996994918 753302381 752458802 942367367 826671859 72180126 496013169 872550011 842277321 403392337 888187867 813989031 340817094 398739931 8317904 439369537 586734289 909834395 712865418 718004628 199590352 633927090 870205365 904987873 915100505 874750933 723383118 804419893 844461777 947109058 369046999 39764438 620510937 779682907 775719426 926719145 881044077 788215263 479573725 797064448 163766131 925936336 721953020 335240677 153197046 841251157 770357176 14523509 595966647 5409677 234338734 338690685 913762433 291216251 967633177 968051503 886893651 357936485 348207079 879240638 923068619 790061388 869989235 405171739 832425527 849719598 897120343 943448656 768381479 854227098 532451930 957056083 246381223 719420099 616968784 268806882 788103972 773228585 357344917 413498553 916711487 619281875 934100648 845096733 741732443 886729020 351418771 620572472 967114003 810293544 239825826 745939738 913102198 182607260 839135909 894859854 834362568 826056919 500582647 118181812 279748148 888182202 639812434 793461538 849504475 390314166 734689168 205639435 966889540 849261281 767569078 757966971 110618484 834202338 973118460 938671901 206075340 209099758 241507750 903006428 823102625 808777205 783100685 698379307 686202434 942654760 198083615 992015832 393687262 822917401 367373753 953864559 369135056 179892807 536932850 901442876 886257861 276510121 788785897 37904601 802862734 521782799 532936515 670602588 743368796 24404395 40189703 864294449 516683746 836136886 787472421 751196319 874294642 28371651 822456783 761678684 784480873 647702989 381267626 795001275 135582935 941383745 925017442 939382182 480583848 114895163 156696347 797310654 122515780 467827449 85210175 217663676 684889583 255800060 737555429 920716134 588242560 7900133 615701781 25036608 871137012 810126456 831849255 682347386 576480396 781990384 732678739 401181796 79416855 95881662 551780358 791416826 754566450 182972076 41632776 404065798 779370131 913803268 680821141 334685151 590318141 745517422 507052223 126324014 199031525 306943455 152484784 21116312 236146840 982771330 748154264 815497405 899033523 683319954 722465208 936371018 952373968 647949274 752315339 942262879 292712771 351744277 816702700 307126360 840663751 305727536 140021386 824008298 670029419 187986380 70004901 753538294 14073049 704360642 901273581 389905257 506539474 920506743 749175574 882824747 930295784 181447715 516914142 625907044 312212767 995482574 374241121 894112348 941870070 738120019 177174147 840540180 204051816 898826318 243174862 206073078 804377578 126062944 35486970 585972694 34716150 348365277 306350804 417423133 8790727 846688599 618952943 617036782 185964674 920516621 853309338 266452897 848217150 899485779 413308612 264523688 518315338 372549913 331229441 889949129 999402348 116297321 933321260 781343788 240011148 728340461 814142108 258138814 64002177 894054448 396034056 329106884 798352694 789348597 593789928 508515410 958793537 515320456 362463146 943272003 796893362 248383835 585781622 172186795 845723967 763047065 909709820 958418720 601713787 918195794 991822642 510344800 934519110 982463837 900474838 832426742 686673243 3411849 297836940 200329230 836392876 288117187 912740121 928582875 188668524 841929063 410069978 846491668 201449115 785007196 237766250 805486891 812289575 821979018 910986667 822556054 856241350 180830128 282253725 793423842 729189690 915422709 827647409 689112472 819388805 924612570 944068831 717110709 900866017 368077086 147632238 823365398 812050705 18822259 975022469 875299863 374865883 223234199 863258909 210316791 925294686 552736279 917821519 820183525 998393515 988926047 422950678 246165282 551644906 710757030 176782633 6436153 845299460 243241506 204939063 984544473 227944510 960602144 768445063 149787392 887348734 797628416 621312527 490249703 437161578 966309323 978014198 879530711 934821702 870389236 898844470 959780482 197129126 469854346 26702991 808481454 319990308 848154262 778287834 748240162 917484806 843076292 246982727 922342070 846763315 667583221 851080470 1448978 785316804 183590697 745895009 562181853 211816928 900814303 639383235 920040038 974420396 444920848 921778628 840576054 4712474 78733309 847334258 538658269 580386036 857931967 160053241 807084143 181519486 794087456 315101774 705895885 500323929 966712865 557881807 616584591 963166424 889748572 878292614 609539543 131211158 507538632 986066724 475726271 8561184 283928483 459451029 554503427 325122923 831306291 501407544 381398201 843822744 53197630 955845719 281039924 152477711 849021046 276065904 943404629 931964710 40617430 342593118 157836979 865916246 870195048 886767212 245226801 471135867 972230904 903168843 226942499 368402532 109701022 105063069 982045674 565251735 768079055 969598876 954442095 849696476 534494584 700199717 827557643 878989085 233064627 502103729 896401999 452875175 278750508 535346583 866893322 65053193 930724094 516739035 192250257 726842578 741698604 439475470 766633646 493588588 949457424 11938719 369537468 599153248 373732583 905216576 962060446 139843333 737020247 74365463 812812585 725240337 189447501 750958307 964056830 433411814 809273975 231416492 65064758 532368469 836050219 835303191 54543380 820999473 821547129 355848400 405475281 417351966 360224944 756985132 968086785 110573389 72368887 276595457 934524368 397813252 969803927 811059668 576164220 956089354 912097288 842194806 822712906 617662298 950119862 191103007 786996440 578755359 953876093 912392151 14069044 659909749 204938824 733022286 888998624 210014173 920343861 547595117 572051173 665078940 137018508 529899834 886244053 547256399 904254266 669593090 490397525 673664689 800516626 571597182 770241741 543866819 117850890 914567653 351676703 835553422 43824598 891232154 900330691 648481873 472600105 831892503 66938926 868796939 958477681 419477554 990954246 822345742 812638578 918868884 954661608 304102822 59701105 142615686 325083233 518723493 63757334 744819965 38546400 931378992 721671685 305989251 945309900 775945792 432505955 399323172 684208304 913661103 205902282 930999088 972695712 880970182 671300548 414059346 48237232 477791573 850576457 585591918 801696033 905044229 921757519 604068226 225434165 891091729 97714084 775363135 787041443 742811834 715806507 898937189 624034421 797307524 189636715 873718962 288279967 885084084 844070998 563202856 792982491 346487503 845064422 301886441 600346539 90377622 903679231 806618762 104712500 773784013 27434911 848868504 913293579 619307612 938401836 794809824 963688221 268182645 769832352 731663480 80465353 894323047 601919695 225432146 929030633 398587133 205393040 914652905 757669877 659664100 53000172 547233537 328288704 870980840 498264822 562946334 173674623 892874829 311917338 87799688 389944658 309664723 815312392 503560313 924751617 7728149 540325763 590138433 81080489 82727191 943589962 829103243 219348201 952452786 423374415 953011800 510012285 356698326 8982924 583777907 214760255 751869404 584733687 767724218 983829094 177207790 792982747 82423138 465112720 978029519 869329324 310441705 164564719 782106425 423519107 248019230 164805539 920452436 967456644 413261670 961457624 882674306 633296526 435707697 398181256 937707069 518605177 129564893 802699357 742254669 199891681 889428678 807706888 878751450 111352933 824147886 498735110 954572912 536889939 518966074 154996847 74009979 849238028 819747497 831208869 426662722 254643982 736016614 475752833 367025854 776900845 950268088 754836968 311792572 909049413 110798197 800861691 661608666 758662829 888348367 835713601 330006697 874420583 6774654 767361083 895044045 327706615 842331116 453219415 831624007 338885368 219376808 831723815 693761945 970996717 244869618 236150670 412975913 440567801 851964703 992385604 418369937 953902532 926081823 835988115 918851417 995172656 349418373 847676539 797270081 865905096 903665154 358073572 968570018 847008233 415648578 481721087 323576995 51663626 904021144 172913153 214066961 915302195 303452044 232129667 832781604 280181562 745783275 897556658 55727929 855120698 899692118 503234171 885745486 174099234 572233238 835284358 587277562 385207164 38406282 968074441 828580283 40020796 988448393 812949788 761475068 955292210 861519813 17128009 224802695 877352969 890845378 915548425 752436116 788117420 135315006 981284321 803385641 828134087 133374351 810115335 29740219 966925030 464226247 892768439 818269810 381598341 947429690 888809067 739210786 492366656 244475543 838420761 74356727 910264096 495959726 524251656 757850263 379428989 540740886 788910960 858346390 277738433 792915414 668240350 585895991 181761407 282738448 450206406 503337209 931768923 652102534 554185186 287486252 883011135 993095894 934944092 897377571 96159868 336897754 966354157 842284884 983792066 785902538 825375243 904638811 69434210 837729724 961702341 863830871 867809837 918775338 957871737 878542187 964835210 815644542 643637620 796538589 876484351 863016074 372195705 875487009 810711905 756768478 840183580 250858317 950888084 371577587 126485471 844350403 351617550 862675182 554970195 450646523 770281445 601708941 775244714 382041014 444133448 784057164 350742645 985461871 286052410 242859578 811066383 679837408 743569955 814838663 967004331 927030918 896126804 179321668 297378905 945066906 559666981 214719615 790731633 962725207 272144804 838464116 738001158 951382926 271058146 54824089 959857047 482554678 522092371 436917224 261792217 838736396 994587677 979193548 506960129 915856139 335128702 204428885 296074012 408493343 162216862 881879723 926225149 562115094 770995336 815894560 861796151 366314992 974584318 801316137 955094683 842392466 875844546 451453217 530747692 242227472 894215985 842043746 409132328 393234016 881769125 604645861 346365575 500594121 455601701 205148365 903233781 236057175 176866631 141396620 872765639 667030470 919690620 542181797 784611339 417933395 940704042 905926889 891645573 377253082 908948159 809254353 809113356 664987026 423659327 910249816 133417945 606050072 457911397 636234859 247850524 841451323 851444471 699493021 286155478 240925863 673945319 117188465 551299480 95762220 402050696 124003835 194771881 699473787 881045908 75200137 966142375 499521515 766892084 108642565 50779964 332529552 985007435 999102916 756706063 967820726 999106600 239510817 520351405 555285456 399734591 776331642 749432042 608049906 186703864 286539388 45930193 74691533 281046778 793271402 63277244 860109109 331537509 480395131 54626291 448334579 870205210 444205573 809384701 992647601 479345483 650901820 550824055 74687578 570979565 988403910 943604547 636598462 303264140 745097667 750161000 782473096 998812227 487592269 925776022 935875310 947746176 664025739 908304588 945938309 858624770 173357424 194200736 797380451 691487569 904880218 980925627 910006799 745353079 974576165 321383038 947251469 136845472 765293682 173694076 910542245 647532404 552715957 835485177 756607797 243241118 175128709 583291452 239748220 737020247 792258310 207844426 286207618 701417074 950849599 379430273 519125415 835557383 856036029 117511825 208152658 686473862 709574686 826982834 522435435 959555884 962072714 784617938 135406354 995800820 428874352 974349887 897186480 331014639 928396624 936666100 121555250 836727398 955463593 775101232 931096271 760936857 777544635 888595419 393203905 892169694 300346262 892846659 190325539 545455646 458161323 745756070 985597199 498473155 874711916 144799183 937286488 246450960 853217722 941691832 998269576 885044001 769688935 974399248 982302442 794133958 23387050 225344055 838190988 145864439 124187911 891917845 685753755 294545712 333310447 459897159 841937414 721358650 777627021 796448093 973804860 929509560 468357992 454050250 721407536 670523822 915611340 153474580 721984639 824364181 458144740 688946667 507035335 975062028 775059906 848487780 639557467 492090951 21609561 518758926 978860334 737242512 196619450 871641049 581833152 379416006 627604377 623238277 390477449 373997958 693667672 935887088 632624862 997107141 899324173 921026283 530093070 959408683 722776425 270881224 795403782 861584647 737020247 634981092 161893197 156663436 962318218 964600808 903854720 836858624 720762400 545197438 9764769 489404576 288313564 997577178 2596673 86885940 160145485 775368044 901383094 134107265 831572421 923710503 816437492 897665429 446036303 730610597 492088040 750457857 406759449 758772896 129347706 771134955 729090919 613513019 46664908 264875852 765541454 696790141 759928532 815451589 846894977 823537546 797612259 276271835 442077135 315386727 185329307 900012027 400273546 104023176 102476697 998186347 782352083 10102330 625698493 993206936 596823204 843387670 810144702 936076455 913716364 840065249 54186217 769124682 939616383 320390421 254323888 798731971 896853222 398950725 885581700 904716276 584810939 13912090 926157260 543436512 726202675 398781092 95138357 753098288 52877117 176156473 999484434 837127095 431398358 209035484 867197400 799119519 662024143 447455247 710678549 249524218 232136929 753848732 743324960 999578005 545185119 433301171 831026858 59976256 991086328 277830915 969805876 564608854 40851108 24195367 218152425 434822060 952174223 751594201 361348840 403780605 951459798 771109674 883060408 280867984 83954763 365641157 812300057 804832239 82770062 15456988 846085864 992422597 985545654 286775176 758386360 140847191 281301622 204637702 388342687 148951300 765380878 333093263 344349566 40730559 631931752 898517602 244206482 784807126 930692819 649821174 366860451 989152432 804854549 363747858 820392299 664696990 521440716 232467034 242360011 39405240 745029957 853018314 854905577 979190594 258965630 168504665 887896705 145418995 648173168 885031388 546341304 250490740 766337010 925781596 888757695 769914312 446446825 285642143 781321624 820936544 186605352 867827425 185704445 929372958 995297282 964319411 743076343 917839366 234283966 828706334 444873144 749193925 674293456 744844968 31805095 838806136 905215365 694445555 31459048 867225445 588859355 902215196 968723827 821596667 885064857 33324927 740062968 936897954 427669609 530003687 895083846 475880321 933929045 684617463 770488792 892958903 794549992 115822386 766218795 336598156 794569553 908294976 3498517 655510880 662625150 101440508 805282165 70553685 917907070 223072380 584573298 225446442 676695318 808371289 561749347 225967751 750535010 657985025 732503562 287180503 239562764 687083788 620864488 855074979 271758239 453792901 301619558 689509115 252582560 685205174 814679771 32317931 604229499 859135853 487544766 822994628 759469060 745605658 430916714 142190415 288108770 541452896 129468666 815259528 874771613 637256638 584613429 912808890 432212705 764583656 969589183 778078770 20270757 212692932 521958086 703234210 574288841 151400826 136771811 262274421 888167655 258977646 778159362 199067219 752482735 382747070 782086005 399523176 677344988 821444924 225349020 817406794 290539281 146808302 943363934 832556872 399661565 643748253 247873508 819774638 943365982 661248708 348239093 797975552 893736288 209755353 661429662 548398558 857108715 907170330 645729548 773195702 987139281 664592836 374780163 984394141 710335038 672312540 292155501 593212867 277884162 485215230 15611458 817846281 300323248 263082442 802793021 986053609 826768750 948664478 756753422 856190896 598738041 714313081 62432931 379513440 907887402 894830207 318841515 838062441 80790288 807999013 54237621 697865126 820538788 217140382 101856595 917053494 388881761 647069501 942620464 370748318 212523547 558877720 745043807 625592048 381771893 755144294 151421957 479284027 889101147 216113847 9786014 672558718 554625968 377687526 559611273 206233240 187018238 256476516 839622044 564367617 982606993 35876093 782007612 158383355 924488188 175447110 980283559 585451814 324967913 971692785 170345240 628854019 48720251 633867860 824283884 618664973 466681944 990044453 259170020 372746583 389270746 878917823 929748170 959502873 834200592 752578064 931469079 988484942 287825752 932557985 383269965 429331995 204153521 272166946 918236874 370348668 926815925 786135534 956179357 40112668 431515479 235460412 503956476 858937173 515282962 172770089 966195147 422176943 232783164 164768197 597886947 766737508 995298941 746497091 307238480 333280236 811890201 920384149 176513830 807172032 83950849 710972047 363269633 824739482 348396935 658025487 205385659 165656540 185420352 218173592 55160670 195739203 516548346 939967860 574882802 856384940 509982252 988686708 520035712 94865020 963484056 961117241 988259887 888848036 12926866 773099637 758756115 868163969 139746090 632840230 903183981 575545569 972845411 954338977 884403520 799610591 928722961 897865006 301065447 323050389 978820522 200190077 316502647 797239077 69632214 49153697 366974068 844767601 511780807 852534305 78191591 504484304 347072009 632467525 928241020 303098513 459677655 899810747 138284668 919446465 236848158 939822743 884955074 346082693 819646061 901862406 563755426 119758106 440684154 478223007 838525632 946039166 432950438 924080963 695073357 902773498 993862604 885785949 318387806 769452899 509944996 422275747 556001558 874826218 756056774 999190407 886772518 792130048 462348070 406150937 532832783 347083092 214828794 922089842 913404312 724215078 833287466 32044206 960676684 752696846 884567850 827856413 492665589 853597373 842028816 746248520 628993056 684355936 24116041 725014642 872611300 46516674 776628734 801771723 811362100 767887340 315341596 847036877 971217360 759316311 663146806 739995174 886744065 911289377 872892539 419915189 972560869 692722392 989310922 886680722 296246840 879880478 157019166 994293131 770560523 902154663 21636966 320804877 238047979 806685963 835200677 107892194 671413737 163308579 784040626 780967127 533768372 309842676 740479604 717374771 800027932 998524450 765562885 940766432 357984210 257333709 19885191 584440017 750517360 283006622 864990132 536692163 808011966 788125678 29856191 242031803 898420454 867623788 285539435 833714099 969224153 740688137 500568290 989115863 731779080 781969670 852605566 922440873 785001192 907086752 818038837 283667574 730769179 885915771 228173613 231237592 854530106 875535316 869560173 853049874 385921960 839676917 67650083 928046476 858502935 761406138 741523939 777816073 59957983 993429344 9941864 339128760 806558945 525128068 543866956 700837528 200510723 962333879 383306388 996049820 971486227 954980991 829472357 117568636 736403829 647968673 767323856 500656774 352474692 458529827 940178650 637535459 21194428 478359427 862759859 799385052 834405412 848622652 747382889 733842856 747168060 809640454 796108837 858382346 756013276 308889694 969962702 920310649 93052269 893665229 967086564 475801848 638227848 622493255 815452266 766104106 882605722 684283369 65043045 587733497 475627710 767080582 477419465 346422133 928734696 999401815 999109618 866961451 252775849 97454865 878689589 208086801 398904723 171419421 845712818 840438778 880626508 992869862 44013353 964479519 684261845 932519648 844587162 735587545 972206464 863638780 961723977 273028342 746704745 418300042 785116346 514978601 790617415 922657582 507173925 796579956 73405011 762734020 966370940 597683569 990971686 948441935 629701442 901721831 629935781 23966966 178336375 865123793 75075182 972857614 117326666 165470923 414637745 59554485 796276307 237481105 332358195 812563107 138910583 650917057 972975420 920430072 177069851 903218578 843821873 789350910 341264937 459218556 867358048 636366016 832955034 741420411 738506843 901546962 843784452 970402260 752003891 577309035 838019219 680274374 885463777 967950574 878536946 804879669 748595579 743753586 781147862 932065073 508505456 769539343 300011340 373208084 803620191 771602670 949275321 444829583 846750269 745107028 577756584 780419736 589950280 315274306 208445434 859319841 446057482 394078057 680849969 393872538 85784035 430288272 975391310 897221341 911280830 373038825 869198328 943531837 27510913 415516285 284126932 628166464 804466840 868375425 937962226 514572542 858002349 936633360 988453238 496079642 860810299 356234664 261914213 879382325 534768916 814495503 930699140 547755107 919300298 420477053 500511821 581267689 50262420 857968628 984130074 847644737 580343041 744227487 176627034 922142855 966150336 571433425 282172016 736744139 37421307 301886301 279722286 740607414 929272689 585815873 786918398 831601405 815837545 291842757 504776206 955178086 143463722 580163789 517499665 717535988 233879261 745739508 250947743 892957735 32603534 985177907 841025376 875950835 462382167 586919590 767536255 168718215 644766469 962935713 701256871 908590173 984590203 960910301 770063833 933209380 850022969 257039593 997189358 821890604 943190049 913268338 899547592 973907877 958379691 823521661 985549206 256394158 766268563 310155641 889194891 934092176 686941476 794071932 761969362 577894859 176570446 252727971 217340419 82578170 967753259 930960141 3190540 815448962 843173944 870543206 901852566 411433472 411049399 737020247 899822240 768216320 54705074 785664362 850296079 745346367 241953701 624429158 7412203 500626208 924848638 633448301 963393253 858351004 465954409 820136892 755111662 945508757 743244328 872446281 768898818 419343336 812285127 610562927 925385801 858840785 811952415 764777134 379112380 877720982 867488239 978119872 833575492 926717824 933560526 815418320 278541470 972619263 47856651 892431423 988259967 859489372 632124961 8440974 782330995 967788247 959661120 897604428 547720978 198658721 955964931 958536541 911237174 810951875 687511514 479830370 150814316 582391608 934424342 765887214 389845896 936949335 999440082 733010937 842623276 845470983 801733989 396862507 828701360 877686981 197394911 810090896 284164100 983460517 752883965 547332841 655777905 812613235 808793738 839486785 407152485 195271405 62020929 477601499 749433253 346689714 958585376 161954531 302888159 988146102 903080118 758545725 740489711 451977096 856082878 228737155 866211314 854995484 462817145 750917845 737020247 880535807 536535810 423904291 226391398 761298721 431847936 223389139 699613134 550951047 940906178 954349946 861324815 337509271 789197114 780429473 918857675 908594687 122766766 333217178 907819066 551279499 653528344 912434484 912434165 183981756 674925718 912266265 776017703 106737134 926159354 960376232 937712960 824432371 148400183 155372293 798024080 752156202 129785952 816955693 658660595 861965173 647346383 956059083 932921223 760530241 429388857 493527262 899395753 731486278 475512565 890506676 790619931 344924088 532474244 212439064 433683537 212148872 735923695 992683144 960593845 165965063 738772084 823903344 419761798 511517460 71380842 574758190 836835887 437824473 931948972 685415609 432939140 700604166 174854155 626247628 220879939 971220510 917555410 552358391 273786037 314957750 340484573 448281831 397705212 410545946 798336240 905140950 663665235 367487668 252870489 920989428 582700814 652215188 436693432 901990015 91026520 559040161 746437974 796106827 110787299 959849486 937573588 618520532 849696093 592363702 99254028 566258053 899603935 466362453 445272765 890220160 895849410 410013032 248521836 444486604 856619400 801425357 737594396 863804525 798419273 550498011 378803825 659400543 777564552 824949459 905667458 696017153 917681061 254509174 750188734 824316345 118493919 929582472 323005629 418992772 929168557 830871546 77455557 863548001 341827803 918415776 885526082 933597136 311357486 557592100 61661133 242697354 650237325 112771113 657030098 722755310 974098009 607031636 881702129 544613914 787839187 572747498 982824732 164760743 764660748 166464151 466245909 745748373 814358569 435699734 507397919 981320553 818464864 970848693 355336724 866617563 631426850 310957097 136952249 869973960 984122139 926765910 405040660 538852188 101019463 530398178 921855068 80849713 390501722 492552055 920863104 91016449 288447175 944624777 404686576 872013671 528674821 600341217 866603942 841946993 813806766 288628658 848126261 228390490 652474043 634396560 957666990 975263217 430823535 706212867 971412975 831690961 828342118 69517128 536104423 646381096 410838393 930714781 808194341 966503720 428610452 766770601 791163183 851123169 161674263 814684276 419786850 977185821 834840035 294744815 957227758 131232286 791200727 55336751 298507222 806882269 473199964 891359996 768628449 751290080 347508682 915799807 836042601 64911590 66505590 876228895 865635765 977395330 839241038 882000743 947032697 977947493 865370477 949736605 633687784 216594062 845548880 801656571 829708502 98927615 719077773 905506126 946577131 577952893 684741288 194015800 831548517 846942347 199311140 44371656 978069130 283184992 975051608 192130510 986821963 178875093 962742529 835556460 744708838 486536267 977116927 118791898 149537877 954148884 331200234 934834201 950312971 845609541 605695912 261988727 699165832 835643584 361289206 941250187 177517764 810768363 650866085 765110089 229488653 135235448 434025688 989717359 899641820 957726745 138925086 31942664 214539903 849778244 929417363 863265560 857111393 183307206 793435413 754270960 908682326 3456127 652148423 445328190 897485630 985280400 843504863 896893673 994229618 537583499 855348683 997764964 731209192 515977101 750206840 139911334 380664214 825066030 832693655 271317080 138446529 26378569 990822635 763769656 648667981 88360240 756554804 369987035 973258681 364723631 337370783 351449235 971930578 799551621 943295258 966837464 872336111 275865350 917089745 147416382 787061970 553386573 570223854 757256369 935150427 950931242 301979202 430359618 973583954 122097563 978410889 888585850 192913072 980098937 12486179 557087842 492530980 855750946 760808915 950851941 204815238 619925444 745476334 912338487 769650229 893383414 232591093 546188571 986610280 922334160 903966446 517277507 498431344 923628992 976767832 977840076 791616136 102627976 252956891 931995110 463213650 14428579 273715770 501148099 570260085 621550595 812973297 591135705 918416594 619491560 402191937 234240403 234166016 959901904 700631702 996472631 936111599 370403448 614625440 828631656 844552446 106225398 699098224 495796204 814989656 941398173 967876203 856397424 936178327 665089665 512740918 667587981 748735363 674204298 840461847 30618178 769333463 307078107 974510122 841161078 308099063 930057201 413879062 554231180 892975764 775888745 827929245 522937977 67913372 798329424 301573572 401739372 837054397 959072825 938768508 751819247 863503168 977524801 549892926 665968232 769206850 143180813 892335165 274611108 892335021 488972160 906241457 713864052 407259804 754275177 935920453 785615198 514877906 997278628 821723842 987074718 871708248 710058420 845541555 631084184 400788982 118903475 360410712 307934983 749199456 228707275 516631173 712801943 78558045 721578477 857754442 217471908 421697023 865175503 933625904 115420983 233120226 40389027 8352592 970312491 821952986 325564517 674023758 971492236 556020129 316335624 175821044 465443214 942104063 859418912 937356876 326408471 807315618 275964906 785674495 256302813 464145927 486386150 855376542 579154586 813686035 742401449 746749433 294686927 759326792 787009721 142898055 839985917 397341164 792422769 259039597 204687577 585319771 592942749 824396059 654927074 26701610 968112199 757251003 320813972 644768720 798215953 611227925 801401361 852829173 86930123 929053685 57173662 35622392 828858258 847493325 88190636 262791889 622579738 407813871 581204527 961235809 855820315 619879008 758882918 361649054 822774449 754360701 981899240 845756928 898946355 944735013 855815216 600059272 976143132 303463458 40463735 9726695 930312075 888362164 643840547 391802616 938755365 287969396 187556263 963823759 846803357 768997631 670811754 474489165 754576892 280364636 479962026 35039757 779258209 976734687 975222964 911473751 543771146 757202925 496465445 940019105 882025355 755228174 575949660 507302716 296080025 985574585 6576337 826936226 652911346 968220568 324023901 411899270 1426981 487976262 487941433 942372096 834672592 945085506 877027656 957318607 170651738 968006605 718860125 930660071 840990824 552466460 879668612 660505073 910967378 124939922 607889196 246699082 226135811 384003396 892219651 115327647 805846865 775105913 795420717 191726653 989341818 126456412 960962869 210376372 815593113 854073785 464298178 686109144 969638202 901516581 270323722 826711223 879930833 491118460 976934781 868597972 304751108 7435897 889207146 46371075 746910883 737020247 744156163 274086347 960118106 853321534 769434858 835660809 11984939 928921796 879593762 906811284 659175074 795796678 379761188 879267924 940839693 398706849 682708463 742242066 987029019 756673336 597966291 784835450 956262999 975195111 252202 896806155 805974387 567907837 50204627 920348485 975609556 793499505 315652661 696277032 891089449 817157888 934550153 998602545 957232378 2661388 746841390 156722299 342741988 577538019 533208824 375311469 71426619 750424507 360275733 14738861 849640854 710518742 22982764 995653504 986549245 924871056 975256938 559278691 978107331 375705381 781803587 901301064 268154651 563014306 788001733 971122602 904386191 911794694 272771432 491927782 690294636 430279585 440674181 850788392 532257002 942517662 204284107 323572380 790116884 982960453 959022931 481066175 850516716 646783926 623810138 749724446 562502651 698596887 986415335 670924981 61472813 430161330 51176382 267881383 745790480 666549929 255047511 835288398 7430480 263630308 773963939 390436631 848068638 764081136 915157724 893706458 818705543 343427756 739182714 923578968 14730018 448759591 362545564 581399387 717222946 751898284 697756525 981272787 894009511 318348535 748730831 414764537 546127333 936357606 874757047 331521701 737020247 830070132 311416607 728387983 974629935 949255762 29144355 867644924 119555808 771690292 876931590 603129809 968990018 14033854 940408568 828005587 891191449 935952532 712810745 966612228 537793431 772216775 917681892 407066390 27636306 739861281 904983009 996159335 198012100 525131284 928433662 211323335 385684129 515945154 805704168 457925237 946769555 856743308 980302607 619360719 909536372 692419482 354210986 949594976 865917768 939359792 899060617 168244265 868396706 876533443 853518352 23445025 312286939 425241753 945219564 943771553 869891103 715781569 277289725 968849960 902572560 891908328 522852375 745286572 507398125 167909519 521546050 468487681 489516158 837459959 922300497 905201316 813519096 747718270 585975470 906693981 497138305 323582034 800625790 971819320 774826865 593748617 816441796 752691435 225082395 566771725 50702050 844211297 857046836 318489710 926742916 688911582 37632015 628117127 337478866 739101449 4575031 844081541 278242707 967690495 766225041 858391880 847379349 891239687 990501820 224595871 681774163 961105399 543531176 477227641 958611081 440645853 96017592 220882826 958161789 967894276 321165946 947878326 862553410 825721151 854228585 900732584 957128350 901697406 104918562 826786545 898918751 737165252 57612376 218210210 975151670 913257403 886472856 571678265 779482300 459170893 858880843 793560413 838163117 947137898 234068217 891018316 339000999 34646552 918144702 941508512 840632813 261795313 801232159 80984590 75550876 69573112 166028122 747387971 776076546 994220039 802585665 808674075 944685713 457485973 31968420 205186289 27420020 798741974 854787451 872054474 7677123 94616411 506771599 297549219 174337622 30592847 191850694 919730460 747579803 913202785 825337670 960588770 479369455 801204959 189922529 916791721 782490913 178052456 980245357 484984610 890964770 125435540 850493269 811583144 691204062 481029486 682808783 593145855 195894847 217644668 863736422 769917089 657771149 325505934 919217258 486459401 140835872 981747458 704785532 457343220 12477059 206783634 876143577 212403608 677645910 799075551 859331423 367328813 775185147 627355006 558573642 660803118 752149384 828637598 714836231 956402694 436544943 808273512 854033802 890738951 180625819 857830653 816902767 899716632 143717765 227593335 996385024 803353774 926879491 803762286 942248767 654319741 533987235 152946756 559167870 853329230 629410786 131884712 712432361 802522952 506775381 860725929 867198078 607042872 907339878 962273941 739326268 904963820 659082996 769932520 863736118 831130371 960141457 34768215 779263032 987294246 844722902 823632891 392464381 379808494 885600321 358394376 17630783 672618345 683096549 831362673 831142912 217396900 926390397 999000986 967325933 100116636 949520231 955321175 188363116 942897846 189506337 860882886 778390029 557814659 634403044 766156215 276690955 758735024 503847818 881541080 737703242 285744392 836536175 860220442 823615803 601764361 651282445 773415597 493517388 342970962 850876495 772334236 915571742 854524526 515567550 908370725 806330070 852095366 146816879 848683327 108725588 353318713 737020247 219576955 809673989 605343757 798457600 856725221 499146969 787979996 744668027 624987301 982777362 818853094 871815737 939320729 633558166 842596909 771333775 835589040 780121571 591960046 570687722 605113983 925106041 840310398 311351473 105874608 463114804 891454432 813053285 666468365 895214560 544447915 406172778 324727644 930246126 955786741 747740758 466361025 816034112 324841673 165409486 49056529 204278778 996080466 396486629 81974146 970638033 197259897 798213067 670621721 807296981 863161509 831892508 876564752 945623132 112697197 957571925 643792306 317716112 902959505 758394839 221110752 194424756 506208480 509687244 949807279 984315905 599582872 961998178 769735784 281397397 767372900 102867587 942260194 549097203 885548891 605807713 862505263 686671025 749166806 879852111 960224297 855093649 228377783 710312380 312637775 818358020 97528168 233041203 353039982 353018885 711233159 780564404 919080159 95349469 800634752 904829867 42612115 412714432 343128915 973900555 768434784 840095532 790648540 463939666 30135636 468084314 989129005 873262342 846635085 25568501 719763175 82600168 162967005 118918993 598630465 943066667 766015565 868264139 732644214 966088831 989143797 911247620 745723179 546852041 715087941 563514373 218039185 356213498 922541935 187087454 750487185 737890999 972027908 20638454 746674782 68077660 889089375 491630667 597497902 748420702 808390032 83050434 907569741 786673124 805155012 144447793 154136868 940541465 527762301 891564534 436450056 729787081 990180656 528466212 780241920 207608070 357381422 841563894 409334825 370200881 665915171 982386279 646315352 825709277 997415915 722878479 844727789 775083452 605451808 848393064 617051244 265205257 822556298 797093006 854599312 776868748 147649534 938174434 516027790 548362009 886277641 835827091 153836563 694876270 802990668 862461533 242867993 716495400 740900008 771220409 626495758 178019698 822521607 637132080 896441593 63411926 518420568 282592260 969531077 809772573 124830531 990680802 607638232 264550272 814490495 131987826 49851660 43705779 896825110 167295515 847739538 413475468 649405158 132102003 949028490 790575130 329565944 140141980 870178701 163916435 923068021 544669 890199887 969045033 895151693 898092631 571694806 858402315 743651480 869260988 122250323 757810860 654195079 756881382 836125682 556799657 956414536 909248287 790443383 794256798 784332785 53150662 829393182 684224724 291644993 793561091 113620566 897653484 395179031 929317285 545674966 859260543 644735281 80116232 981144461 671817052 773425075 754378954 240381742 78758730 481045465 148117570 968049204 999994918 659809030 581821495 59996840 788051729 791643972 858541790 509388596 936612234 237299612 655667628 747408772 780257026 54621831 684982802 813487687 487967611 399192768 878434818 797093077 909713424 569435605 779416058 198473997 851110863 681225202 742169550 742074319 793653276 767165576 99300892 602715548 323808859 42592974 937823181 882401694 780479521 879285657 867692812 791486309 787719269 295012048 941428213 916909158 105976124 737087960 499279451 795710197 512565851 205719144 858268336 959271236 751193475 88998060 974675092 203278962 166720878 865881275 843110011 918545579 838781822 743221433 783680639 529668316 409586451 899233890 518280163 464375439 763021958 591636116 709096722 737699013 436539106 832296780 839423238 169893476 959261355 792658320 401874231 358469990 352302493 962047171 946476976 600632269 591672754 806950040 252462907 514192908 809326757 656246454 498086236 861756060 972373909 441772980 684331592 308808014 687514178 912746336 890434494 618378109 448421818 205370760 861539414 742827859 937965009 573174491 941479358 682560144 766796506 265461734 816520352 549875803 2635183 332063206 853056986 701354386 347780895 387280696 106557037 145268572 876087836 989754079 804157889 172039239 279142709 596087443 645966222 641141144 907692305 804799878 982576075 855005095 863327767 950337104 920954782 936369827 852749354 581902461 944740897 791719043 805829490 88883166 203926259 791841567 967309937 591305844 848934678 19238240 777454668 845660029 981904378 408382414 161885045 868927536 405721725 828780240 470376273 108378952 643736217 874109979 68114253 624261754 266607320 825786386 881249603 810757064 971791084 976645798 856449233 218808728 737336085 685648316 957720538 987614961 852792130 469592456 858215459 681629383 761549154 75654505 980143586 223025152 948238314 910065924 688559988 334279800 817564453 180403308 992312012 25837379 562482847 320592924 647889544 981409216 956926723 56055029 912061396 33860775 63484200 957211739 975207294 494792077 862543169 888023944 912782630 206967093 743758741 595042854 853207601 264932654 995226772 981529926 455256266 55465275 165895736 739343372 878192423 667204525 883212292 836080280 214659493 133268456 634675280 359932402 268185664 116395912 807709933 918841100 912195782 774017799 86541506 304668180 356901336 932107642 840387023 773823217 720530428 688681242 559494617 914506958 869560567 889902569 148875751 525832734 333483534 354816012 994113555 670958485 980507609 891395182 323956371 582385409 439975101 30258379 315372514 451546829 922899071 980971589 885646950 124474315 103245307 83093642 793839581 826547074 892965889 526349595 878324580 914682405 895283412 333922578 859666384 817457894 715853413 725243635 286750567 206245696 278067815 865522005 63368405 807330253 27769103 686107419 176351180 976592608 968471299 901801242 979060671 944060783 894770236 882146634 2836906 772554906 786710783 612764588 736088556 194511972 31576370 935936496 955268396 935154237 708307575 557322397 884687453 776968266 296001776 309852434 222902257 862928428 456418481 812351396 341203665 512913128 738566202 999081134 718359106 880082861 566962983 130880354 284107319 804225535 991528312 895033395 184876084 543016106 381968223 593196606 399614792 224590374 337641502 981524503 841736194 72478967 947414338 985800255 337085769 23314330 2593941 839772452 780316092 964938061 292030349 998848910 992647671 148749677 30845258 987417758 140076128 757772435 280777598 712592838 744509023 681707794 812611327 913721336 615764302 771165400 820556351 410382902 856971890 147365080 984141076 193499938 39423576 353458101 993457255 826318014 823916380 739429453 815028142 857042027 786537443 852616179 603007111 330080960 606269602 887879301 977664874 91044071 843887084 808618475 37784208 999444611 975455807 234567636 991683807 779379040 654848906 448711988 760398226 836317514 209812207 706650287 980934966 903120955 382033189 962568672 157255982 934991375 864944593 165974438 14446127 53346496 418338320 611046721 127371824 911764253 381385629 931914666 444501082 229906250 754103020 899962947 757701883 974310886 145981808 943754648 287208290 974698780 841337849 695880052 505751882 900004237 962814453 880361762 521499997 745058110 831450630 137641960 851838847 608414693 873427444 804483068 883728542 776862892 885337952 788104885 890214858 949040127 39502276 293785068 928561032 993614121 185338468 807923995 574073665 555706385 449883941 5228014 975779446 841757300 722663282 54919354 777070159 789093468 508999 286035653 742603693 792719289 304207555 718263647 837737411 803030741 900062652 19559785 869440796 157317943 76203338 769353579 848974641 303814362 860862393 552290156 54557187 886875616 5550655 497709821 231562072 770682389 108848304 912562749 109704706 481703848 913550954 891349290 855507145 804818831 966169534 923106756 726971547 430961051 861183667 958080738 904557394 961557163 249797043 203090231 999128452 861614296 888196699 531658122 804029718 764658652 81485651 259458013 121403943 603648906 744875691 433879653 937865081 849192200 771014541 166547376 766010335 961968688 622176124 744496959 828621363 842830476 457969646 77636641 819692365 955432324 814527011 781275578 820467917 897657092 812577496 75187643 427368650 402563646 918187106 41669690 684881140 790867581 264311705 127896229 244394089 938445736 821600601 362095527 631474397 179250754 897611990 763689658 894995925 481194968 774396523 776384964 892716046 305920049 787643615 279782489 835132141 15459109 971348906 9436697 998375440 693945968 751364643 912562003 295592915 671848197 819597454 958538771 813601331 425037440 921554146 627061699 668458332 939876441 938352814 551715997 380370639 274895878 160573185 842968122 172258148 234585394 807420208 996275231 28044384 224187991 999541146 877975431 434797962 719039697 633446377 925888990 899243146 807277890 861027539 203159887 744121119 474398147 841634014 847483572 970483411 784342957 103392085 258558508 846547579 751931069 182684948 311596973 313498751 298500212 938783484 529878297 963013775 498420514 629287250 613851810 72017228 78851385 569563865 812341414 903343990 923605994 558438442 623211361 187043993 432023047 750622208 739860913 221310142 875146812 860246123 606439604 529514986 819947848 115413446 178768508 628540720 469671138 800374986 741882337 775709225 892996958 724230656 933608141 630388728 220788194 802596823 756762806 768174769 993844179 591115921 257767484 505941224 518716047 289398412 744788107 731086463 433918946 576657955 371229888 807165120 892853357 349894291 778596464 953853395 807744714 946465545 586857844 805637165 874545283 325890476 551386089 883691929 593202699 495040660 446572211 356754996 499909150 851621142 385720758 762695711 853951410 963075039 627680288 472138855 827713334 801201614 102148138 800700741 199035604 743378512 707739924 940747200 886951079 22134070 870627680 950897863 542764805 772134738 909591638 334229498 831195291 966520602 802120690 400629242 180311153 836067027 759198682 873524125 480401826 464290699 672328308 849705958 956017851 213706304 83496081 270030369 52889579 203742798 368004936 977339045 496030475 808316066 995784069 900821428 49861637 810956620 18408956 433507660 774642703 261447280 323549962 108662222 821849764 435025102 962382762 903303941 881812724 746335093 282502555 428343006 404037302 674900548 356008446 569412812 722479757 852280356 850636425 767789534 950973125 765001657 210682976 376244562 930388426 550066004 818612395 854871768 105451027 122780668 743485097 684406828 178646336 370486777 834078774 50833696 324233552 130330729 746840454 339562497 783866200 895330679 385816472 869675436 877605247 706161107 514865006 805977856 128612534 104814304 831808710 940846814 995211291 741408807 875115893 400740704 914652243 753382999 707271267 320815071 385924686 739090007 353120289 862346033 311161403 656823959 878933135 909975072 774648238 733373263 31639252 411654267 945056618 970614392 930502552 385485032 598753796 393065940 180665518 490314635 401511706 597660838 84855166 980133840 964210345 976457601 318286314 818973793 900473496 907915685 248440397 504354452 539436691 632277629 773545612 687789257 642033681 907903052 971132631 916807641 811735416 767391074 349047098 832525226 514478853 128721501 404764470 518722640 759620334 816767176 508591068 884732387 734959021 985740523 496444504 935021412 102804213 51096176 51349738 581940673 793177514 172526356 15970591 79749544 740959658 759910932 26992240 124221828 11791915 914820777 991990572 125099057 340054108 791928749 752850336 797506298 960396432 633894557 609831551 167650064 555295354 855508854 53576471 340791228 474077766 670218431 717350685 221654134 63607882 804070555 807440252 1214673 950876473 104957610 101568115 843561166 799244212 784848612 451320782 142157568 872006584 11270348 935509200 858368516 333039552 830330887 563827264 750607668 393835997 875403263 795075444 688971539 439332053 400209721 891132594 416542023 930190344 35603700 793634997 129258040 580404313 270814243 936476910 215759026 165333551 757229286 351188880 968043559 355823050 794090755 41747149 989458474 768246914 262835425 891873037 539328273 965482123 741963702 935618951 558507642 750704211 188830265 839041807 205755018 199520689 916577477 789217740 917028465 744256899 779556695 499110249 930479808 801386651 962242761 901511039 959872185 895054093 30837688 754839007 247789755 78676803 138425703 437474513 968781498 886200039 970280499 118587870 669059787 949665021 171907407 640559354 767168796 449137431 655659132 767248243 740105524 545979497 957857976 410161982 103470716 958433512 324038682 887447382 813745413 851963214 830670112 923947508 528448795 628584104 281576903 423702122 830796095 888542674 789186116 9014452 932733466 465280882 178577250 503869021 966502047 777821142 725312234 922984263 339078548 848074981 898413730 702494942 433280365 564257195 932947135 946984329 987418218 622420678 769872681 508315829 862270815 892609618 403508357 978243051 890617918 251928153 826532911 290436230 647819738 922859090 335045511 952534003 383800979 403503520 995052050 973999476 645324647 958296426 599844571 980504231 857907690 564216250 576292646 141852445 785050422 829785116 860508701 364151831 114095411 283176214 757963273 340329325 883692244 695744236 40540163 792104737 824073181 894268542 902494563 172082273 994436786 187627200 723039260 230063424 826742612 580097635 33980424 271657094 438112745 897033793 750422055 821465168 309185456 22121205 94706902 537264178 854422314 954459350 420511728 879477172 949264373 931653363 557820057 196803336 797039221 282835484 898784348 961489816 947247507 819622778 520923765 844093408 991890636 803134248 505486169 680499830 831207696 41949469 780170681 86758545 202179114 85203348 684430276 986735803 814613167 565349162 742859109 446885176 474946884 668955573 808362439 828744849 937320619 903717844 453408653 383006942 635099424 82071589 740758801 855993960 200456516 51335984 878541230 494252481 235423809 666539769 570463586 111483432 671715561 844360256 400993654 283682866 737020247 940410293 658576041 926486236 450629437 554754449 307085537 592442654 668479341 596426935 611614026 765526876 486675373 885183451 154425584 741244346 698961798 629134427 470547295 872999525 666385562 841071792 185112570 964321436 423014323 163791040 639835340 835036551 864167546 172766779 807825245 787551831 754991794 350692684 427579287 992390283 882956078 879547111 221119744 686299998 1773697 642425680 532509729 500877257 916110589 803645892 474915644 65111625 543308212 332640054 613378015 608701168 742973578 595011055 130220094 967738028 180001065 134262656 323358504 644175762 771416867 189812296 836729704 774817233 680964995 991037649 207170278 936660065 919122687 958268166 860275454 703726959 765613936 91534130 784777148 635696123 41300791 826618147 984302710 448363510 752092290 774586380 818760608 414849027 931768710 677442497 923925435 564719568 920341909 633585580 232028388 17008570 976658472 158754125 838884487 925626095 904906862 180828370 915786144 447215057 828884287 453109568 786272442 812623157 980704157 940224018 56053224 222779318 557525830 687625791 511763035 991290742 124851674 329489629 743672788 874409772 854343209 183828058 584064536 629751607 846366126 781325125 968481847 941981817 562439781 976963017 786095246 749252545 318752624 773693646 99070157 754639317 914891193 275032379 363776873 940120768 815387826 668999849 697359373 400223117 683505472 915629825 973364831 102019368 425341904 976998647 565466001 152006067 8954949 878256612 438203489 867579092 941860191 588477060 679445570 41972856 877895890 807920516 699425062 938938220 957949696 727462110 572386735 220441458 996509880 942222671 640737518 568354111 689412782 243117872 593065724 637966086 410737879 578122971 863523628 784112947 105766110 192945053 792502950 427410283 825282601 845016743 557284942 180234708 480766414 163175565 771787674 672018384 645784744 775473945 92642784 843348044 980905893 837508588 809060158 307995419 746896740 948549288 725066402 476465142 257654466 259757043 766797998 46671668 815342424 246500206 449233176 910837072 629193350 40843375 67731154 695249662 831384092 680906782 517788558 490429914 538469683 825884703 586417686 329198730 762407673 731536520 559411006 792073383 72899418 814970959 752585139 836114632 226162944 972431463 599483606 830390908 442898715 277985048 899207933 878521298 320514395 141383288 666860522 979748177 728043164 15776397 815128800 550284701 308441006 636281434 825399573 801984791 59244965 812781482 901521898 788420626 820576950 928149131 820855695 196165422 599832708 618381094 378850914 448761862 101643698 457123149 151427476 161736607 922941455 295989664 405699744 922534001 761089770 863222729 255575974 627507904 994333975 770976086 48059092 895594520 504906355 885000242 924871049 637380980 776530250 818953286 664821225 870063561 568988051 673034411 752744087 844982390 308322205 967263837 945941470 657915399 742580254 827553004 104226527 107589008 788670558 737781604 751464617 102655790 113177060 391000129 807137843 82803192 552164373 920668435 635605498 689710680 434045703 998216304 15068994 992894684 785284902 459660072 777560665 951187648 932103160 778692701 825056059 116478840 808865861 776872766 990440328 481191545 829825806 737020247 359339498 132108357 809432456 107633110 141977515 978581902 411472336 334865235 979070872 916170243 2210257 987965868 450075338 968907767 436583703 326388011 657926454 803386624 387525169 563645612 852526014 202642374 778861112 536216177 807068051 658970177 679155460 640640960 116669997 477328773 582913506 766822022 814643433 780413624 192257947 893854902 158883000 329116015 178418701 696505864 300635520 985819110 854020323 857361935 993635513 753122997 817757289 742660074 875851994 422380598 389669962 532164272 508010067 754682713 974560980 220401425 820409446 766309256 678439161 839462450 778091503 828401231 843593064 493798570 735676154 977426358 131111604 682651180 633699041 59917967 262570355 713866357 188500003 713848228 245056797 911112619 435708382 924715049 885018927 856663116 749105043 249234489 249211592 496681377 191733869 303858252 21217683 886644555 928677616 383264178 479899361 768881936 160080991 474442721 415951597 731851132 429352424 925412343 863962082 781258750 977514206 879909029 977217707 109174148 890928484 927629594 652944735 87593669 714414272 817436331 545975524 512343945 966379938 698333658 914058432 53137264 186956306 202488530 436829145 777490408 468277603 485698029 910313673 202251736 802571107 969242979 840888854 172418414 851048986 632542750 851989034 862662542 262090100 871250273 773175932 950172252 732710943 726117348 181094449 893624859 180925507 906765139 718500501 311825792 549457433 959148044 761409781 697755424 79899187 647058724 378032194 103692233 875881261 731582607 762670483 515173545 454828842 263830828 965978693 696736066 982318831 713029454 326208702 376338459 887938109 300524566 330266758 658524032 863033676 844743195 21186230 984893069 962454805 793655640 663832558 723485600 811097444 112182463 481008313 904139541 684273482 811436334 906503181 610627368 998894823 439129891 704203886 946437070 850545258 988902508 862352034 465385014 817103729 865737769 453376004 961479263 837051016 467824282 432897595 645268439 422963215 738060746 908220696 608019020 873916544 628110121 653624200 947735742 843204608 756073055 214133861 884969486 452020672 790298088 904555723 425728104 741255567 430896906 528544299 113508541 911609532 850223293 990533928 841465170 238312453 946530631 910104953 634005747 910686702 619148182 992125985 287951285 873780149 240904551 660934708 492515326 710829570 757267502 946028623 747280936 337614969 958807087 878841184 137057496 285793909 781452498 263654173 573606662 391277619 953755079 929625979 345452292 851157348 220764768 647756550 576696784 967746587 228202694 416045077 794123927 763933745 815358834 873650198 800111641 749876914 728978566 38918068 490934410 770642839 798675010 859578963 938923711 779900779 912876832 831426582 737020247 50876412 634782367 605056877 381701636 841548425 978186211 737020247 12105082 950795693 158389284 939652028 551700848 918756906 879665890 974877534 925205387 739331471 950466571 782331055 286786268 838714433 300317186 429823003 559854233 428969708 457915725 847609812 250973919 353395480 436393227 789314313 753407849 830356269 922646072 749823650 682923515 896200770 814873155 59718207 262084416 749558711 858832395 157852840 945499306 946652525 90823026 258919732 999695080 797446635 817869078 941569853 149695723 309095346 834587114 327234998 537932730 172627904 271896273 908466123 760059982 279905988 922945608 306672303 486766654 804473295 424898378 94451025 704615981 501864569 914539983 600182628 555069885 748926322 306669797 784596458 843422431 981917111 561039270 389383691 642105971 872729093 765508136 906763585 763405852 772520071 24376759 37640524 317167222 917421682 483278245 873061055 144534599 493688131 782097992 770487229 821701800 739811045 663987668 515599107 758254123 900531090 524925796 780259092 749264597 568110924 609528555 201809654 550466019 417353325 281904030 862086177 688627612 869203913 554626434 400444277 974208179 727232186 106066429 681726806 795016729 880514317 7619159 953718275 853798075 822952877 672427478 725548868 883397186 886844921 965149013 395000293 564331648 868229281 810684567 952699285 848910692 798584324 881022981 809484863 778432763 921412123 547038096 591124944 838891431 617581998 847712791 983826343 911756891 1260560 607504067 593240939 613912606 242390308 291886697 938696653 954652590 724959900 422107998 152218756 236970733 820339373 183285325 466136344 889839314 530407510 382547909 757047722 772208268 861031857 987424564 169005955 879662052 625474670 687791355 36253895 400607142 661056874 647931176 558841783 426923033 299049320 505588690 332347965 228640863 811897037 777390804 94667351 898762122 691342545 247377873 386821861 890026691 740072729 429061258 669202697 236950854 384313042 753781739 883154447 952356333 76721084 783212966 410432922 233487078 371052116 961194032 680455749 414263812 731859233 388305102 441991677 698690776 403310511 863185227 349661528 156153965 747811145 864040662 832427528 256132996 883371379 805605690 253737373 981610484 749144859 784857161 929373778 407073772 832103033 942333504 839737906 149429510 282643477 762916746 757501718 987148575 762059121 884798261 970342574 996754664 783245305 143429312 563525888 165272146 508028515 290647947 409051799 934372414 855170429 938665139 394375836 571459047 804088192 745535437 761846668 459339089 516972774 341071853 88310409 486280325 969803868 881525135 676076592 436063483 783573585 968704684 684300783 828789136 816329266 655048450 936798278 298588666 262783674 407064628 912253558 853078964 22921756 962261838 53409198 835905553 966030237 955986129 994036714 967833554 932642009 953994442 703280952 806930534 733121682 988097032 61034009 70698258 454664384 699384220 910028194 216417215 177109475 153950381 816681487 580875648 44440935 311342840 551210776 847086854 628191584 558096746 346157793 660604707 981840848 769592084 768408283 925321964 546356059 929806941 930126608 828770903 725990348 128734584 960592906 998014362 819368160 934557411 39133623 9593667 66054961 58466786 384577395 458415126 696958023 747106102 191196541 997941136 544672709 247195690 770854444 942528971 886129185 848821436 315947565 973990478 994382585 818293750 938341867 978178868 880377304 218678839 503194227 962732628 879173241 214559744 678597094 321241874 124142628 834469407 369501845 810439319 860326480 719120480 771414432 563945291 828362070 733768134 782007275 706517692 743410310 445041867 962890190 743560904 972273301 575102748 171338667 615724556 551062680 236304377 607520266 604635267 254202223 506826831 304983804 809232497 551134771 796383193 290706116 997511533 935017638 126238420 574061564 410617840 882299095 729036146 511220084 947883409 807505833 412034089 304032854 861200298 993736353 323365373 593036810 291163322 667249692 175189807 672082344 397651968 757039551 800009955 160368705 643950738 120222211 701422969 801707305 955873019 866051894 82718555 856271863 625171398 475423334 64868614 725357482 497219728 947124325 982879555 794123978 894274104 81131467 565364897 744859567 885476439 710899866 498764016 900806301 943123921 976505466 278752167 600859804 353056528 944568545 947021506 852081478 741230142 943966654 888200797 340849189 864601777 394426078 665472529 756843503 789225589 209684516 144694469 348923585 879135418 190660982 270033728 709474725 755194588 679129865 870698569 44154972 713433547 939406720 974660625 795892275 689820726 766076349 38396509 765397210 777512575 979140086 162936733 46857158 878408447 915706811 883588406 404561970 738890680 567975695 970715277 339853109 773346440 908989131 724253798 846418674 766081309 856799835 962602905 810421537 802403075 575799678 180869413 872517609 888508996 938523592 256821445 712198287 494466900 5054767 468605302 549193863 174095324 835905026 471529929 773074854 944749656 797997210 960771894 663064867 524474678 719597431 294710513 785712546 305218141 895654283 807519682 102961280 227791249 881103238 6310712 228585264 827343133 975869851 482296137 398238866 327408636 964291470 840005597 828008903 324574015 377332182 73331919 915107401 414274317 659691133 780697588 61104969 960792395 928524917 451562857 10236241 476885151 140906012 801969776 563126445 969817561 876419177 990884910 531737808 919268532 972638165 430035518 4742669 836445180 289539749 204644588 201493961 956282607 914911666 444170435 452552145 788482231 812002206 438424811 817873457 965849077 861400022 928552323 405425866 574198422 923329392 36717744 174626753 198818392 511813419 967646501 744500494 638674018 552929542 104066322 827388410 821108166 888727308 824676234 984310898 820782463 37226096 965611911 411152488 4041926 970478120 327247948 308689181 500865086 158759032 956687651 285174662 746270574 765196707 114486952 170195921 409009376 985036032 930218079 834428194 567028770 170510229 499202686 113342178 353723882 222748125 856725962 834903325 898086706 334873237 771930783 839017434 795010346 540568862 487741579 517478050 964852518 39951061 896898127 749194307 863484903 862323999 787612579 746098876 533256386 437893106 740785905 327332129 831571205 716014959 51591692 156644535 777200093 762714262 579005687 956329009 397892108 996093337 760223620 10259542 397016880 904851657 576753330 700715368 279655961 970276493 984025777 861079464 24331730 914160425 153965954 937153997 823842170 546051131 139959153 461117443 834218736 537096797 856669168 38368447 981376067 693541565 928756210 617266109 599316990 71980133 878321300 824370782 83862816 981016099 933245622 507150801 821609677 250659754 827585138 735685302 983236113 223989059 847118865 985106954 215382866 739346841 913336270 912985662 524184489 4582318 968611617 908464977 286093909 260381964 186340615 910829014 48496549 793102085 825046163 738571662 809655367 809527942 221939454 257503031 621973994 734299745 609837666 153258989 865783219 283335870 868682010 811222591 806884311 902378347 646950684 953555621 456420528 998252657 265753190 448256333 639757523 114222681 512701041 125078846 115966125 836558327 932423448 911846284 788701079 477220954 826605017 745634968 951630214 995784839 317440384 767161161 943327984 682559256 69878587 956692160 497600386 814806131 88750144 945093819 344909077 172283570 976345135 899008939 810642692 148246410 102552351 987707184 765872207 44432653 981600545 608412815 133109073 852815881 934137113 502450379 73228224 922192418 930495280 925433675 65648668 329190469 956667905 863453058 790067158 986064027 858926734 578952237 749585430 894385668 922848202 9220828 919953408 928536894 912310722 891608273 656671547 968106916 778799972 953157101 855158623 836381786 630569116 147956476 941864549 913199551 825001054 894749131 59436466 873812030 913915450 408485203 900268885 707169050 795221804 805723677 921737302 439766077 535144428 834253326 116378600 547877191 160580654 764208628 557743221 932251709 941688240 865602289 880311116 458145462 914607895 815216838 931708345 843647908 482971101 999843584 954852768 872790463 882505891 115906086 841923813 459909184 845123716 961296234 308297268 276503866 229264939 873383491 120369499 210032394 401101977 964076951 855887468 883526262 752526254 843104560 806396912 778279380 787042554 837516461 373417901 753400920 871892220 848737068 306323155 37209110 966919917 672664408 110811577 980860466 267267933 484573028 292041511 740846783 449317871 944814572 971705313 963665495 40958969 491771065 848495274 915109925 923941622 856912259 652634603 33548198 894040660 628193359 797821283 972535652 550830738 869172484 949649118 788906456 895435475 125308350 267616507 2856892 817544762 874363123 951366939 915867318 831201425 120467340 75904840 895660245 760075839 673183513 534744782 103696599 151183800 262453029 829406307 9092812 755278192 771191413 842873582 770295884 986199042 459659321 846405359 360185701 654399964 839802639 743622002 719139601 831191804 573850871 630482986 363533184 825933464 116416716 499234875 762051357 881342691 609549286 18683374 824476877 610312088 430408787 965649584 246392616 174502766 802768351 903295768 752793244 885431499 618255216 372688465 690307190 857410052 522170826 653221171 827471441 929167728 982142327 608204541 601446143 646024947 622488850 375629643 597217172 674639316 582058716 622312299 895840935 87590937 327950382 555245626 686315408 142326405 941016917 419284421 780225503 510099410 859184819 851911879 609177369 863729071 837285027 413787736 621456038 32914836 343505149 953062653 12069977 538937424 874568594 484513274 531520523 447947686 841316884 85894621 775655515 967078466 795986010 909852415 431057119 483486732 224217393 947089990 803638586 344440722 991859523 830106668 67513842 934351374 180677903 97958401 402098710 866499796 308951432 840932823 765916281 725249441 29804921 812431265 737208692 990942305 406816843 149288292 957497308 711530143 625313167 942589521 840333715 895007518 14093593 938009705 403284679 916238092 101699437 380772622 299995876 434856688 935710032 836317902 778092776 97454374 905527577 730376241 686873421 839371811 805054518 838861474 940743589 784451183 196402399 638261452 997481278 411273910 977814125 744685356 301004670 311695980 259260944 871600766 685415833 560148615 487338735 786936628 751455960 262716123 246810484 335925121 753691740 299001017 773384583 896234600 964850687 890413132 842563229 214033828 11335647 876875334 947227342 965501089 765027237 886337085 552022165 757036219 152117886 576883318 879597390 341741036 171867762 968171165 823661846 633622003 942970958 356323429 505678823 445939405 822818455 239590318 777438969 560851838 872321979 825426990 952989835 888775532 801722403 63420375 618033773 481139667 682598677 304718182 23413045 159361929 749647287 772239910 537742959 390945522 344603238 751769516 386181109 621749104 843104814 795520592 509091018 995671932 907563471 961333915 968991217 988186358 442547453 196471414 634092959 838644019 390986816 226488827 761663892 892696842 214604607 547087976 574560246 787305133 321758212 325552796 865328550 532075281 898943143 227388625 886585243 755246649 40136683 182677628 810855528 327541513 958445812 748092310 158286042 397987046 352560452 762896201 277576030 919116322 298728269 458968858 909156866 728053764 978910166 192889830 967915537 952326838 152549704 896429476 422703202 913986116 976544318 552754743 867987021 845586992 780389289 876001571 892134947 967353774 982583921 214440599 786135606 999946162 212741599 986835126 895751405 26394984 931337010 576759004 945807618 314254868 147818557 793847427 647569042 874334928 664356723 680206998 970454552 911769222 503472887 813627622 173731392 383133910 813012512 766429205 849990288 132664817 61023362 922051276 545812092 156719868 842463766 354219550 802894208 496467110 238788051 511815973 563754484 774557026 907079559 903421271 944578834 987549012 771974624 106986000 632068334 952462823 889287579 833827180 418980646 390123219 752705489 956356107 937359642 553611280 982115902 423465847 768992118 737070888 774409362 668223960 472745565 705997790 61069228 294835608 857269936 61454391 701145276 836213153 885958899 951261903 910992416 753245864 217026468 935281429 652914229 834282048 664833563 73869790 312264854 303329619 144533267 748406626 870582514 909747437 820041618 864309250 828910754 118277956 975865468 138426495 849252249 524998471 161936104 818471064 843359396 129952623 818046343 806044951 843147215 987405171 782658061 723217625 941972228 333673584 555147324 232416640 515062590 500586361 250534384 735439329 859931845 52964529 782136682 760950485 621722867 848414467 863076237 641369050 609777001 896342424 919008957 535502359 741375810 350796963 893549086 957233411 498769832 434543860 69716022 932424633 725499264 260571322 699901903 505913235 329763334 922445712 883906329 833545388 957922379 645730320 221316499 132809763 551087697 967679035 130565598 953483380 183831110 781675011 988963962 627507497 350483540 688347547 600963575 500625011 994152493 981312281 963646675 443018747 839310023 493262026 125246043 131286490 765211614 952495374 799893664 748990114 435270075 428429188 773899913 775577587 830614933 19825637 863807134 409773565 222762302 952267852 405218697 870640344 875645414 608868853 835345727 319177115 582818953 920858308 749919256 66100811 291679106 676666402 364859966 912436296 803667971 989501097 783367426 740693341 573620677 836229544 64090831 885023245 298072740 627200633 467193510 360177097 927992379 986323745 892187600 761925328 887626438 333783167 931510751 889001131 250616031 795515047 730051017 135460364 548210267 997700612 471224486 48384835 705210361 256886021 958284 155700918 608433676 950323196 894159075 884647420 544005277 836027095 763193246 359532656 766330246 907846067 798085294 576315697 282082755 109473303 768664398 810818993 997416044 815406971 958768728 633799450 199365458 947259724 390587262 745588038 826316199 397036604 361466525 895406167 298680239 763428767 566919313 472538731 298249322 799025016 402045753 530765205 981118848 134327637 30816729 877705210 740018233 26299699 428141984 760917865 881365013 526572321 986356307 845432365 655852844 669509649 542685253 692943868 229850430 731082116 91420412 13178987 601790985 466310554 963957184 679512934 768181801 511719841 903616545 620100194 534919600 177266162 782927671 830880387 77091953 885525298 203553074 860516712 977867042 874682219 812974273 358632053 881648102 757155473 987361039 768318187 33933768 948758921 42928749 851540197 448286544 759601325 544489111 39304225 246223222 637277859 737020247 932636261 847351244 909817051 881908176 107524533 683906749 918540890 533306643 447491141 877171416 780102348 428726337 945784850 763401745 737020247 384394535 917735011 215314694 845983620 286820441 801765873 996844524 967568592 842699860 869737124 936061527 910610796 872921552 423323354 40024298 844821857 825924169 953474714 384571651 196284907 769277135 94485268 855284246 711860663 763576157 525586278 566089881 318350431 936241811 947872861 62995713 817946184 747104548 935247277 860482990 929585915 378730139 501803248 891360063 907428892 33422176 716061276 790554956 967766178 81390980 178475682 144688278 533768845 217223715 905213727 886117880 497558127 827172367 816760410 826658213 742991898 996060547 349790142 974515765 906390471 59002375 59024471 295414360 706232353 991357372 580132385 703491320 825853055 839627839 585192531 455732812 992983088 936686741 860167921 109364654 886609538 321304995 652829626 776926618 889326107 262213271 739914012 185540728 185925203 890421188 992162765 881422520 765780606 277851933 811747645 899209334 302153448 167803723 862288792 522963481 834087857 899194128 792203950 100586053 616062846 984555013 781194886 824800167 897302960 870796821 910549048 951325488 980246367 948429371 651040549 911952164 388391164 865005063 649349985 780751814 114530098 165243532 784881361 591614122 117944498 954660062 799976176 35147893 866636425 43018909 639078241 499529754 966364878 243177276 266547741 454415107 535630341 949675238 195048775 850262078 987110317 479587896 204453469 954348817 795354272 500582211 241776089 843648340 889164546 841991847 11303684 247589924 951676429 775290560 586003256 53985640 931831577 108495545 881416955 921431734 882248527 750138094 231347166 775598196 419137583 428441417 61419882 416839475 648506778 484565027 308472783 694945680 339704910 755563282 831154533 817896182 877081806 871784354 665568998 501120776 739757781 823807435 732911610 94095372 253463085 743716049 95466831 891668100 753109928 735987567 47336261 745212956 713429143 903906096 893801533 927159055 885638109 749052402 594409951 164963092 837962178 825136171 3957708 810498911 901605480 417142896 848907141 938172189 637336592 768674270 861012390 898274868 875338822 220841663 825865344 768846074 743358798 589681665 841898146 838976836 925947127 949569779 743265994 851087927 426798392 539290381 454895051 993351440 60540199 372896456 790535300 868251266 414099272 290499191 619564474 939107397 847259670 179729387 926011346 51509249 828141665 259630132 862110935 817162852 543790925 875265981 922946415 962466497 859279954 574908244 480412921 152454652 845813053 747137514 538262005 318887665 191174770 958842172 291949222 306951555 777691519 628530601 825003822 969300141 515832680 330416960 402759385 676798036 692288486 823782947 993639418 441062650 948532540 586165614 907191490 936081202 604752826 134572754 980462202 428803725 99272572 886725959 931522250 507028388 772246697 749264688 901453537 838379942 795447444 432357514 481676990 774454857 988316331 759711029 898013410 179680384 749442759 332526209 922631096 861276400 570137643 507517186 460133370 845356755 164789244 865026780 911127242 269031736 919034548 704196141 939435415 959743392 784367250 863893924 617759824 595701931 824124093 182075477 37288995 37513559 201526094 784230353 597116066 137755577 289266623 698232004 585851005 401188386 736150753 989987548 507397963 945274082 695401003 49118908 480508813 968824303 429007571 444787461 853248991 149394496 401437347 863500524 724863468 846267617 547211110 839941947 406219394 943727479 901510376 783013451 820827923 880081595 576998726 951550156 508981890 795077178 293619494 95859797 632391506 443089040 185963525 955680843 535835485 272383402 985668536 695382661 101712983 173605136 563244402 614525069 701179013 941609121 935543034 833620838 172399086 962601614 908425864 855658863 848526439 784133976 130259826 528732345 632450406 101091105 754100870 119392778 332324403 816542630 672617523 466352084 797743148 221746678 891381977 220871450 458972710 941872478 825309685 996455134 922850825 305168459 865124411 293812420 914302999 73096516 917657950 627452555 762437672 791899325 862770860 566693257 265377767 827592973 980280085 383659200 713425892 429236125 972280892 994870915 297128520 966348479 785857718 27219033 79696735 439470386 135206315 27726691 308888557 914631741 86328510 221586861 384543026 606571938 755720484 690048691 822120465 444902920 588047890 934098178 228796189 600138475 245644837 788253732 655251298 79690495 315575530 920196950 924862965 113382766 190776904 356142655 118284909 982792885 677679997 532660509 687336859 871624704 749796068 933182297 797168816 792273915 857508346 958490589 900811661 673958580 901593345 775261456 131519566 936090456 873352806 590791261 259077588 467232561 818984278 972055214 372328059 218358578 983333888 626729860 52052814 757566090 108160624 675326190 406983887 918296938 70882993 199625981 547887459 851354076 927605526 857900156 805019723 790926664 959079464 955482511 775482076 689097443 855660460 824172870 649542191 530463945 694841245 985291698 731458728 841149092 465190210 779222604 945588607 622034421 532154944 921218177 998243043 705248344 770973782 612025617 626649530 765870182 354680695 387228999 937401218 927224520 771394242 965137500 697026705 902590024 797078248 914210939 340015909 116596912 881960085 737293258 884502607 527290208 844889174 903399573 803781849 80077674 107797809 614725744 877025378 64092801 533787755 829951827 964460009 244177591 664897935 842954398 447372005 881449758 684431832 898070409 765038275 927247189 113067680 866448938 170432948 590222494 195147534 836749943 708552619 1070876 822996711 239937948 360212581 905957868 879597100 915306357 963811138 884372504 562564548 898822771 722009944 318662192 194252984 928708886 684442831 866926037 799341100 163966139 490409094 630219976 353900239 308440496 834026236 580904036 307379253 156189300 484646336 797303111 743778099 733362697 850373382 910165653 918592575 140284834 745791960 292314996 938874551 763148542 531228051 797717488 936972554 903760193 541596456 974114189 330147274 633656816 292667579 193352452 775648050 493120340 855763790 394085459 870829683 926346230 996970713 955675085 948998900 521929547 348570072 6919564 251166775 55915956 857743817 383952545 230100442 404071544 90416695 507633996 1254190 820336574 347670788 133225680 48285087 152577524 937363325 814048854 27163488 953514564 49661927 951873282 693367059 197328939 996021525 388283436 305913957 951387626 956083398 851931368 156636332 794112145 981308793 987913259 855967824 916140227 175806264 991567802 23586225 879910460 790690240 932923851 214881057 402061535 854369257 265585062 404908804 271501619 904063895 956730985 862799944 548293532 974635066 74761550 273134102 252536993 64916304 892440797 989740141 782114033 888058286 480299959 168182496 910929494 902817888 775817944 143997234 454598923 543826314 827964463 845287776 830988506 411862407 74642904 97016361 872449864 881573868 768210008 730740724 329029344 145383613 709073346 482666471 40301738 780402495 820715935 552431441 128912947 885104910 758500684 643409528 285264225 523358131 945195233 931115954 444487332 850351584 356940132 235107828 366385314 900234897 878813856 653129114 882587869 56339504 838359785 564613122 928956639 852168239 636516540 797393089 920337818 361619902 399332974 65284508 953644372 366986087 837602875 837881385 162440861 752623754 976900082 523961191 792873872 194117475 997371116 534091242 43927494 875735805 550737557 968062598 452554183 664925321 162234303 676215226 139462533 975214784 838402743 137815802 170118486 687580932 862496733 80569813 654706880 92799143 684842264 829236340 24148497 626418683 115781117 663148417 626699057 733923071 903618433 353539273 263568929 932656328 862050458 897768294 441695140 842759990 77717382 373028398 517767055 202218375 756891948 488711961 972760330 783775491 48189818 92629159 28162143 901293604 610632105 531999671 324906980 402829070 373165664 175105089 805161423 926598939 324752714 860810390 929620757 152209112 536095755 320779107 356502236 357484658 103004844 308037197 514496382 118596236 590283737 228749666 784240301 245125033 579588597 26681367 152206303 429195417 113681536 960370621 267356433 890654055 396837785 237346622 782066880 863394654 986194638 744007609 835371063 316804088 836029034 265838542 784712927 509261808 408035273 926577441 367704060 594746456 740456408 797237211 29258327 230805266 789482389 789500327 129501400 166055915 782153516 272163947 954031506 742179581 976853461 67679239 134046911 722457939 997773075 742746420 964138701 888044125 276164470 315730857 142139073 897967685 630683056 582196662 847068412 950677115 828529326 811136916 707006977 824185415 957917051 344214800 863846506 608212871 870005461 164152946 826567457 992153813 786531464 889510944 474580942 294065377 323967556 472004686 33114964 840872309 174888557 866158832 514873895 447705804 521025455 534738462 891783808 207245105 954487400 857206830 433017574 494372702 856356445 481648001 747798051 201153052 747217881 878807754 542077516 862295972 492157671 62574594 646398639 969291395 693425724 808427264 381457735 975386401 520575678 755267363 743181580 754248634 997327308 419122638 42957263 627233790 790841042 859183988 979286676 229991743 166389926 765398507 374030896 762528463 293186819 748282824 964368824 795188662 852185730 655141076 377308300 630680294 857488915 928205541 770216296 410879122 213953380 131137788 556349651 414858576 721218924 571157030 625659193 821134278 269686167 592680945 522946661 597663841 123828135 889038257 801368555 456799170 45580960 250019495 811686654 228034725 980813371 90105190 583396491 210162918 533040784 839198479 574501374 780792107 600531708 775030232 77136203 436150940 964212216 253247066 790849923 868090399 56694235 290342674 329734183 252932207 761007309 975689354 216837703 887468707 860756137 252129945 160376646 448275842 867484247 870028563 944636158 802224236 953874317 240354096 763849812 607433609 962069890 814447099 545522777 15414551 234657474 403333428 931177478 971842386 882036998 503193102 118561066 788019239 809452441 943490924 50017448 942715570 954662932 834266817 471856803 891669256 748705733 864544170 774521579 864291272 918610682 510063208 498197921 809220066 877661637 857865886 198604437 479058288 449899860 764265587 910918816 895093079 374696931 532323028 844028687 767710249 969355505 894580708 197161803 655324198 6627678 989366576 853493482 861401726 745496054 718292100 387763671 756499062 803093526 978021742 981560883 932527667 131742444 44357302 794311525 886010719 318308126 894727017 761354585 555560855 170751446 951234728 548552991 874641700 298897008 818992293 233161829 317101550 999480771 425025963 572937621 557888423 883487420 839386056 202079988 598599793 890583056 529437473 154105682 764371718 407810567 18009150 370157980 408961053 147082292 542503496 768096373 886075030 759569553 429572146 262704177 920383660 383781693 617748454 751048400 991273437 802934603 952065469 392501961 896069862 317845399 849692942 122739641 508619014 995167402 93052248 835121818 774267244 849488689 172438024 746261837 980335364 816583350 606868728 893665633 123403685 632406034 441431091 160126609 808503057 706195200 473392747 601838658 878788500 619265740 728983280 472870949 334417473 167298302 579503863 821597562 550737993 376077085 530037130 876209214 806238396 858625310 450104180 779629151 983488883 839375412 796051182 496066943 926758320 925143975 829103930 139543211 344002064 229906306 857380580 741999711 273422958 740789407 379869023 675266013 135051077 764206021 233549271 946152684 186236210 6920220 657376301 158303993 778359969 694481182 860503999 860289321 898824419 94057964 960698314 528451093 909978325 674819594 880531708 73020493 532854434 851444875 955128015 121993692 663712772 796718748 204104533 695947279 37385942 699118534 952272048 957460228 738150052 872120063 254338113 932814508 960517444 827096360 208838691 72793004 782699604 844517980 724439247 336364921 858017372 474299673 261515897 984534864 798538831 884817258 967354087 100445542 22619300 338531496 235220338 814348450 862228038 258899574 228373819 505235926 319822548 304847932 759003187 3864235 903347425 504693075 393046601 567296972 152124269 962980652 148781108 862980157 755058900 996717234 799196206 443471879 874485112 71088877 485526103 28444111 582868030 193619645 137210723 750060679 63792517 900968279 533386938 174154924 857864877 737237188 448354264 922848520 990681417 371759203 906501968 455980266 681763634 807737874 305822170 467258688 764528730 338545140 840815857 26380044 221133785 34348604 23308063 828232097 545278854 679574090 384547679 924036595 748491854 715748006 271199306 737020247 686543583 92787035 235867998 428807679 958626835 945006883 563384482 223686363 697186709 879735310 889964961 813580984 63409754 824342420 653662810 323804162 932476268 926391572 745306149 873626234 933361626 453249788 976543904 910557694 914165526 423171835 748228872 233946583 974777799 580693669 368864206 926356451 614925361 979146875 804262288 511909479 66272791 174973037 512902331 115029400 869206655 790871421 602458897 880953650 47796423 652717051 87835121 594509209 987686816 92451120 707323453 930571812 207955176 849814820 390729444 692855647 900149980 726007186 59722934 737785739 846615905 929003574 45161868 861044104 733801552 332376623 532923613 800663263 797767176 486988685 424933128 581699238 888277455 964361414 464647288 938445086 763485161 453990849 847750141 394430621 468922859 20091846 870002358 875315057 913695983 443318217 64782290 241455956 796806473 298926850 181093398 385251899 440222603 293717612 997561332 360153727 887627829 953675450 776635587 643219416 560095336 189544975 643859039 619564515 810325027 38299863 335184361 469646573 628133560 260085659 568867676 954659314 2218244 753922725 271694553 761202433 616824402 487627509 78690310 645690355 446610523 217303341 787033599 565698359 463310164 607443213 600129460 670898710 850069568 260673630 770321598 856511484 293004558 149187224 95783261 275889560 117871284 751514772 318726391 896370435 275998143 727307982 769556365 988210014 792835839 404212353 407342493 919205486 569426021 769998818 938373206 891418730 824199544 356939071 793556714 651683427 128479282 955851336 500107212 10802352 190603643 184550646 84646886 855307177 149053241 798273070 802071895 795454728 240969312 756044944 876433161 69218156 984336290 744908044 508402099 543067381 286922634 437154754 546959433 898226640 982008795 157022634 180912373 28336630 552158561 250478983 896556535 792223202 875324432 121052211 799548654 623437646 745213387 838140565 609845287 144183164 211097147 387142031 749454418 358224945 180368790 875754093 771431600 904508504 728881774 532020746 912250242 974457889 911102650 933110827 933500434 525164001 984414248 911617197 719750282 886092200 968840228 194616592 593973810 322849987 487362612 947000395 86470758 122618846 840584650 494948112 428230437 122473135 764136239 953670631 679273375 968393793 342273046 931016865 884492348 569294242 578281074 729047682 648156454 701957895 776214485 743036342 34330455 916049804 942833168 488360687 923210051 358328089 768319070 251132709 937283221 754648776 828838606 660054274 832561279 938172912 951583671 176966819 907919188 922744962 140846515 199400712 823737119 849946715 70873200 842820020 960843564 852181893 830448691 915989703 241478160 899924074 324831982 104539158 892654646 214872813 27131573 902575680 672530196 2509709 173943330 8283346 841366740 10514262 672860842 848600048 846317741 23537046 762181655 735922166 88638938 438998200 78745931 790523901 851438173 957889224 417203998 923512702 509925937 521297083 294692638 6797987 920913077 729123535 572267763 977451585 957689024 764869676 777025268 583168024 747769438 847086168 958297887 948272939 602557411 972535967 509658373 395747783 158634007 395203825 867233474 971513949 870363939 646964202 589786378 750944413 749793054 568814544 855517593 255946387 940983145 634992778 970524180 110138289 239150437 617265059 979175904 972408761 716119453 60918831 911054032 905210515 214913116 931131730 297724482 866073096 747842615 822556988 902646980 770408481 227392412 962282378 962397681 884059073 146208660 971491309 979809386 262441447 872521740 963468321 351458252 771072684 952974190 74109243 880549000 978988880 811807037 861443979 899411056 490535195 118485350 70131455 777432135 953388476 54456475 771311364 987826609 246552080 978310862 110757308 759638071 161377355 740413659 930472529 54150074 606975976 936390984 933391552 699318942 661541010 680471066 657724068 848089053 195146401 86655513 334122480 711614177 760556610 94756744 545448850 125559297 808911053 100396203 65217049 10097507 34893931 501218077 771626569 507989985 698864565 784337653 418171252 648552819 385783268 106487033 242818575 753860513 796781736 274386702 876915327 176695540 315329755 942900575 39004170 666556762 787951562 893257908 865312304 975456336 943444751 801124890 663575433 258616409 600256418 543071402 41964137 793751335 7630956 33490019 820248991 391573220 826619245 868436872 740604186 870461980 18212300 53032448 764990808 907899342 199501256 824109018 293835211 556579813 955213592 457531162 630373340 56878243 764935247 924555875 286623131 861292968 257639566 930776521 37836809 263916353 968987364 207036811 994110761 742096922 955084446 916311604 803918101 598267588 775008680 291261420 318539601 815441032 818618557 894158336 400583171 944157521 946247587 9865003 839185143 796852202 908048574 583992317 737020247 913264155 925904369 757591812 79974634 54403540 993210012 895942768 892836079 885379295 860395561 880125128 843428608 756559860 283076933 613507487 229683720 700946029 809870879 233333774 90797794 119680616 437720284 881927610 789419700 679549477 714409126 770310504 280543136 539689329 238803812 765736932 268638115 826847791 234086062 651694234 358249205 994337255 867194979 269948494 769031520 930432379 747949350 891421300 265834007 976052377 681910377 821644406 319036187 720827825 40290100 613980731 771787090 215454207 843129445 741283977 539564405 942134125 309033535 500317056 895150684 500129948 975166927 685416985 137761348 254307591 360907919 962826192 312150321 792258180 344092688 885632582 800985235 467009800 435203455 943045371 752213879 35354018 864726136 840536027 216802218 895840682 372317183 909610123 807691821 835175805 915725595 929392252 973211575 803301822 847151931 621111587 797587574 814146700 265322112 526360600 238681762 412469648 265847638 787037809 787463674 392501272 837459747 164741209 845951866 870626150 977233284 888164350 305344487 781826961 967236311 921358581 963589212 808478849 931484450 579038510 810941441 997565060 743046263 753238523 206220022 267132056 879918698 920848145 743407387 118675043 618349232 806381208 809201693 449465258 967614921 607106535 414649429 723052848 257507777 315687576 46592943 891336391 952157903 35819273 825122002 768803399 848120567 890815026 806862149 818899951 22954758 346849977 801154863 381294319 936010674 8685478 946627397 499006258 244437820 954098468 900415837 816445612 973115258 975865016 783913971 206983865 744106472 933276961 379198768 958369015 834351884 481735023 863020608 805037724 370047463 824628767 384037685 932413576 91614289 392977669 262658452 739851890 895795446 865692530 842617064 120252746 980164512 805502892 983058981 838868167 554966490 417805620 418754245 794928661 681308244 148950671 332802456 937173982 220786994 880137643 723172251 740440971 793015414 147230772 864097109 555410889 166023136 984917796 382485063 788216678 669563538 811989975 425968067 77205041 469298330 917695745 860065992 596254538 218889685 573173392 295405045 791210465 953049818 758992792 897823859 812880340 399726950 957906808 517473301 970482485 892600529 836953312 767114345 795294923 227386917 917784439 755529611 822879202 648850921 925263405 245410270 909119333 916100892 954959647 616727384 400834281 828569923 956773923 958386288 3834897 677814997 370092536 388812086 696228363 787847968 981945893 539821505 749386788 796679260 167288138 795826177 833880650 737020247 401623238 105237366 888030155 489671503 454990784 210562879 747060127 142745525 841299218 147071381 836769321 781555128 993647059 786019899 900136420 775139772 871707424 17910922 444663559 807654749 258261939 759448114 883607641 478423730 327503275 864147205 777892485 788950372 161079828 373505510 800894278 752656614 911279625 533204517 502818515 117611848 973774994 423800477 176395735 449196236 952841737 132541115 514196058 744299418 371634476 174740298 580954496 561223599 426309109 795079198 875307148 977590457 966302669 814359026 875089527 278322921 302073969 387049268 24443877 771032311 421610967 356255749 748519441 959769617 363270034 886578201 84737765 81531046 851849624 278198340 984643898 85517945 611240732 618622336 174066608 951583639 480782618 274078824 482987344 684607457 555664383 941183517 303592005 131576998 939727088 121375644 467382594 436872220 985500718 948811239 897766025 196465054 42231361 963224419 561217696 308691936 447603579 820120078 864757951 869083285 824661419 972043540 995706307 822203013 979694427 438193186 808239380 900546825 774475633 613072858 893827397 978509162 615035673 890147757 923272692 800707599 782892993 796422375 975720501 564847567 964389944 827042075 725967803 825370176 288629860 63445688 734406410 490845358 766071572 255838646 916121006 877565013 807977801 581551357 980313519 840723344 343231273 43362836 925800755 968434271 843094867 813292467 706378338 757276284 216562501 540882096 982601591 872285956 863671527 941134919 332025579 740307746 210279243 63154772 98126304 796085681 174213311 714513024 499022548 778387474 860598695 775733509 32798400 870051122 203126859 481077084 958263279 878188677 859276258 659565287 434312308 293212548 610302496 861841955 149424450 417265801 943342389 751347961 816429011 987763425 890218066 870616403 884325445 822030622 833725866 463669830 884336334 258511259 29274167 220528899 741053017 844462737 84109266 343762578 877379656 38654458 207920269 974797304 70939678 784417556 721055338 90596141 823265158 943735292 276259470 776180071 334375435 194888952 71925904 965283908 906198732 805648254 846027670 769314066 547689965 738350512 308178951 57916695 177582316 786796116 799106609 530328708 964008146 464251793 446680695 563616350 15651925 749129576 617836976 412101543 680075337 918456088 772456321 396485469 840377579 887306262 798426834 757707053 909034943 839035516 843657725 976115993 86493964 354398372 957870778 767344122 221233393 500335962 663535268 468889371 728860147 333189572 445190943 923758230 909672128 808005908 167359600 154288055 454969575 883344610 706321901 807607313 554156733 982587119 793379556 234133784 541672889 458758383 9049564 697553120 212128743 107709460 934503850 453236936 220176544 911606525 920494560 955452428 973999797 33603414 842897863 825112911 137277790 202883402 569244025 679163838 968125247 799845864 186588556 824842334 667329279 955840371 856310626 797755135 860882414 785504152 995261321 218348948 940625988 143106117 683939947 878276146 819376992 953142868 908899418 894314474 876520627 743490657 905782286 946678167 764199620 412095404 268473704 753447147 902868760 36460667 697274923 788520850 677580715 819254522 264366805 166247891 462860860 936843394 649240081 279626698 541818503 590004286 508966010 886450741 523199265 689402913 618639166 682315995 986297678 348861077 804816395 875922515 506405786 940905764 737734461 382182115 709805189 405568336 396915856 952522501 666465824 739354735 226021515 251661076 389376107 157745521 981035740 530346043 648578232 808237838 410662926 124741464 896329305 409167780 544954894 900820847 825608788 573785552 263205012 565947070 582421283 822296074 832798620 621095884 960666138 993989917 737020247 439174542 65737948 777443919 825687236 933081771 394439492 235510808 963898843 853229196 973999369 688933609 869713046 395444181 835544058 446182097 478503334 394366009 702611657 496926745 955811654 601844173 636010759 783550909 348634850 987244471 388566490 158921400 745902009 312700324 846003225 794527734 664170248 282424919 616722878 555929577 474640879 476090267 574734298 889433526 462822673 562069001 740250871 1560330 869894967 997230494 62057587 592938789 703341839 657645709 899923043 3252765 345363968 369069098 36347788 394652431 212915128 942346370 786863189 777923802 671093024 477078855 133072563 119203285 763013218 344141722 816819449 445440946 813981914 949417896 964636207 914749038 791944924 143013704 398161621 922329670 697668521 821672594 899097847 667728263 540158457 641266974 662716390 934393377 899125518 981844886 866474468 168519630 55449220 923776489 557426934 596516314 153233796 883624166 782904705 79649893 614672085 68289259 956566418 929528285 818603751 937865489 950277635 818452239 189001364 676086820 425299630 753710543 713259662 471235920 205000533 836221427 227204367 711751653 972307530 126692855 42770657 752230043 953178929 808913850 646765970 944229519 422816382 642198245 545250884 217474114 834754945 55757621 720076098 263117073 420309797 836156683 628286090 313483397 994588777 293891505 904617747 786082648 510044798 102886014 820535432 360641384 471361942 879515101 869789718 744321064 657328860 110650269 951382816 923827442 856703948 926858969 612305080 958234619 274687566 772491973 987126786 664588123 609616743 749967968 16698955 930743569 930238549 880300581 475678440 802649803 321632948 954801774 263993716 742882992 65136574 844795780 71179885 726346724 841269617 983598060 901836110 938706863 775293898 767551804 990596214 760154618 916448491 926965115 717838615 242620700 633931804 681404853 737560614 901812835 579767880 248997918 865146799 541520975 664399530 778422739 943443427 85903169 200600527 751744587 977493104 233402461 920643912 740924440 837656172 767009857 917494999 904458497 927530898 779370461 858249089 815466831 654983992 525354734 815027208 143125963 748472631 135981069 490878985 941182213 913011355 185918326 897739765 916793828 555703657 851417018 790487526 933646357 905760488 877243544 84256630 112075073 839657593 535292513 379594893 191655047 856796161 577787808 406338891 58212500 920802187 770450441 816627507 888344213 827829612 954279892 370167022 894105929 869382886 885325307 166457347 899595926 810653665 944195999 878914065 873828297 922989454 755130367 838720283 878489546 19723204 776976873 919560973 738488345 755630359 742547192 513457227 887170946 46507395 422502676 896852815 642124383 787119942 885029785 698271897 852366372 889643435 835768460 869102155 781850589 299672104 873563523 529670846 677179567 781249878 1243877 763325299 85440502 931893167 121574577 786836057 746886698 980773521 822468110 833325966 639320678 877476476 904368050 739552847 903256360 752000716 668832876 21385829 444947593 835259535 165202699 450430503 775685925 788405249 650221956 863867092 828867399 775364896 978229902 748047251 262575406 256577534 636837305 51342827 555100559 823176078 702081574 215092426 975670038 940509974 627350843 784128327 899730221 789804695 865891616 665081606 926967856 347204139 726842291 90887420 842131050 344993036 809114463 21406678 349826819 600322746 946143647 396363943 68348195 906554664 659127396 785684059 894872758 153261933 338420288 909360384 779862273 745097868 524019767 785719114 488787209 819915197 774805455 908874365 574217104 344713662 876305657 217673891 32701647 995139796 980934382 539483289 934110664 91097594 260140763 205666257 863711356 748948391 720889239 928810485 752852620 454106570 296222100 986466660 395712918 721031985 606003237 8744744 814014603 834266299 757001766 140222991 882260947 947249293 162338019 992316643 900254342 837449693 861391632 989392508 971892915 926637013 832730581 71070822 402271407 791301675 554318935 32823235 946961717 928657427 15469289 359111012 283975589 747372420 824142057 698712478 844059917 358149699 882603437 229576090 560396752 607116812 886109832 500038768 767697129 462239044 594177202 147021055 941387488 230743638 533115496 844696484 497632190 588840235 569683091 482025360 107845048 912050980 309410544 153137432 105339544 279511359 83153977 880221565 836148225 484690796 128063788 988263265 554440475 406082103 742556091 779492813 322510342 929891203 179280866 738531340 630457863 886158433 118381950 829335905 532884409 892763438 976649282 918730264 941518123 730139268 770009257 521502037 854831787 774498275 773074551 827985213 205390884 816111464 939261228 774550699 561181814 783874576 925911385 193973432 278135819 890711308 438797994 741538491 972757211 269580830 464429936 909580413 474205807 776744314 914450502 988299788 570386546 919968453 133109533 989053991 515281464 415431681 775625409 204116411 995371894 523325148 467525087 856925790 150141922 906700847 642860475 680099211 876647457 955736242 996408298 995657282 342018998 401126108 399197004 603456900 898340642 761507557 120116138 841639998 782309216 784926894 989900813 794427854 791213406 780622379 204959757 257390403 304141679 821195425 689100321 990675821 168892849 2820055 847978511 982566974 716959739 748366732 174424379 535211842 180044307 39129424 931943107 633294187 751299967 913108549 802969495 813147422 973482623 686438944 209143426 241119456 981447626 602131591 868366819 455364593 904461542 898257755 433926993 684736926 682754530 76555442 355410586 466256793 756869422 977519313 902759635 795556053 945811624 742844251 223703739 226050702 828165348 166323674 850724532 815813729 812803783 79109125 578502319 470450446 83882806 502217346 991878292 963505034 255969045 976277921 724204450 44509079 571562779 691038484 312406268 864883330 367821880 860725326 486523479 763678316 818284700 368550481 990193080 726252369 903055064 912701536 125343557 833106299 984806936 687572829 767862006 403130679 960586820 917395956 789640121 391530993 811602356 841965970 877440024 845834855 962484254 931381902 957244628 997689852 83337575 861720580 779230360 888661733 903978182 772216452 620678885 795096994 355271455 827991417 564146191 99008397 771557832 245392045 371273954 341566341 670865053 66235740 972997240 895001186 318077393 961056805 183648137 870547012 766435465 827054894 293258012 850237176 927604495 136438390 927439716 204598485 823693671 388341211 463007135 918536671 715584489 866379961 770452250 46603480 798018513 841034797 604388809 895782454 604844477 652830353 64009723 901477205 837204153 863918668 976008365 589123619 786752850 855685957 897617525 126305899 704086632 737593140 108113109 997203326 278578780 327999078 754482964 934736019 738097005 609868503 885086624 69739222 943566660 398301782 277471794 319515217 713238913 797417790 753089060 833638553 909010615 737020247 835551810 986654754 943728829 481260854 876448472 192040044 484154328 514867421 329101872 254339275 351559983 829356856 534751848 862383960 809015777 902747612 489783059 260559949 961604284 741951083 760776227 913559408 289369192 829992625 798256521 751246806 986740131 935602520 955515816 66205108 644408515 914813780 423556624 141001254 390419478 117726227 851684236 707477398 996799802 926261407 278036868 847202359 817468161 960566831 770353974 718443226 793681851 323736558 884889222 211519363 933110038 862532964 651105482 699233902 680871513 462486275 235173430 203604841 921964950 235742647 808742442 902089203 755533030 355888094 784570875 792330388 737548951 962246671 803085580 198936337 25834037 234449551 234505104 912553570 155785879 838218293 141154038 836010177 750780855 771197423 189391120 615549723 386745769 916603688 701496608 784287480 777580391 807253150 752212061 764624814 842343893 815588465 834362090 730806134 801872827 885912246 933782127 545171931 783936015 375812435 714594970 605895269 904477075 856501266 143032796 864658110 832500607 890209529 203895633 19440243 941451293 810592577 45496811 962932944 202069524 865794742 615089997 926731263 427016988 401395498 93379328 913213019 782802955 599324409 866266608 871883928 890327505 251626072 437785490 733262145 911063222 399482894 420231781 103537052 406060992 883850764 674709186 980322389 627189163 445748047 965901088 577307332 187646349 330737276 901161543 499590238 916766804 138596034 263994460 997151840 213084310 920581021 792345521 420287046 857322881 241462153 157779904 875607440 802235615 452845284 987329735 10271661 949284995 405800697 573941229 975243559 486848781 906466013 766432208 859761814 15400206 957759831 302172354 649659330 713339916 51397962 715821769 165497317 988984617 933041267 879318981 360026095 890561951 61198123 836962301 43896614 786734097 373312337 812095479 26459818 835957177 411192363 97033375 397470736 431199279 984927303 192252509 302894712 932793454 975416229 868918469 753612052 720092228 970372477 954457750 429897756 658412864 624104742 292111070 874288679 679830974 170807034 876192196 865484345 175762134 287645088 863873235 621918218 769856673 389699878 898582778 519307314 797329863 8190899 237047349 41355964 606032147 150107543 77066442 832923093 352209768 378946519 377250112 837945880 738241126 804746455 987310525 819104255 846125764 62873224 759759031 348035316 849112521 744461547 943518055 380256923 765220938 939075047 900488104 703374748 404218556 279704416 804004907 575146584 731345359 894827051 798460612 48386919 871713083 513205878 395863036 822542087 881126420 311566740 741736810 801633716 969090667 780608745 480880299 576976999 388487072 672686341 968446575 993837526 985396416 786005305 923438604 386605729 737582199 658760269 769765012 681487229 923862204 782917918 843473920 945278299 782239011 986714390 903526443 734761908 689924029 105476626 828311677 537205459 135013188 604765315 964858989 773411229 890098420 982938978 586492367 878298998 974178988 985011460 457497674 504641061 921980873 933713482 336830650 652959718 789683306 584035446 737171133 819529430 731426633 766564270 599585401 992355845 359673196 967273016 267119114 744326810 978396240 207121770 826848439 852283204 938745101 987292206 40007652 931464813 491880497 795488862 826318433 95755122 446589024 687079330 816842130 973677600 242220517 823345660 939961387 390476152 916010515 232743928 253617694 932885696 527578471 177367039 946691939 592766559 614823952 643851063 764915237 996980686 701181188 977084497 806614912 852634721 516549632 880659667 846306334 819292027 825182476 999232801 690333083 49915079 760199907 190276437 775780713 807683852 823215087 189385747 490621028 574869898 702616885 942324619 932211837 942471089 304871479 989680973 191877785 918618951 750616502 519065041 778586955 597582943 203305678 829016596 795483164 884451543 309995316 375426929 236428203 109222918 487342787 938369140 827703144 533559788 456615805 771385019 21878351 840079952 957405379 856007396 909746528 190121681 286266220 717279109 545101220 609596486 35002376 45354705 992067830 93629764 691028140 757006239 902501231 887393703 31086862 894097041 384034531 740070601 985967206 58866937 544216785 817809711 937704354 497609618 94119168 838380741 876317054 188960359 182102432 953894457 66905589 588126968 978436025 817763722 843620456 544623770 842328189 117030195 800986811 150085532 786636164 384171729 994955077 918855890 562825622 875387801 761940593 80186175 567564039 990900083 795086943 479075170 55590022 860680672 871656219 809004938 549412967 837060723 890796803 752833344 903916535 87414808 201595416 782493149 185186030 970272468 84342548 854889816 752663348 10434291 549047513 87142543 801519823 541837916 932498981 911591306 954193008 803244051 3574391 854496459 986682083 584725840 786699574 924573556 423791467 207576382 503910630 229573424 889851518 876628900 637585331 888509592 704963642 723636579 948139150 302280702 818478391 740473475 482942020 850604375 651198226 987478119 442045550 914625903 922979328 374035791 495854137 261797966 160182963 774683251 938672700 851485960 912143879 688184228 980992745 331391453 949235431 624184346 846569538 687473785 260748314 67771829 236706153 722959710 653545774 643196997 945600693 759708687 765655209 860207909 978555670 904640871 717965254 995228782 560502655 790072331 50108568 208049039 367825319 293916050 987557650 897939448 37957666 882565381 8559636 308833327 967845232 645438026 742502680 791950332 123823370 190000645 945394286 593354242 784213195 982613461 461863760 683132434 142817712 424830776 888657630 529986677 614849011 513470761 927427271 893039843 912152215 239722699 747608260 993297569 668824827 874913946 956054326 943155339 870623580 823278861 844630585 982835284 888822092 754765438 329151550 814666076 363521908 827859435 990219690 980504840 930563058 823619673 743771629 925577692 963408823 471967149 749014030 785153145 675463901 929807825 365622090 809403526 877732476 443282792 798021354 504261567 461586281 370207065 677106739 887607067 876607607 270781152 762400416 920190196 822096786 449780462 935025182 435181351 522799077 557957020 242284431 978347518 165022491 938011833 951696746 411987694 652786089 877823366 463472844 914014516 911892247 865138635 154478771 397102107 968302832 371216152 995469755 776996849 778757366 326550629 880595273 46915915 800633048 225615460 499510114 513467725 808201396 74934908 815980946 601653554 626122841 743701624 394843297 162067550 128097537 970617717 814816152 752788223 772512414 790138080 965589367 935479692 690960220 352664323 403110808 800886427 476281874 773159557 924469080 866913089 741594701 797627569 743417589 258132699 516884605 967589055 805409822 943508621 307208235 823347542 770261408 416434309 912730373 828209185 280679523 814818732 150753635 187183718 179010936 215316058 783135619 172857575 927102282 184713033 321923186 144522728 999215433 353325935 140322031 747415755 282759944 695299026 412210780 793074229 815152551 840006745 279982809 442174874 895270188 189231149 168477819 755667043 949953880 139265361 502434040 444941820 516570804 759148467 678995189 96144207 695989377 756767566 718336806 382615603 99073979 796513303 593478985 832634280 787859257 146766688 846901224 607590742 396885251 310397016 661561722 708437943 819953418 845460846 568588233 45605588 867542697 278744693 518097135 176279641 151902689 728746971 407125033 85206705 782273122 715159651 796002956 93190261 754690099 506732165 663157960 552323758 996885694 272307958 973093454 511414489 288094607 513753878 357604027 659325789 914584415 778905104 404576885 105312287 760924617 804139447 386396334 824848256 587519833 280688962 638190018 716844402 341020647 924960111 588013021 48305200 877571242 784555395 969660337 927948599 788879118 350058056 886669963 102353293 677621713 654476867 831845443 951242364 507194949 760552088 550197685 547569144 905950456 310267428 386485616 829760770 301807411 873527284 478773465 789643811 797603366 890922860 276771650 72732341 898640110 998482078 25045063 839876027 244652918 795471095 417476155 545668657 747731953 276880903 874842389 945789032 754540766 526911272 351080451 690405759 512245214 775402716 124312199 739792233 583904987 771901072 901028027 993405177 666573543 38337755 833258262 800387481 724623267 3651413 114157793 929221896 743166033 770949302 988566401 325487904 780388939 64262890 431463642 656908373 728937922 738026004 570037862 912899912 464894135 499822960 664281325 883828782 700090914 874028056 827084589 837919381 886359346 647435623 890075641 90840431 634683502 597787324 955376983 393397939 471500822 110042864 59731939 809341014 408384160 661449969 650305979 893002424 778939967 129813380 729976746 486931493 549538735 650186443 835423711 991050996 958084410 186937780 897716790 461345706 928491572 31647538 660500041 780129871 282014496 758012000 692446269 93328099 923696890 831817161 20241566 255787611 24311367 848866267 523687008 923553520 287357056 905581577 265690873 302794994 195814970 207897818 740068658 313464066 738857932 157927289 913849954 836018395 873222534 201347494 737020247 443387408 920862479 953958791 893276615 838114512 726290346 756418380 141222231 867524541 55310090 800652272 821267309 807816497 744982351 121789398 874939854 488191639 192496303 485953790 913711251 772972832 737020247 634757516 433748721 401009925 879763659 805149184 586099280 999095335 815312513 434495478 670462346 965998279 651005106 993859028 938349711 804937434 409123822 321717348 513169067 724192361 533690441 653506960 108588566 189147408 347127300 306587395 953407102 882976997 391564682 757265472 998153628 764153770 671214809 633601261 423632084 882694450 814373213 99833385 367995395 190137330 901372367 732622881 648105313 940854359 855418883 685031506 850058098 774087494 192081884 698350716 256361202 753616226 968780027 589147604 928860080 929597512 354771580 500571722 726487830 282558078 966501607 145201786 801461519 578768853 690298945 746488688 538863342 984516408 811476285 932814238 219733738 365394482 318398828 850599226 767594685 984577914 967361958 913358384 661122895 478325907 988130605 728228207 539780042 880404398 951623240 471648479 607592002 875140921 924990639 991945710 585341502 859005094 953820148 990725351 812849764 211967232 348788003 380217408 591513327 707247413 162407963 152288955 332142641 980771081 54038928 741363572 152335440 820601128 963083905 829429407 535273853 737020247 338029454 80166929 696029178 450559972 241011507 779042313 885384875 439360632 364285456 872630183 231132793 347771664 813778442 890400329 65514557 917677555 909539503 331903053 838850320 359508119 69198606 778650067 51991537 745992964 790072800 962575305 66598330 836769940 946479028 786157673 832420664 401059178 377707562 866128950 739863868 910990444 81522350 906416349 933263407 888007492 794282609 994375434 245686961 889212725 196096654 867714817 469858549 743486408 101619291 755919892 53474556 621902788 201639920 845402910 159355978 562461216 822610646 904975831 525079465 679439198 840074013 937234831 752688223 25582110 934231729 410384029 902169999 415672746 757044291 908597347 269301235 789499321 996005263 421695717 848145185 167507532 762587685 737595970 769777316 846612778 818093963 429692762 927098971 42987351 503673148 518589126 950671833 811114346 204263588 844155729 586270799 919366391 519297301 4411084 202217688 37239176 321590187 977479598 473662347 307885742 913192431 473573537 886198439 762586135 211376786 906610320 885385364 244233712 668827375 896168679 880549535 736584007 554929499 748731523 698110751 444982658 895753337 960942525 798520903 402054593 72997025 573763658 36865546 672635068 880541772 845122606 21535746 992930171 939289855 463283237 784516611 985199670 112617786 661197503 813133206 434089971 316925540 905101940 723170319 73483454 840768209 190772521 445488803 836142740 683753417 783762218 801393239 692881748 262666956 936451166 591464903 910833304 234612562 899890442 936605397 774053801 352092110 38962710 914067093 522631215 373481471 84290526 153606788 379114618 829241216 888830543 836493912 513287463 761651068 714281970 644484524 948626800 656283507 922708757 402995681 925805379 830905257 908399558 899348881 864830705 923232784 174919348 510520051 763462007 60452532 755107436 745980929 817146465 248270994 968103186 708525699 937061252 821317123 888732172 939230467 952324063 955819523 160714730 178171198 765253757 121702378 919715808 933267354 988146473 483816126 739031966 193524641 759565558 246949296 810499551 936748743 820328482 438029598 767812609 800614653 622660470 436083880 342191629 838156937 580390735 802468622 863077109 682872460 854354197 908981219 907291319 899851705 511812456 811801029 740495587 890559710 740475044 878650342 872010196 683973086 21332753 879094514 689697011 545609959 758881755 910344492 864488980 39697741 784161633 779804620 912488808 795710903 729407401 124215380 564607448 903105225 774469856 933335615 822354930 374473557 731318192 983173101 702585651 244089814 828153034 493037769 911776519 349689446 549092353 187417703 229458036 986449926 905250806 823252677 919973634 816807667 770185808 826610706 871786486 889044398 901445190 138341132 122163128 913120982 455751012 514455451 701112867 288356928 446557487 895239540 965297425 27151558 627922220 919691659 779109168 557003238 968509886 617081876 107514203 506817120 967623902 71148922 648265881 746482437 822913722 101119032 510944344 799447119 107118572 802500647 758860690 719532645 751334533 792575737 950464977 893107995 462040942 54980524 248298668 873141665 837919990 666179054 715379891 28280190 160754822 85603227 880223226 391313546 964164254 765020224 899405652 955459986 568168705 510948056 150294274 585377796 832992745 779548281 466983474 570507306 356641389 936576396 952221913 792191733 664829293 864617637 830150734 766169105 827600150 244230084 238105236 737020247 548525709 431108258 229467600 907672648 901925298 448153674 902482003 555669874 924865755 987503947 390779742 739746139 775559968 335175790 956146945 667260311 630086725 909661910 811045714 779456304 993861973 110682744 135142329 827915506 805353367 393655975 663890954 417373694 969272118 605984865 359168763 592004357 104922282 261644964 741096304 870201396 970848691 345762067 916110974 833398827 777027161 838609480 803645746 834032159 669483263 832879320 919541886 106174799 51867863 761344062 906284362 655735862 732721446 647741891 786492284 956025434 553913462 932243425 959696263 975716538 612266729 133642328 781305172 822354500 144102809 171293127 836140881 956802523 863369456 13961095 745515255 740587889 719615317 836568368 884799721 371650814 916946143 195179860 981992686 871399210 312351525 250946584 416217302 728825083 282116819 325232978 732307157 999993811 958068583 927257123 485666390 735957014 313409172 956593727 792551805 947705538 520712503 353888367 421943429 229915002 763697003 896883090 559532427 781709946 462877044 697808098 281904499 907066811 377093265 757405067 939182973 409655202 485397341 559250603 564075926 767801845 486999356 789004207 867721444 660642916 614822066 310922775 479598051 714017407 513424120 118851163 870919295 907781986 977721543 190734806 250804322 712419916 614502531 872984007 429643726 168879736 238785148 325105849 953620843 955607937 945666558 361637046 711840201 207720081 30734075 840899682 803047872 882972520 758973309 861920680 306638050 955190244 592658137 849469900 771433072 600376530 881325213 832150317 852175068 902172111 964454555 624185430 465355420 867474588 769180446 85933812 30428735 129332548 779671338 807551883 684387043 271128050 726997768 947326230 561355149 694495633 717165491 426257640 947801486 416662470 115458662 892980658 198630633 637877293 858834488 892590909 203592548 912811660 802736156 435206846 879644069 960987037 831059608 145039744 953091054 920763552 913971994 588532708 912807134 254028033 810735887 741744367 823217660 120561327 950758375 651988519 839324026 759903377 870385367 972585349 818593650 892028401 738695045 757270365 970723100 898073511 84333429 559794974 755974296 731446114 793397318 921844018 912137961 735976692 567560403 454315269 833084583 447019330 332354097 649793237 436485486 794987227 138619383 865508293 284071026 948816850 971025142 614250281 225133351 747637325 919532151 765167905 721607937 451250932 890814879 860872390 508318790 337060804 129883735 853712720 564924853 908827958 591386391 854218893 661719379 911942773 144090689 814790693 832953053 126810277 142085879 21897531 988026951 442454086 310806493 919126285 870353089 962397373 22666734 324032461 629898712 953520882 385123159 625649721 901383137 877905655 31103541 928017586 771229066 533859393 490540987 695285815 825545890 960494609 176666410 979570998 504860344 508629665 71634585 696258518 229118785 757469409 32933255 127004037 956473396 646891877 492443313 616456803 69008450 254701890 18951222 9405323 761758014 930046302 910263417 281979335 508531550 357034316 200930672 502818063 597161303 595191622 978803094 664161233 767083283 398382130 379862436 440137102 530743636 789937797 656480264 292067290 397543837 220802767 803271981 826422173 777456533 777231664 878289460 846556177 959588217 745791168 817919002 590729784 21142551 374713510 387603286 815401869 835998296 878634911 27540634 291500021 797143469 319907975 769738414 807922439 781736946 687022725 142769024 564573858 145307941 782704370 880093476 801789888 68164854 755270225 847418535 232676024 685396662 915109876 289803334 417262981 455419717 778711318 762505674 735927126 211797927 66967638 821939751 787435856 798933267 879105037 209304587 741326491 1460474 444188447 754770949 51378916 899692470 532467123 540604426 145556369 321089578 421993900 877437878 643150731 549628044 823076688 245754183 875185276 34214585 850004383 990865018 922274972 899970919 306287585 876012690 968739942 542716801 836064593 487525927 465513690 743831137 244928881 918361294 948393582 690760042 864856485 74872668 861457871 125516089 766801463 757674611 668200800 318112310 831233954 57785239 929724809 826199270 183116466 813950576 548776290 465803685 323630384 203323100 893770874 995708692 304437799 903148742 243902057 382940271 634335273 381612814 642226997 245946406 826472972 828024884 311939784 958664306 744830914 892559421 921311527 899895078 864655007 893082530 106764376 937860046 927336995 674174187 690590448 295641314 578704866 926678500 993027728 940525611 991786195 731246702 711978285 790623932 475270691 822355329 975275936 139935029 239444299 978520728 695286304 420838887 327124081 514313284 881668909 713056098 384823997 92571337 979965428 898560898 104941185 998851299 90917137 188151254 90427064 886608130 586894912 748287611 845273499 840489592 601122089 454225446 858200359 176140738 743020493 760084973 977500899 157229197 8845383 854025941 414657951 141034612 778843608 636133283 112330394 419025328 339422016 169500022 638074139 381079777 768515757 792432981 465995026 443755691 782472622 878132604 877067951 163702552 146686597 852702056 922840954 211826720 664048939 596266008 854647692 841225027 445201122 540600040 342225083 262788324 341431078 826706885 91704521 809057227 837799069 631370666 447309780 444541588 932473525 275295176 44656397 780990316 994684023 32391368 828631257 749807905 936853695 914162188 750846252 728947641 765843799 728812111 202896938 633432035 540854854 822211620 982518525 909247982 391314812 987493153 748851665 391358872 907256132 915960296 331605589 814948573 866429515 944941935 927028375 554302386 859971030 869260890 576531587 867449152 736576115 516898801 827144358 620976843 553188659 831340927 925330817 887774104 424882970 96282517 349424482 360536368 514528397 970565304 800593315 2220077 508718861 655469195 981266283 946971317 444882556 408364070 14749220 154514402 680517675 969392932 278407741 251613191 905141368 710131028 201452456 813942652 22567102 927919378 103592217 770464949 52844632 295433288 783995130 333275773 963792518 658051149 219833557 172728319 36129483 640279861 852922885 360408484 871383536 868842473 675435247 71487071 755312635 947688108 957875360 801439435 889823910 514610709 497596002 7655196 407254305 923150431 487264529 975110602 776878819 561165488 737020247 938972485 691161685 260880912 123945100 937874207 977142245 657642971 196631959 435795330 137484101 832010770 643551795 429790807 522358474 257780297 951343978 914850978 764083764 363153032 831428941 933574021 982746995 914500163 230446499 224281935 288440004 819386028 67760087 628061284 852141823 564809062 794236252 334264441 551128624 238080193 101294776 938200484 600207821 750533002 43540470 973316330 493255026 160287984 762954465 149663578 449777236 114223270 227338591 615111649 863596304 698663533 846087488 108955051 755995377 785295449 910250448 932466910 823659620 592852508 697908932 177572946 680762751 672749337 156003211 851290945 98201197 273917771 142419047 436074987 478154304 263811853 622779873 878505125 279550538 635097246 359974476 547044290 801446451 60608956 629363680 227294574 816144186 974118743 802646585 404371757 266928223 943613095 466025274 848804970 504915997 807526820 778907150 997968553 843034335 802317948 195595763 136468632 400829895 278143478 986353463 968624604 998773816 985049804 134311537 539803785 848991568 752937734 791326742 798254923 926796544 843139320 425287757 816788829 427032120 873075148 921633482 566873359 28778472 978555525 803280842 511257927 863179864 850030110 869670301 315851949 812994463 662519578 265804824 998740588 798042198 640398185 156675043 891148059 937401254 284597531 167466187 45987323 812833883 8494836 745294445 120287447 867787972 910953214 627001087 742877874 743310934 15818662 112112703 225865525 795211600 136630599 320939535 704502348 545043291 838093605 375489276 943197407 888335426 804124433 275830264 596925795 934719635 963154698 960686583 304652029 250882187 861671627 335981618 958486673 224626373 582727845 234406672 796866265 895301477 660050101 716981528 998687780 635689235 903909906 461011949 886841386 906527114 876228242 173418487 705752313 960625306 739009568 913566672 449149165 790669340 926140587 687635494 532348415 461329570 739638248 254760553 765907246 14051325 837569453 419911354 754467862 734646448 236376758 879978173 428264702 956378122 985954293 984109359 234069138 529952077 100845942 602096746 473522662 893870193 465976452 634521960 289121912 185489637 680542528 965547794 995168809 923495476 40896978 293842614 741727180 252629293 831325997 398832033 516326681 971788469 147418009 791543043 236393638 425621112 610603748 218558425 393219912 63297956 685079432 449465323 948629003 350011551 232461537 219536608 643730180 295603952 305135961 458737628 865354476 714029825 829794179 864874527 458908952 703184866 742711331 574719144 23018090 149622665 760083866 315324044 905380384 798971585 905181836 81663523 818541244 255347348 383129921 906965780 344023193 836109972 972594547 992692946 357547555 808141909 347571148 789082440 456740334 428688394 946123586 616993643 335452411 907709426 835891746 924613662 701756953 400447094 530981619 978755345 694764359 404558261 505543436 936969960 938107401 837823432 274984684 873197757 563456768 935245496 681699653 922949977 685807275 845115626 193876171 919490091 397623572 942578567 911260753 381576371 987313974 920610846 296465541 853080541 246374956 804478496 894222475 981476701 608025212 92500582 340092512 740625817 661568449 281150442 162334568 844709369 818786614 645127655 313300238 751499422 100163104 362261621 79195632 258095465 404604732 355018544 600232154 208930972 804195850 867294935 120979167 27796321 368367217 246411066 440135320 265838021 844120335 914420756 177010387 183698783 863218844 276840679 795181084 846568045 784801873 889976226 863820402 922716322 794959247 209968715 662516113 14131431 272598893 388190659 575882780 764926765 591358031 531014752 849162366 629322152 764552458 918150814 958313688 974759649 136255769 788086439 786314572 200069308 826166768 834316182 881849210 511049806 690257993 304375132 497510455 684143071 83659260 734767496 880001309 881001027 169521586 167879130 439781301 950921593 551642665 247956102 597561959 643816390 994633101 739431240 359296273 871092849 945693416 800089961 800633826 465714703 950970615 62888250 915626799 292112312 513330841 869296320 967519785 320309155 699783652 99175349 359319118 658107887 137835289 997220689 162253469 767244043 410138367 471012967 756879983 433240429 835564434 885155631 752226164 620842889 951585047 608546788 938980042 690899474 933018485 800306190 437206156 625263983 377373146 643894426 876931190 906955081 959957919 826120175 344645122 312017659 498150234 281072304 950997055 797476093 937858618 876715940 527521242 756920950 881036903 973821121 892459711 834330565 365221307 843705460 879889484 844936660 443257118 700455081 905426692 835447872 571060896 875846276 883658195 586725280 941800620 995907111 96011918 921692289 188951258 154090964 11056895 251600592 405344712 992442698 901206690 995142475 247370386 907562246 754310717 536511768 762854033 874590492 256695961 227172480 499942167 878577196 685575981 815441200 986458816 9056772 991803345 899975865 635503488 964701833 29448741 841356542 816438549 34129631 280138555 808116118 481644894 922856773 725414310 750397994 948523120 690209291 887004945 524272031 972612005 158162850 917653825 43662396 912863821 803566561 876626694 370618370 277713509 776774710 134071284 948037980 189602199 941226506 821035821 259193801 792299341 151207342 11196613 73824602 714430334 546213409 100775221 932258774 440163709 457401558 441451539 321758540 636329972 347680623 922393375 945351597 871517951 737020247 971727294 646512263 758541806 905029660 415255790 482270447 410684692 384287653 883964581 884100435 67871183 290202001 335340880 304422130 321239508 940919388 510937700 105490676 726431444 12074621 900976235 493444178 664093154 29600839 290870218 20084336 918721652 112268951 888102696 935241239 328195137 808078516 983768126 717395720 994744968 767400294 923615349 970143695 413277171 915923020 447683741 551906545 870566724 951416946 78379401 860090143 830190274 645248798 813261573 823257700 199568485 874739358 717552881 494954789 853945194 662622821 135164914 956520934 387232315 126628790 689841491 353833889 797842845 915680425 236872813 830977424 739680708 631554491 897927707 721666714 620762409 851450240 63147783 816774941 980948874 820990217 18608301 839459862 632939143 853722015 86380181 469231117 917826461 51333962 170186812 924069197 536616741 445311913 765329519 864728604 815419089 48513848 960657012 842423945 989928962 991417176 990645427 745283942 795343600 366074568 973492545 279258823 187404510 966116504 449166525 568553653 59351075 809040860 978187893 698847009 829970924 997101767 771504965 261739533 301578825 995083363 958989822 346877995 516243648 308941222 831989682 289811252 127538749 898125663 304208903 913195633 161874049 178633020 95533724 346776738 767964507 765831740 944429628 841606088 234665359 170452156 980349778 756857838 850366673 142865190 603283047 458438246 784945364 816901968 953483178 195290712 756679696 425951515 887400896 369926670 847344616 996477793 675912004 865152418 882712262 565484715 971716434 200066242 954412842 986837698 240263782 968435744 358682674 509480211 311123647 101125058 842631066 843860082 66420341 817991714 911371075 995683873 807207930 756219491 411990769 613707098 972222706 809446760 608598092 12704976 871307889 369244746 954503155 988942203 940914897 339778915 905035570 406297258 920072851 18666085 238203569 905895020 30612668 816830038 958375804 471064402 131578546 801185330 527588484 69726532 915361782 848358465 930929542 785754386 747429911 843409362 191865834 493876673 53729220 960809944 342671361 946005417 998087044 931769568 419948897 486168222 507030865 473978301 180130663 270926932 835645559 407044003 850850878 573519934 440578776 158258928 923811321 818989581 535239072 302015545 115414253 76003280 93007802 922773160 567141864 659988845 599658979 797289533 981633900 904909016 842611665 794025357 491836165 432606803 996848384 333287027 982007211 758497299 340281395 961230912 802785426 88608997 260536544 112061025 481241707 716761406 221739436 933785246 836009205 504525146 695362101 862607073 866500657 356535677 843962390 285460048 123959005 463867991 633155652 280212842 806943746 932065428 42281103 869151899 838015189 358194678 31719367 223669276 12042989 672514932 578801697 332621704 819616327 442558376 491910472 835296737 797214655 822530927 425586415 931552808 216013696 190502172 819273263 816242233 771366258 812717108 610081178 983275588 805140443 306275129 755282743 247719958 227603731 710856159 943878227 851577016 592141283 893735819 823624747 956783108 843970528 280980715 853137400 746109378 812549675 621763071 836462827 918000030 683683312 778219702 748284699 465685100 182294020 318552580 967798056 981233919 544154251 801553380 555100391 598008708 583415920 64186689 303994220 830219748 769586188 752045238 986066066 285276520 870547407 308479397 101700747 878463682 89864943 506894681 712606976 358212703 937453586 929966221 101035110 244219922 557532788 248098602 746146070 943003823 619878549 910485268 473122762 244501336 214568921 44836448 394549937 468603572 577738221 205255894 117612108 752724679 991056746 93454729 175143465 834136580 325105372 848441717 779453499 927311212 793925698 410756894 922179970 10338877 804780370 412012130 855616813 947697288 386487383 580126605 786283351 328355816 443677728 86369014 831571947 967997659 588372294 835120493 881168213 947879839 549676927 122404762 40548974 437716155 580002583 871349771 991209995 303612474 69812030 857917579 688109408 860196715 16813334 437138789 210372986 785392062 409660936 999535228 210820227 720453201 741618 711124881 767763800 53762272 266716250 763502136 301933809 591625359 607970542 234634527 679521389 941223818 276128768 938748804 538804760 261362648 125204407 794164464 814782639 722601906 484629561 986367849 317398775 864292130 796221736 806757719 95102403 703112429 852913205 808438506 129605044 273387232 783145557 931194807 61440523 105017543 858272638 246881081 325495442 561589132 737020247 959571676 256483398 865888823 333317804 885453048 997400662 932963181 830717353 836964663 349512857 768295537 569796414 614196996 636545941 550613682 913896142 770080290 988287910 869691376 979896652 147148283 300644051 824730883 986727897 844331184 250616890 489316543 683788821 341349615 794361849 864574189 798133698 604891142 593849607 508752219 260280979 433826831 771467733 265230513 178598500 979866703 783932209 921540308 361168758 529242292 400486200 275841664 106467467 477441384 512453018 178895203 755303213 971974651 867063377 880707392 890393752 909266258 74387444 772595728 725695097 453528921 927820348 915811992 95074305 891186175 241164940 975418548 319864923 851349514 174769839 431310757 873406082 373880632 893096838 227886937 891827552 621685648 496076614 959026445 182168474 999750258 108650756 445623245 841331921 995851266 180852332 102801716 408673392 938023505 770784358 846304259 449005611 781900919 995528521 705651429 246069599 814387381 961733898 772225872 681698550 11357724 868457616 821911747 627832472 998158088 873063269 857890174 787027975 918699767 43746935 631158432 137471125 871184121 600891792 600230668 178838243 75716312 756101871 788953527 37433203 792763265 948241300 651071090 817062631 596217725 349797443 374488948 728272624 517487250 546241867 827372181 940871952 419702142 991144878 239198474 103228059 353633195 893418337 20573101 863544501 833688604 818377394 475904520 391287455 769609873 996282997 334748553 782932564 418891310 891532630 958592967 723576665 238167354 939296831 890030221 881935373 543270086 50363835 984468671 526549281 226608362 261639520 169687659 863017207 24862393 753811749 799019108 974682946 374937568 861794213 962715837 64654658 684113975 808934042 274086950 664388311 929178945 181200439 207357865 447171530 721090822 928060560 870215703 951741768 831881367 920408746 747500211 936965175 128097624 132399626 750834043 501488363 122873322 785091157 690527364 738400637 909732010 125020327 876168280 407413985 687386190 787460039 903166786 974280788 803715794 162475011 508552265 923685268 853834142 808181234 799555854 816821196 606921172 935654444 28366835 296494776 691236076 331229168 865152991 957636705 953805666 953856187 110504286 308736291 79566253 743090363 790289549 573797231 298045734 739141919 552482243 889562939 146735277 880036219 496847107 108857632 953018841 494597135 291474044 96494637 896422838 992162823 962331124 973216190 827326998 815716982 741088373 913244420 778534146 466389015 210168058 914395382 832306409 806043695 408928552 910528522 686728278 793538471 902468139 912554364 299302275 102984168 430998841 461810664 951528331 650218583 939494067 846144660 859953396 927818403 268051518 740358006 815282444 874626641 718970945 888481298 538267042 759516974 47140774 775862445 267083496 979766134 949505220 205625657 383004591 844201046 761489604 62127356 742628714 949964665 607749884 909588165 139018703 827181077 889803443 935366843 813264371 431889654 986098383 993342617 410386677 477494900 631364050 587963569 702826584 884783403 970687970 264639502 422918958 590927178 408277773 791353777 895632978 861539272 321444166 882110950 974849193 220944028 861835281 424395906 937587454 800774216 309210414 681949825 920282525 820553362 956188174 464217808 660304940 497109510 913070509 928005599 712224549 321025195 968036505 630724114 720852586 604599609 53163807 814013459 982804065 795477021 932582627 576568209 973837991 408884871 465536491 551115314 747156683 280214791 845415110 802350265 426442577 341872600 545600668 403763442 622621586 195180826 768304896 347898683 933607197 859430975 858287394 830224400 966831269 872867349 697252814 827092847 742073851 573174280 773636412 824983601 961111593 965764560 789761796 410816814 301926683 665406515 862158325 961104242 129837102 452140680 753299455 947590787 750999925 978395450 910710737 165603250 819304214 966002134 951953086 772024821 747100989 954172723 939361976 27793686 103665466 515497541 791242658 871587609 778403975 851033275 846637666 938242738 334214572 906475348 893091909 386257465 755350059 749536697 283331747 543305620 181016568 769228819 964592341 622843150 448081591 213622233 767654621 885136849 174116809 512313841 527236799 983423012 878803935 716508022 923755535 900148105 761067653 340504995 461290425 596908016 992496748 953845102 451034421 905509518 794665855 919416677 491177862 238278603 51382541 765946229 946766810 991371513 990275092 879887889 936263052 546353192 335247209 99789005 889309295 554638086 93786105 813661300 559266616 634003191 757785540 851632240 858668890 742489644 75496218 519929172 899486330 12233818 250219606 148244927 23884760 27493972 813347106 667951084 333036146 800644255 523848831 641686806 806393288 476391634 285894729 488936246 767082804 309932968 880662490 680681701 898128779 860386620 228560543 737018431 24839622 765758935 230018379 968051486 402230324 941882361 783792500 372146121 781068733 716371325 917532004 838357457 786260772 773997028 788826759 410894162 426253461 150632729 45914729 135912194 747141806 857044923 57585591 127112801 743477180 909939021 875981702 59802843 781735355 834245609 585916674 946441980 908091627 225535439 553676705 581910868 801086376 691697130 101389292 91856787 427263332 774820112 753847861 653487338 814910515 782289172 946793911 428614738 131258765 420387 368923683 843149530 241503943 935496736 102878156 826831470 575187468 222984337 681309130 413466905 898210543 858842855 304413149 519929773 844903647 120857768 722151548 100967978 927222752 163589503 483136296 399891812 433173203 946893330 986122147 847757258 816290809 834191705 746183158 752052245 993437983 411144935 605976802 803791484 905253890 272338388 725751444 483590030 694173116 934859093 936843746 893400157 853543675 747413298 688888972 987783942 778606595 74717402 752333962 307952637 895780879 785170909 627546316 974952712 928268676 463943183 235928117 947625211 959512660 950315786 223249863 467024145 356475355 965090735 406854684 990542240 954945658 976538878 747756786 805726542 187616033 327694415 75666442 809186421 867143372 583366771 956193568 894792354 505783107 68459144 29540924 919076882 710405627 529516850 259021966 744582932 311940642 845858976 252158382 481668861 743418618 571639060 169946458 87127881 46780264 284911792 957467426 613294331 819412437 778820586 163348836 770312565 513560922 69474931 400232967 276658817 778081959 982949140 508111508 661190634 119914144 949713084 474962519 971670509 773908895 342919839 755625448 861484137 142499157 814640713 843018301 49437068 804321354 704769442 938383349 789249280 426029159 131947802 227139923 331031410 850849198 980472650 905712880 631510411 746685808 913366161 246524770 335666208 861326804 887949040 227168031 886073509 884753739 220666319 821605085 812210760 903867167 866981626 270563926 441921369 359942986 268321256 810742907 696298059 446320744 970101188 556413505 924644846 676499422 352294152 712011276 993870122 823796317 204983032 780765689 100211486 734492699 736404611 392572710 225711469 259583196 271669155 824915715 784223717 856255234 82852783 322306901 133630306 47652778 961509195 881250657 760103068 875676101 873227796 774845729 354166543 262422864 866570681 905452941 864481365 5257782 839802028 790184046 423686792 767017415 883431935 124015722 304170259 477848801 642876846 409225156 786184452 936463073 825115169 356537173 453861860 949103505 524283508 496262680 855450228 860134425 43159759 891532754 809532425 427048884 286111521 797080077 203700409 141824923 857609247 877062769 973060971 836585859 496071812 969186903 960460327 762889233 493542353 614299353 683953074 500840874 829433544 968821863 396601577 447727523 847403011 961099067 209552384 181028874 744764848 850370959 897632030 88096141 675919364 471773477 974708431 238747111 979603010 79227003 634038441 790173568 599048534 585262389 628417969 130522719 192896599 897762338 577291894 136454039 130668833 743557499 306519716 844372108 492370876 979352966 980614550 375712438 909766771 845059257 848137699 425556379 237901867 43698402 529377166 963737888 76966948 606598215 6017205 305799784 886817521 951299331 49744097 804134831 11407653 2249433 907964744 35118587 783810167 522819059 461541403 751366449 882938912 775791819 109632813 900258670 29446653 182206812 935824504 28855365 832882580 274137439 447559738 807037584 903884608 943698369 476416638 864929327 2019921 192864097 860999962 912931553 697235369 712693816 187858074 849627761 907763325 984747879 846138839 817604349 670126413 243502252 13397200 895037092 978475079 795923671 37789309 798239171 824320780 753582356 828721522 755928416 619656141 996626408 848291697 43145712 423095530 965571796 875265635 697494296 875114745 839750572 466560890 848934110 904746222 106677702 771704901 743151571 9509774 24322956 10261258 978998507 649577799 833078157 987321805 846402992 997853892 387766001 522646955 766229239 795640950 476022283 810898654 633157335 549329186 907582970 385345224 936894991 401621990 896402491 182679585 577356749 832863541 561815906 364446862 198211808 316673297 135591271 918555074 490250632 172594542 535554598 339623215 200424267 344600901 366021049 908278439 846752792 893972404 987999480 924126233 767313300 955067395 787583900 771748808 541936843 598017256 174160087 825712613 383016226 896496224 770110735 141534893 62218939 962803406 903447691 986378106 784989441 24136685 351471669 792178374 872015563 673228512 130110368 635434160 975720680 797774413 80432315 758604005 527695412 195169999 33825240 801589375 162528121 744959997 689062418 197128962 878585956 487335257 137304170 991033370 70507790 293415269 968965234 486823735 881056180 938276619 752535190 787169395 802622964 939194385 329467259 347141808 927293478 171271368 253882354 893640818 810407648 113951367 812054003 844977003 801555939 120049907 855310469 848436387 722620325 982379416 776065099 568103738 192361784 40968847 376250705 58711013 936777043 570484332 954392208 568018554 94561668 905096125 953266691 911369040 765736614 700286282 971827023 854073559 747782363 979745518 814120147 199819291 473011422 843736982 73313711 199504982 34015581 17139861 779102667 790678100 368341936 534313446 493898951 964379715 823825644 737020247 887899942 455605954 309041251 797577559 712935720 720292608 816674589 749061331 860854562 274449458 968574067 802650001 393211469 242176085 777495626 928815878 626180758 340455513 596242008 464061873 794878318 811398493 917235898 260714957 724361300 830485977 280744160 708485751 659606482 653088635 704052169 849003567 898802119 429035796 568395370 452834010 909614077 809384368 928018340 724390364 534928927 513331875 975132432 831275548 376550931 833143746 979790270 42568313 341102035 168729929 297317364 722618204 339759883 991437502 969865852 98106771 97527099 985526468 59744562 957281257 990668285 911129277 816991923 997072250 719937104 802820874 25052719 861505593 446381637 463214863 663815228 825654715 791251100 843450044 651162612 933250805 799469137 883470238 763407122 991620267 934207232 178706848 853244993 995523609 813049903 969500036 879941846 75661 635437394 194176328 744097400 516294369 808960632 416235334 811102318 971539840 820008640 889205666 439736447 505986104 774115896 808735795 36586335 246712988 387210703 427540709 961061686 699363123 199812583 90673962 72538521 921591204 437948986 882221434 441590126 762645767 46136840 791077270 748202856 673648921 963134637 637665306 576152646 783740014 338317806 919195729 970283386 779188777 169330950 109048353 647325456 902646798 865130818 428471565 741647865 842900120 428971041 457067058 822250952 100546852 13686257 762326990 966797342 617212601 995218222 938321376 900722437 791817059 872573813 890755405 938843178 108960437 830983304 99123076 737487232 509388004 826358499 572145954 457721286 664267435 949356815 930962254 939252167 352998007 856396967 601521037 262241857 186909147 278114400 912233847 809832679 163231377 643313775 805719519 130067052 737020247 825858403 96704410 853761177 992929236 328589507 315630961 760505552 765230347 359562854 777031953 346175244 734855734 828438581 258861765 797070801 504288264 859089474 953824906 884744420 841937482 25965342 448923944 568075148 808301923 737573397 822097823 589714802 909846503 423074661 987727046 288489611 712412670 752379815 913735929 208431889 901296341 517651268 536140049 641328505 308598515 989077172 829221524 901164400 81875667 84230962 776154723 842011263 235525764 926620856 43098235 822601263 763038720 737044820 187668706 318813590 386658549 774638248 964218540 765635461 950165240 898671843 833580168 834955030 844770133 878938320 745002584 860272172 700983477 474526772 553150511 44787649 877257932 819126627 867002513 744800000 759846844 797159776 767370025 974916504 414976737 960453895 584346502 845948743 170321689 219293941 916496573 448143542 160076356 830355334 857156189 100708218 969602319 933113026 343721182 745843200 895335111 773299745 867987733 495558070 647705766 11412905 523980770 492091267 490874066 846745921 942600877 866390049 922645788 17742119 952959713 297053284 563428245 624663927 866076945 960384220 964529222 979386277 105181715 939986651 900857739 990455971 417175917 830920782 559090331 917871746 760346533 642334276 469382699 975233135 874882838 801192749 795318973 38076664 173757755 441120404 372342243 501299359 763949500 907222217 943137370 653522008 429296481 764870247 823712266 772240395 157217494 275130401 852683230 860607052 563281631 771728784 98081900 934984087 708848454 902358709 252651099 958169203 561146013 149892197 9240429 898006485 12869229 726787331 705118432 721357008 824431194 872465063 905689707 631109366 507761940 989334470 838801124 133774156 887519955 764902483 730313543 965582423 747557209 527794437 143693730 770256761 298954987 970275854 474967294 944778847 937455933 574225276 647545761 298524694 187621225 688332400 957217835 774445918 207908141 890744759 43843335 258805954 575331357 754650603 751583557 535118087 431558012 511968951 623520383 479052273 528801794 813428974 236650715 841634695 736278119 422144784 163608439 850430368 954654628 730944067 396388981 886703749 804216485 559604028 329782572 936654407 786220111 757949099 889138227 782765805 745994091 852862883 319350337 933618363 586454792 766842112 225080085 671222922 19445847 543201862 196508637 432604945 782077003 989771089 212456655 901393463 738811249 825443269 877913793 76673690 752155154 869920063 553201847 362148526 918841665 833516420 737906229 976145587 959126731 744053198 833739002 296707542 510761693 855399195 846851008 914788140 928355320 186741737 306465170 893551558 594232105 850437277 907290506 754160423 961809751 845363127 943611331 819230801 238216840 346824280 881609676 997320744 385064709 973925975 631923141 832722210 333024609 915314711 797068832 369733036 376194896 544418784 24036588 117211440 726391073 727282371 974650679 979064149 740099844 453885626 818788015 701716063 43430768 249597767 182627793 203481920 205659299 497072550 741864968 819423090 407594798 830580317 583323183 73862480 171564371 973485135 920492045 422667082 878379104 926773987 842392816 96162980 180801493 419765982 745135850 933721263 813444750 801199761 772904532 468089620 952886300 913060753 762417218 974285551 859637104 961177295 860893744 826858584 969739911 281577489 833546749 964768692 413544714 43481672 788505267 886385719 801124255 10226535 916517742 90234471 222654321 186782879 786413605 950279384 417830728 841288524 104252072 409813973 17951562 782351332 892187085 174691417 77101289 619172206 957285331 994971478 768015899 891604202 834069205 317774684 826317203 501232873 351987081 892365549 574694530 596498765 733464711 550804729 847692814 754750457 336555658 770874758 554328958 94220512 138564226 933485172 918167869 997021125 176829936 985809875 846576991 956290272 217190766 694818230 758640814 243306988 754290724 953037959 977092280 704562660 823809802 54467744 945901144 854072646 912464110 934340674 664128943 958648451 808789928 582329321 778348322 928977033 151207920 954940314 645224011 805888940 296077664 857619497 925617761 515947535 645487479 319865806 941345177 472837884 899337713 814824988 292578413 887360521 758356146 176823128 580216344 238213629 788755095 957042847 449068468 751158591 468082382 977939682 891761442 946744120 965019897 801894537 935321430 953277212 875981814 891892359 852235869 172590525 244006145 856995838 76598158 979582717 95466550 611298853 568216350 968290572 960700164 194235096 507496260 980733289 848291253 395771936 951925305 739702376 130761514 886623088 178043210 864562020 862464380 246503594 985966371 976584535 803538656 386421580 909611708 768265423 586779642 957998532 898979462 825571841 889235521 831941003 215097260 823464497 168706255 279617581 580455699 938339812 781075993 248728986 909392727 101713476 238022064 941936986 796529005 939315399 651231460 777508518 870625322 581470902 987398523 182923685 683500919 855576506 217230363 17714181 877139724 999981022 242425417 883952355 117349776 507349504 787246180 497392909 131977754 22163148 69169683 328810407 331621101 585286775 978934563 374820287 977007721 953738730 865450567 510969553 839393476 344155389 479065856 892343373 983746158 944372278 871217114 746792503 841914950 828481621 414961378 776859495 911710325 660016313 852811722 854854070 378338562 919319753 810135911 798934469 565212662 810178268 256400645 739033841 744376199 848172315 980605596 354203823 413552220 911001382 776475781 921860209 314801699 374653278 207262274 998377903 640449631 950048461 78799740 797697074 760408569 971984778 740840910 857728338 166873588 109096315 440608618 21544167 424879641 268183321 838133146 992555480 530720361 827310816 936517087 634581686 822364080 888306853 709043923 107604445 604547103 227152697 54349976 966194225 348492207 822838633 787918064 462806855 474584617 980165262 764075789 792286708 833726091 328320395 901265512 875792489 710418508 879510568 962891696 552859982 824992595 261713385 194842342 594215668 267685626 993289769 886292207 437189889 532354884 821270389 989112863 342644978 425180407 596598368 789977433 903731191 714382696 827051383 786101613 346076816 231566762 667749830 146423851 756766739 595639776 939851614 931018269 521991900 917627919 877401201 630914794 531488391 990188378 937185725 724484746 597379507 805120473 379948553 995050906 542128565 382968387 762598875 882229382 226091659 769905259 895737281 604174032 690625495 995836154 219950674 328123784 763883340 963188746 393772454 157289086 197917310 322767261 147730797 725513099 326521669 684310383 485083988 895004783 892156088 221610443 908480776 77596917 165288471 635191384 727363421 973011114 405219244 216994673 419145684 795063513 953975803 97278723 226044676 318354549 675880265 854178119 804362710 850390099 983329654 502260586 865665216 315837530 918496943 821094219 756160457 635265441 845362677 741897218 680924501 945722477 804328623 234362839 554173312 843736439 424098234 103104365 430495310 736899326 602834674 532920586 506079613 66133452 753022333 866438899 835879330 242934337 533961614 448978582 752158545 719705649 14913388 887433095 757302294 246587448 213665992 650075964 951404496 606970892 939857671 784072506 332389046 975329548 253001028 982718103 871896868 795855220 896897913 360131876 889101928 905848381 830603854 940756988 722361570 830341212 228949664 955413493 825638781 833324644 340106491 865753119 494924106 375435487 797188278 662356011 565463973 750837090 633832854 207226123 852221183 829770134 989598504 856058710 484305911 489770667 18089958 800322349 48065927 664854389 135862905 748975880 815785366 803323663 849521012 911383760 75024995 815166781 764834331 52979701 122449935 863934450 795962028 837098328 193677623 969829878 528468938 744741778 414080638 27129373 125545934 585088864 772866149 210759665 705554335 856133046 748330207 882757785 842490501 818337915 907172366 385190163 834097870 538255784 509299759 942080470 662965188 906659946 786424435 708047142 189848098 807803214 601399912 270869962 867204307 85207901 966076113 113323017 973413889 753526618 915773734 508527926 793124599 715802378 323382206 917861010 760501411 836170834 958892833 875789679 971887094 109869985 781037772 484619367 974332503 833599665 811420043 851213638 10432264 924344566 914070264 472852666 341191068 900729454 153017695 482684023 364521468 541841921 41521454 258747985 755422025 443781808 953313353 889113212 640825704 399539008 557567683 880125432 399793325 754445760 231711504 16128854 487174054 836577706 874804185 722117012 445672164 233783667 925540270 971475069 623048283 698060653 12203877 546012840 24472637 976098272 589611626 161616646 984908732 984945265 796649264 534199488 493937692 540290151 696777253 739496895 94647159 960090632 68846426 862879688 338900935 769626438 842875407 825091139 661865613 968478731 789065870 994385177 346655598 374755654 760023978 967413824 882469699 40607447 296794946 596625702 902377187 261494414 151083226 982300172 220006181 754331779 778397608 435497392 779978739 819392419 808107259 656387937 533314248 310069993 295134250 243193384 266808814 673394064 873474074 602229321 578830704 306064212 668212063 616439109 780982914 803917126 647964447 155124826 774631368 18891072 560296427 720709489 940111792 926220018 219420086 960139285 770784150 892264068 893010914 365606863 848979792 530822079 596707154 197092007 570639711 817756046 915475651 841769814 173712429 813250414 669008218 925806020 87219281 871176740 823915926 930802965 833784038 746280835 131609537 904851720 896006008 674135910 806798553 242123883 796861242 153328241 977253876 995427468 849841402 293853534 982918335 711193370 796485678 460876178 243971838 931562752 407610443 839203043 48411024 753691772 683920702 177335812 370395426 738499059 886492755 810706592 710708899 186992555 347062774 286453303 379571851 897438241 992196456 89189889 703529036 532639867 421626419 189681832 947787158 317952035 815919651 408385817 598875298 950121808 98209784 950141805 957279609 871255873 918467788 862089506 558606577 165308829 954731842 324434596 894945531 527953426 276500389 79410371 427293763 987537820 715613488 600064704 533934572 900466258 966099814 474991620 136664512 389597396 997688607 295194091 739430747 353948045 946067343 378328881 797422318 810087308 876953832 700878369 785162794 827384557 290705921 330485598 413403640 952399089 973726267 926502100 825669083 817422824 893660411 417378176 962874933 760030105 582872061 760094233 215253790 62349604 963133111 764288647 971155631 185943490 266447017 938804243 927702026 841973237 596030166 770456722 313036909 735660190 964339482 135511064 796165078 836099694 750730586 846058107 989122255 756410145 924140055 312463152 552553153 780669151 174665038 737020247 596697037 601991574 112735478 758051989 103296106 879360815 71264462 961752084 88155885 899011127 358831272 87210296 890512970 995839122 337088858 772002092 812311901 674694860 507610134 314067217 356832469 739507110 998301823 761348585 641498301 200198355 740400717 888460620 314561919 509261874 568262904 603709797 353789657 42869922 768249725 763181530 630990078 546038920 415381379 382467658 593503461 761953032 241458223 214664557 830632652 371842884 597135505 753342374 821632609 70518596 383143383 663447908 787865456 293275747 482324222 432134945 883908798 990596807 725999278 93850976 973067383 963922731 997283598 912617704 484374456 959237934 856062251 611536808 938766196 763581098 222567801 393907764 970954620 788504427 795474666 807654571 869907881 768659160 875554524 776073880 949272465 804490824 861327731 772761062 72581868 699925977 439781299 761893290 645483531 441272260 769714677 784841635 784294267 731530748 802049607 994134165 393835544 453122812 884422737 630591543 786895057 922172543 551333467 878044044 934556088 788720557 823958214 194704896 950301128 710116033 758297727 241958760 855737221 52259236 634531742 341964572 234700369 232298687 832626938 928226523 889902705 788232298 698850565 379141512 794078457 621101908 372210977 863356375 187610135 920120629 410418583 781574129 967045118 866237524 981856126 935542743 39272160 96075848 727572695 346240835 739673051 932413230 540180023 909922492 491342570 452779211 318882055 956046363 843976523 63809640 329689735 786992646 440269390 38395769 737020247 779641134 972296983 774270062 171744888 60412229 966858002 65526095 501101651 979901537 536613736 308903751 942196398 794805151 729068540 932056960 945154363 541161583 754744627 738814199 489502290 220122560 267841393 874486870 184600133 767912220 998227483 901741987 812023564 618788840 862554972 526551024 870031148 779929285 845706881 888338416 801608818 888331559 804766291 680772108 878139706 746179373 890116101 881553394 739329523 658412802 132795026 435080374 29896841 907170961 774528235 710922158 874845359 157069350 724334391 946850407 599473825 81314685 144485547 952636493 288459512 974978269 956975848 740235229 764323474 893519226 594660824 681360240 965364991 951236822 849983971 354927710 359528236 306773913 674659387 804823929 404379863 905668806 758342416 876000694 743927362 200518253 454870174 678453717 33888568 823131976 903864278 758739730 59700195 974576521 934974305 76584632 932541009 494095223 263906498 758239307 996106362 829188011 851966256 790401694 746531854 862916055 683152123 915909269 298649477 741675309 630170897 975586265 476625132 965629745 89350945 887022134 105038719 749191358 403268048 219556563 799924659 633361137 98950468 613509247 978337275 239753619 519819659 893548324 229090020 976159921 50668288 895727097 478863523 399234328 969196641 919987856 976695232 683027172 127930826 886364304 985438157 914460613 900258069 454049506 842819061 912129818 80358645 966698123 796967975 411688705 483280371 760371847 90672210 846125353 264778196 723596858 349677137 704170356 867701213 136693011 842433979 550684071 737020247 763635778 364317081 400546947 889297066 450753672 749356817 747535012 899067714 220363858 768018911 718488677 218596950 853847788 813352424 995215194 539386144 478347058 491688907 31446163 946072342 523377174 866389271 786953622 894537313 971144092 945191843 61830582 50220302 361551352 384996358 707309048 653451373 891592541 896539223 871741270 901009649 790634651 563142334 777728824 618301570 399805385 663572080 874659444 61279719 502817539 455444856 633006872 964118684 167967314 786219773 942092723 150749328 586036581 815903683 515775655 591304270 999622608 376679522 737020247 665243301 764224156 907515817 224092576 33729011 916662198 921523068 916540258 843769079 792754987 824212240 410931611 136548842 944329723 972905401 812443980 23318117 882473817 841888013 759469620 234596322 915453486 625095587 274336508 850460896 273042236 517151343 359999064 904659087 342533192 984975723 369092258 940194705 28969702 276644087 618246426 440389703 789041190 961872778 780671385 206928850 456384882 752788813 867423765 267464505 78566418 855313286 642939902 989572894 826731287 72185854 604845397 795018547 931295156 864771127 426765570 902255590 419600589 965860145 372446646 789402400 961859421 868634672 998246708 923994338 878101646 365682341 827839243 956476056 159820625 993037859 802391794 913218595 45191199 875070032 959778596 108437885 743761985 642134673 979857273 656926688 2979110 85791474 876371149 936641279 310892876 828549476 813219597 841739164 800387253 922370509 349235475 254022171 835868442 815469586 915305567 729167957 471426412 15813708 115885978 249835147 527680905 420779019 483586446 824656874 304221598 104366051 767322388 192192893 993078649 370408276 291294364 198686569 12908417 927215413 842085503 719669249 870428291 228264132 954278466 811886574 802955006 885555924 842103167 916191015 910441662 165925455 314662868 12733703 920309300 189692161 42763795 913139618 978146850 453758500 571157591 937612083 138224519 874186786 798636918 950025436 971928980 349738530 482406549 17232090 994115218 737268965 400670643 913697981 878239804 972194142 990152136 59888824 843259675 853841397 907722581 633045780 953301853 13464179 739139138 782862021 763650277 991339467 948880682 740326704 997391657 7362077 915951164 865784748 405235047 882148776 948184937 45266436 778574672 953747194 783967814 663842860 805144187 750847181 505342918 184243255 126613115 467250398 763013016 124630258 607373833 872489707 902632870 460915371 919634296 473366004 789548397 208780391 68421380 93953890 617619434 172410543 762788669 440426139 646832302 935997121 186425701 602912533 674026027 105887475 403086635 799549826 822521644 979845977 908516237 737952157 961217896 707188985 551233129 8775044 905820328 999010038 740695839 917741782 786194580 797064751 786876451 450952695 750695959 725098542 975271481 695165772 935104607 937320751 884690239 356359282 817000268 317273140 834333345 753614820 660500638 707345741 928673904 69786575 923470780 389868100 521852368 235419981 269548214 861431717 710044285 356983436 953519637 929531405 821458289 993070467 888700226 577974856 776835382 993625423 953620233 382350710 868550697 744405504 149491070 904213099 205682650 166898135 102631752 828206767 532249855 935622378 75686698 886582578 44188578 910498294 611612940 885436393 872404340 785562472 895483015 928953651 7255783 952639761 190570052 904761779 685331387 482646757 619325098 102511053 278276385 978994479 239647216 53512251 838526796 19328668 940389399 947467453 827075668 946372047 845452761 932357603 124180424 142840528 946604089 820895665 730908111 390786053 383185026 108737158 899562495 848251529 907752525 789323830 972382134 818655492 838285056 821837579 801761827 46609688 6451652 967098270 542522106 796480068 282168323 177881366 902077819 989883557 515572494 446347444 814205516 338939447 252071617 763292036 917218005 495269343 675258174 954428818 22645904 759809969 450336877 741779704 806754390 669612830 952592236 952115644 813017141 772595466 333693492 964774432 826851444 866797831 658196910 980666277 136508438 937369055 868645091 394997165 958931315 981598998 779345397 579855140 913485282 991877498 435045090 375934597 132321882 366689509 775636150 927215455 449308312 674231394 229859088 757848223 120704922 10006203 840574564 901852851 320168915 396292735 518068502 546799137 854110266 136463184 133096021 981476450 432897304 831743391 22701965 434360885 420443996 760522635 962101274 323774714 417328411 888560367 36822768 390038884 473765601 5594808 9257363 570304983 814149833 800996931 802174828 909120285 573915024 31743433 937400871 337621968 711364489 461623062 911444901 987853216 793735468 632105611 902783892 888004324 101280302 969082972 105374920 555863167 865380896 751396964 388986664 27841309 759824071 852555770 474752033 738450570 848224674 406524153 32955162 879923250 111303158 367375484 887392552 741293675 687801953 915027449 126044292 188983073 328265927 65243471 956272988 858929832 787806016 633944563 868691979 105852278 810999382 755774881 445617227 791048968 122790743 771175428 872573265 727162937 778978681 762722679 757365702 566654783 422205478 349719552 770290688 532391020 867929002 904575464 993460574 659311497 273972433 473727117 687132267 899715791 762758747 672197121 270464823 781837734 588410640 638606090 429038471 803916236 833808192 278931618 807580797 193852329 653909901 662546356 806964020 966457075 885905361 911752039 131879351 159154212 801311719 307134097 918855335 682509022 856983821 950390045 127352767 782389652 899187107 420453724 154248720 128698815 243972784 196527130 331181183 657581913 72915418 331261997 472003075 789698160 637614090 409047853 784653772 857284349 354691345 472262097 754833397 26453561 207358850 69727963 145594985 415731208 855625821 916452288 884806918 294191565 803819890 504183543 929009357 984957056 958847324 350368706 397464962 509028957 815372329 992673468 716318752 66391022 514691563 245624073 28925003 571376727 864897444 763840350 799262106 81241560 72032268 326450198 761759351 912072561 535444681 887883982 597587475 844634482 39111798 881057062 745962400 854056187 143195946 928141016 587790355 945807165 272905003 788704516 824817124 705346015 966114389 744100762 876514437 927361293 96015659 166987294 879963005 927587379 883268994 214446530 401811158 916478308 544354334 953638263 879919133 919450954 461715165 864425451 68027422 260120868 913606919 852776872 668900713 823807182 782568820 988924839 865257799 981808669 131589640 889424385 969267594 691181985 779386965 787241320 783059607 412427708 915553435 434198057 883541053 335539588 906354870 462569570 497927540 765234125 411578485 755642546 254552906 844781532 953355837 548740307 872071316 658761653 111822837 951829154 230444073 893959855 857311688 845621659 752474132 166808497 188683773 811997101 367614194 927682513 6132716 71565248 448482394 43993311 957869071 864561047 761421050 746232453 955839898 999188859 338914157 946190320 570259650 109375554 903252326 686416378 392764630 547418300 746849327 813222224 934311978 555969933 660106975 307005642 207312394 199230280 424202905 847379875 136512963 409038871 463388945 703225978 384320096 594898139 739419037 636875954 985218258 772598433 966693727 420405027 815679730 967022252 145750084 592351397 353195954 844146079 855180538 931415498 202599407 847276472 954120513 461599594 128970058 289598470 888391283 248172168 147063222 906080510 895779027 802006617 679006289 932738769 812372154 963598935 832937806 405689023 616483967 701795994 376194041 387638008 405284817 688035466 855429478 851310413 555404659 546261690 886357369 39952412 95149326 200029841 364277093 560514380 907548354 23317826 942656556 872636684 241334006 54758467 686628719 828468160 216322991 837853052 151234376 397622924 508317208 524055416 940494833 835592337 725593401 849537320 860594211 745544742 211451268 890394963 889284324 347310677 874964948 742571762 23294870 548420639 892686308 876309913 951079762 802871509 671219185 946440232 289614445 32639200 493495925 772306232 388181434 23241887 336056778 413359714 896147305 996161964 656717805 240408794 837467167 919661229 991356155 714866963 995754322 87450447 891062633 952833109 10973437 609859828 899738944 470496655 968835558 847596977 896347021 160879724 83445333 976626304 754030871 961423643 961725286 832481590 866406497 819848334 964722158 912403232 746456921 821958535 948099234 689201989 423780281 876377236 7902783 559023404 222387407 975111395 946587202 786809615 107185578 730408456 126147028 959340959 753024768 824109840 150429868 831273274 791463702 519657378 790530229 420796923 888629658 909126000 792637702 469743683 926688868 96596268 526933264 758477201 103399147 873247210 124733043 900637756 21497754 979504135 214395037 414705424 309404138 56731400 737617991 403849017 672548048 115571161 825722355 944784671 61349464 986493132 373284812 314565950 686031033 680255436 768532671 173979068 393211240 767909523 273765828 915955098 304179288 783198537 607651480 807597285 760237973 575424466 39964499 816889637 728774819 435572212 926120821 722670005 629008857 667351620 806311092 508547081 745685477 383443315 253055678 979631197 64872507 898161628 850639542 385405194 180456282 946341692 742276281 439150624 846404703 321476647 898115694 981467587 936463600 854286958 530697272 241753936 668300592 622393834 567356887 879984198 397259683 986178332 374032210 886391506 702675680 934388433 441190061 784560036 591387257 885243174 839679706 996994043 868498722 936191576 661411097 647419867 241853267 654390386 245547493 563216730 923560341 864077724 653685642 429707412 974412130 424562476 481199548 346546836 652550548 293349838 958877897 119732665 556420110 921928235 485550066 392298236 666575887 37198275 570672939 887700698 888681088 315276232 960202812 946630410 811310412 740598819 348773438 611884053 927067782 416042141 781984688 426052774 529324112 708474874 873720113 971089391 620346266 430848313 19219785 845829341 737378159 396026699 39874085 658313445 513000726 654017086 949556810 809945387 76880007 874649312 828923821 978336999 921205966 125165166 741947158 182621508 180294623 664406999 931842933 197434791 94311690 851827240 319627210 829197298 764774247 786703468 946507709 873884996 754040521 609058960 86851312 750540201 531809587 699831865 878235861 772064545 909264221 420774847 840682237 84893246 111825913 582253618 662167341 224862670 384440813 396639122 428909219 188640629 661511201 807855788 376074091 798061362 775669690 919907705 744078945 122892194 919803419 801969045 322176176 225252011 973714574 829985760 916260688 848407987 457990624 732755137 710835443 557076482 768437790 995023463 238054236 763689873 79487727 516390237 736731442 949737190 132257881 838521498 112517316 588218516 719743437 299842313 888171494 142085519 807180600 650111396 628423206 802923595 208595192 879646022 841903922 211117756 738852013 489665154 780686154 377223602 854712204 793733292 849075497 844376568 638817688 235487784 833457305 351134130 649794854 808780765 911730796 65173401 968792813 903966561 512148430 806743915 118063395 969127265 888503432 670843822 81923696 956242751 874988574 944811657 971878128 795426768 552066599 795262486 758997750 51081657 425872437 743039650 257953767 617925937 868597708 236641240 928689138 823734775 809756112 862002895 536630257 757985339 752295780 951222788 868098726 877203831 571045336 69293806 905280217 431989653 184273187 24691819 625803734 985894194 642121148 863562504 357982494 618850820 947223437 653442689 737020247 871146678 326429743 954230888 72252068 545840932 985263794 171472648 939381700 266871800 575484849 857952951 18530788 822797403 251467616 784219249 824061453 822964933 826182847 720658129 772339317 957792864 875930531 587568516 976709223 944453525 816160139 211106166 337269660 920581365 484897923 938353323 160770943 31359761 877677473 75903296 885350122 817136115 958962887 904339011 545696429 793760742 581947992 821697931 788681264 729093837 668383895 83919707 890080959 773241630 929251826 156372624 199742167 822835730 976567201 532301626 965567733 796657150 210632322 825356033 459196635 262082474 808287978 852226598 122177165 235041548 800187625 159499078 444682277 980777341 395610844 212007148 813739497 907320111 267892811 40214066 391579416 911822275 798000289 96714841 334039054 388566815 909007294 892459761 550904440 879983560 450332357 430198169 803232892 511852664 864862402 87380197 57903589 144364287 893334422 536552725 762341747 778605788 862852325 744123948 838751146 307611581 816844199 439451972 557790512 861493737 403736805 768559881 480547362 186317029 707062773 129358354 27185196 540646576 117799896 66523655 275712662 252458564 278982894 838579451 625741148 267181409 938329877 899488379 857660155 247777800 776061668 622025050 898807906 673202128 894946566 917616901 225107148 869978252 870459675 943826286 878163264 954694642 450651910 709411247 717179797 922098856 963873682 812371681 370298442 969241855 214932034 468221232 943990141 214436315 582579738 966107136 568839922 559394197 25785240 821660588 852319798 826486549 562704687 880180255 533558122 268392020 641985381 61922918 586863604 925377613 557680103 84181429 703391053 611590230 993786488 797550535 757431836 858259813 158609929 572638545 844222790 746654235 150465651 909565730 893616894 699483900 637882214 993169725 813924731 731744419 308553824 985532746 880095937 918289359 530790475 295363345 760455700 772518095 821930618 920809461 290113780 929732844 608101070 496647068 669461895 873181014 716585224 755759620 613420586 819057270 463140086 450975203 214784252 790433798 982272920 464400118 859960578 26734371 635652421 206221431 817576935 878353160 978079104 878715535 937978482 797586763 209552354 384142650 242086073 251520272 379678122 915217204 462857500 540273389 607328408 954078365 969120054 740171696 925061345 833794637 749696543 95635336 654194359 848197114 374015895 17795246 837029019 761950306 902910367 802703964 882672742 975638311 838803897 935139357 334537399 275565411 871432437 276979816 712700564 926360841 51367422 806438041 380674904 644924359 776222323 578871087 901190814 991741039 61093122 72955554 972496897 998935834 824506408 915791056 235575347 846996864 450702156 826233454 817038814 822179779 423283318 906643277 956900413 747168405 629940846 281228433 122493611 41323325 365341002 264558800 726081308 276555180 385907770 863345087 903533453 613847594 901132484 64460525 815298905 813719234 622025328 306760214 141204327 848187302 661369562 499954937 985998464 890008772 847343486 928033915 677502117 786691815 804750498 873233088 291128061 632467111 908006715 599522745 908184132 528921124 945709810 299803619 235152929 220545095 764724939 761622267 412844779 981892755 969225404 852282004 323517573 770161711 28330774 818027840 690882963 930843441 397559475 579007535 552063824 823142928 937324144 906600647 856122819 134331857 271205178 517355404 535653152 88048685 875082939 986188665 997659688 715055198 798221702 110119866 338735883 905158406 658695201 2568433 520379531 687543734 431462143 803155915 293910601 91546432 869570522 465686555 978540738 978191960 30700327 476964930 973988368 633351995 43097768 969864236 67350516 843180080 23279942 857387081 846641424 787452323 989604036 179779277 373677344 547985401 896038348 221873900 867342691 794318729 893334159 762628376 813987391 277997682 687172473 854532701 765337029 754395758 942645040 884002400 225683691 360579766 598456667 905338093 103647561 794908255 492248515 585854132 905848581 986981919 473190408 229987029 879246323 225118088 973367162 261965766 471354255 475117889 749795894 107552526 419666029 537482081 170063010 752170423 810494704 329638252 894692158 426654370 693128953 819183025 135485780 811954502 488057877 841158387 822370733 743461845 935801678 343004752 614088416 795391259 934917078 385732537 923093794 46677112 975540644 618238461 987250895 893723020 804240133 595943907 269674062 96568260 831468333 764121295 943332943 83770105 989918215 886454091 74445063 224407376 424021793 193579517 341866395 56336992 121658805 858290365 28535049 812853666 926860906 941178596 14842272 952926432 884093364 977213364 752759178 628250998 850465832 820587298 482894058 892295486 283506052 891442759 822753085 613610441 932506550 138386924 559964372 810631521 114018703 811426278 333208004 989479330 860030158 409822784 29047241 999495636 320592877 570106942 955602634 657882119 920954262 865488157 74365283 701772175 880939062 405399265 991343476 540833769 384647278 338546181 446690682 788133305 894013608 949549258 976097953 351281767 814989159 959687818 899747294 562062056 240246348 282806589 791705866 58114446 79262812 86721203 830367761 838090324 669804264 462813047 233087508 223148026 744525250 848291278 825712732 746034074 151663995 734251075 511128642 802207887 967586015 904715994 761903474 535630027 856262991 950126698 645594652 769783795 975292610 124196837 499176916 986120992 640212870 534800357 195119665 816082988 635102878 544115855 15674292 900676749 961176941 973866578 107448098 597577703 900792537 871114448 284413066 833102293 908131614 838004512 921787791 172492627 815522265 520851839 937601218 817717256 961100384 778093173 585412853 993279441 346979453 840566785 15679808 543092609 752150234 435276374 97889726 501408273 926538573 983861609 584348799 422278064 708810322 679450961 787001065 660131373 802419248 827744566 598460683 679280961 358632952 945772762 922428252 367193623 993443492 237522701 623700664 477960223 105912137 63374451 782183816 918176964 606967167 319988746 944779841 948805403 766332161 992699766 793643145 599118526 645113602 729466723 246128773 201822521 61136101 794804304 469568731 938093238 69760913 997293438 792040669 603722070 834718531 934073586 429920992 206124958 867137298 902046165 424351786 966831774 513156029 903852238 660834935 860451502 898898160 900233522 300675083 774717720 742406759 752499856 177362838 221213646 759104964 310221102 359934154 169912890 138940444 670680370 789661520 787755370 641317045 860552676 969905056 467580947 886348332 123194621 106314339 984130757 927333419 888227295 971076525 987370134 874424351 316002720 32168497 278329009 526564881 333244347 737070593 45310182 837860127 296525807 410994958 195987860 331792188 864711711 960670866 19828306 861949588 606755164 900250380 586729120 652327747 820718923 719448260 293813505 855411550 425284962 913194244 15422611 891409862 800697499 755071305 957629568 827188831 947184470 49754204 968279498 887524644 837354092 459563900 982870938 990812068 172087635 660504076 779384442 300816223 787845927 710862419 882956320 915502639 956790645 900988234 293812641 981662322 776062404 936113612 562672735 62518940 440828604 417831995 508168937 999728976 283298794 954223086 881573289 825935330 908417111 513255785 814059245 626490319 788259473 772071034 233831251 25631670 998293258 270879085 215735131 726114272 425585297 238258450 142444882 304379925 758396599 888374663 313110036 872737276 121225644 512972505 768075267 876898192 742741645 641325977 962665646 180655463 197005188 842954153 832684842 896040875 767367954 429137372 871312686 901311552 214180190 525109999 985054337 717160648 854570520 609756630 501775495 813784358 238478691 887861227 683449711 925053991 998337070 490513592 667200430 851219627 369981982 779765314 871915950 985917159 602759249 862186651 820019818 334121035 720779510 546788173 986254066 414433043 951066927 956435891 300300516 538199500 651816692 790104487 207257433 532810088 249883610 354295091 776000542 926158945 891223822 537004379 228993953 873919534 292847861 702654475 873385282 332110058 201416022 815491853 385690753 144364801 225594135 894602416 858483655 371110579 894692854 617366249 995690576 799295284 972811177 62846923 985923126 755310733 970321111 967145816 855185989 718849360 946593340 964583556 485318402 751421255 569412008 740777465 917412806 490229915 913946253 103468938 203882386 606248134 79538599 829361049 792922143 860339723 998431022 932235582 755900559 112967321 957327812 100535480 668987673 46633664 628578538 535047955 780889480 412224323 562198389 791337808 100695315 539233831 899683756 801219738 280358 547403275 931978635 148996844 31750317 592378389 970795254 643543780 991376884 942144867 284029316 845710830 385010243 850747073 419957500 844483233 467880386 8148435 453414022 138789745 476184670 198326047 279820682 635319703 183474141 810654587 480385067 747865884 945116166 480068413 797400803 846202711 985682135 644007896 670272336 541491804 403102349 598065211 549008302 430818856 896766867 513473786 603642617 427167045 906455713 689847605 349464980 646945568 680739323 793494944 58651449 439802462 705992530 930324713 738952199 132045980 33786987 175075540 651829052 817071209 835419116 675400185 177792750 889934237 132852757 921339334 91328964 24621244 787186272 547426177 346883957 991591022 760081654 928075961 732603492 574080846 546273654 899243076 362212134 898239468 692953103 280318604 38518817 268503925 782646109 147982126 65838563 763233832 362844128 605865121 677140840 466626587 279455215 846274935 179467534 393773649 739037337 925098518 900990327 878105236 973223293 978652428 758541282 445770325 959374531 923225237 522032365 418735751 615676922 856684261 198123267 990230615 968167269 290825864 63738449 842368564 417893929 702330716 742476864 889925196 785957069 455465462 610647127 759224993 651660521 500426597 173113254 866743643 969399164 535843265 915746211 458908570 792223330 812888411 101805847 457828616 374908675 829030299 478094708 558477561 420034455 943636299 838532469 866560367 842415728 670178761 857987100 623630045 847131340 778332485 124145579 428133140 446790728 989123871 201238159 141430646 962027626 945910502 173593282 603334306 813416734 329162448 773566279 740245184 832150944 621151326 174433795 73650629 317679647 692811181 713735520 78658305 842793513 823355475 829177389 623624460 955982782 202193581 490545419 955189413 920692565 39825496 494754951 147923580 186703014 846105932 430229010 244368846 595540203 894270390 695707510 953554926 229610790 726372373 817589582 302332572 983890294 646313925 268659840 937837774 466900292 910002429 757772350 933258450 855929565 619571741 134632301 804673746 334289165 843334155 429712287 988539214 956544183 975936774 854124423 966282266 435312795 719882738 924991277 751291272 443347717 264437673 457041155 717424355 880847185 285681195 910981774 881020913 544042384 359865045 813042161 36777697 81727923 531871183 901652796 493923045 105900558 304846470 460978689 829220661 434872073 775319559 894438924 702786199 884036851 4854341 916034039 881683328 377495862 888979984 249705915 886638883 772696156 661028382 914855567 851108053 604361947 766075673 213726477 594543251 714350213 856537704 306135266 440522546 975600454 729053259 988518878 922842318 710519641 626013132 406471618 936992605 748473257 749344910 963335759 200594128 869641699 986175096 375684620 708979609 801534176 539012604 322609684 27652213 263381076 883345277 869580296 724161486 882775165 904823993 242321428 768139899 410916915 931782593 773451550 380709491 4733688 46788294 784439672 199397057 20268930 321365652 924906052 591079809 311287290 807215297 373652992 901453194 594836966 851303018 564117574 239774155 696349567 966411474 272006433 785212135 754599857 704953647 556348452 921431881 927733350 703414618 741904229 42211522 711031900 990859055 617539632 78071923 903670885 132029712 489667672 837569501 806863026 973992362 546321724 812699312 890749256 290019009 771730335 127518439 951810508 936188894 19687743 441240951 334870646 481538121 757242147 751238969 634440403 835068299 618189306 472939744 818331647 175725731 480466102 447990869 985776624 852688012 900600296 815824073 238925783 134488066 793841474 971827625 885093788 841083069 738621882 41874495 485125660 851733798 750548478 775336407 572388799 890111269 496726897 800102413 727452885 950903025 578072160 26408896 73014552 881246003 462639986 230494293 899185184 936758960 847121934 29705285 923554817 793716149 400111877 854424440 471581802 881005832 808706145 283615683 933296270 5657136 16902601 903647926 760705413 30419517 742708416 332392559 994222113 752997547 828491815 819246273 322861153 937326364 496328633 930106282 624527427 264185646 708284290 820164106 808834371 126482551 944058720 348692700 828011026 706115965 146114135 155710444 582194347 54695200 952290297 130959346 131813295 825159066 396388313 760275077 818046493 132605029 744962103 770377301 552739563 712293678 711109919 111954186 784846801 617930380 754051130 35575229 857097463 781860023 42749661 258568677 282363756 589092529 284887111 84377366 76497789 983835203 312661758 838082742 237116541 894996923 893844696 343363912 741979496 602033307 931568642 807095711 487461525 868841330 507491787 852128591 853237994 578436122 932327514 873646875 248767343 682073616 960518796 257876406 974293751 621200291 943435293 752736023 509810495 532460628 613213419 950034830 112768506 697445269 543046186 902537312 573553379 567923221 655657078 962713585 762614928 927494029 960786673 805613568 678219740 739621475 212531010 779162532 263025217 620615964 51371529 852715447 844168270 850368589 550996388 847557474 760440585 769791072 756384392 115318404 983547350 515185408 948166915 378033809 648076196 186453953 846022146 48456082 748052837 878466903 835742295 141343080 6302297 367968153 880572775 848257822 28490674 637476341 962468316 753964975 761943835 972344226 936645236 882570141 498674841 631573844 673988085 948713250 637721375 927595192 198114538 820825844 27117729 622489868 191539417 303577108 909509213 981434692 924326063 857930634 129305232 897529363 176740557 675170808 26054439 990341935 779414660 434261633 792534957 471376969 989174705 719833899 246436654 818249271 279180123 122516614 763917956 859891913 911295235 327458541 531858159 102947440 570010857 108282466 119362637 443596114 686282725 821403932 533252410 836929674 277442108 893558088 900324505 953869999 807197688 640673232 839441866 305787037 772649081 737020247 431775646 927121721 387904630 834302722 514629599 948742283 794717966 604244359 844256857 139848680 957208273 797133151 250568289 761938460 427904322 553174397 873893302 295343033 440649970 871099917 279000195 861772446 656501880 763991019 765264323 642848313 744880801 803776159 469341502 373748917 751743393 833466584 722141322 849733865 769566003 612498843 936220948 784452800 831541421 737607467 913968238 613188558 771180230 697531820 835716461 488834929 129293569 791658460 988843396 981246029 769810698 867985785 822760887 274878366 469439119 919533715 849876733 999284921 997066596 746594743 876817749 735588386 748750304 739422628 935611743 931861673 203279663 132544061 391660230 831942279 881276746 877730394 111715155 593620619 901842070 127439497 756581988 472877922 86371866 676946374 236442220 996469569 822064543 391012196 655515256 823443492 28635720 904335932 14240936 488386764 76298430 956120405 915305583 537103457 855989535 854987973 839292720 814289879 990045458 640153161 276344851 970149854 605881066 941173410 742723982 809034418 623899387 78366122 990014842 989636862 945779335 854148418 44066137 579683224 963217289 840046709 860754629 994834070 235484822 889214807 716343945 626119027 934063842 138191904 874521355 912610406 927758538 992401133 828398905 167512194 198843948 404150282 639488156 159547091 354818401 322726691 390490272 613562818 272542583 989625962 775694697 745693646 758860587 914323469 600101853 880877493 558849950 371935512 773009392 503592066 588896136 765369198 685116190 939953965 290611549 168579612 872866802 566578499 864911012 935335343 156437798 662070561 338881382 3925301 906479558 904281362 811286147 757479951 668940321 662455911 700544460 689044234 830133843 164902049 669012458 213111149 189521156 963087816 589269173 962020649 411990224 982545376 784276787 817739252 907721538 474016745 978700412 798344744 869627272 923948801 873163084 100194719 934575722 358649261 767365248 535479049 805165098 73597171 890255325 827443389 894468808 787141783 817134919 647710082 961174427 933087265 605010781 910293105 628350486 8475362 834810154 553504218 814348970 601338238 932131067 754268909 439945636 871999284 670807107 473992552 922564559 484940502 759037523 138353995 168801929 959838992 838774732 575414289 465348247 159262302 66714863 898301655 280999527 119882400 234591669 621718926 614043408 750844222 685078883 333603173 239684496 765185587 449312975 980264378 304638701 833277059 609237655 635162330 657532361 895948295 925636240 630193836 613811204 750628663 668064334 998340216 548264464 747173725 794314397 194287257 300426828 795306018 334237569 602934153 487062185 925333912 811606298 971899277 923693887 242096567 415507671 651632354 408873651 890094079 47037788 153532342 63424799 778841702 609963295 975944349 928895206 245024599 817107804 677486379 895761707 991367695 769976125 186121843 864565979 511009695 349678355 209448380 618495046 850969352 511672237 934162396 359250418 393569743 547556152 723773609 372237016 245739837 318691820 514772710 838691817 313480315 157965088 83617588 680396771 784224756 762699160 928639110 842192042 804116562 352685229 960587717 735621778 7873822 986466327 876140760 763806170 868512486 491239126 276687926 341651566 958359309 269222266 888122636 68937149 983935607 614552064 797233504 942750326 922553878 765785635 224559553 939515061 633464124 971920881 78764378 135483760 830474557 783125509 785605719 941579903 944288712 975150811 753700195 691487032 943691387 499280804 80679955 686559818 19258981 832066344 762095745 975928660 65803770 846518182 711641252 806020416 770695443 766043878 70058486 229111875 44038857 742156172 365855382 799490446 71824481 895875075 991090199 290740981 343422006 393526689 950265425 806264283 158982096 900867555 740967945 504437758 94873165 320852191 81618116 963507998 866068779 809515361 777358996 816561565 34768375 457449795 286531811 224292512 286332473 850610168 941192135 126501737 847728773 970802580 881161407 862111903 142507521 776973076 849196057 998276058 802374586 887411079 883605181 169678341 968387826 861620415 198485187 797053325 66891553 565156206 963559321 824986690 940294635 15645536 813487130 630718696 335171396 204695811 455251727 551703303 973068403 417943752 443984884 393703263 790077380 983686915 938643843 701056646 491350958 704750416 903820556 771660035 983399327 853084295 404465057 844205852 838450158 793108574 894517124 981948704 724460998 913631061 591720686 344720531 454315047 672684575 918207709 995314123 771386538 838991469 815246651 817118928 417646909 529770231 985223060 493681900 337262051 438839847 987611497 427828465 197276057 783497043 122636910 722066580 300208506 973035707 442618685 810716764 191579962 265561134 783963004 901742186 783216785 206502827 268984034 742782066 990508944 358199521 309291840 217508992 609038840 145028902 269907240 378329712 86574650 759820915 135306240 535919400 231806422 951814723 759103734 524008006 940390988 778637800 449920155 796910946 845555801 283465772 789607774 909236026 926934366 646444654 952551678 793099776 785285698 255954005 231076338 392965780 675575341 11022850 854614790 660144223 903480123 253210696 861492761 543853686 723379042 631127617 231721815 917053070 176321400 921322911 764984536 868183927 960825691 886469765 835819276 397737741 640643861 861391716 802949976 521901430 516784388 751355255 519036936 183945368 966589508 139204167 784557589 816722315 853770384 877449812 254171927 343127382 140689665 535120783 972556187 930013207 910995827 913347651 244764786 993429947 667783636 689711042 949620082 155776814 646223396 841894189 926798454 854766145 877783117 832313093 818996788 553898238 18313552 83361155 753624294 621817995 70155787 81019446 824822001 952993750 824929506 301646571 616406697 870550369 869453304 708152208 798923722 923770031 509363554 878355986 447180522 769003182 757383040 974899170 407969145 852060020 607474982 781272852 590901228 205889640 860334788 740791777 800570813 801353848 160665194 418046436 50597427 451179698 751443170 138743506 990857953 877794842 499698686 923853686 892421025 106046593 770266556 810117990 780534194 834818064 336444634 108438474 781260247 583919087 112303587 272648299 772186769 891275890 158460264 170876402 770500922 354482859 767776475 995018756 370126744 297100477 735602547 825741510 121857302 972081163 751855488 628618259 849623477 147722027 23049409 792966450 926597665 864639299 119710188 754792758 773189714 93219808 630887075 998430118 963742932 694708442 481642543 810981966 867102216 816979303 908894761 848895729 978864029 216340287 875432466 538104709 104441224 809970720 957592285 759374068 466202871 653235356 70911256 759820504 810657979 674975778 494662633 599514913 866689280 488764591 740310788 882183122 807542576 20156762 437711291 554764625 883565847 801491142 944807970 539666695 848953808 85761264 918342127 9900666 347300113 74314237 895457831 974559195 871871772 743569208 9226940 469606892 108387615 655409677 661988263 855732862 920530711 933308716 414302799 981878675 114401390 262033321 786415377 862998005 920508978 814053193 499722536 857649842 97762566 762672400 109994992 138128110 933641783 663475167 961728858 66066398 217610370 663794015 920750671 914180958 255067892 127714729 324892123 346565431 675368202 931729069 175176305 419085867 538734035 930860068 535691166 802935002 291035871 978373867 713069137 587275102 212504574 949931922 907662030 867100642 980800660 104941508 884661084 917339746 665237489 478850134 865952658 855044129 20516226 964890746 653611341 29905598 634039078 147109784 715233485 149630959 12605322 40492668 465215820 783999946 689205782 906072751 24245131 777465314 42690839 61974808 857986610 857014940 523397834 468972966 773093502 329765088 432102032 132352878 833565233 715890288 559484866 813258305 779468041 33072330 767624254 976391041 818773842 960491263 982379276 629676943 629938196 184270687 885430218 883822251 455982745 483126364 550752840 815312897 410181914 874428683 738726817 228217177 559137570 966407792 243883267 224253571 116846465 649233961 756551481 828317848 750971434 658117077 998079730 215323340 947999941 813091548 927738599 992763308 910728223 913609342 364073690 909026772 832125513 739633881 713021901 816634208 884336286 580762883 12364394 733657871 294280920 333244292 694766375 945732360 295371623 715187445 847625117 287910096 379088289 773845223 990121495 416754910 919833654 797554951 796045073 931593641 569675358 867852739 799087283 960248411 951043193 369737155 421014996 526470048 958766139 780063807 884830306 859759475 707993724 864625370 184684823 752374651 756269904 665653658 830245778 834673116 768069610 888322050 700119408 509472018 741843085 139413518 778880128 634743423 958515080 660868303 804726779 748675817 733108715 552021988 751968983 679292114 740342167 833094988 889006205 936315879 816200189 934014104 891713790 534226363 922881092 724680722 162040103 858344594 685435260 942280601 548290557 986285886 66158228 602252801 234418290 731927595 189190587 142134910 868596177 740208000 999529744 939181951 995180498 111244043 909988576 782120107 793989927 831678304 257052254 813184681 742051659 750018017 911838346 688671399 367273603 974353374 941525166 595459470 13678061 993916484 608318079 787656224 816840638 681377608 984556432 456033147 753021679 882944924 617837325 690881407 419761554 361829083 799585535 842668683 890700976 915308305 401558880 96521608 927285999 513651687 952260064 855201667 892138850 565625024 362256091 760411235 928175275 6554378 901557329 430586275 890182492 566786933 826087520 517515152 961736203 160332343 673740427 796356656 145101556 441305925 187935421 466936242 137060701 658610359 836396919 598950565 223760162 924267407 789717621 252493250 788386359 983537101 865569835 414496517 175342508 18384694 650210826 72726175 122125045 158797537 667619937 656346424 347264744 607152816 974464472 561406496 251056401 914657452 841593974 356247171 786954834 470570577 453769560 592462881 537469817 914378612 973813096 945911837 686170302 874706284 644828625 139008113 731182489 629223546 576640289 905577317 313527085 908375084 548996200 479476376 327726350 991222505 772025663 821253114 52639677 996831717 784581074 28183740 756923041 891178813 851581647 488541067 918754322 895566864 133836552 737314608 902595868 743843923 644909278 43625284 81764558 416307939 553443978 9213700 554617061 416981089 984389326 109397370 948780622 794498298 476999017 906085785 955820224 74448107 517807175 998680803 974849217 201160572 695632507 872735595 197525318 639308918 877145114 698395774 927587654 19514084 744386249 419253369 947250485 220527561 991642918 915077240 65818913 900341962 976586893 915384635 811501202 361043022 214803117 338233058 889667007 795026597 631135494 827062765 981097337 331768919 697012441 854862123 755482320 647691892 586608788 433930745 472138765 737151376 86980889 857017087 452954470 896929542 803318481 571975395 903042822 633014580 507662176 500181065 684071887 876699440 742630366 951731962 959534733 139787671 799491465 283831308 814154359 706972215 953587653 619046766 812915518 844833983 386303128 217659728 821385022 839950123 566108890 865182807 138773567 883610389 786210095 475474700 93913540 660816029 979757776 722348002 714468798 920857610 828690727 839892028 888326006 862622128 341441069 855010116 554512599 724934343 818340658 133539645 922763786 479138214 723165877 765886884 499975905 286749933 364841585 919436194 777837320 53364060 151756634 278287875 61774945 256608155 206147195 808723792 886691118 655772606 339746718 779389317 941980021 368729303 271432824 200953333 981291951 937299806 686344623 187477023 892486632 895763290 128003885 638450218 552750937 837267240 389837130 115522381 234744569 784182636 947696484 700472450 356349390 292663889 273383462 88539714 909966153 845440436 930020779 881193386 915760574 820170998 347283660 644523313 979983650 215925481 526883255 266614646 737020247 305389710 844282351 878673134 821211855 672639281 760644140 998481013 880690808 395694630 434476928 468867029 129802004 289455634 741651877 262395323 842022487 747283401 717279025 515214781 633179743 784463132 614550779 700414402 945510630 822649537 566563116 482145996 835480738 932337010 528787025 788383898 252041828 80103862 799202242 413746428 313489291 921173280 309057607 415541431 549625911 430510023 878367624 659989462 386449240 917937489 463616678 700506083 244630961 526157765 875287574 743737935 707682928 562492925 575249337 886103391 979490418 740290282 339245101 908427623 154918856 930066859 746842051 148468757 757252071 910933871 971739579 887856420 130346532 443925393 922647933 852618502 772687396 894485098 513578736 696000127 700523445 885382262 411581564 943448326 200276052 691592887 9783707 940848722 382673448 155844912 156704910 200506171 994957049 673282533 848432498 197221280 749230974 897548287 891468046 930820244 839877865 973180420 274808775 791013300 133036273 502420880 906323198 897830119 46853325 758219488 611592859 816383395 579632176 953369855 996218528 59980509 567635823 305683090 446359869 434700067 754193497 81525520 592361040 330043880 149063764 676134893 590443499 724400202 728824513 75107711 69518412 509037758 903677964 814336558 946666207 848766278 819253685 88233205 153739134 972463783 994218835 887351177 877354720 904243266 525254788 983537663 21279282 315165272 862693392 901556342 901263630 348021720 458642466 850285341 855415604 908289323 584607758 855904698 468488965 893713244 492468550 938466648 674907829 685838488 712135355 187855037 604403932 657753446 276603966 166629609 35045022 447136581 158966701 189543805 621655378 200548094 744191234 644190928 496573471 762528122 45828703 485721131 589025989 812267725 677979088 905966303 656135891 82055165 831313952 829758171 745844341 719738622 614786403 799712896 67216403 941426179 750773527 904174904 892186719 332033296 597367243 953878330 838636522 880504232 902055467 956208780 683769881 966165353 81998682 473451945 966151678 557776904 435290002 390905784 941797451 158644855 446788779 96576897 32910787 947374088 852003919 410081690 708114253 807683735 809100321 253325246 882670628 947337194 810591380 743697484 339897485 798451889 248591564 419888642 970169095 108883881 643129265 772864244 443764628 117335395 983059571 865531638 363614226 740731212 388325552 670657961 143532851 316934391 945254932 811538205 517997728 916804023 337006862 861659881 578098588 505022042 923040889 364701546 617431734 825498989 7932869 971311842 424291879 727179120 803699340 53069297 808107913 827895923 103898901 639329081 751717169 896952995 809577102 756232085 896649046 937693282 321039148 662915097 312665279 92468602 615646174 747733132 963206885 45506559 238576651 860156901 688188358 586693675 20950976 712944950 864789935 714011947 977734502 656642208 744767166 978282025 994072001 359183677 639059830 944988754 217735624 953917496 972848336 380634290 693892310 923440985 955651272 905147821 934924873 158258942 908100403 881313457 989459909 26618197 928258821 436499095 996366303 496838754 762891694 292069377 896478104 847610034 877894418 422986058 806182005 414832549 865079226 841868670 225983897 890737691 462043291 903782297 724036358 978688819 39724874 811481807 940127124 783216152 336810367 753385125 321592280 868861552 798399951 71197420 334082713 846930856 918104721 714496523 761412742 850044431 596679571 307201056 8224317 192867020 473798876 539875627 826153612 974596211 862687493 104167919 714290364 117563962 586758086 802476792 503196635 867039663 79355981 29435073 662337592 204188054 714343062 793058166 773945951 848357254 699132919 631610931 746575614 934070286 825176235 925771324 348123901 794147641 763475065 740956500 894838041 999371419 744408190 929845477 190930391 155970110 69924460 869396188 963201088 178838528 75521895 853842741 952836485 562205327 667645413 981488731 879876407 745251116 801353415 558793108 782978354 539431644 140697476 202927219 728206288 847991427 920725228 152276537 939376787 743262018 357181038 390145295 167906194 573538546 635431735 3794731 474884008 976243734 645536627 948604587 59673575 800087482 992729022 730105562 884569063 353188134 962568031 961000515 684583576 695428383 145094193 882127097 789149710 646355024 412548184 788038665 757492103 313273134 649125646 785152310 830994188 13952490 986688093 965373741 961884157 741949623 246508723 744898047 786354353 923402792 931691901 76559595 982659844 260723672 360687068 614576818 129817377 116223768 388717066 68105124 775646358 318595202 985173139 736829361 238480692 826370142 480485870 391053311 518809114 124479808 776196774 872353579 548229928 768703380 149856965 432409072 958633813 807788162 768636082 872038644 869709789 882970284 842439484 7333725 92196542 526060411 676201059 102583538 973343702 626037706 526958883 484282915 316352563 156801898 40217218 206982730 880399439 678316172 209193311 801588826 868503101 34137379 353547956 151253503 648213343 623394878 388144907 118238979 974100164 553732343 934279058 865172538 784648183 978371185 918574776 23600805 759431747 500667190 733060805 349654558 79179902 341205722 989767449 372704511 741326187 627214701 927787030 910947105 924063081 330501249 771193780 106335715 861329866 865988552 753721871 865792986 83476929 384597971 449491163 493278724 907754651 817598631 287388112 853448859 832101962 604328461 937305925 530574941 389280860 823544041 828599213 251459693 173259693 754892304 875235706 729957537 154250614 190733824 746373085 198871748 863459520 754783119 216115931 411673606 862331380 409401607 996411918 865132169 64391765 850730039 702329179 136647126 304576889 779684494 425942274 414760989 934523670 616586867 766781146 137010396 953138985 39353479 806021161 810692849 367611781 578161640 230556490 943178009 987509248 319787777 917236815 800470921 744369474 927837091 679427476 103222226 942504383 404847742 798838969 369230454 873053836 955914597 291761368 348991889 760812306 832905667 809067439 79273467 225102534 893659280 274232533 844677863 790793593 833000037 842372383 758213924 961888343 682236549 388824435 58673571 529860025 708777835 836228933 614490649 955999323 726061470 139725090 472823844 942603437 883443431 413972253 218081421 509623800 733016948 234098570 877795243 233327853 16225248 963322644 953817172 420292182 378153592 979710356 118405661 874668510 826873604 788487928 2217404 143735455 543402023 773618270 727197947 769716207 241759068 66407195 975467380 872472957 426238161 984082594 265735042 714323527 975435688 634040343 169640395 805421899 40363722 772589624 376296329 909434721 745054636 349649514 255383179 958087818 372180983 112575904 859225284 518388173 828210751 840678822 888871147 310049340 8908954 461833903 957877391 893703754 540932027 867397209 683584215 865237656 873605818 145408517 590523759 915638768 859438821 131183657 765824421 172871909 782074558 640974174 420793805 983401101 945085068 872198473 815131177 946398523 293551582 795576216 822122666 269143155 890222478 813663421 763728962 643313122 816016764 867134482 576993126 929716392 993278085 174828337 949909323 791086481 226677208 828384199 388659062 599145397 989322834 988697633 20171883 41428186 712559238 512998231 803656298 616836521 640712342 844114571 313932064 4908997 567936506 732241529 217318646 131579836 948818194 850458484 938181105 919148544 977895251 236692644 676900959 492474775 87055288 377350400 949737724 686423458 147333091 893936688 75485506 978986506 976583658 777309694 812188023 817518875 313621055 963053006 37945720 636823387 660713153 893819118 459982791 876074598 869634339 294349407 828076271 933683740 743170184 775224639 997741868 870903316 775752538 801628347 96886135 932710258 278833823 838422295 437786763 921222348 537298656 792015460 981385607 964944183 65232392 195841977 985999307 843483716 589250059 787061996 915785496 866098980 837308564 799961258 109137482 624753752 967253789 616881435 727040014 754150923 534776205 196788424 905462093 677015851 17334310 949158046 187266275 897714430 790997966 759937033 750550602 978851071 595845712 738473771 658015559 957985476 834709650 407725308 904692993 191800542 741677959 870543670 970755445 859572350 870722950 660362039 219232195 861519197 471430874 729296466 529312489 224402539 994126381 607014005 81934359 2112553 513407171 624765398 344957439 219130549 966637534 959420960 656432820 845448576 459198142 318032087 840823534 799767470 996552968 291191195 109802036 765937483 934398364 85146441 865803654 970051111 823106631 867069826 795961400 324967830 832230842 658374238 788001185 918997148 304773016 569053037 255947467 675191306 99358912 497534898 625020169 931933762 392145562 537518349 478051072 798276171 900825049 872144521 944291978 271399805 950602625 958618697 669342051 637277365 812311553 591968149 284145559 849513155 40685825 100008188 965323907 14525923 454250524 818950034 832758683 783742118 710045644 983439720 819393207 438643575 774576579 169621454 418595042 790245561 902527885 953109538 45675242 48303549 76553885 987014049 979152062 996043788 702304625 833871932 899205676 404147349 29103519 865501080 618229540 874175491 451641381 365835620 189164719 551359904 827197669 747936693 93463628 19759414 637158037 986443709 381619304 390303712 487288712 436793560 224209588 814681413 745420111 200453542 845646288 520506237 922993154 859021824 799770870 955981111 371173099 894566862 853848011 891612554 856697542 932811805 593990046 186848127 948470059 596359355 18526164 911064271 936962629 828289312 857285445 290832517 838453723 911329634 889073835 511937701 382929521 791801259 256403732 381708122 87319065 521858401 349906325 322734233 750763211 601055941 419254058 71210487 978783287 11540228 36352595 306255543 697888375 552969194 849405888 2876667 813470517 766683863 878768289 890880991 648846607 961907052 524702897 446860098 291237738 234414779 828469218 776895520 890889228 740303897 865444943 744035303 745725552 491983407 781402177 638926547 76469950 430643374 944127160 782193902 773240456 783500336 916979587 911248382 469742991 991284277 945741062 898340709 740754356 663614532 933823188 778419462 465344824 210516308 811630283 751206081 770022309 203510412 327301596 823253373 658087483 1214007 973691216 572554778 786177259 103883417 608619902 849084015 214151123 944833391 978379430 298706121 727304539 203919957 911795662 850962203 42189186 874088580 287091422 975995454 181020847 995871527 930310069 757037089 499637741 855665248 847061747 211288561 751849418 875713478 432522055 347901097 306629419 919104615 799319407 773833618 957962153 710208851 932248959 879774278 944098265 25327578 876548815 881635655 809094425 768655057 884379125 888374404 939548431 933876867 891456727 267298538 447390536 832809505 939107234 161998240 218519082 277562329 908474019 392336476 511793775 740267364 813949069 84970695 949487258 359933260 421298283 770566468 111454256 813025509 24174459 882838994 798936965 921766072 418319537 521408282 795895748 791185946 885898341 500561696 847148194 876329979 757258357 421587358 299052213 814254219 947767125 920751821 996466545 35941792 838511614 868547117 757091294 16795960 721678060 249578875 452505015 52378965 686067329 729044460 761991477 937485652 383439980 241294496 952453964 706742553 284176462 747108902 924789932 601681399 955963202 818185640 769881801 934520898 919739835 946602043 152902896 872714778 754232861 459964909 627989168 792308389 809283748 294839269 59754319 291274101 967339691 226703839 645560323 873477135 580758078 23153182 607665483 879249784 843700180 714153721 386531038 745609820 49651356 751974516 861801126 974844002 168543925 761015618 661131435 635554420 833466662 925941237 287926040 417277679 197585132 166739107 504699779 940483940 232045070 794874298 76787374 995209286 368532936 348013617 766920415 649867819 196226236 160250340 963442302 674204343 527833869 189217383 877160681 963586521 459268231 921421504 981729178 907375173 45097601 329795072 884467288 358823202 895962777 173384265 561973963 401810216 62904486 356318097 825075519 970923494 12007036 49469988 792401977 679529818 913817407 745549066 768582387 744072363 643853056 925644 116325489 601760705 392520308 168461345 882331551 995706964 984001622 780979666 769174756 905749298 754593515 54196831 863294855 144097669 833642663 207611417 926829524 806757822 245807238 815253443 776301593 969496785 186411145 392415335 270708616 789240584 102986202 914516735 982933516 79473288 175478689 765850454 606131065 561873877 980604858 271501715 942255555 984594075 235622126 752364942 32705377 935462142 933770418 257494930 832840716 987141677 333771348 533887404 789474482 61141177 737871931 909897428 491353274 224637165 306298177 181336753 60700986 475804318 768964249 787557580 989981884 723297997 867731657 50666868 850915767 810426579 313231160 827533979 865444136 547377639 769691069 918819426 217788950 941099584 310462130 48226919 803684827 691239746 91154048 670700726 617481889 340467211 358540090 829032083 935226486 812123344 977256483 535110968 806364651 319701284 941562635 755700018 545118132 859817612 626433083 840113896 941576886 584257273 574999801 990493919 513055125 479508728 298512822 281557888 748951951 834300285 621994520 8859445 145548779 504143949 871561198 518307476 251553503 120806927 573526508 338029599 659214495 306995570 231632566 72832663 219729855 977322849 940761351 200775573 860715840 749326729 207930572 779345931 376010447 483063675 998115507 861015811 888973671 548976931 709654782 828247195 894165613 930589626 838743407 176619748 380342721 427149248 561840193 784950039 698955832 623174308 78674026 743578282 408879560 879912241 837909955 530391567 427816359 403252719 845660496 734190287 220555944 457423400 808452542 110958448 103330863 88197230 911203148 353270850 136081115 867798504 817072919 881001152 740716946 960869953 745676085 859241247 613946070 48308214 454813422 936167231 566855743 908081199 898614835 954040483 850182630 850139794 817568898 452048719 999330958 541699920 136678007 445122203 767033307 893647918 858060444 866378373 111949905 495881690 18446776 986397277 225553902 834807602 909992890 839234539 776793021 527368697 150873210 620068783 816903986 954721152 795943472 353120401 23164084 463060479 5042103 756829729 970380605 658362628 78248865 981582892 950709621 330593881 835510357 424921943 943815384 553038043 554277539 622573157 537000529 823934807 878471646 692903386 461502272 947658311 831452031 469201271 220265586 94058774 975341766 165782215 930446173 884217553 326571106 323835422 751590046 800428874 780764343 642794132 483508329 970717492 773609356 980055874 26555541 947689695 212228377 664208139 3891505 771446796 724102153 890418568 751853001 897076371 273327902 119427412 853416004 637937425 894624069 924657463 462954114 925225353 119292534 436402304 991301837 974412969 737688699 471719489 377036571 661991563 596199085 809879084 546329187 764300461 853359413 855356502 389234085 965544866 282213922 936402667 68905179 934245124 729826789 639503078 690278856 896831326 969977131 895947483 993780587 884683816 362691263 538481935 181095315 120918153 981713016 819646351 503493547 2893943 559819274 863381398 635288733 450556038 975840570 741238120 807373510 570539684 923113635 856448287 586595744 749047873 263359438 654935583 108810120 595730451 849881374 535263980 416938765 410687554 485840010 850212830 902831690 185538969 756242175 60664300 912600679 504410808 953200712 815932331 962073074 289774500 946797432 136174684 54466810 894542203 835519505 465837190 742700764 842189403 938734842 155102321 311927838 15240980 462248232 701720295 138948018 794511251 802803993 852717591 845235504 452632039 613897874 738298293 933659000 324113274 743092796 950590082 783060071 980998696 273535624 909966806 988277179 168650207 966941575 198481708 901250756 108500666 919263362 301202567 846351284 376926576 982733594 790834660 729149109 742725702 825271993 816833327 705150451 398484701 700507447 996333317 762470354 795389534 488141242 826033192 65494391 886341222 718758595 955310298 799712235 832090520 627019355 589957912 986148829 823254239 739431790 941401647 36465276 479390005 846611522 567972919 662666782 434414479 125824921 860156691 796632414 998586732 828950270 892705456 859681822 846773889 945048073 650365248 949698548 914763657 960908778 45552572 974631476 69644032 541667648 476861982 925877922 567797996 245146217 846533581 967150211 560490618 906622105 247130846 976430426 977363489 645129919 740709706 957923466 685021441 815842669 889502871 968748810 883779660 986498388 636150310 84751429 644152889 328155441 437913146 654964162 772042876 623538986 428274027 134666070 668018875 953540741 238848493 907992272 761680513 973134258 783892905 62664427 966362670 515600015 301244163 700658095 984829082 895478246 50994606 735819157 952544631 883443720 391119434 930577227 706361434 458069372 533951657 419371886 820935449 400937072 796174539 891813156 139381238 879043951 953309745 872341305 899339346 604531119 529872305 777793711 887755203 405048088 691197100 481895863 705063863 836301253 798853720 424231269 155810865 850575380 241504462 706538784 456196506 565612311 924032294 363109298 884634616 463315916 89944610 637210542 958004261 910837119 954042462 136705451 362416511 440009815 100327267 769547852 991859903 74488904 873463269 371293338 892732507 12638114 985765349 889467347 912416681 857565217 483343331 914735692 888753952 739076147 373728698 550533816 566452464 134560237 524073910 27699819 849581585 585203415 895029059 324070975 812529326 431984121 577042503 763204519 450616841 504333358 978633498 297573742 519965016 881926973 174678667 956872615 877046096 211543853 784236931 553964738 773747714 869085962 745667764 598695784 915988907 900319197 795267231 963091622 400363635 678686630 782093781 208938121 775396788 913503150 688647022 528602241 743366109 778681556 34654119 929534018 403284491 752972857 670531324 418496536 780876871 736035271 991527453 404059509 798471244 672382986 972742802 41728049 81385568 966830448 913420834 943971703 884299832 637088551 721006579 218858606 789309926 833487275 795132005 808849717 421066803 999131779 787574708 153569609 236866276 677069028 700892998 826600573 409456121 701924873 840035452 897316749 641423435 676070884 482997028 754598678 799006397 846024460 819341402 111468495 856148792 274911487 854245807 835081645 874118898 918995173 242642996 959106273 170590071 836338986 78691639 913952244 990079042 523921234 912111149 963041527 153468049 70922097 522701519 564674692 60904172 166028141 536197863 634710378 904814100 953831937 954280747 879042557 919167961 911957730 640470979 814275703 984018371 157442281 354825240 999596066 289080479 441657535 727637002 883209590 238202994 60055013 919817481 761505618 919274409 530094512 394660075 837835567 865308951 704212033 581580676 655467897 866696104 813641906 186868365 379626083 201119643 870097941 765009501 891578127 834427905 247528401 951999890 343265824 892785671 135408701 256985445 169973227 982835892 942329457 191150628 938573208 528500520 33051595 649436826 48070970 781653480 768434483 610191961 621117861 773940950 526315059 788430036 713629829 801490870 188951530 97615078 935261706 367378316 806957612 451374722 353167345 395955845 640023869 859004444 88393058 75075303 985985723 968686828 758419470 291438159 516993877 687920367 769967424 700075599 965746815 409209799 832879241 990052432 481943193 36228763 163749188 934177537 496786349 487723488 558727166 984235063 150838056 119612792 839250540 749818063 510477351 890631774 936922412 706063385 997436897 61983083 505216922 902878301 793602860 740476068 188607397 761353210 728900383 924163746 830543907 151385734 990447175 998095530 872622522 983507512 317426204 965771384 852528633 959410039 910777550 41281419 918182195 883679506 465175992 477422493 998597239 735902702 957120578 925709824 74805104 776454781 32915206 991954144 927654178 285239657 933270791 840787836 395069995 803182401 456174659 529460758 372142762 701016693 536025786 906313192 41969637 8309653 937890901 999195096 500151342 156300765 693910350 479015347 905794689 906184341 229420759 998824268 814936860 926392434 380669784 886941399 533537178 793441125 995153216 572932973 402587864 870728042 982930608 738491008 250339532 49439524 368312232 31408634 376224124 668503006 878887352 85694454 478316838 728213077 649504277 741867185 312693460 430856551 954561153 823228527 879778719 150194120 141192175 579042509 150058874 791387755 965284151 78144379 739189845 164898188 29431570 893342474 332013965 859838150 810534668 846204157 870777828 937532317 225631846 238661420 606233622 993963237 59033837 39881309 727147341 740256828 11328807 765240886 771652118 10590569 476284101 848354958 330262825 508795168 51188956 84126543 806193395 850499019 313771558 934041336 968974131 562244531 978279631 291275258 985272114 812671459 643513099 539117447 963305224 939700099 500011159 469770272 607792251 798018750 275824812 884208279 262818207 423893304 762750799 559435096 895318002 788030959 799704492 357129824 110903284 41475584 951656045 972155204 216446385 782912032 127809616 216648313 127135483 550933410 989816216 160254259 290887976 986421437 544001381 746986444 581804538 763253326 906488627 641437991 111231717 938636965 180543193 820278138 891539985 768756735 96206597 918016636 789262081 498192618 271446301 848678761 613585457 61465922 811997548 695741697 115143338 125487725 124872023 828397799 403071647 930135687 886478276 308334156 734134549 994529380 454494540 477065014 813429616 213729553 764435257 973750788 47690053 672295884 972604764 879150185 802504875 991759864 339170995 879384712 839589829 880128624 674739722 492727013 971677078 981511113 807551653 350856306 82289315 994721035 230819621 81962801 118979660 929415594 580382052 468900836 998992239 833124280 748917760 872233143 859114327 859211910 802218776 143804692 763744490 475964737 896609601 844601466 474490878 696556066 23662500 843451748 160673149 676047164 267322641 844258071 655187553 499758824 991736305 954919014 898927584 145353348 243560952 949640470 8744203 484190407 87281657 487842950 775686148 126984111 846286565 134656603 766009968 99236999 871945996 167884067 29940044 993662809 625666510 532141565 413571187 747980046 737020247 724314544 92522836 762410118 404890430 681730667 519823537 567844408 467156057 905559618 757356192 296876065 579459750 801300567 47569692 849577228 921721257 849396548 23835377 151759280 890569510 370007984 964080703 782398669 458734449 120471113 500293434 21640868 868930881 202137732 797796079 84662113 988036201 799885972 561463021 30486214 192540193 806946012 767029591 792652948 131804371 908047691 961217644 609821229 818952174 786865133 835924252 46444780 615237720 850088819 819074557 736649807 400836462 64594493 448440565 894509414 780191522 975607028 942187289 968911256 544136655 876092941 275146926 821641293 759026284 399504307 750937226 743722427 894347100 651012875 952428103 328866848 710477520 116087153 889411955 409547604 750047249 79873629 148969550 863959620 759453362 282824583 887007473 914359381 37913073 771776623 25162789 81567537 586648348 787156045 634096183 926512240 326039099 269655295 591899699 99555841 991043839 733658495 576340169 287695562 821883927 995214985 615739247 70905256 846307646 57217556 924516029 366951988 816002624 987390977 133349938 785548040 373639439 252168426 980789133 800274685 958936325 150907368 957361715 47626282 66781220 731972526 955191909 640085046 989928491 418345153 779521495 805399895 878542888 953528636 815874094 742221507 821910139 812505100 71087664 789630311 758835295 642771311 984333914 37625191 952682053 955415778 595058211 501875683 428622955 891132858 838356153 974647415 949457569 426676236 831201362 936235686 951735863 378917612 806398838 869168253 895862313 904856377 812427549 742554608 737020247 209785764 926661829 969379191 669849507 972487393 799882154 706944345 657531816 562097890 770115350 819408526 763879495 654200277 856268844 756851430 492727748 879306668 694150239 877173863 304342359 310535014 274478033 931994148 315416376 909547359 186691580 236124125 781747107 829819263 654699229 718682110 244605099 589534602 919236704 451192417 914485395 230394158 879553967 907983784 771257380 952714550 881734241 197120005 840228757 976753881 341410629 867016867 556693300 979812362 500388692 797632544 434073347 739090547 986890888 245960738 981027104 922481724 978997029 238013224 962417435 933730759 927157601 845535698 754347122 32476642 370389038 999548729 772779752 724470484 817308688 569008301 589202510 662098471 856131592 528361398 891465049 343308971 752836193 79264906 468055147 990588794 126996577 956549962 715012471 912588060 771145453 809655718 414271645 991403941 721784711 381435538 615461613 651938860 509690724 269142752 776086348 303477990 974817052 445267132 723841794 935664527 946714073 964741561 983863774 93002715 54437205 891808182 878063081 546774307 752520584 757178834 405208131 418100179 854220555 828183517 302458614 758606070 845843118 786969269 748551982 834070165 750338163 873618606 854563475 832237189 950872840 824100140 241278031 79446534 491309238 946777446 323434013 893989998 900764124 797289918 842498080 19642246 616775978 356943801 822468963 786797101 659900222 384292592 584229890 777479371 885101725 622034769 873486303 961132793 710318478 489519784 819708899 879087989 835997378 876618817 215618941 434916118 450475677 812331645 947591811 937067129 837862491 821449960 746171367 979955137 492386847 801072874 391951316 297713403 876076944 430494645 847129611 750124732 477593064 990143960 887841704 953497984 291486432 870012521 43334756 560127061 439161386 521569084 61691781 268023088 715820966 443206852 859500710 360903557 844519804 777503011 921964511 307069045 455522302 294626537 767666171 938010651 148700575 373957 900680558 445231572 558363403 947954130 124988667 556586722 388453939 531062298 428767831 950253061 651105878 420347226 595035444 805594296 691108892 944714664 16072745 899555467 501261772 631755942 288765324 883755584 756850624 8440479 960316260 809187344 781961234 674425856 296926065 52987858 661300224 133523582 558015810 47924718 528717431 615589284 742006898 641347401 867254702 638334249 948844903 551090240 805624949 720511754 55844935 652478862 861475022 564396290 788534344 425325168 974923509 799058432 943978605 962741362 627749772 830781463 896365460 865489919 979672590 998090690 340538420 869853142 331365907 164875928 770036871 883194566 938953926 256838447 888956405 709623828 13911035 605005739 521511579 190715603 399654849 971860440 467576423 816908474 250502842 916494463 114733128 2678360 623796507 201337604 942814203 334401920 500593233 857854922 860576816 853699132 936491562 154815865 202135711 601780096 958970606 899317151 767605135 737639766 103785101 31680610 217680977 747911088 396938733 404633302 885777648 865996479 818625216 45653717 534722311 958625846 266331395 860646422 46668918 732459331 898300859 969591202 171215896 876747169 181624947 561266644 438576781 772231101 261811804 985044885 499080810 736145105 599131332 856568616 609079490 975032596 432171263 819514220 902001712 565311127 596329493 819703373 87435470 125783125 155696436 794496743 364136814 303982223 630693170 423095586 974175579 754460919 794367534 840326340 943696879 852586581 770520595 803200336 970569962 596957558 995753121 456228751 873893499 312573634 973931146 790941115 853277350 790177891 811903800 362431089 87815706 733878615 748613462 871917289 22955 774615448 127094833 74119015 826041457 295149436 196660258 970233895 605842607 980488071 969835004 451606847 186214549 101300465 820511244 983041111 570912497 799064589 865312758 835115240 211694073 199957009 936177675 786452423 999569690 684481291 280106680 986822191 646438465 245363195 868688451 935732093 854372080 72754005 868249133 904711492 966761821 161330949 478251651 311542610 984605619 899909163 819073113 817254181 225353376 714352206 677692135 165919316 322366729 262564021 866839012 319224343 925228102 620668180 804772662 842181356 970731747 769556145 847824263 388889505 759338035 864419504 713391078 555524900 803976107 400189817 485986007 817733955 195248894 895366665 70537717 884159281 934070783 707272611 883479331 376814719 476303436 886951021 795516167 447073136 222425867 973047903 18246870 777779191 860920313 927344554 947778251 694219350 74407991 73616018 689161658 551002820 982006150 851128750 347208391 829461956 795441030 149416545 451208591 573701324 788279095 319764129 560232417 765554326 790527378 860202873 764855989 171723927 645972636 821861102 147760036 824481384 92333138 777997565 983819408 37617457 971791793 795561689 872516917 748574786 737302409 630589802 69303241 632998615 756058347 31142365 245307906 177185120 885633197 169861789 883432814 618045208 377947205 348244323 129251595 843557987 743504389 774334020 163479279 27405239 830760807 781525834 933779245 759778748 918782266 438319943 964335785 160370695 8916361 971091451 946040554 903443579 745055535 122845713 843629299 752678841 908580051 813570876 61646666 552240295 896383744 859121690 46742257 228477460 935035766 262100787 261266880 363661950 754797070 577902272 951934899 849859161 929592449 785744017 8615249 981596908 169036228 375357646 923886276 599142617 90763531 840405961 200726244 715706773 741200098 108480445 4963532 984217257 906304036 40615213 185000557 931578015 852837426 899041136 985415645 201497517 400431147 989124072 667113543 703334878 758610557 794115031 908574498 788528357 737020247 465474400 890909521 757450708 917311994 924216834 997455803 291318157 819510786 940703619 737020247 881231163 329420915 867520227 358264923 810423845 986168046 838481548 620895111 48153505 103761612 756809658 826117772 807670575 45464569 813871664 824218815 134847577 829702867 994427129 921175630 829760877 638471838 994957725 552703472 707049547 630014785 475835003 504048830 43486320 270674152 987323426 251698940 57004603 359253748 990319285 923898115 11084131 582656451 595099812 419776343 977087761 573887832 382875191 195525721 464065626 997596650 815006510 852702793 767905835 765418359 915144635 957868026 42551439 773106147 136525640 740116170 987861750 991606549 906812466 4889600 809489371 613342804 563671555 492530526 565209637 825574225 830339720 307635672 929280729 47076515 554603747 830956502 916334526 29683083 831107888 876853973 850495790 780642907 762019235 965188438 366157382 796932869 868781745 844295796 982432798 693991205 819924417 855188913 416258114 934093057 812855957 198692582 318746688 761061569 557622143 978562915 58136476 164951606 614786031 437546451 236664659 132540622 721572521 405039096 652902495 843805724 978251469 407153908 816922310 900650643 804706316 624037562 451765065 391428228 908069258 362490101 882771845 690755107 743740013 717683611 830869533 397941101 623045614 280583495 934861316 235173332 854619655 827997332 834338611 814927720 556790824 969789363 794334826 780271477 600617047 581937186 829277203 579729022 746410655 351777137 508549846 71951382 914482178 892560295 928648628 780498232 867809418 784260858 789736728 837292932 305161633 399910427 808274036 937291883 518052228 911381207 866653950 13368738 710402362 514026087 891478026 429132418 373061772 850749487 58038851 914010378 632705745 813721583 911280731 747183102 363638247 806074768 997644168 256933003 971950838 751363684 614750120 394085566 811220619 403915553 326629359 74212350 882352084 816846452 10264884 688605493 983549838 895557776 436290127 997108732 827482168 939326825 199533333 558651716 133348001 444696926 788495563 109688054 682180869 794807801 734538522 930851398 953728735 727923969 835713239 998242593 962584412 830193309 960884941 252238972 796063742 796890719 483768472 912197953 150589442 202490873 570114660 109939798 274422266 781058541 890047552 434208879 688214100 678649392 243811792 412779826 147942076 449660110 883012536 958342289 78310070 783337294 438232334 316895003 927763005 482897947 443702867 40764862 990555427 710772359 172839671 264096263 563569358 159097883 475024535 973494822 944924675 728651670 884944237 405817514 721868650 930354572 990811439 789976750 917705439 71972269 392809998 965775223 796102923 999880494 960393061 895253160 402782086 68117992 848786155 944901043 881980565 68983424 904029989 881146742 240070754 384752833 497474652 8589169 994210973 800949763 34848502 99441801 731023386 481868836 728932225 970167038 513396239 865897563 860463534 917021148 237441883 719183385 175727130 157340301 364266089 899306601 807622659 821061336 912733263 527556063 225626848 103807920 114676642 948916171 339716673 943721612 923033911 893896274 671010156 805351215 966331086 851630726 569116965 931466219 868738580 965332608 474505128 226316085 800891850 764319054 542912175 809175401 750712845 925073285 551669962 626274847 450312603 836945853 251894050 938441101 914895798 877791340 728981689 326658890 968942575 138545220 938243218 918408475 958753804 830998284 770941597 966773918 950082068 503919078 582121666 951352004 279742858 825007249 490849936 431665093 766783283 385747821 641765086 854884070 484035826 161966855 748584971 902048463 184129331 431539949 110418759 756810338 918008477 862048607 997655625 746567810 829461016 84825759 70300288 331647169 783330025 817345006 975767706 153578394 513955802 868779222 785656166 237537092 287488902 728136467 232475002 797544178 759055538 929418215 304208683 485155814 901315060 10369779 877889816 81055618 751502040 668074675 838332565 45751881 940242012 844834702 429053227 724041959 951675389 64057726 466275154 258219896 596122432 757899081 895671093 282489999 281649454 292795803 290804987 865290329 491790897 782395264 197729565 133392372 377212481 882049139 793504956 760805432 855793181 269316701 686928727 609732712 955501411 294189120 611202467 596800451 497128108 842260950 719514418 460094498 600556120 701953036 274192497 658566170 992571375 253246099 827448601 503686749 962979566 883019690 983530449 967510977 310590992 785936672 190109993 998154550 927438614 599514557 906699667 884170657 310513945 304981447 963755842 929123033 903241273 227288218 891691603 491047602 927714280 130112057 917286433 794087908 832836201 408576076 413382573 396785065 284644646 908689947 337024808 685139860 254898959 768498956 738229401 489770943 226343248 642642778 859237687 816045157 709788606 765662883 934382412 479751074 936158339 937752514 803856980 958281561 911883290 820319566 413570457 829824224 437344341 842740963 157359473 767442348 947845237 666273629 965571782 962658182 799388897 755288074 711520515 471386364 443030858 849292388 978538149 282012468 769131970 395102339 811382804 497707330 689626937 795551356 395817074 862248238 751927750 549578718 929272274 869894296 210879441 160257161 450653681 775291342 798058323 787763525 379692004 914478694 597293859 344635427 915929000 265506222 382947747 980752439 845847060 950544758 955406795 737958896 622336901 839769758 814306340 781359492 962988793 254725306 489485605 10569492 774063677 927492044 804557403 762582337 851990691 818992437 782646108 364845854 512851072 51058435 829332795 975730067 148004572 117183281 204614623 417682539 367483329 720308760 920373739 874588856 804067209 558372619 972298397 140857864 853372367 626098556 34652696 794557314 380224574 288387885 83235950 237320762 265138296 11539097 678530418 321673849 381261579 245970419 898111591 268682956 856374537 992233690 874181482 342327160 653492894 612715370 61690497 130070157 837670829 905261299 863284823 298615136 843081489 356476816 216191746 632897933 955288675 834781132 914356405 486404539 93175171 620643904 454907688 862536909 372253363 939393829 755785972 801265886 53931929 577805869 588493701 270679842 837197333 207480146 843732794 896329417 930800442 688695910 848371810 888380140 558285662 459193199 982963885 840762690 671568869 817518434 938472745 806621547 915639760 896428899 523225117 765642123 112483579 785120189 886462064 553169063 875844904 655239145 921869989 368476078 453451138 468940375 883072356 742531727 946324150 564976601 794855134 123481371 831019019 747067702 138001389 581182272 947948982 94579302 900280674 857356958 875150593 262845974 61976578 983361816 876462687 799842381 467197528 853895910 580333754 581601249 563470917 644057441 972865505 689929721 941413120 683706762 792466565 176102995 261088656 819880047 105913781 224530889 736540241 526336921 796383810 323821271 98449977 866251048 914803346 435717469 933399476 772430729 958515819 198189614 888010223 997330153 556705531 734501961 990653174 60984919 63880411 231176191 787944814 757291524 991263787 793194753 252390577 67757425 481851961 911528045 910411792 734105871 296144999 6499375 626151291 69242221 860985904 996826764 537281612 963263127 962747021 883726740 847190107 614054226 974198252 420623978 936703393 995671110 832001493 875111379 446113909 763209589 811867316 683879659 466198946 193482228 682976972 855690582 753066140 365952395 449865661 966083324 38657389 615424751 982611160 250758086 273732648 603163968 714352642 354307421 466489270 997898324 843477721 47927722 232555753 942253197 618211715 978745188 736912298 81652741 427114651 960448430 986628342 831762487 872743995 981139272 794548784 404658292 980869454 611283823 810609605 525243611 183019583 767695026 522843732 716981647 62365199 789398276 857029380 257598344 651400916 63240062 453467797 968176846 899955700 346485915 755822457 653753051 981457012 152042626 888408048 189194623 764505292 808847088 576204583 575209804 514679259 438405012 629301865 943491908 821259658 835347226 876625902 294705343 419297939 556551591 660514961 721323190 668197245 858964335 176223609 767526640 900947374 786616305 970300192 909807867 645558073 90609684 513578843 330357867 652400159 987488087 842445399 213579035 907826420 915567625 677937810 90550723 887579721 837489026 970163223 936661112 793734935 462447877 758224319 953773904 837778957 965088619 989306028 561511228 942293981 811940630 958181208 987302550 733119487 952696853 445096073 964953418 778063753 969933726 824952519 921002952 781052493 815594089 915701458 807053725 62122590 696636177 90761343 972611419 408392686 996737538 814813073 533264174 814873039 953854667 181343059 959638022 226385298 121608751 112782517 611009569 229434331 816531438 843372682 737020247 400653554 944920734 547035667 913120333 149302414 406560014 445052937 785427155 811273674 818897997 891116797 172888795 717527565 41027594 974311056 463021695 942842336 493709140 33874478 858166231 485869609 237965140 909308325 832408626 617425300 824867542 862151583 160857131 547278232 123355755 920721003 564858779 435676712 843020137 72120593 25219740 21564036 367678884 756868799 409745435 455207119 200941045 476800516 147018218 248492850 162684539 735619547 838593016 448626634 801028692 124123659 893435297 381170621 970520741 957813576 530000209 270694520 955931085 825345841 844650884 836666165 934314323 503116850 211245772 942159102 825924172 444201006 107074185 213455693 173788302 982737076 885444870 730565711 229008995 903305645 777546442 482044927 894625052 954470050 848009177 396459125 932090665 162987799 955411349 242551348 827797436 891334165 815004116 788883476 106713470 307144355 74697441 780614574 356633257 742327024 330005201 974404236 884773668 896039872 827543816 882657528 745073897 781279104 870892123 785667180 878672407 976363454 554062322 760570756 323614797 892600028 779487183 545364546 993355630 724273626 998603568 857244898 51815770 768036107 317264290 956619933 971743770 933756228 865568266 345667395 196542838 353361144 941570701 842934670 758244936 617926372 473408226 710126834 662956246 522150121 422149613 890019667 909863396 597051182 336630883 831197989 924725501 493248402 166458013 503636154 351706541 251100100 893676497 718724790 942737585 379016303 931364428 409974784 130924108 790097748 899622483 8431874 809859629 783932874 77009234 771538025 66500629 888335171 671262344 384327960 302102318 569773030 500569531 812264452 772777631 577865839 886984117 28614801 999618412 858567372 434593765 788932448 825369307 245514144 524072581 654318202 806690517 669983420 955052846 976113078 951961739 401009487 262366420 959727546 464007376 789513346 997153330 954014052 275888198 437271289 122467681 954637758 934622701 964676621 817451820 19999028 769739995 461004102 819716517 836516838 45781079 589482291 64330539 948173038 956790269 935547896 332395837 962776577 870432387 797460327 851068848 938387312 821308949 945024135 830850411 830511686 909847591 909587401 822646927 946572417 796035845 457848217 308157222 967515902 492629928 848909499 414731579 902961931 975426800 339988160 874057842 861527331 755669272 70108087 954561660 74089435 128825285 611418543 352302368 999756740 779217316 484347309 971977031 917953019 926430330 899609165 183497193 737020247 409112501 415328148 223132405 952011934 983117957 693947030 885586533 33355297 604402380 531955636 910198290 350727242 385350066 283663958 352531914 308567871 803000310 808457803 284567980 178228555 685676036 500103185 539776309 969639954 901804917 762660435 167751852 994178027 780233455 424102277 931541836 996203447 68749587 120532873 958050618 794567653 977942151 641460770 784269604 949387369 881764953 931112616 826918268 304292689 678170190 695638732 837658140 787713337 871205131 859024067 846905680 773366041 814678669 106399 924255116 3098492 906336280 133053922 738848727 603165208 138266952 29065707 990176321 764298075 975189504 411558689 416359766 139370604 384094249 306951692 773495000 810647108 845173405 638993550 771507812 564815566 757984232 688456655 584927180 640070549 388654960 765855279 679614537 212912168 192113537 815300721 885198219 957525754 644698117 886724158 749392978 904652767 237550200 981354154 646886156 802012096 923531107 198089475 981856406 806499322 798468772 245755050 378601060 349915361 863210596 35122044 809109162 316963676 298862947 761826421 958471004 360338272 333871301 798580333 804943169 359371362 383965482 613126606 318435107 773360940 288562469 380826329 997482525 347174218 933265842 123242502 27374087 737042538 559190101 57391636 517130141 977196460 764557645 774236310 924913768 665766558 63713048 4227569 857794625 201662284 844254796 389416059 781085599 751440235 19578451 988294310 797390172 450864186 148497491 529404374 849750772 310769982 721433952 753345923 385030490 998445255 861663678 755044948 882350813 449247196 81236695 318602765 100269565 941834800 845953160 655708422 775123706 991201357 615388841 434099574 717244891 735896782 59165029 557625714 30559132 817436234 825184393 805246030 765608798 871259803 880833305 453375930 957369920 639380462 659143977 121663315 919359668 725253526 839525652 921252840 949169263 972167668 616616800 293701032 736800238 959927031 786053529 936491483 738900086 433792861 298598693 848051588 961522381 873223500 842409955 896978601 815342421 930682997 203748447 887639234 512675986 845713627 769871072 785835588 350906533 637827639 843109488 827258791 226771587 786761678 641886629 997341976 573135839 384753649 802264811 762988347 266187442 123720398 773251603 964341676 901554317 983584946 688043036 832971011 183475724 351725187 957920229 278724643 933625612 859276695 706294700 52287653 310281847 937042656 761316092 556483751 919098240 76885860 871986010 811420715 607100960 489786600 870969036 828530729 726111848 748875240 177212806 794979384 660672433 160637887 778964656 931659922 591817006 121622802 880254137 817638470 694908839 816921493 579442091 670139952 807108911 795947952 391516221 978645878 462522235 28588119 766712984 850888424 570157510 674796155 921138762 593104240 797004746 601632506 142935611 872898661 960186187 741392622 617573230 178616081 448747509 95166543 877726623 211441097 607172929 501188748 406964779 500282416 852325652 967937715 632613756 845541485 915621922 784522019 848986626 32750723 844276259 999826220 354779819 270636647 966026942 414093270 117722432 810452838 539282652 988897140 842226401 762279726 723282810 762269707 959589398 763515774 926109845 800195300 436729337 869016768 616204561 898506007 877261812 366828930 940884898 826966938 243700811 22860028 889209766 137762285 775438757 862227464 825644304 192116368 193549192 866192278 982050696 627760717 987734451 988492518 964139249 759491003 276278835 278560404 585322421 966494144 984359340 762035338 880121608 980757803 891653928 866759091 16021315 975617397 854145060 993437642 903073394 988368293 989517774 19785427 426653609 375364562 293612798 909581972 881883924 921509712 6531977 394123432 961080447 239889864 895320644 498142383 841104629 849791408 511138973 2888637 878489682 981401098 897582587 27367344 833654409 380948098 809939240 422673623 829328707 561250087 878994672 796374022 244166980 766069460 583163649 72221578 888720045 560949627 837350244 89708141 778396792 798411594 86511406 882989402 343478684 273956986 983834135 553495446 841213136 32390018 876698623 718755943 819090295 941691195 885012561 797192774 760351395 824021622 864828187 943126377 321638536 842865039 236310035 817162850 502898889 927399981 721461551 387566763 843111728 47438156 893258245 854909752 846295518 984330708 687582066 35199008 731050485 107832800 857681717 848169628 784172355 692164906 770685308 863040425 574164282 223053726 749148346 135172453 604497372 135616963 440944027 385521854 614605539 302952390 993226915 945330227 994541612 819901617 769701877 76844928 625839665 292257846 688266717 831009169 211880925 862957174 848845192 831527793 907107424 379644572 999819260 565163512 942146544 995091211 898645768 100589446 182285077 876983457 905881216 677282730 195618983 805139061 194381734 944417863 31794993 453180383 917398267 793490696 228634832 657760102 225313162 50669131 877458204 830743948 841884568 807927383 795072387 931125880 750559008 886248133 787801948 845229554 753858078 78239786 650208375 353237715 834461282 971337811 742368089 997805743 788393457 607974439 398126779 137939728 394870614 835264453 125013557 817399638 162738158 583458539 382586614 796442745 943114076 744931235 591238390 54741674 870291765 830865116 26474143 405475432 667489429 948656484 595055175 316084077 761700027 473334730 772676772 240689980 285513411 911798459 294671797 949852310 221939826 836206064 658824443 866332074 985114692 913685863 718746397 863630772 127063931 889019841 973845464 963922152 984493236 936387304 946642577 465751162 840503061 882937335 801105358 864149007 905433052 920663962 477799553 917411938 859146935 355289716 976555193 645307910 160627739 446987685 755992344 970353127 446171479 41949252 465107165 528035638 892808023 286942537 40995266 807925783 132075244 999560349 910805396 924310499 713334223 999189755 896626150 750923214 442137936 81837998 929091906 859203434 954694868 839338131 900405401 651770222 494972750 870296303 909947457 898085670 40851794 49005763 630275511 958423392 967966007 424606258 37520730 739009224 930754588 772957243 953325019 581448314 511092250 31155714 55706479 927883783 906826334 802303451 849480140 826845593 819768777 112554100 927655529 125988868 761250593 820758915 809462523 178214686 636354926 910257519 356600667 756448720 857992656 589514175 476972399 53939386 150067158 831662796 745164833 964673531 910092746 703802517 924604002 907880269 766559132 761153304 972297184 816006999 942128204 371912589 753195617 750255603 93799003 496942190 788713344 505780052 741825080 915432993 285780519 156909880 354944446 170750405 297235517 229637312 831723200 577795223 193213986 871583410 441280312 821852954 828698235 820644538 597620855 806178128 484458916 876323488 677662730 518096928 467716029 3508040 187688134 634545242 942313184 896911481 811023134 942149497 738254160 577513991 935226658 763544114 353450762 349352713 789041815 805961379 996743408 528591795 836144024 493821003 777418018 749017304 338869530 665766437 933508550 885171664 967284341 931084954 382832190 861587225 286837771 476069084 788838243 562907021 643574335 624088887 834518783 311745811 466452178 795028817 227998557 792951908 349737802 925348503 969384761 811696250 953448814 911521338 797102686 771223810 469456178 750500285 822446012 386599274 538499394 784665292 77617326 344807301 737733271 101836522 935363120 869731317 575111593 966576832 791390611 979232256 518389305 894471939 273457007 20458995 57483196 882948683 775948075 106044938 60666579 807271898 981683215 631357655 221443609 475889443 571985295 570882126 836103601 1371538 348966643 799842220 54614480 596388206 368414464 988940582 602118057 903030222 565316344 864350544 156104392 52266396 899476698 90257352 896582557 788227638 211207888 428501193 990765646 750847467 859299824 783117400 892192358 917918392 244603727 267741682 767783314 340213484 368180354 324231233 746996739 885061997 408554195 904240439 976099592 396768933 493113794 435432238 157802853 528742105 826935625 816974107 332166244 241985915 800744854 630586160 757640706 834488669 968650653 166444464 959532046 776088712 743649965 977849043 979005389 503461903 857551950 680947557 801609165 868520523 815132782 157050432 862869983 936201166 685867856 766565660 145868190 918928522 861519776 807939565 141529932 844090055 743604600 485869968 784719137 982583415 917104524 812208579 899441395 787142985 742761975 975409302 326474458 437196539 784728408 164963782 630186358 995734941 893594359 30082097 880021246 996137536 828977819 758430557 182421395 959487443 746781257 758843651 801516280 916533528 748017297 330983976 7448152 578004656 999789596 895587196 574130444 314930421 756604217 921746859 181944785 742786309 771122823 166147206 742316260 572319790 825035655 520226070 420105518 311639139 789161326 957232411 719474543 759446531 857187167 336622055 30023370 220789374 956868773 794283472 611602159 581440796 774974818 673413362 46314424 194399291 673603506 867131143 615530949 212297850 830615648 449104688 339915919 720012167 808338169 764347954 898753126 370264358 857329159 13961312 413647607 385110393 318646117 63900136 738487657 307801014 938719342 660780601 655536630 903920712 234879538 968811861 97633288 613484179 832417531 331555181 882013186 948047484 991975841 918576519 17986402 997181405 918228288 555463085 162757791 975441600 522212142 28947181 402211209 819939477 954311092 555707977 991089454 529374094 755774502 589291427 821732474 382907771 188971635 591110664 532429073 801455254 989096628 943939826 361515181 30594244 755854199 649244076 899276329 906133025 996190822 94076764 81892474 819055370 485383397 781061452 9192986 758501534 962192252 825830031 902286724 992046700 99496747 633836678 370363802 579826485 86715590 523866697 644217301 561655749 866577535 652442083 948758913 753850056 88962172 809859759 999811050 721430703 990013133 679948737 175439172 341956107 866903727 841997951 838591098 942827012 15084986 985885526 937349092 411157308 934632628 663901571 944910033 19943240 62110629 815923695 770448889 649002591 872464605 746865364 853004117 470028234 4152688 927651534 227155282 776174544 748921405 368667349 873307026 759819330 967938979 160698585 634545522 513813153 402353438 815419117 15613039 938393302 685599708 876602752 647469037 860268676 138487554 783811219 423725245 668725357 356709545 572430865 417858195 295490298 677675725 791692955 479098691 214111693 800037341 817139949 930270292 756600378 925466427 795132835 623845715 178146978 143470228 173824399 817991610 989818764 307305881 803769338 491884255 974106051 803506752 849407093 554430641 361382700 574829273 829101137 748378755 443411041 159241367 986303728 271372223 331497616 486428105 219905727 737064959 813848486 526562769 810137027 943293699 884986820 808451772 382783913 788064854 987117181 457334610 145958967 174624768 762648616 21915827 629224474 967288160 132670199 854882486 853109040 910886501 973311318 738430123 560349334 44420822 488025463 991784015 964509652 965563910 777741809 879735455 912452170 994431513 893722454 966864748 483353897 847166069 933651937 136536136 977430599 901131129 780766216 745311374 961695223 166893076 948205622 759449669 17159323 633365531 579295076 508945859 482474864 442988164 896264138 286061850 741885285 882399932 844292677 996133739 227905107 127215776 397155478 206717669 214673188 363566550 832451872 906190012 800731224 145429485 735813319 412207741 807670011 967143798 991135054 903942732 634346440 339117836 981659300 657548773 899257147 355926879 986812533 886353739 316442063 641877378 764256132 885818985 221844636 767922497 719477428 203019692 64675746 940430146 672596775 743147943 881992118 473578219 938229749 385071031 538349333 564246598 109622862 829000459 328158073 239106157 951812446 992231208 865681135 141041876 924576827 756597506 629179527 958086112 297907138 800110235 367135755 841792797 841568757 815437488 144025289 885342609 505731027 239535801 487236266 880462399 210643931 838914927 830450698 960327609 883001094 866232414 855675757 974718837 602218951 668198272 622891743 372554381 261439806 233626299 846153523 746164267 189650477 898035769 862269430 833333691 515111033 771874067 477354644 466538504 614741694 810251772 943472979 159526871 434365771 716673511 517102331 731964257 139120117 807550052 807474073 97181682 934836170 44419977 366903681 798215661 78597646 790249180 965622886 953154992 725354395 751535201 741971452 705930861 51755873 942835565 235338935 919484630 423589905 790279838 621771729 74573350 797105318 980022091 843159285 119852132 752049812 937503022 31394942 774658047 814514863 859335013 3580905 490872488 688732019 626597470 937345600 915940025 300082294 965904390 830313586 895145598 967529394 440910679 836648451 313837205 111378740 425590320 264546003 809785267 27989816 140370436 279676883 240465709 895001652 599764252 876225961 998513649 151701609 506117647 59020846 871669150 172942732 781060095 753600058 737816455 570902097 893353000 867531148 622541089 325156111 744450241 947501078 39827704 346698075 991309432 875670814 918065325 492254228 730149899 384889664 575050475 934827345 456199282 992181110 932479217 889436616 435101588 212825331 515248220 256729491 468782154 423512212 858345588 637239226 861655713 814834838 768349946 823094292 258758319 210383567 826463855 818196088 974188769 210730262 292420287 45485789 754281957 762184451 945396842 921431625 71784211 162908416 173183890 951616454 244231905 854904623 207588424 797232381 141924739 862797949 845216026 927282440 865739953 783398495 991822173 757027394 339917364 896150552 816993508 847058615 865619312 302468581 556030272 794725110 977299429 248021566 982302712 217646065 157360796 181524947 795366181 734420854 320607088 761610399 835117289 895245916 743190353 42975671 664922164 887391595 824430222 909295286 107569645 710450527 341314173 303899300 845064327 970608427 756694546 329657798 141374177 884377792 783002765 84619963 443231056 135254764 860727311 277405523 111840261 843534191 241311917 780973029 652347033 854355998 840616661 135539203 518801939 358274755 812350422 209407442 808947203 669456613 816635541 774403469 92462249 658994091 628534454 833820814 115994311 706421476 609900324 760161742 2379698 206219900 601173442 846352971 544096471 915458385 362757381 832506879 72817738 768591399 316536060 483202519 127725147 218983013 875546050 629834196 18210594 628816209 761200122 909582597 654110241 779067557 827977147 790179119 984447567 570244426 561503023 896070429 63137335 438879620 823063558 925936490 772187829 505554030 720290708 802636842 100669697 751538138 65213146 865339868 191973474 143970728 929786549 461956722 811317108 197715986 941911674 123705895 690270211 969071850 30503294 435382459 104241655 796538692 786639397 606908616 141584860 951694017 920818475 959923124 605144890 68748895 784966236 786716684 953717067 928863729 979025632 848883431 506426076 632766123 697129130 498794849 843949212 422297730 921747415 897428071 808362293 44587194 887030805 924388738 666918934 985853903 558810724 242083023 772406783 978969278 145868874 408167981 93819275 744994098 274622869 694716516 176550314 998924760 268695209 914828218 985241957 313863010 822446495 760109542 578588495 802579166 863965703 883497154 65741409 966414389 786588556 289443343 633584864 667080529 418758687 866790623 241328503 955876794 61534840 650338838 767830101 901265755 839159005 986157788 819833669 509024672 286215245 485136325 114058805 378843991 903460539 453134186 691436105 793256665 259903639 851462408 275693217 681964359 904498607 987477657 824963445 127792057 297403301 827540294 871473161 765190653 740264735 740378883 879834970 281307465 475795017 196867986 864776025 82539411 695080906 646455329 500732773 984396424 121468610 964401916 834756284 851718860 989863984 565361429 953021583 807058375 577768507 980061029 907254757 830980816 273626945 844086932 934843796 302108315 752208743 45338341 879568897 807310904 162267624 867497560 752959200 771081431 818594689 760871007 818387650 887089984 13529535 288383004 442045745 366752987 131985062 978255032 486925832 15759484 816392540 623477086 895875702 829166541 949782983 810250398 990655244 328538096 772166175 316537315 447965307 492129813 937462496 623116732 216484934 235099943 579692183 564957744 902409195 556361036 625836137 428569261 530574146 285145893 350612346 724759060 89004816 824505270 903415164 515229893 959434632 562806691 922413202 974630055 753155844 745051043 830162785 778698791 912958434 761598532 995303995 890303532 947678853 963320933 774438454 896074074 798206243 862978209 537456612 970150475 947932520 719136199 6847868 629058050 958735564 908748471 182583276 787957481 370333948 654009994 758451468 18155955 972433526 267121845 281529457 752336231 954094246 987277798 430912055 866308013 968351727 271625317 903350681 837275177 874932102 671374006 856629659 907428634 178008132 805366443 649347806 663760725 826744675 959552217 423171507 943566841 691998669 720015034 386526905 600428517 971687867 996460927 808648487 78248261 850312025 768904323 36604575 360991117 977290359 771575151 280781190 153398909 364218316 545593327 936026933 970446298 25182747 828455976 765436583 949828487 888932969 855917038 930079172 991549263 799172491 963099793 939436374 752205620 877685268 239702835 488165799 783326004 859764855 335868189 288028159 875705656 770643910 664626480 911571665 978024944 326379712 755411530 256301662 446625347 778148440 762562632 815406153 895688025 799917599 453742304 539900367 777674022 306330128 530575794 788592328 815156421 374357539 938843757 723232794 244723377 418450888 940459292 662011716 730529579 817554442 564796706 295917476 128159463 918353549 20799211 774916399 765985708 762419547 271828314 360755115 797153764 794434848 641247876 359195959 913277797 873668041 966214956 591567954 162644411 92377215 505997096 941910229 874422141 737020247 151151572 463535699 797486859 923169809 909956131 812671109 96785134 36171201 956086087 787726644 460383789 3901463 728805155 764708610 841929676 797343605 376661434 237778514 955822134 684516346 244898567 500752194 822951151 239631234 986332660 416135841 886301870 879234849 983716943 1990245 751864133 40238271 186727134 896459303 988543679 989477455 81113518 817124406 148694891 541664927 563986866 422723225 14293959 623838467 828136254 914300804 877699470 211799645 59549456 357143419 145605697 44532730 72258894 273251154 964050637 780059299 881919856 658313565 817576482 888772287 941671394 422414537 731654148 970335785 936927442 40139991 235081963 242075178 978137842 933923904 999450622 272339524 828838624 984929343 51668000 486567705 209822286 248862457 483992201 864840221 969367296 787267040 9976562 497756503 41292981 270359927 9370771 750592629 565787803 937444476 803742896 199399117 879450875 933774015 130248737 397980984 861795611 757001899 999233937 805598502 761414566 610790764 917551569 752873318 925886337 380374400 197399828 501879027 956442414 855715909 31793936 98769872 872320341 154658468 77041265 290085533 893819269 762057973 925332009 888017661 958626840 843910213 126653754 366191641 165421693 718617398 362564214 951327955 388012676 914690652 815886151 536186545 808500437 623285524 824737537 438131202 306905242 255555462 759835817 21612455 911653224 795511474 808105692 846632767 12657655 770566792 404515703 64328340 914341942 223329205 572328837 985443194 741923691 638530202 884151979 581541132 934782262 180081301 834315735 630083930 291365655 810726777 459126078 809744791 959521813 506456623 893390112 729176976 348005966 767234461 314056765 479714744 824158954 634760808 989032807 544722749 996922922 792556101 859476202 335864274 985183132 945533209 530094978 594811224 880127399 994520784 822743766 308994633 499746691 913634741 766404647 898155477 149886902 80032 562765778 648581835 761892114 817094422 197586776 309628818 395339363 917283660 898606936 194054940 928703635 304856951 927287352 865460768 487571326 185307619 934327236 44175027 35524100 209783277 622618848 889755002 249293410 335624902 416374964 517566548 490089196 431155070 802566994 903007509 358504573 56187238 809323075 748075138 59436278 658875456 972610201 924367413 60599148 934464251 843038553 807894905 743267571 431872149 977152809 138251845 979298138 214914491 953780825 751158272 737783530 946264213 422003238 830647265 577074099 474031785 484871980 911671327 312286242 576727853 200319404 664522118 955974197 754949253 540679843 454321502 162275537 294312516 434743476 886856588 846928641 769503022 242187235 630455511 843047673 741529840 746682775 102481016 962608896 820158276 995360264 577186987 821985491 818444430 758915755 65616211 410192838 826306263 527915478 79555259 749180794 342262500 960619273 750093865 384046548 779184799 213580860 543212117 182013199 607052241 205297452 979543941 145673785 592514603 766123017 859347701 232726109 296804517 53030035 740508602 264907071 609527648 763410136 12690060 362198108 981864356 979048116 516307581 572332193 922843228 291326650 778049967 852660009 203772783 844279786 82840659 373466757 990196525 111800475 113983469 888479884 748266027 821703409 100861038 929778827 840585215 777214259 424166638 893952852 886954911 837806203 93165097 984550464 252411503 383498825 89794718 942676409 182354260 31663505 852778852 481974652 979661382 642759685 461119497 311746639 491553432 122532496 815521506 873925234 807243376 94437956 900002211 49113623 848817025 15346225 487627816 51645262 360166629 107940038 781299019 688458643 941304409 605704207 417536704 967555625 165606254 64274155 564311463 144903286 936575318 159351092 140393782 412412782 980836361 957499915 553230442 879111882 970751509 857758273 921447875 972607295 28294327 979468829 755681327 798719536 654454780 306740867 8833421 956326733 745193914 831442673 779430766 696069972 822663426 747676963 999115363 996318576 773110776 893172955 670029947 9804941 846367284 120942447 929333162 13213175 795401208 198774910 717273754 915346484 621864977 740057575 320835149 832553619 840652779 67793171 59833467 23618470 706587503 59181141 869467554 766399033 859045661 730571090 563770567 825307132 922700422 155203272 845997566 743334801 814871703 788443173 892329021 621249032 306084000 813167789 775830955 198735081 326961795 900779486 685985469 874133254 875872105 582122087 245115658 746003273 927679492 580568926 72345593 965104874 533268727 898126897 616619993 193659432 454750035 139829638 846581508 604667772 429814564 760794026 598269763 614203712 233460293 911629595 761737637 845707717 712505093 445176515 447330138 922119989 142345614 61533775 855269972 903444354 848311691 887353942 651819073 901877469 417358269 369130228 897995479 339887408 924364433 420251606 78744591 602103481 675757636 752616816 261805182 405864780 982928731 187644650 921754127 311770652 802456376 395160400 861437610 834264915 68109393 680306316 866373092 208562370 765295139 810618008 782986336 165664660 822776131 25367328 880239011 763793928 448532174 96148829 567484133 871715056 569259341 850390282 50711247 894144431 832278060 574795714 121938215 425007516 133695426 849741573 473392370 262031493 192722005 961415964 946818530 759022881 281860141 848738488 987026472 271204457 593818282 909593875 843894351 455245745 41974028 868046387 611130564 788956732 258081100 914460258 418069372 131899618 979830676 737325065 992701997 812204000 580401476 323414995 14769116 949198345 92028474 985720308 824969506 779970985 877731870 142501376 879748083 792362257 478271873 570912476 942998203 836633441 163659837 989237693 872324612 225568193 924132589 902564204 557052569 347512130 328117061 167948206 896212585 950247375 761649251 954478446 802439798 770449201 835002823 795016230 907949811 234950402 929439211 750265356 22192088 42106048 909867675 406184960 960297281 823795071 410535639 158242080 530573113 517483362 46866065 590957626 914805166 782735824 871909358 902610385 821632772 907317074 648858336 283554047 658108692 647288023 521535477 875721373 76705278 464531513 939938944 566009919 644608216 757384110 826430079 577228254 887247198 862601665 51867304 832624533 760264080 984252057 449123321 281270531 64829602 852587198 695137920 875790168 904832081 5865746 860171324 836598591 258002975 870056227 943101024 976027915 981197520 85407708 424018355 675080949 836510894 274293048 771394654 542219360 914852644 329502741 246293261 556180239 101223828 15930722 313859469 241293449 490237630 20138164 974788014 743464715 204158150 74361518 840416843 871937702 893301031 801757928 482101308 54964938 891792599 748967671 502943826 766586970 910822854 699162166 867288672 868622409 942279620 5207180 797129088 475614444 290768444 70417024 244066343 848040644 961329542 757635492 77707316 119425995 967132986 999341298 302042016 337761790 940247551 977836667 705237357 63835545 865942125 633789968 463135489 506252771 343660566 757531848 4535347 101254921 844434214 362596526 816253513 493888036 393995112 672007835 105277833 431775182 947124176 626294018 279548539 910982523 143303977 199715485 374588047 635472393 525766945 559341003 870887697 694558512 259674055 829526719 989881499 522211066 155936419 86757841 758474089 860350360 841433733 304655419 719109593 810793422 363843900 758782584 446674769 823570354 861310156 485323897 991741647 857349249 6224590 390113685 371715885 883242465 877226868 635627093 818212117 395764537 567645979 401177588 769153889 889280418 208472519 537566870 288623034 335993873 967278624 958742366 221954479 18231317 858748871 188662412 874720626 752344074 781657395 739357385 147439848 735708814 752048981 784120355 114410605 603280394 820084964 440208755 876804544 797379504 933525807 847348935 886556696 931122689 407705332 60226177 792424968 960016717 941579879 336605365 752128059 491120883 414467138 894606568 9637834 909051159 785417833 780258896 828708168 516478147 68495507 580218773 270425729 597626774 764184096 157135734 750963815 625032740 863888263 765695376 302370268 516566802 864567271 904422760 801059717 626570533 503110180 571098795 178805840 655756854 9433874 590002649 924153460 809672494 189849636 679881406 979330352 962818562 461817471 354707201 784389830 407878380 784864641 378915994 473945763 36212325 809556335 747282143 80504535 798426081 827763725 756174275 940982077 394523396 735871135 282827780 451749648 204101033 875132132 415252684 147182401 85115559 535538332 613453693 117756720 764244882 935350125 160480017 993644513 880988936 936532708 466043848 833614992 317581451 652059823 536599171 790091412 209378204 830424286 703352687 794981101 134605712 37430677 792316777 724714519 366106945 461069692 310597071 753738422 106379775 739173205 919324131 339104805 920015350 776651153 813398687 751370161 255768320 554519285 566143629 723713059 159603493 917883455 238168717 875961809 939254265 668567697 797245904 389432966 228737179 783851039 877057212 974012091 984589340 746145032 747650305 977208736 581996456 678354276 236900500 551230112 829467513 98009569 859616816 931577036 210767713 893479541 509505108 973849085 404591983 122989794 444526758 560930427 808824780 940047531 838370791 243085930 403379211 688736841 872484261 981889662 105700008 760209681 828505285 598954735 124812426 408801112 951725560 883924970 771901100 265539701 461120750 969865495 751202553 535403820 871912373 412389702 926216901 617175838 411805094 109850992 660316920 841951800 604348488 40456322 582854327 417429589 681090211 424688090 983461317 424541462 333877804 94804607 169364365 455057938 756743154 213115125 528194158 952655970 887210461 390102773 819938989 469291877 947416701 779834586 723670008 701090974 480922272 229278505 439236996 646141421 101153663 184930429 492284373 919599771 91761637 631901630 927618903 789147536 326174990 7144598 713800463 837059296 351256204 75348142 914056398 744594870 754381340 883532910 770797741 766425998 832850178 662047321 739399152 835639063 743298796 889223371 314479867 922166684 765111779 507807152 341036266 820376383 339188288 968509582 941990105 973976967 811484856 996545294 48960988 989760275 368917956 530042695 970313038 995062071 690789206 747922789 916223474 969131745 113525411 507960376 386476966 393140739 451016407 642493973 52739512 556351145 905010355 328287217 985134032 305638533 748937388 791211913 896449605 449342774 251560364 105864818 770180370 961726328 44498966 817967305 781059880 139020115 900120670 985222537 996917191 940148410 330296697 777568075 496461254 773107789 326886282 99070196 24792791 274861243 742068093 917290819 868996461 885879017 264430776 367311468 595001931 965603777 727815186 845848367 371236363 701691613 962860725 907631861 791298307 776833649 469508017 51552452 630972882 914306646 501395631 201048194 811934901 677448186 446756574 884340456 817864773 374296540 988284937 136129519 892214087 513257641 882772070 799884731 804370369 337426210 633883603 282196474 239366115 788002690 862451696 648445147 786636825 819078803 561619661 271020272 409247730 841221474 963206130 856057517 776719399 260498058 823736842 831728173 29633253 663526812 491385675 344877340 766061018 19156278 856171967 973130269 765920856 323632883 945235337 677900283 700149995 360233482 212619614 318857809 715700123 934128627 165430331 879841691 104076997 843008177 966339228 797464780 943758548 856686750 618843806 945820046 553370646 760748013 869931146 960847146 572981700 665741117 893278263 953664658 6196150 970438234 308667218 991554785 740506102 712905625 873907454 818245063 739658522 798644935 433360067 60088277 400737861 963294258 394539629 464438874 608117559 841280948 987185328 964805938 877718628 641273808 765036092 835031053 795451072 538140008 719529849 625179910 58139202 516444487 946696684 987595249 404345645 18437984 958113429 333007474 862678637 843871049 223628380 737539328 567438568 858448833 896450597 872546229 828376238 894159643 796103481 411156663 832661316 859156793 805621934 926337212 249332319 974207753 683529533 344161967 150747537 41980190 906150801 803776919 860500632 916410712 556553531 391123097 158941313 530095022 195396206 827667129 839912060 836887622 866317613 821665528 288442716 407424730 663752600 818036501 939827674 939707559 151999778 566701737 931330758 959811933 976350730 201722905 683946757 262592373 814712492 466132012 945000440 776562766 988701815 561505329 238168928 550284576 952789587 281667081 904130520 923999394 864763396 2854903 780686901 907408197 801824991 811769885 991204930 24363851 360390711 359851776 927063672 475934926 769886962 210883162 649339553 852638219 959395358 929774722 157353724 787574180 745335944 643777352 350748604 845670805 139415110 825732009 889565166 480620002 818108777 926122854 164482595 890975460 416724782 742392740 880329225 127275340 921803610 764128473 852037077 906714320 818168778 866562845 813856548 878686103 489627177 985478246 821057431 749881058 874496031 27798393 841296570 975678695 722999973 906207505 474662848 992431462 393352054 341966616 417149189 758157866 925886798 660531559 700379923 795671614 854804767 919977423 409759796 878155346 919224388 926760980 790340636 704839936 853691510 372938713 78546035 633909513 758287876 131807486 969495319 173355233 737695809 533179078 224949030 747512406 181725803 279851873 120955264 203332524 889051878 410444802 587536626 335094833 762956041 782945980 777606193 80583532 754771059 409085060 768011613 75694269 977450549 619622890 849186915 960411448 79337999 952507778 813537403 133653878 987397534 829650033 843987971 990995563 852644887 327553415 922474673 908298334 623878871 546991254 841749364 63751362 850170573 857026901 614001262 694820047 98633857 971316684 928283416 476051045 631212116 794981012 957907716 803721813 705154725 405832143 513602072 756217748 937185657 297346286 830257826 965395181 789965089 246676100 617841012 996258454 737020247 654256936 937446029 616243019 388751510 706197863 751732978 746438372 976822563 82679196 967235034 920195219 756525811 186710267 678019914 913101731 966487647 195111256 569030987 981486427 506607649 872223706 918416478 902084641 902100306 996391815 169280886 678520938 915597299 462604593 807125615 971123492 995096426 764362907 633316395 350351735 925050378 308018709 678415378 819352914 740976695 738627402 186619923 134367969 953401961 785071964 855488025 697315371 870740405 155981116 217825165 449357084 741477915 44417930 711443835 890067959 889418036 772709416 966918693 782687910 270149627 23757266 77770719 623285323 57630389 805630704 786784679 603204720 947599691 953253462 910416984 546829693 748784916 756388905 295212247 861191876 108382046 26110624 154908978 814627357 793711727 864718338 228188711 522925038 372077522 302781942 740200914 483856023 759905575 855498108 613759836 518921087 860330333 876725401 397035664 700183549 862910653 866565869 972103766 804068559 791536639 864473850 744794508 916385589 724197864 187071042 175279470 174655489 848245695 244744016 475881472 870446854 411690285 902241660 548917860 874628476 12640550 816257184 481048829 385168488 593332599 715456986 834607706 771941863 208177082 774004337 676972824 974812432 861818273 865849831 965162740 781641002 872414620 978596752 681816478 795763523 996430991 968475914 914625528 262628142 807031597 893168906 840705902 767504629 943470377 12186901 609866812 178836429 924000823 728753162 927982722 902835507 411025426 875902006 455991482 205328801 453178167 842002728 607134720 936853728 938394044 666484277 700780811 705595457 684255644 936679199 849687871 729231990 576041690 930266814 230437575 973725452 856308349 906916585 900067357 857480336 586669856 984412168 482576161 903496029 927452659 573063614 902658615 716788324 800048054 971704820 82245554 879873276 46107145 102991940 987906993 347503630 343835527 372979755 42301621 890002385 834966757 843531718 547663884 805551205 728737374 693814827 848738342 977042165 767024562 132142642 765361744 899777744 868353373 872603256 810047900 127890099 310234609 863435533 855214663 406384341 53807496 162493555 274281291 947837216 939751018 413891974 898618985 49540800 761420618 842216136 809477559 489820448 569032747 979038432 373625167 524405692 340686787 8074752 108871393 846469520 550161207 890503021 179046214 861907050 439965576 924712491 426846372 773294186 778612294 753972951 930050776 368517051 333811811 133772517 796534980 58064332 968407493 922499662 889364488 681418424 4923898 761440965 578214537 747964778 876223490 186835188 639120859 587677902 915979718 819384976 963947855 822726871 562376949 469295930 786637840 15114382 325721587 670788506 875780295 694950950 97578865 46419963 540975408 110175047 661792832 675782779 398266688 8579350 257557588 737020247 72712871 238836596 46937107 930897673 180981448 13935430 594946051 730815253 794966592 967515872 388636689 790910110 350438349 787144627 814370668 621324467 207403515 772382931 893386960 899588440 982562233 973717733 902441251 321885626 905199779 554606497 456855951 940185116 585960224 497279026 101450513 992910611 799096237 400931949 627392597 553218944 97809119 345066882 747239223 100331150 166260135 694793221 661740918 875211483 131263674 792489580 817479269 884669258 209762977 12644136 263569647 451853283 607432901 218432140 535183389 737905369 571829620 837382809 925339316 840800146 794000336 994379710 89359714 839027306 623166440 683690573 835432443 54029932 767272972 206626040 823688883 621078504 987888648 816101334 958831431 526661201 658644597 962920706 124999045 103920144 365276592 512144051 964276518 766627464 825936127 847003443 286253365 643708521 899145414 927417968 876395103 505504271 212529109 330331482 168347626 797673486 913216602 605353457 209847268 176641079 841382281 475597432 999342366 916663926 791681686 434360580 89189924 803837216 761530904 515857877 731542876 965626680 599836503 743531088 500122113 812872897 509692892 156384847 42853015 176825838 603029456 745120698 762611883 743219956 348300410 410294159 897881894 512384001 384770412 511839705 77982077 90793004 734990549 403442703 554050378 380254797 744697978 295775689 751317832 783432024 784502441 48044776 852852522 798774036 868239136 937802254 854424775 958035569 259455108 753627736 85481274 812444172 445521634 194618826 941259924 620626626 855850215 750350863 998740251 759547349 219975301 993553928 773001657 332526014 879003366 894808743 456518243 14398609 656629842 990274748 630516514 996722782 838978038 344491211 656813384 847971222 992797419 419008651 688093456 308458013 203675176 887014423 288968541 507487842 281967707 884129947 477747908 99605413 301845270 981647991 99485011 38432995 138743738 579546469 958336422 943163073 948443631 853995431 101610224 789150988 118655356 898056710 253022907 909988837 815654098 56265345 985279576 806226450 561523625 299177910 818881569 959534596 980916836 644712561 964608947 244053977 490816934 802122807 943953438 343298291 9953610 973448243 948414922 272119622 823277531 662704219 918515113 723020057 652491943 908252302 499176189 965116845 103744474 352136916 747389858 531721012 390635202 627316961 344599964 754933410 105467559 92008455 757501775 166356413 75342475 368412422 940425279 288526770 656872380 595526681 581781049 536906609 303896661 736289819 35300665 267850661 726994221 825278725 856293798 83035186 188099763 920230666 627651454 854087213 591434024 816854830 949894401 778954489 596830169 411466813 640210815 824105407 861135958 465028468 910634765 918911157 881199390 806543737 885474612 832117668 401353805 520046849 585274698 83992369 999530386 391647812 321783529 828843768 842263570 876729244 945083442 235574905 38396947 960687854 330297021 875015442 869837654 856764866 191217557 905046337 947883088 243201412 485043294 351087244 116973265 815438427 761635040 810289429 646275954 605009195 575103837 375191501 958353266 779332094 929487606 583831770 519747473 863619312 426042298 758573526 981421390 901452470 288404009 52136494 901677294 946117193 746982547 60639573 559436765 428942268 978100532 739528638 540940237 679962448 525906849 100060765 764553979 172574111 969052872 442380377 461321271 121676973 911289569 872653479 292954771 913732730 875166236 692118162 965364060 11288140 971792640 461226962 674304380 817310933 996672867 895094561 304875956 56276142 817579758 109506524 908507815 827176307 820650173 623605513 956972020 687224865 700122296 435831218 369516338 136633329 75104496 816507508 942423659 802255916 679640587 375673994 768914915 335214434 510819541 346768517 775522388 923315013 819468984 904600379 998942788 243329494 107449097 50902961 765144110 684701574 874920820 984148112 299503968 112411699 649968699 987519448 834654364 807482115 426369427 776617875 745996765 937850071 849991741 239865458 71496475 560971102 53649204 811145916 786448944 705555332 987342250 711508646 191804310 768687885 113544213 882652124 856514599 801389613 806134707 482914522 984707149 873053780 683899987 114792193 747608370 888210871 663664682 887105718 851283063 218741042 395074909 638874656 954470398 1306225 756001327 776141836 895895871 838386742 916034907 730449531 896199799 67115841 542166481 832089992 134395781 92756213 424012203 255460128 918464586 740203303 301528952 720158006 790119140 341036154 45171722 160896776 363077558 968832119 948760929 955006699 904202309 790001750 753401992 50623354 118761048 493754523 821770567 438111348 893781310 949953563 956076342 781560938 743239037 895039206 837905719 726043410 790659189 776990781 171624688 569951107 920646423 462866250 472997686 179945807 835347215 381470924 779432441 312338484 506512338 9321680 112204598 944495592 958478295 862028136 949782193 819558127 322787364 986656335 643240906 176686730 973654296 415856356 945576858 930256444 789457073 983525027 777515826 972758266 757844571 250341576 773306876 341554435 152880308 893923631 12272899 782094591 487367823 392572223 545834510 808423139 200799217 133493701 858450050 416206021 931815352 796806841 889481667 14904097 696267833 721106453 349372826 126394860 771560160 57491765 847899591 634416263 478071419 892273850 571389451 885075494 756599440 386073456 870111849 309479553 970492392 229557014 860863200 516726329 877660509 972272022 238231911 29171939 263376631 891970792 859226379 264898016 753942878 531370924 947482808 376295026 938925155 437415399 401609933 580755478 980391661 838556478 773718049 921333440 318316191 170369268 827221233 866677383 760714775 870537539 820515832 889750958 96311801 770656631 121243887 947604907 490492993 168426245 366991479 181274357 477638168 799271489 208414170 503853311 987555114 517178926 750658345 549406013 824193514 45025091 953365675 917319454 942151868 280173160 394301771 931604022 622762451 15709418 857462488 265737435 737910347 48177811 624110244 919869329 862319782 329797326 697334358 387220948 852119126 769776893 215861113 779116852 650650115 42606709 69754845 949639494 920941340 884096109 584574044 821395080 827646901 885026719 171408666 270098817 137741622 906846734 575730405 740271147 931402829 175148213 356957261 769906981 940774155 912142680 116733159 847086315 930890130 546681148 930010594 819358991 21456427 656473226 846828764 238791703 74896145 198270744 16649561 754580075 852932477 658340155 400494376 954681489 4427561 848711689 800285178 993119050 821556532 126311395 145115196 930979477 879225841 189963620 859641501 755360835 374733906 398746996 561849630 585130325 797299762 634607311 828815090 882362096 772353494 206964902 200695396 614824547 748591220 453758465 121155202 968973101 576873563 971214464 261767747 94741901 488805068 872203243 827783662 977851167 932566415 435157506 65551263 751723120 950586564 248802834 948346670 22487378 909881177 756818547 984787991 758879222 623539369 777611971 889587264 729536238 313940051 46756438 835550449 897234698 848917512 979880173 718611684 904319666 849682445 221865325 124954711 832437743 849666238 57148218 193192366 429794929 881926702 155038209 728440793 485727843 834044208 577031738 933938390 170217420 275716049 528829087 974976043 501121528 446755393 968458981 160833893 395056627 640882909 108837063 772410015 992180268 774652084 902559186 740612252 830953090 126704503 968520671 786334377 819749607 542037379 97567783 817518380 399281260 923659814 601145461 916293845 770151763 319145803 379923995 312606021 612015977 222113272 275415069 839447641 245460962 616175535 986630724 18809596 669285709 363531968 499824260 6992414 258432690 134790502 821673151 781658220 889915622 903912398 65455019 233445968 809466328 718022412 898522146 987458919 848806857 880318535 611792276 953645178 72555359 770495384 657929278 751871900 22767721 623036403 826120464 630693598 853655429 865068453 45216007 399216219 340156978 103908327 999520332 968008742 974919837 688302324 913596453 759944465 964304814 954237104 644198340 929539741 641987776 203439376 164179366 794695050 779783157 888675671 913204614 321242246 54350736 72491559 941183546 480972124 917730722 813365719 777797877 865810280 798966127 832018481 942221809 425869871 203385693 68633565 986881832 784487002 985551470 165081393 543251515 311177721 411200297 710708437 767873139 726538620 281304733 836544088 768675509 190771991 907536502 853271120 172446494 899419199 969644833 946615599 24363624 402424144 824699176 208952814 881840962 889093848 631524707 974037647 95244342 770118372 440035225 837850880 663718287 911111493 828312809 55831388 935059990 915099976 746664167 119835229 924887070 901026439 874485039 170765030 98212277 639741174 813488138 771012351 968450878 560350307 954129121 987586535 692130085 850983296 279001611 220632881 904405799 791607272 798551800 523822366 984621688 509172536 895944211 468206649 24602546 778784848 237768306 453730240 854905422 194373910 863838990 828457642 752281420 245322531 823367568 756039978 345945799 612145870 60203071 980873362 903216263 955420180 778813947 985024226 726356702 779578912 847324712 304447725 212154533 800454028 577872651 970864012 726752816 304688255 579405033 625318082 155676373 870531366 879423803 125509553 496370319 907151630 368233007 241853839 623700698 83956115 763816481 832685367 252259728 803225580 990294628 328669647 971438955 93749587 434098929 354955026 517524077 824258671 737020247 668029777 164529230 765836272 889023667 981434441 365720178 994371909 343363797 904758937 868138016 862601036 992212652 868351311 495314323 882630427 461148748 64795165 749692792 687582189 899576609 767504476 484467620 571551501 580883721 915008803 416259687 905840894 976500655 866698497 773741947 32281435 641883647 353214999 745760509 604065899 766098518 602013886 410519029 800007171 653730628 155656270 705054230 761102031 103530418 376755758 556551622 180772752 572206318 940549918 140781433 946351205 741496650 530078585 754241445 986778823 371235522 410274352 694196667 806350090 173794357 846732008 38300177 932750889 951119180 134066743 557704253 764947587 885286575 756882167 979852308 271097320 262553412 757975311 51476338 591609011 66348762 375484606 443758118 850827972 682554140 431119503 950455587 975891243 418636917 986821249 667618558 642164543 719948122 328895277 587631297 314305745 853704197 845915554 78436244 193040152 171977890 460660191 800179526 155915661 858118386 230725459 990178296 113731459 949087491 823722350 824033057 614301640 669080652 491405755 507094025 942585846 755909304 453577304 456211490 880751299 936358023 986330559 510986899 984364329 806025993 884925920 809215593 869552213 773317429 719042480 870875630 845647788 629586609 325193538 921256375 386078769 855616806 255739489 418012757 735663737 793251025 536537873 973985337 645738202 978123756 831925014 372772793 745163466 747094854 853593009 872692903 801069990 912357667 972735795 660053314 950747568 394566580 100492578 372127185 286666675 925095047 975674987 930256194 40175236 81569486 742659369 290714536 494715838 814952621 177773140 109437105 632374861 794091125 638092534 914297936 859752219 168253161 168917947 786799213 462244846 361599468 13038367 194608961 543374077 834529482 471592097 866820760 962196189 83400509 824451856 143594339 125330897 747549501 767277546 688376064 795987611 291049511 843627531 93142720 510916529 992804865 309092037 474390625 171264308 61303407 342044903 931740386 103530007 332938655 662121605 42172622 277289919 69453676 133406772 717505345 955061983 110387520 549555260 813621002 889664193 43362020 175938391 811760561 863206046 737020247 438795741 533701609 702297317 170278782 943836970 897218602 991001980 907137951 819824383 269643589 779076184 277267648 810755109 392465835 198739041 749286756 92845527 429417214 36990741 148716228 282068807 919744627 191980777 809693104 752930532 961621097 91723166 668173976 838906105 761281836 564484578 158781378 94583391 521279243 61694329 927635626 846612186 737299390 840714355 663570888 249560698 943279137 195146475 468992193 964366397 261511892 885672360 2063272 434860140 748639548 685477633 165439205 795184319 765787335 772895625 963051382 694867105 62938436 804043213 803180817 119536857 670140174 522519712 900959978 936970731 147959508 583764073 808920928 880513783 138892549 545130500 430368085 927920763 275373544 130511184 806529676 339636248 966149773 501474536 296768978 868427208 834733206 951930271 255686980 811555501 316262224 894083351 137942934 151360080 820435487 819184043 788915131 417622909 916712939 835569022 748227939 378395567 860807465 987634144 964830071 992453130 349043896 891552928 837222297 482997203 258041078 933598077 832994462 825759030 152204947 494542797 725119325 294587879 813454580 767573253 738757124 851587606 922128740 746812934 893809709 153509390 870719779 895657746 514252046 359034263 806270291 796946952 804407770 957429769 118610287 872448812 930300000 878810511 917268004 930058236 737020247 611827149 52425737 857130252 765936349 909574179 325940669 447965861 13025886 700646444 693438476 899930553 957127697 483019133 936302243 62704493 839126593 966340375 767925775 678562818 271507266 786561257 968915171 810342633 850163761 206170926 402287810 128807028 949381545 931448529 225723219 298338102 126817924 872109028 27734198 956889695 962589437 777623273 770054775 455514532 806675492 944625124 821053211 817506926 678240764 878561625 93016912 149473061 36373216 410605586 586820557 769908803 940927002 821253268 284622972 331398479 330946592 724358949 799890368 754623852 979770377 785352346 4980135 773197327 524226062 689320378 268501942 364353987 860631209 867328853 543118120 774950707 366271602 49295133 950600739 535322141 299075496 262930910 508208690 930233407 687532129 970801219 894881490 465823423 80850989 574007686 495609512 275898209 269568097 273372215 886826447 924877325 626601376 879419807 635169392 639480546 740864941 337556940 771468926 579234916 388014752 749207534 616641792 120565312 758172335 134015906 651204811 961892811 974643091 668941404 780349537 600054750 981383756 107742904 798176568 548811251 668214987 856979199 992930491 497063750 434187395 406978590 933546627 75610345 642275865 954489029 750943580 750391663 958936221 192293908 526288931 398380211 865691373 849369429 212661655 757750960 175427363 826816622 789318403 205289344 49788289 970330982 474033691 944370488 571213541 133929653 612839362 996439036 361540190 607184491 766208814 773511519 780437860 742894876 847397667 126774231 806459619 590869999 998553486 387536534 223479555 618256049 559373579 854467217 788983107 729681820 782524324 186894662 469850246 770148095 723530219 844065802 873505859 456966742 803776260 773910416 304024322 850623092 459297559 937560236 751074907 440785988 990338307 217806586 489131400 961179950 923747655 883912269 775291619 189140880 901759944 832625283 830802826 337972208 706864988 168780993 836025160 847792642 42604165 669711766 737020247 16671059 994379771 275186673 895894338 889873122 869795835 604857224 845779373 86505616 746376205 996310414 155594553 519838044 851266491 794081526 672809057 182769688 841226248 832788313 903538989 513678475 230725893 491159767 322756964 17994558 538453434 463025284 776835579 827558009 842287917 713745622 859931029 782893948 38325187 193139483 267086931 792816458 6718914 931625775 886012596 988565397 305340580 271770909 376988767 269391775 782986432 917500483 621060261 357565038 923794961 114231707 629490746 121893760 861444086 759585405 888520655 366799401 13058775 57246122 275578436 988437500 494316955 962388789 582771140 791382742 978490860 850962404 58511479 632571476 166041723 990123538 201361229 673272519 885544963 758814677 788315880 747876535 823473917 911905841 772305046 51845479 186921472 561553043 632598468 748384968 362369213 938146623 939177882 962706532 911968035 759524217 189170415 725126517 885215565 479672821 795853987 405399693 482320623 994245469 988818732 125985507 837427716 794915491 542690852 162365973 848618817 871832508 945848141 646803870 178918900 365802902 899711327 493874791 596564433 324020439 876950387 943142383 882409509 937773166 78916350 868711808 674838208 956688214 674645514 4048231 909747082 10463179 883205502 899601758 883217295 327138858 170687367 164457534 135959588 993640027 983073051 670270474 728796222 700593948 794317948 915551074 31704750 510284350 678870011 488787543 86901084 824518237 848326912 132740784 145091304 992470658 76329021 849037523 870955319 199217633 802332386 839165833 600574773 959798951 664522570 414352029 768936601 840933435 932340612 838261772 49573447 432119215 961173513 894979101 216447227 818161855 834606869 972192581 306288464 149775569 984306535 633756952 318222965 723860919 900423823 838378250 125769793 7228687 949772598 880133834 985592321 947095622 478155150 783251867 332522571 816868878 75058141 274180388 730243892 985060428 239166240 276497002 859767776 145267121 375274288 290519946 244191986 197580939 541566934 705027215 994217863 107305537 832034366 342893499 895479239 830402605 664753565 842468583 931066134 220355444 958333864 98251760 193202516 897786927 103698609 750132412 998214651 100694112 978306974 919491231 747444758 902229371 980571280 552428585 760154847 779307016 823989545 745838916 981531286 456710613 343868040 864801740 346046006 219176198 312422319 798900640 348419765 819000996 896955425 148447975 452779350 182545331 86961659 545186282 801020671 510641398 208797323 82686955 134152573 560250798 774144838 774885490 998193030 106658515 984507446 590971227 434596538 896362917 188994157 730019034 976333172 930536208 860111910 805814887 82912386 418735185 170339505 757141194 941830089 818262874 872493148 8487783 825922425 150980012 172006277 275529650 930219873 281826309 377389109 835966340 781223410 473348668 102222394 779862580 393234321 770595507 820616670 739576474 778555323 561854284 181324355 499731775 274307704 519461985 808486137 412228590 404414118 710426561 401233774 940391027 568350828 578396279 1424868 737020247 878368322 183931102 448361082 778583514 436809037 169684537 509184411 761468106 96867625 375456221 39131403 399645723 196743275 916686110 769570611 784306727 791991748 455629929 807815553 823149207 994396231 856369589 887704058 939156850 979472527 737496354 516489296 787512568 922407390 888780773 523487352 478944019 135052548 304787067 947024486 678774110 386496480 737725067 888674211 666549917 741651386 754261899 960052031 825180675 411598461 949049582 756968106 620382438 851575741 262546008 881200528 430226982 983373417 962655624 811465546 115622863 244941075 950409695 404462117 914786369 813123356 103424932 826083085 925789224 571482823 577511187 916419734 981149915 87054224 977941851 693483959 996110381 40419406 173267202 528735871 353089515 997257154 787419805 835093739 822332844 346337602 94998341 58939244 809597619 69181407 826697116 60933565 395041406 27108854 536405232 970239881 425270182 94526687 241272646 948801458 231334131 767697346 74883257 84977670 855321108 810094455 636042909 21873246 402166130 975372043 825600854 547121040 825796377 183785890 747273814 816974831 233298125 524321673 889495491 126666011 966796323 811416542 871123891 370845716 188770641 630089563 562103821 65875909 372395531 378633016 752078319 761855542 899653518 778900138 635092332 288792551 741987938 306508309 509495042 658769154 995072493 968217596 976387486 116709789 999893314 556552176 926824719 746154233 283996522 468883013 968856182 461686176 126321897 801651795 743271374 86977160 845941635 753986713 182503404 380954420 182200375 337205140 947492994 449469171 109748126 328274605 646319881 369120059 989271859 231917099 853300726 445381495 846169809 901273645 398547598 797467854 883942748 289180599 505005445 521242785 980765754 401124599 981168554 459723186 903144275 827638804 869435577 191846592 77750289 282363206 877435428 924001032 537486490 529856792 942323472 50697829 260142038 482288128 690625520 536162357 958502860 501878903 999179432 911889143 890633555 565141821 133720862 522283660 938175729 167094823 795967638 992655738 592653529 910821495 985113201 302168480 729910055 806887473 134869168 716681598 9314895 295203572 827188085 162711947 987802181 29845271 368781881 522140813 421941385 753339015 907964061 890330761 934716711 866968260 558154953 771250558 914516670 885707615 25471591 486674363 858951882 401236800 656182451 53058906 787957114 671136176 403963505 876663625 824781858 554966260 766983009 348625872 467316932 539729024 230904688 387553662 462017522 368265507 171407205 601365515 247641223 885243222 18052754 847398307 793026089 275633380 791372952 576377866 637717605 185034337 287987280 752329898 924654087 855394473 738219266 447458606 779431909 751163053 288698488 370626497 932865501 253425268 905210495 461103246 738686114 107697931 888562632 832502385 781019097 285716655 273212406 940222013 957510115 129080140 777686349 350782677 16782512 100591166 864488427 625774963 659544215 819331632 461348128 458650615 523157246 150863338 972989168 869723792 429330613 513218868 738795598 315642290 857522928 470168725 549897254 937487228 472525172 15640642 98005432 671174375 912874254 580041907 193867702 699276100 583677434 779546254 842996478 601549169 762306639 40303830 181221339 820749749 88860137 587227664 159007601 947138756 186982840 791205612 86871489 896900465 820128171 927724844 199425741 806588949 923140267 469866017 754484578 801636935 299489276 904279700 948573151 750027895 940241259 212267363 720648273 837436758 754678955 933995142 276034439 798779669 844241376 16550262 981517558 177423679 932418423 959457867 796228494 536640131 855976800 755990423 933154773 910232389 674351054 825792800 794107887 525969670 723943576 573920722 870368189 990566353 950392235 778789633 810097418 259690790 165545794 910973782 307629276 796644344 776224556 887593676 491476573 949167100 792310054 977679422 248522860 859869370 855098689 876192994 40640396 264393450 927137633 47191792 567260251 727288980 109069686 251679152 29068364 452410029 870930629 85021941 366101893 900976696 870850397 970359327 949306456 972100002 885001753 77774679 783426307 20692144 572517024 241584509 964477241 173053269 162032978 17852946 803555366 778845065 937480884 904382184 330473339 980346201 767035832 992143251 22237753 196140916 934093819 774286955 427475953 883290140 840097098 388985211 884292684 770762479 837225013 327088059 951307877 675006557 262953809 630123789 910171331 624842649 785898360 966954829 800218415 887052780 819278401 707971726 370056609 915434724 951220741 512854420 853746314 218049458 996890395 726798172 984085354 807342704 571648054 442497749 828791994 56167823 776221535 933410816 898304031 660199129 261549970 711948892 927854199 963768755 195979072 312755966 606573204 285835681 968491129 194442769 348642852 755084940 551954976 943434776 957767036 283546888 614888612 786481244 234008695 487764421 768690380 990723609 711632673 941673725 253439633 750099087 830935763 896858820 905679523 944934523 954037276 947880669 391874511 900770640 966525138 732132197 322255813 294867229 952370292 604751687 652923089 411520955 990537444 457606160 755973922 877530502 474614626 368575767 895506462 985456355 854534341 988462529 910327499 285034468 947830710 836406684 796777489 955216550 340279953 242035820 885958104 867707578 828376062 792155904 338891751 204290298 659085278 748766070 428720364 704336062 393585422 882340568 865745909 579040396 576457877 891276858 934185474 200143955 588048737 995207794 523951216 83817123 486816920 511604388 755528563 874393338 228636368 445523528 783527249 922967590 95975757 763895766 497987610 260384873 310658023 331471584 634967111 203751620 541356951 423324401 783598872 339379307 430988042 115123785 108569548 207909764 777969228 216381071 836907832 831713699 433015981 287131702 915976303 933939527 128800863 794843007 695593258 837997805 884524201 534400505 741909942 785293902 15592668 824194947 272330615 645339093 760595296 999521264 623652396 982148749 914940618 265122738 134396002 954598064 870575862 792136155 946615681 855044543 600560533 51068787 951539711 95216908 27390154 542430618 346689230 891632282 885948427 944082274 635735418 450340820 935207499 972163546 488500302 818995405 169368856 236358101 846279320 518601963 433295317 431021262 780251369 772359557 830916778 739177526 324899537 645576997 205210393 182384741 965029421 877967973 633361927 919502014 490304478 605506733 997979577 828568662 829882365 803496288 820556263 806293818 397359873 921794570 537093814 618833759 843506488 986032303 787133703 709005507 928216113 871581420 932714660 419484767 396930627 705702325 345491199 786054607 998092525 435856329 825436141 326617063 151213966 162776287 971058479 334017894 853850851 362601600 6021971 780194228 404172862 744042011 838883022 630255277 720710334 932708139 899258650 746569969 331667257 917913816 8303091 967010282 450148299 272832480 881611218 738324839 991341059 761166897 901865648 724380566 888263485 221190518 14893549 835019558 821211924 844257001 526230294 466978934 737020247 215996984 873641711 732994772 968691313 810662331 917107613 965659018 119921504 920031069 973240065 671183058 22951767 907922483 836202286 504970888 412482200 407419799 103876932 533732665 655312635 916550813 906138653 174440287 973381725 494573528 581027838 449807192 557899107 763982244 993820859 390246019 269126484 817011755 741811474 943683326 595670958 274883676 28578153 895272331 114121116 229346385 886505397 753242568 507078545 76930931 964042548 738237532 51364371 146796503 305572663 418460659 398058112 753440637 526527052 958071116 759023123 257535794 962079425 353860674 415488358 516539165 881422887 968038002 651476828 465457235 983192718 877588223 892173397 840830787 205238638 970496946 87893459 912100330 279935008 938278643 824379929 79468976 11343884 804446556 96296600 890137119 708727886 936584690 967230805 921235937 35517669 294837533 993246678 911198907 427818243 408037218 264668973 855081450 562821443 820117447 274275779 754226408 468960366 775773116 877841175 755154956 784670477 518664484 692801566 368001894 906816906 657855441 359578274 52284319 968778962 76687994 988069030 697525600 101260607 871139463 8112396 269032835 840105869 478399060 294902949 765859299 332291714 406246391 236326123 835188898 539699800 765714813 251821740 840217537 635179460 454821004 144014962 717963942 730058529 642516467 247560833 995142575 730457349 43275116 455265299 931570386 757591996 432691286 973633581 535735959 2325055 846561464 69949097 896252045 780991968 832810632 737379958 539380672 929257005 114237865 750671553 80677066 820412950 914678667 955100138 851002129 983871708 604744899 231735898 708312551 91736060 826501664 833305953 951451601 56554388 803829455 224974218 282058247 673339814 451293239 740329269 671983590 916711129 804526441 772261600 859592101 398209532 547817831 207140341 203767718 225267012 889538251 757912807 271619387 382872704 938844692 608629915 799401380 618419128 804536530 980754985 66918463 118492639 13221009 761653415 160768305 342002446 84263039 967491264 854904875 678487605 774759616 922677776 208132048 465495479 517392866 575982508 182707681 899516254 665828862 116375457 971658827 804842670 13597390 73879764 446924901 25166611 908454887 333736743 920854189 823362676 956216127 853718253 434709331 939219873 740783244 705882121 526803536 177599341 747880551 827576475 380370942 889230962 839431177 799334818 887582905 251265531 770444681 176747703 654050757 370317931 920871314 992812830 840244137 950550826 817779901 933730747 990989335 664030195 963968036 179435588 872908706 10729574 576160223 437229981 379582734 307418141 32355990 615291101 209439513 107186808 152538053 548811918 309696125 756792765 980142129 978913745 597006061 47813786 132975295 537079784 283538768 64693773 982169061 453833134 160122432 967279768 808153557 21859429 669744842 905483141 841250913 789850757 568150001 830657199 232996054 328372961 847174324 567583356 435313563 737020247 683769292 114139961 42858647 128864847 406326578 946192479 757367509 53094922 921631065 610077045 201991661 823511431 612268174 158253061 993612295 345751601 773249655 656287159 40993701 822226374 490562084 383071631 791701057 796014653 816653431 818250926 834687052 810392287 160544130 64000351 176449744 433463724 607206140 228385303 805796250 288771126 669583634 940894847 890591930 963884929 156290623 866085740 262136495 702417776 834065586 273269939 958788566 962554381 602369139 610025473 929852094 904922562 851825397 158598876 302056816 668228896 920257571 447829098 982719869 749379594 792722586 856951413 908361565 990335917 739308031 329886002 691880221 784328241 931182543 312105307 32676125 846186526 999080761 936418282 921047611 667123652 834211316 500596128 383077777 120891678 906396968 675117869 346756322 167287123 207526168 222935118 657770628 477067341 780740625 863763490 779832372 943732541 884856658 754103338 776184412 548280659 387199639 984148796 53851436 793559161 868754310 999103820 130629426 847609630 39618849 267812344 928767584 856771788 757590540 304235511 559401858 461351366 362472833 463649135 21105609 768446636 81418595 193555903 33500386 269667573 777283074 830131832 674566165 85979824 929725817 891698353 325131530 162120835 905393782 855746759 855415640 886061069 755647190 144045694 996429367 825564146 960749087 544316015 119105340 910172562 830493084 748178469 882793787 936918765 298156721 552588109 821866930 835672219 411165496 13313303 525733961 314867861 905632757 655996568 56144021 404520661 576406280 811998474 985263813 205269498 989799587 776075303 889113608 560157547 879292048 84658257 837616320 840493274 857186337 685778033 810610499 310968107 241206119 862065380 294336830 752969200 383392014 954541547 945191273 554298133 995936391 778245306 607101856 738080009 329808244 849749576 831273889 762171799 920567813 781559339 197546155 21685865 863326507 437257565 846836557 948939019 796111027 619249993 811603994 265378039 988337171 985817537 418394012 472433739 128653839 997926873 720410895 914280168 671719790 934176473 744059435 978494511 885140728 538218653 577854602 806094172 958258840 839568282 966280342 525053506 615716684 713920493 35639136 649898069 919088765 959373052 953664708 896941557 916028468 523641074 947310503 318554831 22425036 737020247 300496591 252312122 252696644 863001775 108126305 935002375 795463360 134661038 580199958 922500301 828791309 818227450 173369519 718972752 857612082 839978794 901306676 269981348 779978663 864388753 973611789 13598975 638726419 938911424 802627416 750500878 365869449 607177661 509213982 614372025 268377030 456121588 184225857 625665506 190999109 741828084 467456866 314021349 812830916 942127391 837110914 366258539 985644459 990510659 801907337 422032218 909979130 362380947 309043226 305939438 441734882 961576336 317017514 931723320 411602058 822281096 216627914 54237505 745802581 743703580 769903441 876714265 998581437 869150735 819544003 588833867 954837496 917738285 358000614 706496003 905532828 956439023 843649767 127011275 162384635 591831248 790463684 810005119 882331454 273895894 854330568 992768240 906104222 361099384 532540468 814896089 806573415 800005629 763471491 878520670 700391973 457544802 799867295 792896769 783111582 25318280 554989567 405035072 396989951 954587657 907240319 729374675 735108967 437321248 683639674 925449094 856115954 692940254 85514302 291264658 839512602 696395165 291169683 859236003 721298116 767420767 971104016 995551882 350635363 455213857 846980615 440197701 752332894 671213900 414061513 59027838 707479993 897137015 933449315 892873549 489108043 117707908 403785122 828553182 461903873 678642711 195048804 807519361 362931327 972804096 877217067 502102757 757614972 924153278 647687406 788905326 223885028 850634101 431835820 535244491 810220400 889818745 770185567 71818303 775835337 784908759 770924503 226434692 698449213 848008241 922814801 292388692 767172926 464231636 684752881 874571516 77574284 719693382 98331914 559016417 802605274 835260951 21657962 814300827 946721547 892283001 988922390 218630412 156763227 997253366 817545071 949471490 811303070 89453412 915570656 76000352 919608793 480795825 897075261 757049928 901155416 602274258 934553736 580911976 996076302 117699276 793497877 914825406 909640198 715572609 404862226 550335310 956176744 257074666 348170979 846971622 446462199 598819570 795330701 337375669 645761341 976335660 934112308 393903509 367886495 577924076 311305090 137169105 665235291 740931065 584724481 966519748 975061123 567991371 764418206 933120671 711131413 209058756 652687354 931384740 157154600 445413595 560374840 824340229 913513756 610753733 686805291 586957765 869547067 639218449 899473562 834381094 859394457 516409702 749079092 700401872 785815267 985349140 895448800 980365306 863821831 890504584 548468690 247225996 893793549 989098250 87157694 780582672 300892069 877441931 613702655 806849723 706769273 227727972 796975077 156497068 724333907 752275102 704415957 719983565 818851020 804476098 902169248 741639898 896017850 47462990 454515041 320857554 423285092 921793259 780464514 994709579 33018247 680220988 227450131 848970446 374304593 947638271 771365269 113820096 582273742 198304660 227491794 911522889 527617120 13329699 979978627 265375560 457050412 448531733 563588529 217561646 649471566 585230744 725264262 563265360 466475086 997270336 791247695 910995250 452527896 330249708 194460476 802786728 738142741 112793893 985893714 562493917 898129966 841146068 653484912 324661795 182211674 705084423 841630532 769920036 585040384 385184473 710930714 882650626 149815175 772509994 396243148 870592687 887312871 331895263 776311736 376564431 953773288 746514405 644161156 857531094 450337794 837011157 525827274 722753735 780782070 787677146 895467944 808453382 774581005 753069877 874910878 625352253 887542530 968669435 872389865 836524021 938043979 174425732 400439473 466362096 953181354 793262410 980852259 999881625 90404165 383164703 762270813 997768056 649683022 996484345 943803127 754604532 702056221 157897590 907809385 798129140 638549911 372516082 792283635 93892922 812765700 908030621 961949434 261807993 984430919 457883994 485394139 33572191 990389363 475860070 569795289 866220259 55341325 938354620 766784099 988799368 574415897 655398199 650308906 504200422 974967921 744383042 739356788 607913957 219261093 730462300 350039246 829655178 148927409 776957371 922329703 748039785 934604699 840480168 593721832 322014946 404447198 817135262 810204609 392101218 793980375 577975339 325733819 584344569 829616052 2060758 41475524 231933957 866608685 516041301 821372402 871159748 523823672 791886251 908701356 646288885 814769652 555073849 610765738 460874263 787922306 82109648 916200704 356185174 761395489 916730849 824221326 900277230 555058040 806792700 496542778 591509245 19568246 937078071 360992509 963076174 328106702 843384234 554877122 41126906 706139430 921804481 667203624 811367366 973431660 116151427 754688248 978919141 91864522 229312049 14128655 994563742 152828274 757552833 815338415 806437224 999301511 752788768 513314559 749100791 954376007 629547477 357794793 999009252 545414884 864366949 840214590 883785341 395331432 663086568 970322168 850071439 80506093 596818409 433444593 834982353 791039807 769118210 266932148 908837976 955112781 767948503 974238644 632889280 952592493 955565667 949929159 907104666 650113381 938556133 755736351 754422582 555641079 425738715 106960743 858622999 115445851 394899597 518690944 901986475 966888269 949712031 520388697 712644002 858751794 863374855 756847076 538305922 859865368 496429311 219606333 108465595 704354855 251691273 117474059 896272263 832811915 902442811 727462562 766016549 22347592 467433649 59310709 49347543 821537717 911270555 66233703 380721773 885185462 632805487 599439586 778338957 877980477 846195207 976895423 360011628 313456251 458000636 542076087 671574101 58263017 770050961 471601314 174086371 693427120 620442908 359694773 631294643 416381489 868916185 483808106 872366250 4867373 318985749 160492433 744958920 476516965 768371691 24847964 999730856 960318267 84373401 30875896 872285489 919747990 744936676 493116903 824117824 870516943 341713776 289129890 809666013 461144035 832847333 755958663 866812125 867815529 894598311 648789259 677688201 488195971 186140849 985839969 981785621 684158729 142255098 16793529 969398287 585130605 933744928 762803916 636757556 180664116 737020247 3362126 374906169 81361093 815086494 804564218 635209018 656819600 890778441 809042794 852116475 877465720 430451990 757054922 36570717 55403679 515398605 964843614 928999474 915497077 921780344 830499973 743650747 877947967 357793657 846527052 762125917 824400473 808073420 979194721 606446285 955732048 949181308 948070292 826304410 991058129 628260743 75009537 199785615 897827932 535556411 970280129 926199916 461461747 765729963 43113570 884322994 746863503 35061456 574968767 813193683 345500292 827989675 526446848 772080151 847773077 547063971 877231438 497009291 469725489 424811735 543365478 104925891 611424641 586983767 356614462 753739822 933024065 330116661 949031477 544695678 855595254 984804228 562694100 5796584 903550052 586445910 947813740 744299216 618786043 756063312 820004657 793699944 353231849 877734867 947776632 789769513 124167398 803289144 692018223 784350660 918527022 966151474 120433124 947101018 983405435 200655261 168806509 231856460 943484922 786872013 609314277 636658620 846145187 228532672 632302919 970429970 796478012 50784584 871298931 903069570 821504413 822175667 764216787 810390253 89224218 476842597 997037180 773785050 444555566 303401627 54320502 32022963 374438433 683183811 918116644 760486015 765565558 347019178 446930416 21098042 780825281 600854523 292274154 579637384 484347415 820402043 536241351 720552643 931010113 811672179 311181451 153366780 208519375 900179151 766160899 944509828 957430680 543356993 131323711 175437997 765835321 606392280 779658955 548285084 345001892 611863910 112002619 920048065 754885808 139979820 818587570 884138304 570554323 347247491 29128704 464896426 50550454 361291443 256429271 854238998 737020247 398675146 829810303 209664938 743803765 665193352 793833973 337995948 927608444 902918551 543183960 972526505 875266065 507575025 894177453 948182888 107841775 855946406 338278348 27050040 36340762 421164451 123864989 551055041 197734051 755045948 771051981 351765540 792734542 714789064 858686773 79004384 846753576 644341406 753343496 786258870 828687674 764184972 669830042 10087359 867417174 940747419 839319730 765660582 686758521 191077806 749216575 713270058 901523175 30599436 826878517 597766173 342682611 822292994 236455448 976655836 103560264 926923648 712246865 808092581 176229155 241841520 840659070 806441253 987122143 781871007 624637675 805387819 622093117 999471055 764277325 807759234 653809188 590388598 872346880 544193401 670736790 824990929 473284969 88325198 513179386 879928146 706872566 469385623 849786089 479082369 835945544 821592878 383696787 887547712 859103483 148074266 81786069 869803615 912616852 251830902 280883635 819757328 738613825 767919727 577772316 880573549 948608825 809210471 966661696 970019467 8466508 889792401 137934053 789238674 681096238 679224022 597423904 742816857 474090215 797368083 882133890 867932236 547773684 992037352 828957545 301409773 770135118 202025651 888206312 881204128 594923312 16751125 410629245 835991648 416771018 889813266 558185335 507270805 210644645 842625305 769437930 962390102 107809835 793828133 206915159 594859816 876452008 813842356 256843214 823192720 648136243 118154313 482931569 427367699 426377302 215758267 368503676 619165729 641078192 801761228 953263871 766324261 766612763 947501698 979635397 860261282 352301694 18237906 829157124 739836435 831034816 925847303 688937445 646635345 107294037 972163835 96575041 848835994 723551478 977493545 246737707 961182910 446661170 657310888 347005603 456505696 386413172 134088644 716609505 156405930 795956446 42104701 576247248 832652892 581933451 678042976 872403642 162347241 693174726 376936220 809768081 415147001 751235987 991120641 999110247 687451192 491892330 384852924 736501908 656075727 896667201 292981819 777251119 6093382 964962573 579759591 325373363 844363649 236165976 822895870 38731927 999366667 971090114 895274528 743794627 641523444 721695916 53719006 745415823 888278869 177383908 28681225 835994128 995727896 891235034 610266402 491935050 945940770 468414665 129047403 803076252 552519105 963422113 717265081 238302943 103030359 966018443 151299938 107761875 349252024 766894568 681740916 83014610 553624838 895762429 95177601 969308966 782907882 824326292 819762679 764240401 193119511 396684139 28201536 962293027 895838366 945737995 849726585 741273070 896301843 926196931 985223645 989176643 272483185 812864381 986582858 377890137 809015125 576043572 204322535 787186187 787608169 723338299 3255800 817934025 787171206 752749811 409436486 807876627 387935647 634221137 999794260 922392191 871051629 583993550 358447369 125713169 273137663 128260879 954676151 805336825 380670407 910236880 581361407 919416719 100257230 483859593 897225622 493570672 76151981 866105451 789773863 983527771 885757657 8031228 977956760 753499380 889118609 760747856 794500390 674796569 243192912 681827223 862598452 908012564 748440514 930841288 743473227 844045585 543315718 900926401 885326587 213003596 236017261 823629190 461091626 759372024 7652639 791226599 289769270 798859442 812306978 740705773 52158655 576654136 749377664 749443098 893954764 639550933 163328505 772896836 910935499 888573753 768752090 181259497 409195067 971164603 752938498 680699935 893753608 976989992 737020247 646724428 864355866 433565466 873517802 352615772 85347887 428705029 400700918 872411580 781320092 801738500 980835177 964734064 938295724 866361306 15706016 823487146 684202699 945576009 859315251 766685642 32043825 808069427 82583541 688574826 814289028 909994833 821135556 455369569 104344578 970006761 925843685 867173415 919879572 866995741 745705324 957243959 634418864 781875331 983754850 745736427 791578924 976525520 821379839 642412974 414397785 878653723 781133236 100889217 383783362 491729653 87683416 888046758 664514301 276106876 852979129 836335662 837396455 862309652 316623118 174153438 863822178 506836527 390478498 904940266 525461572 964006555 859186572 627745257 665683898 691137152 917189047 346530188 911408325 17879043 839020302 924646469 579581200 799008877 277347569 810252677 947716576 990977586 994818471 830781776 195881112 977099468 874445111 713339345 687953409 812927512 630168061 370599898 925098327 760578468 32816551 30631688 30663510 941631007 42799046 809928744 381411800 849289560 749272904 471630348 456719843 225042392 753089646 67659151 992919676 693824008 683623659 148801473 801023156 373720502 235041265 765873906 766158969 575042262 976051141 965770937 665280650 822408370 330851005 816372355 372495202 790926039 984728897 25126874 757482900 781422864 881607653 996405706 287923218 828200119 846929507 878329803 132443339 44936775 852425405 361130879 846882744 460102499 372840282 458233176 790414084 584740622 966019401 214951995 497098127 263393128 640336975 763543851 737020247 416625498 915545790 577856773 790814682 628408525 335417375 489069891 737589648 429444692 697623804 928194498 783952556 517143536 976019649 39726657 855544427 40185710 194244586 854045370 797159192 857922709 96755137 981967609 741402654 812043288 838915138 100818830 45143021 988985609 753952319 560560768 323430228 995458632 979895344 685409108 808650833 858323560 881818494 828568956 789881793 528076103 899263107 917138781 332706909 329793590 788778930 818578967 818960643 227607305 906859822 834280672 988216026 932400829 429441015 257540633 853603815 971377443 822462033 233766455 980656720 788668965 627781969 812246852 818980381 546347461 919382340 842511364 998080991 151095536 954411148 238706424 704762515 375381821 794025344 611017538 965958723 407841396 387600954 911368891 917222288 875431944 620169587 951041697 593721209 484859972 377496584 558041854 747500406 836141044 802084589 309574133 409672648 939390540 699799239 700739791 837153896 966913133 743482812 933142452 521204830 898651136 639820846 719131987 614061808 163484813 973545679 532032356 798718790 655415918 987340090 883154522 341707163 898408796 761360715 990539460 326397431 758254347 161938802 674635152 727583790 610550701 846041574 795881361 145279965 552779997 608868362 775956303 883981438 823326570 567966335 595434476 227136704 256892402 894889637 984788591 535382131 839540484 945509098 994364433 928675763 112338279 955975445 747317837 826412220 987413694 111874045 722510851 782201315 877871718 940117198 215407474 4669028 744056604 529741380 952689013 391401772 545348552 857393017 920649332 730435627 775172573 214770816 206196604 293293464 168108578 990802700 569643207 796139806 990635401 512479617 370630420 362563132 995217856 990454992 862219467 851342126 875572968 934712589 750806768 789812248 904745883 772917650 920181321 948496022 831490067 188575985 49773765 956347164 999658839 760391955 464031110 267829707 903292816 988008171 441755420 921996001 986366644 793309645 543301105 325616836 769905769 437534201 561471355 80795000 974060242 83554240 5643000 506799585 475298162 143475896 345858701 719722347 128294466 837247783 628715675 331884837 45039619 767346838 214914654 205010123 972130471 983550088 875912498 462139409 924078915 783996868 466710175 568633794 832291087 875234211 39955813 916301311 877780392 762621093 960060159 886480766 276030844 883342453 743423532 725160299 957859095 927017715 129160506 579409767 763671515 600940367 973397230 507845522 371501983 875593385 977833048 916005800 905451560 893995570 869968250 407438373 235783816 999332858 451142376 847820263 672471886 417850055 140517189 688559192 557405844 29746795 222700600 807950749 354759443 809458307 121735108 304960527 404362858 780583644 506198822 993702314 113021628 352267960 813482643 831297264 682646335 511364344 224857932 857023622 710251953 674812196 91301748 805906885 90515527 109984549 134816466 883207972 389911806 366359220 341101405 921777365 964249150 354068218 591106270 91041314 9336220 997500622 300145415 915803026 832653051 818204304 531249705 865101999 826321315 415628428 773364757 350618325 979754420 764145823 493124701 654825851 591749688 531299884 136522647 697081225 467518767 15716387 241174446 821122917 785856652 642082869 756064812 77973562 990418469 506989415 784867588 691083600 744280564 71533711 35498279 792596036 812747936 764710621 864421706 405416537 802999957 769106456 455428581 937358475 679888883 843540389 790463907 810568835 995408467 773981365 330750786 203859023 519085381 976081967 17670748 585965156 927497842 312496481 869414603 840442037 118127127 31019634 677841992 824490502 802627206 848003197 308678029 960042368 752431902 778218575 801537674 810335796 894481118 614892127 849292751 975173064 854201259 902359112 561474649 926950785 430264621 908635620 979298981 713919827 893534758 925885763 866222675 413606490 88360700 289215438 998183568 897568383 763133754 289304893 929117303 533701330 758445534 963623791 592163961 812557937 761029949 754512392 371321781 737119931 955728507 944428968 650035110 820523795 157558008 121112866 831266650 963116375 834251239 114510558 973583533 960124817 138766092 973145077 259077272 851831173 393978878 937295153 804865445 445337254 752472882 946341901 859563669 574833333 58909558 568544205 719078939 114029848 949380290 973490640 533313602 756445336 565692711 203173592 469059969 963239379 654232626 930666356 796405008 329014208 403266633 971991907 937223200 348311952 782309982 300332631 827004831 846859682 948896979 974243353 569109229 890367713 751571864 437855767 670186280 589273844 45903824 756784205 930090255 408892885 743345498 45617557 72267671 777848361 765646213 454365426 173061919 478619735 917636174 604794671 931965777 40723935 753503099 771424161 744133990 883740374 482850064 275018876 912382709 840435915 337913965 176361878 482916662 973333944 124691875 46170984 265260447 656209278 638162823 896485809 976747042 598473412 787179710 767232743 988239013 110378572 396736256 846106280 826165607 629493247 226436612 846586681 255092481 822787114 565257883 760571035 880997839 139843452 44043369 674054858 316151131 888383221 269888839 403131032 824602399 938822352 978937011 784836191 668772872 791179114 814962939 817833947 882824742 934302993 509401784 169712864 831517753 555210018 204258776 165289644 391070090 814814235 979768038 794894595 801212352 764813360 759922841 288151621 894372734 835844502 623319285 976929432 839563193 952375904 726714931 689535108 805975234 140777448 620232592 688929834 833788919 978920993 770013114 30815184 49466417 828214896 965597317 898684378 587564350 902059463 889372910 541150040 840416470 758676997 745908569 673651771 837746644 966556794 40794338 801534257 559108302 878547554 922547691 328845 374918179 746677097 744546373 770952423 772899883 983193740 966155858 761744779 740650040 736685435 146103599 864038906 620496400 273495249 815487111 971061592 987039447 677677859 797217844 822003368 486960323 976795688 740719696 743225760 275427261 325157767 926866588 315244955 196382884 178737081 804286978 98936350 138945916 946254782 965215796 371295546 742352863 944746469 281952051 572383545 779075624 409666380 473198129 873165763 366350123 252348828 139567919 886153843 6259046 892786455 926176268 576498012 231711704 466707394 798037397 909230450 865402938 739354313 490535933 973519609 731268832 595477679 459934664 477585281 839042216 747310849 745111701 866611639 466079892 235444547 728367732 589396531 865247356 230195201 615760628 721602999 958221057 447373483 395503235 942403269 927335386 891335994 945728916 679853499 31818258 95717147 70644525 795548656 167037746 949040593 410175902 187115254 312457554 840918801 973195945 452077550 393263939 810026851 233550772 818449913 860538364 906432381 966710496 905558246 836892243 930631573 906894379 392855420 740369447 794359263 621732513 768490340 873667432 253386635 992447885 308200189 847639436 863664206 960411587 731516646 957296627 553864266 887832827 28489738 790367848 837562110 273195237 950702386 332645931 19603225 979929255 373120771 938137718 911400114 218481964 125993333 223823402 846326491 989914605 276510735 924093317 333534966 205911313 558428672 788228388 243935014 204179708 855875205 987123484 992618887 899032047 121067867 806323088 863467960 932066611 287482240 314414985 899018945 404152028 451604405 201010545 988268257 35287007 949351632 996315589 93846233 947410008 862861344 913592872 915129816 978503384 263637202 959603105 980508660 919520350 763963555 884381904 67303081 653175763 895681451 848485697 842844898 814237610 591893169 261046711 890604621 553073222 304977519 23995699 352482308 819740282 779270928 779392910 419643802 774379468 889040231 825578634 820288438 806597371 374973733 826939385 949644818 668027667 743685687 824448094 928874230 383590383 318975452 362662048 883260050 867376072 786668807 612745039 363445504 267714829 80431066 806140129 786309367 761803601 973922576 295420139 111613482 797437267 611045717 769816390 810601266 480347495 882759638 482256470 871134383 279897346 433687637 709235164 848855057 190488504 913515016 675049455 309283379 825550756 929505581 824837522 974513663 976534963 604928523 863202769 956499409 638842214 315827951 936798764 675129787 372256039 93744116 10336639 274785054 748878690 61578564 430948128 104915888 775118471 752388938 892160888 366210761 470206565 891004384 566901233 578731654 502101209 580985309 901226486 861661317 35257797 534560721 946604261 766865304 788981615 929873669 992582934 756926160 954180167 938689756 4183435 995577381 917470474 736150588 643197473 590368209 72023031 591166450 971203710 493681918 127953975 801099440 701294520 186029157 889851987 910669912 844908345 97068495 682266867 940034146 873823222 324969721 470685802 979239571 843549593 757753604 402081595 868416953 841254328 816680349 671599902 506583827 13130555 729862751 485720492 661767893 597062571 928574691 599269082 550293005 707144675 560737827 13371364 431119254 848590642 956274646 521670989 357493378 939295648 770895597 351477594 946655690 500473675 225437689 394699028 814058053 749052726 108876466 955440829 29710334 872037894 977926778 604664095 825695396 813976730 625233317 588776280 176889911 933774078 817414787 686928555 816998230 808456912 439479352 294247641 846876796 260466426 761423930 957951640 789315213 832121194 312787705 125553310 343908687 51793124 737591367 578186794 515870370 307064076 312002968 367944289 737020247 334696788 22054386 743008902 633217321 888909302 167846528 503175683 471030215 299543814 805993617 887595168 935199730 557252029 767586008 605329607 814585192 792956134 898789480 997353739 791696025 993258793 546244110 126406089 948029232 786356651 962092265 185172466 636684809 335338554 647393744 929973639 474653083 255764176 757351870 937155232 848429084 421523893 514010327 61580403 417243534 908551968 752112256 413800780 56095293 796325943 938973023 804179302 659167982 996997345 847946461 885716636 407394719 205738917 88256501 810585299 263378650 153589818 565001836 609976642 952876162 748492685 912752843 406482814 889285313 739510714 288493527 970920359 997761676 754242215 866459572 636966035 870338256 882271814 178604751 886124567 437930886 776443353 928007057 768046427 754316417 302732262 382693601 542098950 508177254 880463663 855003847 117075339 959581001 961603137 653207363 358215866 143938128 613597767 719207409 372744343 7237686 317990490 182022974 38238912 602784137 471268824 537538567 962731792 801885293 743617385 417736470 969087226 522356964 236125294 843337057 856853692 824403237 837946333 580594603 742710552 758794535 163128836 839288547 839148428 86891685 893814988 913345985 796114349 751809490 60340643 766421871 152276228 153669901 611416335 878857308 356001025 586701977 974698774 131263445 593853560 891098532 771673551 769047740 897864204 287926648 107992353 31654982 925075004 851513835 760431307 819238046 555157105 641965214 965837291 279863131 881196539 888852680 960078202 922224614 373931513 1717389 658732855 477047150 930543288 870405180 232298482 780148289 125822590 228493712 254615419 451576681 862658146 110009943 942457861 44578672 317661955 11540483 751915847 820001963 179565188 16207687 796333907 613330209 155945660 698861850 819246380 505497644 475370979 212673583 862341882 577780661 842039069 123239153 428811871 374957630 788763113 516674164 126343323 510609937 87107259 590658398 753502664 15871863 24476061 236767327 956715600 557529996 824131302 21421792 864835885 49491240 925610396 836654630 804616025 87088267 839954287 798965441 824010496 733630513 963708028 322682861 834901673 961704413 452520095 737787315 953145247 800475189 481032524 959440443 922218151 559690375 869267411 288704892 674137126 937414388 229276310 18900188 343143393 610642399 898630230 483698238 782624559 953931990 644183716 523032898 816012693 979167259 176406115 333476299 841907952 325403706 928385507 896445869 858576403 587692500 716194813 742750420 301782214 964939036 914380910 970945885 968232585 485582844 766506727 677223827 738134490 576802915 733157591 102359767 518355510 116682211 936102095 694778034 615670326 939987723 861515561 10204458 559155600 851874354 853110439 278731775 663614760 952803527 717868473 913052947 806656513 342474707 826378492 783242456 831766784 368692090 765828617 894292181 780304903 931453673 48801968 988519995 727949906 22112190 855799794 847395606 136705556 975698360 138983798 202902706 591896002 938552216 843455728 640465105 886374005 899855313 939877511 806484215 580131063 743499840 404545244 871944167 5847549 830598679 908022114 63107553 711460195 986877699 745605068 353700181 223371006 326461357 159937323 629069778 95577231 719517705 492086339 972590777 884649090 212823593 937793395 964427175 3930490 24694084 124207276 248304899 706242309 700883613 904465488 147447494 269339201 845763568 928492094 908435338 357979435 400606209 625795446 519302528 771749581 784072526 490456882 2063138 705776196 231258818 951941113 559186589 904654126 618055551 947116073 708275724 255078013 407629121 983597899 217567649 782256409 435853503 49123435 210551115 884364884 790888253 226974936 180048759 139319864 807353676 684591417 772056860 765738292 781843809 752058060 772389772 216033176 473558966 999440577 597139985 13015609 203335223 871447935 605437121 419800357 871854518 971403618 821373685 988488729 854958152 809370791 929985382 915344221 626592116 72400658 906924001 218839040 594405977 233399967 821269393 248904729 156331032 514350687 458649191 574850335 980685134 82559492 834600827 448194697 364515587 552454813 975837245 570659348 792525972 825680362 256153732 386272238 930119764 237719302 747481961 548319314 715152134 894526181 763053971 802402435 854227868 2113607 905577493 537980792 604671208 846784623 556352887 946230167 879569209 853302891 94487117 633381159 605224769 908438111 934130097 857720296 329331877 128075738 785224731 884314178 788655894 506219969 763392012 844803496 125460057 797348697 761440043 894606034 974297452 37223609 383433424 688186494 162171573 290268030 677636476 55003428 45007344 126914546 145070654 864251057 850051450 562984429 467083780 950375013 202092631 699607358 735953577 308884993 326855330 5967270 947843116 974722983 612198464 843824489 24723480 382085475 793754609 814442001 779582864 23279783 344452960 817799828 91638816 583038479 472179371 881121237 884596348 487412284 261071367 792415756 514932339 567816387 816983134 849801455 851386920 805777179 896435316 506752531 775952486 844192247 856716508 753416978 652698376 541663960 240789593 467467454 303286098 897494738 919026705 436406447 307366045 822128837 271988575 742734509 505918901 173684856 174784395 949030836 963051396 989637310 995017032 723709088 492472216 94222918 180421506 66385702 377496721 942559505 429726969 50614832 969957618 782528210 977038023 446930593 486502628 652821602 572421118 627383269 836812710 117256943 532914201 990763379 769979034 906314538 903759288 581083363 435422412 941266771 756106270 833032336 600457002 439730254 712836900 163510015 124173433 922368938 283272702 781885711 608143875 152790374 575672182 989299857 819269793 922501436 766935099 31361589 182810622 329539641 64200328 267378936 775080556 909367475 475791393 258499670 154564236 403184959 299584628 939210882 488925459 956664640 848358513 213516073 264588814 144309688 37883581 859326478 119370346 763076277 126477965 893519864 820521164 181720014 910328471 784613253 480966683 664732628 321061604 908494128 61844759 20353710 596727101 562405108 928468216 606351442 943878220 290927107 89909659 862051924 826951110 805702389 547874112 519945195 387481665 68599854 924336966 763147600 741145394 416954207 819155228 991257599 668495991 447846281 648933605 863751183 146314657 343097100 869787219 182357028 448159529 448071140 294236395 877537527 153528726 738847649 868484218 471536212 831478383 136793211 783357829 927944621 946868564 726097732 380646212 867771854 705797820 775129950 865842395 407000054 460489987 955645033 529576698 737974495 816315823 810455516 477865625 420814964 280922877 618421731 982139135 759514075 941863634 147392650 187608727 775080724 947105321 315395380 465994706 628596027 861623392 251651068 649937815 112248951 512156283 719635503 366326043 767916227 272526997 897328416 98407940 789586101 59421835 765539726 531919010 122846727 997103957 982886406 406599700 904509964 317950256 842020568 743834686 907721660 997169862 531031949 637796576 123494728 774210219 812774760 38857720 254088196 697825818 188597192 645490406 414431381 624209735 507693889 165847923 921843597 924347146 870520037 497596849 991298342 943170022 325176626 862383104 903382031 42581947 345496760 335237304 381699286 886356175 967744330 988297493 966464675 85433876 205708708 988547386 749237703 136852395 992764869 997349115 401588230 549657734 801752019 975221672 601793896 771224838 874196486 295568487 620695740 252676637 348795210 934240891 939852586 463050178 914399452 883573377 815509949 788589963 544411415 804553637 870181239 276961157 962606660 251412000 634231843 528133768 457664936 345745245 527274357 794450081 809957797 416546640 385182887 430028708 48116120 248906436 916071835 578772579 860521658 837634857 852508849 378064962 797655874 834095331 919433976 269399897 946282098 155955259 201565358 870248365 31910695 228275467 956497840 470053267 764398260 773368370 945508142 753087622 808034456 993989666 424758003 627902138 271581616 280903191 823282529 635999500 447079607 104486015 499610275 581011087 485331072 85195608 782704947 225737735 936603582 848530705 653543911 615225783 282862794 522192388 170892531 843793235 374753378 225066683 924216421 298735415 773897486 123209383 548230602 826291157 774275354 756019014 595534110 940479737 471877380 763738009 960811886 661964702 895794446 447388480 118960076 211113642 886579328 518774939 371403774 877847472 298128393 518157226 275079608 97123925 798815563 695675656 290136665 931851591 144193608 606992123 812703622 965763325 546741216 996195058 857404639 939346640 885564853 445093451 656799716 876550979 837624052 890983328 815223826 344879135 194891317 857127485 628540411 970142685 893270584 530477454 699496396 229219073 289877832 668317507 91941904 500286854 815407344 822347917 986748412 838056528 952653711 917642237 487718491 682692735 743235326 964157509 858091193 4956525 910621336 43554643 996875572 927678454 254015211 265846432 260663247 747830556 770862703 283683824 835344021 784904748 265532222 742609151 996743546 914761889 835932650 827260999 964310619 96113203 146530248 722330437 899179444 172090608 214298102 854088334 488618481 446977720 265258702 590743090 918801988 898363393 977269064 916180310 857274649 984470864 775824304 683232674 705853434 114452765 292241513 800325336 986132162 122772464 920535940 108706450 971714302 890112928 468732118 813700147 674102969 820284502 799057283 838566812 938476996 881403168 533529384 737020247 623560696 108593233 50304824 767793466 304685926 993553447 877920386 159510016 6750959 566205381 82243504 971046358 440781726 466855462 136342613 90918748 519611321 209604263 368840685 863338139 94709745 165134275 280643177 8852839 928781762 417017168 868735106 398643491 768258947 965991727 803368387 60822985 636070349 56690509 201498401 21658115 857659401 743433857 966057419 277865534 938881526 847970832 222740822 50596387 484412601 898033812 252235592 973584535 72697445 206639090 897466695 956602636 756200906 952120700 158219081 544823413 398519681 802892898 679146933 442112222 61841983 200378834 47226985 780002281 941962430 844262347 797150730 949695045 536426135 632815673 8648782 960389125 994298037 699220166 604614257 750541708 793764154 293757406 914957045 822208662 768132525 872602144 332629294 54551626 126146236 912156329 556353211 720553609 288684470 294156436 557873104 978438728 839193062 977286807 737020247 585938870 395670908 850961062 172202303 961032796 909790337 150197445 586395871 827594486 680446 743342974 973505849 204824258 153491874 815866213 826416427 19690779 995935896 950277207 177194575 420555099 555209356 899856253 790270305 394324806 432131193 398301769 750953050 982925740 938979121 889323432 782508502 817147489 720770295 804792929 689904235 502488059 618303858 152903439 236649018 848778458 143790316 865235948 855807116 785548557 105299730 756177868 845798747 362042975 991889279 865966575 782466814 793749079 317079367 764181495 944013164 976351867 168889133 321145588 883320788 744722958 552265885 40878155 205990004 943745457 533896659 804570 952268725 892250618 837799702 254584741 223861367 190021661 77713512 706735559 646670913 891048824 589247186 945548184 856855429 8267553 779135632 497174180 702638684 808977281 627044072 102057164 974757041 35055246 66861973 14066450 169560200 570849945 925877910 275921938 842622970 982457653 496151710 956676838 900132116 295690623 942760072 129087559 966985329 943701217 878297744 408979429 659930496 812856316 937162237 773057887 92088254 860372071 147675600 69727721 675348523 448735525 968976850 663726018 150517380 534400157 774908627 157575903 718975410 880561904 800481789 982213879 2111528 892184118 741762663 798731733 830545659 233695228 86058755 905761652 865137373 984453707 787565031 851939974 786920297 779227497 737167237 996842565 119842318 208811421 320646801 851048857 68129682 306578327 807177035 854741163 912259536 249446890 998593982 578007694 776031136 330628198 158326528 140177984 841958156 927126499 829061798 418400465 960544800 739177471 336616764 847098143 242212469 167522710 319633490 833331589 143357662 135822554 654648174 11008422 740845997 237706805 346298009 755194594 821946531 839743596 768950133 385102721 957719211 992521266 90642975 916331685 68465542 534736545 817177089 422478894 91041496 789659517 741693499 965341666 262593936 754068727 63707112 864932720 781148746 25220171 845947668 775628896 727925442 10972653 951411213 760050021 142355725 419484095 956792217 976822682 893120338 759553353 343112370 887751633 718407547 404938297 900652129 956059997 84633514 326458892 864254859 926593315 385617715 802492459 953042095 432748611 73364234 513553487 838650299 891778595 477260205 306148368 97157990 945455073 147857882 675756712 827403917 950157409 874878564 597497087 467506000 989493995 856492985 916791788 838998 996287463 604082994 829985464 911068492 867665200 897035976 994540801 58170793 474346558 224538366 938856956 32651952 780731105 599088007 845427646 221554282 936550848 164345893 666883378 950068106 426811463 630837086 742058556 973255961 210814638 842484366 981636830 946432093 770583986 156958774 47622355 938544395 774226388 152723849 795564648 841049027 239924834 930306829 713238389 894693686 223259023 882827627 932316154 859518611 266401984 999104444 881846765 750068572 353063937 219330362 896632237 907013463 838672601 187247879 909763715 806917869 999872689 872240203 992495608 868920812 766795238 834800739 571107109 811151953 885263490 781625172 768312300 924744645 344185859 831621548 667185657 786857395 855877057 530113261 683223575 932334392 261096132 759670603 583792651 864524313 155242143 854921059 908946173 753686542 894088184 900219243 60788987 342887912 902600255 603014503 974841372 11010451 351731348 281030010 943100202 778721431 814547751 998942448 668120255 630650757 985097643 818324860 628051031 979689844 950255550 941619885 667469282 540782716 341069243 413696448 762022750 927601390 59029327 317732293 817143044 401212895 289420947 685888241 151585477 44544692 919700376 719323659 346301642 988955466 84465883 208300492 970512234 792027313 423933158 780398308 771869842 939823735 948758141 604687966 863907541 645394931 694398333 114017099 491629921 36366830 758480338 881988773 593093007 642690848 930034020 287822315 890317257 824810447 986434141 295805666 934462569 523622933 561485945 959191997 202228605 945538069 765504284 669943131 669715718 484143347 299139313 917591446 348098039 906627478 987755585 620259017 856242471 779473135 171647343 116327868 663589014 526292956 607420097 653392021 426596457 252604390 993398268 964320489 765099712 949194746 786354205 208678994 973479281 589239042 766836067 658116427 907467211 876258436 3239867 100134731 643445220 882204074 130485353 243345963 850126475 962063743 957027468 670314291 798493170 777207865 174828120 816060606 974558030 825405074 331123400 1727968 921845471 14135762 972934354 634484867 690977578 281202734 794078505 849690224 608711694 466190663 849065641 770298850 981185069 889370396 224975960 784646095 85530179 868415679 436980981 885200194 949611012 526860322 732358305 884575529 904428451 509944861 746789063 873445903 447887356 708774639 654699109 770773539 965358384 944153237 107911625 956401666 440023942 631167654 826140070 789167512 117295403 666454849 934034822 750580462 965728114 921249515 547704171 994770638 29550875 330204571 890327850 90470523 829001911 773677547 189947381 1678883 783268110 968463109 800251610 823086041 931729110 971317308 742843218 513375723 735148318 977353347 767578185 806077526 113749130 791120740 96669961 970911658 68979206 492476164 455103192 273766312 181889137 908421807 684038026 845443428 823090654 915353516 775247845 814609882 140055053 233773248 912986214 470055780 980853516 770540053 959964777 926848626 322582741 604915744 256757892 798070814 988018745 406058440 963199864 708033874 414155880 761254744 607858554 53365340 917888083 8918672 755433296 189804034 417698070 757219911 591236203 871077540 417974587 536271662 980852008 438797999 984936526 575805399 797065435 767936240 995091426 765750699 869287948 438075292 288403254 124263594 747121512 404901319 316658821 915279853 869309456 538399249 740263633 906488662 315816938 232990257 321741038 461900714 456396686 890242706 450619627 979430551 186561208 361746760 786541640 798837880 484496429 660218625 277174026 992675079 824907124 49237154 444756256 847197738 920672705 573516550 921253112 778034621 404056866 746101123 781623163 911959959 884298769 71129759 320718081 741156763 942132114 362252667 456064227 808059229 895658361 225135354 106966048 811322702 830506581 987249497 934919687 656902600 929752426 859102857 779993968 794193025 924405968 253076233 277506858 970461853 358828958 537674197 839313996 993214111 854164879 112098035 904382416 520891084 990287037 749274313 696574754 178516658 126418865 837823521 447160427 934579012 204051493 772148445 233246457 839171817 414822877 480881878 351801835 374678722 893800611 391449576 566645697 934676010 394321543 896459735 825020941 9824958 950588741 767196670 894856169 627921926 46757383 115572113 109651588 836051338 879362478 993423696 763789271 846242387 505584189 968904141 686503401 942976529 320594895 375031738 976642680 878201427 826055698 950498147 737020247 673478064 837372943 664223069 973640643 103392787 816606538 449244518 329958864 484621187 429074417 227945077 927908654 817544964 686834708 498943648 981758771 395260117 840080250 936970658 978965402 61388840 273779181 989746478 443856057 945850851 102332398 813995948 327138918 776246646 276830232 581802316 660246231 888121863 830585110 758191790 249623415 52586025 943736257 461402465 7651665 924031170 436607673 992957863 623823988 867398170 427696569 517583656 881113884 32573620 56455440 848493660 636553576 747269057 593835479 37826041 232726187 855749111 466065561 662801966 26537647 983589287 117799207 789593654 927114841 809166500 60323871 772895981 16264911 796114133 608239047 998388917 100721809 678060499 887051457 740101566 865145972 235330645 723492366 935649497 965507981 911676531 736618625 529143923 377313910 214541825 924218890 225753199 929387452 125572018 95116537 331074290 856619531 823539284 171720445 428324885 814140889 608840945 763289837 776641801 565245076 43729767 394935191 881065021 984409811 110026986 910764382 964521012 18988894 977833353 496308402 672783349 879636775 751092381 394212294 592851209 306367831 416642077 500384734 950478066 869081308 507719852 752403096 379470330 974791439 686244798 16119212 679567967 920802706 837053190 894852255 883050197 932259173 977933417 986719278 424359841 670875203 884541969 695554157 760521206 415428386 683949126 987209091 759346715 730584265 868445120 794264120 161080426 331390232 400244179 369904555 219060292 366742168 927344169 250445524 626808941 132806449 675852311 38508902 950895726 546523249 894326064 81267210 834272613 206842985 823811291 509521319 936451718 988692827 748893046 860742938 61670152 971088662 737810451 251372679 942066833 564480959 797752104 893629026 745805816 771630863 997060131 494600163 831750752 1661708 304099957 861324050 282159769 595263521 737907680 808853782 950252606 909502475 240694780 929505165 969072855 950411985 300709614 744548616 949369027 262992179 266880529 895067928 822250730 886572271 759629253 664248308 913126592 817916370 872579666 745231169 754386029 929809465 318913121 914440887 968115588 754377429 991896506 576177940 115993606 187183459 703294623 683835972 625659107 844869572 211582451 66009085 506880957 100761756 742398759 907851648 747379346 745187494 199615972 740469632 304750093 992098873 910397148 476361758 927090444 472489347 77859515 535614754 933336342 762486339 644949249 994607968 369036510 419507637 600703813 762682694 336194433 697889956 903097701 161305450 149473537 794383068 901166630 972687002 555763216 199679441 932541471 841655525 907858248 485944476 992966237 738016554 209324585 936154347 757682326 743538450 882669983 537317172 660831987 498472597 809002834 807994350 200392427 973892333 966703909 836634302 817057974 201996125 456857564 166383857 548278250 500584093 783463376 624186185 745744200 970824883 795694870 637407685 172999561 114237386 485255172 367623230 392329724 595099444 360677995 908773999 779576415 875176937 907841907 942141254 65172780 970407551 880759379 341098310 104152786 706238340 82388737 698611257 803388077 934538365 421056079 794221225 793017668 341273635 19105601 482445546 904345031 568288272 487108580 558443907 710607223 816044983 814595069 530009778 379672124 715282347 825268531 849451550 138633474 810207546 159126924 859421434 871488165 693712184 769074416 835518177 353082480 959700216 800182658 842831203 707355065 840276718 384276934 578725377 763697307 59822143 273133223 879284710 791470436 124049712 884663372 628072533 837134125 650514798 164817238 745462486 484748456 376009688 874623910 552189340 824427826 863356919 892887524 611272981 762324730 878446169 782843604 869688056 666963617 784054785 143417295 957911200 759836016 538846242 316846662 800273936 952215033 271303885 793456527 108294672 510481786 897275352 955814024 839770303 370669091 197928854 247315746 334442538 809240114 803727266 565515565 239707140 833611195 284031257 739882973 643929204 579408866 957086490 756274087 529993812 645576730 954247533 927306149 688025926 806850660 746238006 772010978 977361418 992932220 144603565 63221842 359068668 767562779 888358704 180041531 801604569 928723710 366706004 19355615 408932130 343749359 763882747 988327334 774354316 47493065 492146530 301997696 809169565 380518427 702076307 133196744 245058048 131233267 167049766 649583000 95866612 36979723 761832056 960885102 439260508 666885812 878897134 748571365 343710770 339237385 811241202 910648606 283861059 776331127 166736124 745396658 64334284 533951646 61847267 738660576 953598095 476161210 262314023 943499887 765424630 368839244 829809011 874492087 3417762 411228672 808501161 506919909 794441095 756801917 720736545 125916787 779957885 54027108 96750281 730760254 483634682 560739623 396333639 724478753 808288820 700301871 928763630 762483366 916002750 483432585 238576684 5504189 772631311 793385256 375918288 979847057 140515765 439038216 298722217 299142244 823579000 452091298 816685415 779264666 106137407 952422774 200906598 793740552 371024855 897209471 118543841 718864796 577229275 469317334 862682267 818461860 293735572 161468966 864244792 143643566 592658402 737020247 4985937 303284272 374806861 781215381 446370506 678287992 785000223 756827011 465127550 35357974 823853050 744642535 262160506 602956483 683063819 420766541 793749392 812432483 351160480 473550048 466739721 44378799 69112649 740367066 660411921 763225448 875149433 807778347 746407556 764423740 315509163 843475931 377966920 737610993 821014210 542135647 911673375 595398801 49194057 607818940 425804230 623081620 748381067 715823504 887191317 880753644 935631567 921033649 674628091 681529874 950312679 166791881 27062281 945844017 890954695 448061845 292469041 140895160 738878557 382859791 818057772 755369298 840245127 846253139 959559555 41295736 210773411 742427676 709434988 231614346 640358361 971029919 741829352 879092359 883603314 827485833 230119238 742555723 349982725 970961796 691241366 281690855 896050839 841608269 880987847 888148117 887475832 772951267 277464624 141512405 610381567 385294735 244694180 22385940 316971189 880665453 166807215 51122010 831114463 762398745 567301922 592585962 32689481 939028793 84292445 696986803 361840821 965915022 323300802 391939060 580880132 774027202 933267945 737020247 794154421 745193644 798438656 905675183 989663577 984934770 239152208 913096778 84882692 997287439 418124915 974455522 908198388 337871662 786157682 474390587 717524867 352110284 476324858 933065735 783802353 766901448 243478081 695754699 164814743 767157314 68479371 417171231 72689465 405477364 258283897 82983568 913714974 40147863 417315115 471104346 16046277 791184371 235424886 749457803 293213006 773871350 770596032 498264828 353448080 848294020 514724883 798407197 864209247 758702465 47273926 629113444 978299442 521872034 649421380 504773501 912337096 838048155 939462570 996410246 223758912 118905180 840987878 285000511 539613040 323795677 261542247 809370309 769456775 437819141 830996268 542296653 574758670 909746192 656581082 454368715 883959075 668131137 873637657 706325827 509603332 877497970 811317823 912642887 1674483 966644214 698409377 714455582 251425050 895596954 332284098 971868186 962149984 756809492 574798801 355986568 7086049 991765094 859890072 686360289 736545724 339749745 776765826 811503485 867376940 731475572 352193525 413474830 752319979 78743813 984325382 317421961 783427401 755307194 87313091 650295327 246968955 959243940 838994230 362279373 800154166 415463389 282984541 446023702 566134632 559260313 740808852 171109320 404589746 940073575 27942143 486362341 958341186 68699577 42039732 953303045 849103653 794407197 908855315 957594438 351831214 903563603 632612114 117025517 884913069 878991690 991811855 253645586 982725315 367116079 596365754 792389757 155644867 454213995 823686807 918755099 661767854 96340764 990354993 868737766 98031836 670779314 226009408 801316046 265279775 829884980 187821025 237511857 950987216 246523458 967386139 869765860 787745389 377403545 963505571 407784188 675837314 623436895 970780886 169664749 815119946 304502119 415587225 500284709 883874142 220066213 335643696 875850044 194715112 272088516 188424982 728970819 505281228 972033022 469471669 849362736 889832732 900970501 283848794 437946267 823918328 883336715 679188708 593590459 288612609 913379144 810797383 825558460 995571299 740144572 777943159 918942718 706217652 718086696 773064647 763043582 964078122 197074427 283067352 665569508 517552605 853296590 953404596 797330019 101764940 790216271 912524902 991259283 811987680 790680569 856407273 546199065 919223203 480007030 959820878 883488724 835133384 620398023 42138044 639605813 480024123 838009648 870136284 928679308 405044202 654474844 860981677 848544168 913491858 6203783 977238500 875181491 774308238 929279568 928218779 779924029 932571345 184953596 687265036 494710259 229636014 675329825 939496312 968277340 878151379 996804110 115464576 652834355 326339720 863284236 151336122 935357835 495517640 371145354 908868119 72990022 987571593 832498135 157091253 937644150 187249675 782992762 737020247 978692957 984562739 903645011 852744028 941483927 738579979 126606379 400805215 846695190 5449880 292339394 880140269 47003988 916992831 743556266 175183138 614256225 750824901 173813480 482588319 815160367 918047637 851936 935488425 878667938 694384482 796141739 864341560 898262952 62673072 605861293 511337448 768594569 760655859 908161550 3614114 905850031 737020247 704029420 315480178 827654317 287740276 225040385 846921832 881639367 965809077 759703290 647386704 873491986 743647163 938285759 400847906 771864521 172227726 191408350 478937296 708007335 33061590 984148639 301544773 912189154 949940952 729740604 36967198 618367429 858206394 684442041 218946974 580203113 784365732 926045022 982056681 418879538 969009899 75523807 854128034 818346687 760998530 790876173 871262236 829010559 852924354 850149082 985945710 248114443 841768894 935029951 936483671 506007728 306368644 898574971 403455929 589946255 750259199 246885685 426847004 806068665 907429200 483337178 737785474 789676225 290885146 436640603 500814473 812411960 849607259 910395417 485504315 385538218 456463313 96912299 729508540 802550540 951256373 983636936 928615743 781171782 631175947 44958697 839727931 317130141 829403531 789649093 697394229 796170588 954079805 276152831 292147340 100043748 688859860 985786245 1636570 781426723 751699818 835898164 875177983 139236687 756901183 682410222 857696638 319015138 403384278 795433117 318871310 738425439 414844151 223602722 380891432 945493140 932796616 633070809 819016520 739988427 82395746 947472026 534208605 879253705 970857855 922448186 136091238 778814876 157932758 827545388 899473174 906412843 865702849 226278856 624534508 916294678 550865649 935456431 958015927 951739064 840942392 844268745 803071288 381288463 212510640 977242931 778770864 802012744 148225640 834756671 228489593 901662377 892658801 272404482 743986414 948858314 820172885 883223527 838540898 928706113 739654480 903339810 36793748 102006667 557602302 757545693 105866800 761189334 911870417 773472427 937867390 655755400 208976287 793254777 746463416 713202157 921857188 510842198 366891236 64165938 324006015 977456325 737266755 790500844 66223317 629767229 861797522 763597347 835880583 109928876 128139693 456200143 141055256 884108870 535093364 687888203 88071191 776694767 256344944 867125887 387655864 589863369 907023432 209611627 479586075 617642233 777007757 408916498 974381771 849541839 103333836 818314191 721526594 360944323 445541924 819981703 55370137 136947901 881523583 622256758 875534367 801653693 961353768 632718469 666175921 54745268 913296085 741013026 46074443 474806205 597860791 938537418 377194035 287678225 721071785 103854142 593911142 861436124 882820903 854544934 60599097 962296757 195843671 838234901 964297375 899908245 990060681 540416720 510858161 415632058 231326896 534643862 781680382 908984403 933754568 459721820 842638445 556251043 905478152 939177817 368530120 743017845 998453257 858063999 804232706 239985443 469524866 845491406 813011849 796970607 343757511 738197759 810245726 936552669 104073087 922239996 216966289 626618429 359546652 623138753 385781517 525784677 769740836 919464863 979515275 634089037 886121636 784023338 900149756 389750475 239769849 265057556 871361219 775817235 764331773 119471175 597128577 894231846 485797003 987631173 253535904 397604505 862013558 524179408 951123524 320081890 875056236 992799887 481304559 522718861 696924947 890711321 296850502 86723626 624266483 410056922 313593429 995549070 978628648 30595041 712277344 366646406 499766003 482092012 948724674 877292305 419766309 438977989 927006253 869095879 749077154 425687807 802762105 737020247 472056417 517901772 211673752 743968884 644157063 973913852 901484190 236832779 958578175 873760819 852227938 501432954 370892453 22608476 966094002 452096081 511751239 669038494 505028974 147303807 287039764 506361459 73646082 926437581 782517088 772998925 893118459 783340253 129997221 955735581 274221064 732008457 770332121 990021638 212779719 768130208 734884550 908599499 376370937 862060295 984431767 697900593 614678113 165749858 335497814 948072857 849821639 821042851 798299882 931461027 835250497 408115338 516021655 385076168 650661239 294303438 594743398 831996504 124985771 414354119 737020247 709605366 887931669 126377987 832920070 880773137 263417901 944369215 823705268 47130080 20200103 987679258 454735695 845826546 674920224 963112445 585079265 698659779 950218107 880729749 180474567 665864866 820579164 315796041 975992167 156298643 525860900 683331236 35240824 506469027 492561659 596717140 886075311 115258562 980714541 505890709 380195655 340776633 224274910 912292671 870709392 7219657 187088439 765915544 34820803 718717760 776407958 53454064 563592922 761025343 907555282 830375929 554927155 256548680 214532066 803579493 778237314 767761022 791188519 878467202 93271080 828653073 396206869 300424995 667529487 768765475 365604527 377036633 972670111 833474807 447920354 983112909 811976499 873557069 906833520 488993945 750557647 534275077 408568400 824848943 888980361 858672294 172529234 774486591 616422427 844339170 440317901 949062214 986406826 752843500 475822808 114503605 550406035 411095963 276270328 441177158 323280992 789349778 178871406 460779498 665905874 754884119 893033524 767998379 703374555 932429540 881858572 88489884 744249994 249428207 979443546 960724097 989048648 775424431 912067909 287062484 894211534 925229352 564516851 663134511 114078104 797662115 777669876 862443548 680628623 214464587 861391572 742828658 882852010 515157354 677614829 873186010 605500759 251778032 829623604 998474205 524073733 300867764 825916067 3288046 964811956 437158973 789195481 722798628 9016519 976372501 538675437 53548988 588136773 646818572 910455323 801352280 307453320 847466278 810673273 988219574 170698224 224860990 917029299 887232408 579697762 360094281 517952897 787524917 625226943 597944197 869938980 848554764 579596006 939977622 987439541 69085 901972721 894277538 247669473 471742689 961558437 665501400 578632913 888816494 648301847 974983547 257062546 774922377 874669093 431701549 881351326 976082118 871364064 834934887 807852914 768638079 946571683 940756630 788126598 617607625 475641848 812267536 657465988 766806898 890781644 838112071 221662673 806932127 659721871 893987144 791157261 275325419 208451697 186464776 594295246 323802742 418001428 330162070 649909040 861198408 952720130 618707753 801871470 316771593 478067687 791939930 944091015 743475998 652329010 962401552 44793261 70331373 862817857 454381268 900811372 973905713 896881115 890165258 764988869 828820717 354411164 857226867 178236006 252038421 814063905 681315957 672617769 308076158 994321960 303433711 738837011 517272211 264800123 865094986 101003214 841044947 991069646 958662049 758540855 798061626 838986122 973769960 823320962 775952671 996585552 912979062 990981102 625632505 971134502 834163115 533366615 758795055 823757613 312032001 804293666 446605777 960383416 861753958 825235606 733054199 753594325 965120995 326920629 767282945 792719900 768134635 988287979 73937183 889805681 346298841 889721728 449375679 495362819 971046773 850583119 892699648 431989765 801924639 761146385 785902113 962233746 702215890 565512046 639553944 997126909 79900876 370848072 890645092 892747223 743029591 959546750 966487963 915797740 181201205 728730483 463543476 132319368 189801403 744909096 237750136 773357469 987555235 154950342 859204055 392298773 662601764 30406071 980730910 537377488 998272083 959751627 492466971 846474081 182819739 178711808 433961448 752876702 948614920 803987090 101530178 373626946 178984260 37317470 306847772 982062019 246384888 963927446 761794693 858592120 737020247 796737182 552523088 575420128 805105845 482060160 407330071 120622071 136346964 315996544 683464946 58077741 737020247 925462619 931717685 544741445 863426542 663019242 886760332 394568114 528564666 604789353 379189786 479938698 186812692 932073991 986217633 777535716 246667919 943161592 483789373 669795548 16474385 794878267 679915114 797669780 761135201 167556482 903407721 947509163 781626373 284617100 621817733 285215244 648547012 780494287 843793132 730728031 331792235 312457767 298241353 253094134 280983167 298222890 814412083 531559173 909226834 833851144 966100607 863015416 898907788 766182127 63146796 953503214 429209613 539817755 757170439 519510853 837532252 859472018 636764717 830860374 965323551 888199963 117234414 840631471 931563976 513613602 454141441 768487439 807044424 763146964 796601514 803500143 945224397 432614669 764648119 692053118 587313815 436581997 347289272 287774010 842223559 967176262 589965226 286659111 655064760 986722153 904689054 520262175 467780252 440264908 865830024 768558251 357910615 899656057 773211955 925653305 782751846 648669242 891976605 679875477 430711580 469063277 90628198 567649528 758745250 740821034 804797067 949844197 887087668 466269325 969402689 110535621 479304987 840105018 823979751 551774698 555004980 588639249 815350147 320821159 669932306 130009181 868249135 981655363 947142151 936864622 742540877 211417272 191833262 404362866 202837272 919598964 307633899 999179414 958553866 903599583 676729266 885662503 863211740 277109399 950164249 783098233 832972889 860481670 70699742 571778191 136745900 972410276 473832037 562056829 640786 42942300 887773777 948375291 964909922 550778206 904382858 562775195 966582260 750620538 789517292 745275852 268637573 937126659 626209162 17167673 817237459 753947567 218123918 715745441 634939085 173723332 20397446 40105192 907560043 529891993 879845159 634698885 884349713 885204345 805993972 537935265 253182216 697260370 31410980 181864216 931909306 700551512 646543856 143619748 675410659 912435293 938433421 182917551 329855832 918506183 932530817 856392310 109605858 972744626 995390486 928578204 599391867 882992006 349442759 700022006 952772373 384317913 246461671 699941379 61076536 167153812 350838151 759349388 115733202 270918404 100825049 730755513 481448372 920430295 842291621 935512699 695441452 893272523 414905790 29991314 405362880 134949536 2278578 759673758 793909594 940617328 955866529 806204788 770439984 784053385 977591136 824869950 826387815 856106251 268839846 205925992 36579665 744536736 268458898 234437208 561099472 994263807 306604704 817085841 695330080 870202288 201160188 852521961 766878860 887053246 964017232 994011367 841012880 399476567 823307543 978943897 423397525 654776117 548022862 866551371 801423242 170701884 755297207 644500097 990152015 70607824 329537740 149760423 847898528 678849770 933415956 944240032 897345100 337155351 780329955 545960305 327730558 784018493 102622733 778015265 162033572 350559994 380063357 812370564 962316477 315864201 862011894 432097237 508548379 848182869 714781880 61545341 789351807 484400088 884750653 349111285 316309866 566941649 790706681 974659987 811778646 973709232 524980163 739459791 562402071 778292769 893219228 898355809 919452306 835749203 828001591 531555390 315087358 866250859 891592413 2995303 378061423 294502087 189253490 790833845 802856414 870563587 752520907 754200301 334799758 33311686 832351053 66575204 578582328 647536843 827541110 402429432 159755792 900741551 489696009 310151438 360348281 787839466 921116974 783038890 650893760 803216981 360504634 872990373 262394774 189294760 704058418 915036345 550446623 962544048 232743214 617129615 918417377 965969629 488684242 323174778 944977796 204732842 898840067 815466257 25440921 750906586 493400063 676845130 818771124 911521937 842632529 810966558 14482820 125609761 205735029 976915102 834158978 328219194 502484476 639690231 851233828 262292296 743144715 564279117 825979347 899646372 906020468 67769140 81226250 857980422 574359809 902660227 624875965 850418177 334516108 860900650 505453511 684670220 144206311 941057806 823288532 776449949 844875605 978142016 250681548 906481488 656839445 71825410 680168447 980244308 134776449 816024182 341025436 932919900 837595322 317203450 257019875 643819980 719179872 747773588 147769598 148809507 210137808 831163723 876897897 801632192 468600392 482425523 899335493 884941079 738732119 798160515 861323098 289391069 875142281 818933910 911477791 996899749 95494238 514230662 65056867 5257084 55043967 904504921 742433206 45211325 968420748 597014623 113095754 486008524 940958227 492091592 362669357 314187451 432419706 893463546 800473832 972181526 726090666 869516453 172773090 679091062 962259539 750133528 183053195 873847364 868696257 406385229 118092464 655523658 270735116 226151772 54587955 152306765 628117445 196711022 921048504 146376072 746904074 868494230 304540000 93334968 267432559 962334212 353127163 894981456 115089933 772230407 364156518 391806472 138029935 57917821 411297388 896579399 724696477 837591634 910864639 737020247 624869328 477474839 358042174 962635599 991290033 569267414 588979553 186243690 431545432 686563244 874341214 524502610 65620690 977030964 913812374 322714387 134045674 428004852 906707860 108841169 204004494 884622847 285918997 276742462 985858830 239263206 752864564 288534940 211399117 836410521 380791319 863983816 830064817 423307940 284664794 765055197 962279295 887877056 919807115 540639280 540943165 158494148 137435854 525695864 725926670 990467182 761746478 741651247 872973559 983904484 889436218 980794418 726151666 893275043 564700431 127397706 932597069 143705975 292932253 707526099 398532917 30655454 476126130 375158391 382850139 650125599 956360332 843828364 326568687 82344832 798175073 777816993 998915321 116452832 875072271 197739865 136152689 863592758 27972255 985218472 377061440 749565415 906602948 904809557 379653152 665694486 811727072 749685934 834182984 792001431 571610217 761624204 843175264 569930452 445164181 556773054 786190638 652676255 787510299 742952763 850838347 606328363 974785956 576002784 556268556 93629321 188178344 323339892 777992214 751348554 367728944 183218947 936652804 879111574 865629129 142808362 351162453 832120024 44311981 889503548 333783980 896138128 979683003 639933146 567727832 795963962 458837902 816423733 874809454 564604396 244659011 896965562 805536148 870186568 888946220 668583223 397399095 767880924 696869270 826659342 744258665 766449605 176592819 961529086 761557359 65935549 954748496 202991488 955556327 80902896 623814927 826382917 843098739 527327405 184569489 878391954 28274459 344935564 258949645 813383247 212529995 234000433 605342986 751297331 255640457 885090033 937823549 755704867 823228840 628450429 777852375 847231058 829923353 841968573 511061822 841981640 932453575 596069631 15415588 486526739 393783958 767864594 982447846 750047349 849366511 760343796 164432027 754252794 748022050 518193656 777533716 773822641 229692505 877313706 323760825 823246716 910340587 535666772 347829939 870243949 831501747 684576277 529443431 856123220 615390355 46297676 745336024 928544286 550825074 894424307 187172168 823105462 399711048 730470708 481516150 241975173 699963052 153882915 165541636 847541977 119495748 815275242 44071241 242551721 930643362 163565569 307409983 892248259 891357460 914823095 891919110 622869873 465706825 969785601 744961106 924660655 549213617 363289310 733019282 7766802 967451368 798458886 192905598 336654170 887597348 539128509 925766111 90161081 268300651 737020247 768143688 866586388 788215998 835200355 913492696 287789866 472970754 831006335 836168993 287855250 976581781 891729094 200475521 762858239 763323701 661095551 738892118 845750292 494539031 493460484 790564431 613015460 881076533 825476701 872778486 880760455 219608326 771006479 916685271 963941044 731750011 874057499 763922893 924974587 392140261 766726159 403496074 900146360 849095247 259415865 735235729 810931733 847137699 482339337 49119822 763105179 847878324 777049445 907351778 540909037 272326569 949490037 744730593 911677877 909384382 646294563 955883600 485544270 194063454 866737660 18420254 771829482 912037783 593088875 971751370 891978652 784911602 861219304 891001671 595912533 961642106 824098783 411022918 511066165 788456105 112678995 650782508 700191864 939495883 834051967 481349487 77934306 577128038 74937388 119032538 597785828 777441600 978282923 950659749 745220840 926139645 745094507 736153041 472006362 178387804 77755104 985804770 195466036 243151813 951738547 820365713 388169813 807201413 908174625 408017622 786932684 317807713 934836188 690357945 764643955 809104475 818338634 246242219 74146840 148975025 635737528 412336241 500349121 993055516 778280573 920699675 474400941 636426134 651459754 258433231 902582701 480205716 974717495 503881626 424440910 902893594 742357985 882711485 916466835 930435077 13754171 818634473 458503706 422152425 505880927 797723656 72355601 152579788 219633520 848305789 171467317 776197111 524738779 873288598 74338618 89685920 430627047 760886117 880696595 922367053 213448484 901621254 820873565 858285808 821875969 528229632 195450469 675904633 156937827 853266849 827241592 535663023 662389430 963683248 238558899 931823679 825461677 552065819 233829608 264422846 984497762 886553806 448761640 248490695 578615991 734149368 576600961 354449808 463955473 849698887 291230755 341894285 737020247 452256854 939036854 873166623 77481918 990517873 945406985 912499042 909081261 455051782 800214829 789900052 926215455 925985555 672614482 968695256 908272550 547247816 951143257 832770501 117719559 416732193 953702574 797666810 821727028 953938123 402651400 694671158 842764007 614369232 994332650 940193542 989511126 391401120 913188354 284240204 818288969 896791117 689228861 458172208 978005389 987508845 885143615 655977971 919262820 180675477 677905213 895556607 262724413 248676954 942381797 968460803 140805981 978121179 949947656 911344103 773500832 241604661 538972558 822883369 663513843 747430339 71252909 776674176 935893908 675551327 649065147 759878410 983898239 915913369 739954347 18715047 612425330 953028190 761016076 749557583 251157743 955795851 402870092 928941914 837173585 255042452 885759630 789031418 784500965 94680306 903629438 981408533 120960436 224655530 894694802 198057987 956442494 10331497 249600906 675619605 927402822 920559853 854927739 941679608 10507006 912491258 81618402 826915899 806438911 27007311 822548370 899292632 935017845 846536930 3974014 342887355 191337419 757062535 342844711 139313284 329965745 751673962 864285840 318442268 979644454 424915644 999520361 944991251 109595652 980006281 245965395 328463671 779235429 152419007 997251709 851559068 639665866 948954440 944368005 986747780 267758952 495307830 100064759 952711159 449568431 791630587 930730514 738775214 915836444 799756107 877580971 948645656 684994118 917062636 453328611 791744530 828373182 932474091 494575182 362874999 40502128 382583458 834802809 938171450 586509739 432958806 955997450 812635020 589739907 753744673 865750294 882289346 971784920 755288648 679976713 888212971 922705570 821705157 123565513 553662795 117455278 791213094 573617448 792271263 746518849 941704435 543758713 864915069 170282688 850125128 228411091 208764921 70119920 759694513 912397360 547979264 879062081 103384172 948332500 663448718 795665826 927374502 202808989 876078019 815272912 690781008 216425035 973689282 566555632 934675713 462427910 807659523 741385191 952547667 910531724 804466220 928641585 798679825 193543027 953242453 528420136 819192362 877146679 964882961 572967109 183412537 946351210 832040211 665053983 874187710 111697342 650367022 161499578 836229274 459560802 765035033 836785862 920351817 710120147 971440663 336338804 991073550 862860153 901383434 220015521 260877412 930036411 913989794 818286953 811261319 418790361 768259914 904623758 801608442 828062863 685904940 882423177 790701267 515888138 827821664 991691622 421675078 541875006 115393093 976306153 895909353 148984441 856466385 648498397 145779612 849315961 957909663 956721329 149125457 263859015 315800423 224222332 759672425 811264996 952759910 905081043 469250961 468496886 910960974 929127703 202334782 742789213 762847596 955891215 564605447 819252699 766296248 773110970 222230855 894880041 765805353 928664848 944633171 921545029 579887109 51231665 965461577 784644028 648373396 957309681 450482042 889544826 33060713 423469412 775758154 624884244 698484817 103118998 661462718 897650894 745846787 323861543 752922039 54467784 850994964 510106556 169946195 827836819 615401505 363036212 608152510 740635849 816019652 847518919 987892807 785161263 70773249 865604384 126035196 908947920 331187734 896883992 931051879 535242869 837284727 747799127 737975072 356079647 930166776 833589286 813355627 112714469 775507724 225342772 435688257 559671845 802733779 696858174 759761711 959980636 617736542 695931447 145884746 343289438 334751343 202166886 149359049 838139149 444897909 971170263 148797145 784068953 532893346 340464828 723529754 926351615 638364017 724226072 291251287 781274116 827353921 811382710 896333923 514589988 424560578 661140254 964961393 775635501 822313146 734002407 866535136 372577268 990925469 797876204 983393484 976109 446677082 32764915 843632634 777992285 932501477 889419325 740991136 258190043 935488076 799733780 993323811 329616517 67223961 621082110 654961771 861645617 873523334 77128565 521518565 906422669 637093758 993345557 460824540 49140553 951133359 625303311 130827696 431697801 610867201 833768235 805542608 855945448 984130957 530193996 907791609 36306224 897557178 852748394 69067621 832700719 750478138 98684693 955667376 946927369 506542238 949963295 171870283 492404123 148228085 933146546 101019091 781175047 463190470 657632921 104478630 980050108 98425185 729808793 863218498 822080494 59584792 958752168 571598924 769963569 446062998 601568499 811070369 922310891 618818898 880639871 272546699 438820295 803950247 722322458 872722000 643218809 549644229 399049876 187462839 782580027 988368276 4274760 991254437 369382912 390519531 235929216 970192342 893534853 802160100 204885603 488976926 978339565 117179347 845538015 867205618 861888395 806471071 640393480 192885394 120280691 750162699 687978445 819378634 267111951 457613546 827394638 156982963 9613706 958548178 178291090 789479651 929177749 747545773 601420577 961877108 460275233 231086529 972845740 842316312 760601259 951448153 327675827 219911837 955719233 910900026 298752464 448709417 757744796 14938125 846271746 911850559 32026860 924077709 918338304 985228114 875650799 983698495 12374914 979120187 487323831 825154148 824378808 653256638 684608645 595454418 979441603 223134653 782631429 42856231 878708980 627718861 401259009 45854613 622248798 230301420 343302699 670175857 644608281 839434563 102230299 711212047 913589651 984784350 622109737 586178183 405539751 109784667 380641565 782356897 234481928 624682365 685269413 805863391 223306686 753883460 208685343 80154165 972702185 581114217 742697322 912654046 69627486 375279559 784372559 949045007 826758945 742638758 483477510 938806501 451529784 545194603 307427720 684871239 968441779 988069782 866037711 981063050 997434189 766828810 787230281 980293714 849791957 792423152 645683216 573397618 540918055 979214968 942442700 979658186 383250578 885489983 905773512 280456902 448231381 939816356 305185147 567245504 158822570 206514116 962191078 211974798 55940538 867618741 764904360 65735855 875774821 19359745 731933364 782054692 557084042 811791403 778571445 91077197 675564384 878999521 999453921 825504376 744514958 956762005 798036602 965798652 89120873 591364104 648936933 770882637 858104260 985445187 625140969 578506351 926033402 183396690 250820867 666872070 872559749 763343593 258486254 399352800 489404408 139568128 411601425 861324705 885714237 43229154 308988014 738202592 998101597 895682996 866490246 987727023 213427344 440117105 210893234 690916592 666948089 964494632 73400944 737919856 68484894 40095914 601354895 977131699 867806840 844108926 745255184 966640231 793359856 737029839 456566150 814548565 274760282 403032195 521606212 872497879 12752430 556979631 157326888 584125737 942479679 834932249 271703954 544843642 511540410 950461105 871165414 789827251 872360602 843905560 581900870 754791367 83377492 796208364 984173237 130635657 767887083 863578130 576978317 753678680 343379394 810089744 6493631 177773739 52148725 915758623 860181919 886874717 978049724 550670293 786252606 53222352 933586523 990656040 456634258 797730368 976429958 944876855 785309216 850107687 52600009 908106563 500511620 881497648 882242957 862871377 46899835 692455650 404184690 104079691 749273111 338354026 515667005 752721565 336322646 255517674 943236201 859042725 662308333 976764677 984897639 984175867 750585236 833385391 917656358 963855562 875251815 792167723 996899015 752044681 977035285 357114979 841984370 982983925 973028231 249522661 569178477 190100497 91189804 834281222 858486488 605490165 956643725 895341155 258928793 890657546 954323293 944325409 860555956 374056677 327433537 880543934 905882903 640168216 65227329 642447027 983356644 620522278 417560103 475386794 970678549 946985467 170094551 579604156 791638300 347990616 493538118 399843416 340263195 867333428 807146351 109494470 818748075 604215807 958693103 737449752 165311049 766306917 745347313 825772118 325546148 620197136 731260961 404822302 509627414 354244319 461103241 783235457 361639097 797587925 925428742 524940647 220354336 604849872 984655146 570005449 943693109 982360138 79025182 807505354 738895767 982462025 42712522 793709365 951393118 993459456 239454219 165372800 994334580 853425403 49117652 458782000 849270354 805277633 700290663 675552721 770399033 737891774 947520788 1325046 811153978 588026683 239976009 101073984 830558916 555611814 621503852 784381260 731888189 406279998 997269646 841731688 813431637 461390899 266933631 348299240 375217425 205963690 313323988 509899117 204130736 28779624 407533720 988097418 695836515 60108581 478445850 999653302 850577590 927161106 542418767 737020247 130825709 366181847 74717495 929065770 776748670 508753209 905741735 193017625 477640694 952740068 831900610 678366965 518502056 101383433 596550136 987989164 987936708 981342746 386939688 958709577 344255175 661460413 707434390 811383933 757915733 831256025 779601698 653382185 422957531 858060192 921978769 876441864 321395607 674868408 296646410 759906122 869555720 101545099 745151884 887674148 704442276 969569086 816199300 841208830 362731404 141769937 66507188 965051314 546703256 820953945 445730639 936600907 925424830 870013530 452597596 84870377 936254285 936125964 872115397 737020247 878335855 774150922 264020291 767632712 665918670 310703868 45342406 974289255 774129619 545986857 373007785 780567580 962695029 953735333 72746376 350299697 464469536 752965862 331851651 765702682 425769627 799649762 893351040 206742205 914242601 649810732 452327275 830161267 790859768 808201547 202858627 880918315 809906312 989212071 236317310 206888323 870124414 738786731 286040955 46388320 576629180 852358587 277811001 832036120 840267877 850688738 594713696 902214409 885191118 852604586 326060174 762210992 133939620 538214179 514117438 815753348 971096210 901786638 832399416 508138139 140535278 438600186 944915767 348799473 921577224 451131368 68811096 550683720 783875568 924986743 356407643 620897070 508563766 822746101 307463453 760431383 462221459 540853007 462639463 400720093 234045027 883204041 944554975 324473819 83718861 829722441 467843040 857267272 776674081 789349605 1523201 140090136 909048025 899185051 83956595 332187936 674555360 326970116 908709852 409880637 552359569 476212468 44879582 784007641 751647299 950403070 273467135 446623101 646269770 93191267 284041130 553991085 835477001 237360896 110151516 143797827 880046814 460378104 346909076 995567632 226159921 538066669 973712508 899383536 963523811 629099504 31419887 184766676 624906886 833657663 798843312 858052422 711499470 894071133 684643395 714778179 967737944 839029705 975416495 833998580 964966622 646764050 246635686 836956910 787226784 200194643 906364721 832641409 157139645 328440087 839807895 803873252 767486562 578308129 975843009 786319665 797819128 478746993 640345902 331122688 284508572 154383362 476035023 686753088 32166663 750789818 386362390 848080198 391057826 81522537 798799953 643613703 35002708 998190467 806463614 840551986 304312244 677521014 167858141 292942928 309342880 924806764 595869613 601563891 70112187 587364896 489939040 775698416 137599508 813678297 629876400 866487831 800134110 973029074 216033777 659923371 740255596 858732165 438433670 819465895 795921143 564678160 840103929 764181650 995800939 969165457 911828207 301103648 170731557 677205009 469506107 116201830 893301998 653003085 863960674 525739535 882701868 567000623 761960536 257721561 511236796 118266125 767384285 724458877 754962375 766158709 514117503 559965310 886581970 597785201 955625531 864067431 12113342 346494772 902556936 833512196 879649408 546854548 742627231 790285885 671111943 943820130 784672328 727866319 123043971 941282245 602024886 253260934 635506400 68948978 927327567 791444691 511324908 959207200 663338811 963287746 877540480 999071392 189343971 260775894 923452916 572998229 902172783 902623626 787055935 604354304 789134605 722257116 569799850 748772614 857855270 737464440 871399114 509074397 842057454 812287447 755968752 787230115 755786620 803506324 737020247 977283313 170806218 46200447 55634642 442939872 22423775 196065452 755999681 546362197 918517165 154569596 435389454 982744421 461627026 695582006 843550734 208841365 363934473 716836135 850003922 89716625 5934966 274009487 244338490 913063019 795888885 300191832 783310568 650346449 733639532 272819881 732782498 435661845 982222821 932287453 893213228 903353293 256948455 453955482 403995316 467586575 936803012 456789387 174228723 764644645 186697250 687314813 872534774 972176058 566850671 478918690 686495834 997255695 711474872 921222106 212173525 454277662 737020247 940006140 361184117 891096933 394033170 576706687 228156198 593796671 555396725 913527654 825863774 481303761 846946627 958578 951698120 604526419 245881292 858145529 905582456 869835319 828861424 999725714 561206119 985100468 286193909 73715548 737020247 868888401 9895762 806723589 900101147 264908741 305384733 319215208 849899751 999917871 632573370 589046866 636748183 660019524 8639623 146129685 928221797 965869299 267100249 819790847 865918733 949930719 802208768 680158082 855272583 964870987 700958959 702869641 78730592 814086805 835387498 634190597 738376789 552524674 514061532 912744906 156720164 841999245 562805766 401548550 956271175 859162391 511135175 457690587 869812498 592820031 275405421 707286006 912762070 942194095 902597467 42463792 893391289 823277297 215791267 845586130 866752880 30318083 750218931 830177535 825711154 188483333 837778274 638376220 936952025 35241841 878242833 819125968 767494667 958673205 947814466 403316949 297097620 747812706 792049666 621255587 908197224 960914823 157983851 848439396 787297467 294747317 756014206 129641082 940624132 614471288 88961881 879322503 941837954 975357215 720524151 467173174 579568980 460210787 869796502 773080810 982752365 861884978 550085353 779142210 190251317 237837304 739171111 868856084 454908790 694561738 879000363 127057784 945997457 950245983 839315646 822415522 258828116 394748270 16622201 43670645 127688323 686598120 651364187 644745412 67942370 324200829 899460467 767810982 749439470 832923440 388487376 837534144 377809634 825470937 611122931 744539839 833682601 982450758 41594308 569564770 949142110 978055691 423758289 559577796 93132716 824802455 805034518 157638817 353116496 816673673 840652796 918892288 761143141 515826401 925377374 774988477 986021728 877115961 806975925 983644890 977690219 767900172 473301949 18458674 801627665 467986829 965275117 464621255 863682783 752028663 568208822 432373523 940579540 792154119 445091780 51091708 544804551 854011445 318092862 951774532 979699759 794553445 740199616 923239975 311214362 895070296 904121727 743142167 346776106 496858931 787527478 500027346 517986990 3455456 412852386 435998026 787864291 384210186 532999486 449288698 556796618 296678156 18444276 169105067 855152654 745685725 758463560 907080927 844988035 991116909 188634316 113767333 161909009 912605034 49604093 409013019 499502294 67399988 33493083 738041376 853330299 692085978 585491506 195739634 809141947 887036348 808342264 818422084 890490296 935988085 89014377 977361219 947947359 475995839 535014627 855221109 228501518 721999557 898310508 283382886 783833851 920910306 546345243 342316627 94873651 405382800 822259985 790230180 944938770 477518199 941321908 970803837 60898416 417950957 124174497 57245996 874793520 798713279 504639041 538192230 849784368 776709083 693341266 770679310 598815758 801327086 808953965 825580724 40501674 205320005 851949239 971197375 942025940 415960610 684866105 529095383 752801130 496560740 759556532 752043317 936047979 422724637 857145917 486257676 761353436 18986935 596816309 923829527 763353210 138055587 588337569 837172971 199056817 295142991 899948127 996143370 304176753 965414377 196303866 418807329 464499896 997639391 516551892 778994904 761535826 768311799 498781598 541278223 403791557 298719068 702203974 149816093 810606594 894264432 787112268 778628401 753153371 999422303 386647068 71804804 589289530 919784403 2478330 15232747 596720214 839436831 297977602 765762246 471536153 548581540 963023714 105707905 359435655 727186992 983929393 833987089 616633764 79184555 978453432 249973557 405480643 956860839 238522424 913353456 324209009 826907630 969108982 688486199 979320386 562557269 652825139 303919035 790448642 429071254 486777773 605845690 375236885 784843806 937582921 947409024 824415490 923984942 165843434 857997957 665755732 90672733 738995026 759841697 251840035 553992132 916370582 577201561 667196782 757214789 903617173 897312638 777192901 540536754 892558229 955583771 217100106 780394012 995522572 816611030 137074535 135813153 543505878 847994678 747280419 176238139 873022961 398626205 860021840 725673727 856779449 913632900 877300485 233970101 557372435 68194834 182378252 851130997 808509239 552412986 602516135 984236764 519921380 813384956 836466743 629022342 412817828 817845732 336785053 432786896 867733525 842915298 954201099 121386184 673007611 679621972 385704023 974860288 739958318 566826115 176407491 925702760 787237763 684996069 563714937 931692010 941475636 430328220 638561923 883308245 977001951 750675959 790300891 948050768 157021268 646740351 573007630 790397229 593248991 281378254 947668617 921573103 998099417 933670089 72864190 977085174 997642232 951956851 898431364 832632235 958035535 801148602 339133135 851859285 205106421 494848098 491123011 951303579 54213481 730157708 237367557 925608602 816973533 390642597 5815694 908755465 874203485 314003932 497793384 928036174 49174 745358660 771631935 563558215 827261243 37796325 931367758 772725786 98548968 813731125 691662907 910072750 767210061 609347997 871270428 860135141 55731265 929179448 117184339 737020247 999611846 409071761 275830915 24927258 472072779 995096165 86481391 504455504 647113531 50241051 335248270 964390043 860418262 945771034 556425647 534147881 141274500 671370837 399870509 965754068 383812046 584295136 825903893 91437754 953395098 814007896 544833214 777524317 803908141 104377430 771760603 382468696 992092225 957603870 114785891 253496000 774007959 13627984 687729104 768541211 951230647 807025975 471773121 732298179 266894402 212530185 167408696 907541784 589032692 872373844 153039165 738541364 559219591 813515425 53890140 207021941 828427629 790899799 338506593 87814425 224878337 919779360 839938310 284407819 776244536 682673908 760025574 299356485 898574946 429313992 407164883 490559094 808479621 913941400 767352206 993010564 997462848 765246930 404216390 5536816 899616349 18307861 833773652 774080716 586615405 270132753 823423821 94832050 901216173 788420621 947954305 195530878 647373992 742771116 930088273 852372177 484543956 631958278 317004471 281520476 678571188 943846765 927727467 784104393 219325755 174456525 762492797 435832758 343518066 962415256 452809429 362630306 601793708 877682767 96095651 506237965 902957777 634797856 882696650 15289782 883274054 464213080 846548385 141883197 127632379 122911985 291831432 591143911 452767056 981833367 891759053 951082881 820721345 937930664 781996130 859957254 958338550 700999434 907087724 399448061 111174150 832798540 816421028 791930559 661535802 809810994 490957963 187694014 349531925 513355509 95620195 928751549 532826811 851841957 901001710 89129832 385625056 902731093 910251749 915346008 534333426 808927084 910335400 374846453 333864589 945967059 675838954 924839327 844774160 175861052 488747706 290291627 775613888 188561395 889777213 937401780 936984046 540512826 791815235 844528869 834922561 305373436 574380676 567511907 641329528 577163540 751046215 450319084 493790787 926237132 968954548 314085481 87087130 684575073 814428637 853750004 280956572 802770869 840644808 719177614 803930992 624615183 967333136 860798151 911976524 83071958 478896140 866131110 428765348 986442400 860817499 116831607 931873004 982429332 55942536 15753309 83890257 831268345 885354835 877091672 976347977 551072524 232448001 962726992 879660393 155238682 294894339 719003387 308193542 446908504 747280025 784735310 485601450 410107617 940517309 953164415 605418510 513649149 977350524 34860919 487812007 920382816 844114148 765539406 892350066 584156769 917298308 213229042 856995326 935730203 143719561 411102352 941309076 180112704 873386515 846437879 962451242 53646333 3581588 873309455 277327174 353433080 104375059 554923804 86789713 843032763 334522867 757341360 61129960 964498072 178919354 822322998 25267238 117331493 839037005 111287078 833007741 807548247 403992944 799372089 124835137 358107731 466212274 12705042 276531131 366464085 169588432 787207780 610547542 179164229 267426546 910957473 739143757 91963003 127202201 737020247 883127043 233283685 516407671 931892095 427588823 825637329 718198044 219773829 762235045 785915194 770698770 674654924 867137104 932249444 452950935 191023428 347547104 231128604 413920985 985381877 897802384 35663602 433085467 361394836 509956743 910163713 760905351 853285734 260082491 434286712 42642615 765986502 879103611 977625580 377855428 633708794 901363448 883036999 799121206 905172106 533903627 855712240 707288993 414329833 860407496 669440496 608387717 952489758 759809857 238278999 969581884 173349776 383427804 960821082 624442349 340359288 783217058 967199215 825656208 873864487 90410561 864910924 897603284 92944996 287487763 262665478 582134368 803537865 967343751 373082612 854124573 911101496 924842250 226385779 826787162 455715359 263326254 562240685 823270511 993574451 174138172 110561037 963047205 624231970 906312577 227833833 576229431 885529057 526442083 125050451 599292367 908453320 878206275 51314709 789614620 801897694 526043089 887565272 527764357 790971453 49923272 346132207 470219181 822503375 288528960 693579693 782239102 972698313 494004475 157130571 827325229 858446031 438825109 724546426 229397792 236163596 976326913 768423799 469508810 980652803 163879962 896036059 317132066 408702116 563388132 358902231 675826891 120144823 597374667 924794179 954239192 760584661 881466048 924650266 609872607 727188676 741498003 969447145 723103593 766876383 614916355 921774367 641200059 934049351 805958388 616738357 784338384 947961753 611413636 130521866 747195788 970899089 983705000 922217930 997064140 147350692 561074503 160819159 940031899 996193048 839369698 179779755 934457519 895940564 757202974 763745712 964103071 888987939 848657114 958627625 800700905 165040647 252312748 264602299 869872314 572765947 980299802 541794156 151756698 815329574 153818599 156601114 925457018 965043149 817833270 611816158 999255690 255653834 115726545 398589167 857302697 970777013 19207089 883169048 956012417 24429198 995515092 407535520 902718718 321421985 497006937 763915640 24606697 864265943 567060471 843382629 862851798 914102965 182647961 890427108 758110281 897451882 972048972 519935243 403504912 507884756 451943960 699566773 188244248 594659240 671791202 822379411 206051772 977110557 914659106 887846679 226770519 911861116 917235215 719237679 265434305 856455463 983913858 649444857 748086849 737020247 994365135 959702723 783806267 854721059 442770967 989012770 185443731 218693356 312521306 265910878 962729595 316123779 894172014 797826147 878179824 951385749 981350021 153758290 918564621 316155148 383151934 827854395 803839045 398150656 587117742 818917738 986295233 766538396 945593692 741322302 764706331 925969728 970661162 869222357 714420946 423619068 949780599 128136899 225778265 159377733 894770349 819041572 683834227 768362556 325479088 803396689 241448279 757833592 314633676 448922751 848487291 898098857 206658626 363676237 346912157 861380202 394217331 894094029 13818652 786626627 945001569 856757304 744258659 396724704 335005840 755142223 245935568 152487567 25873432 873878767 796610510 297852849 693950071 96821824 991560963 859945386 282322531 88073758 11361194 762160978 819838696 982512858 860658417 206952086 473383076 12695577 547717203 751048233 431616986 79396666 921177863 735109821 737562645 793625825 821994595 136665465 795108855 109719110 666668938 961585590 264587940 366724245 380331913 968938061 522990452 705195148 853871701 174820573 759449485 184119114 925515674 102875834 186739660 392531819 241869472 933518280 983919996 502391782 872364503 163349637 785864617 852987546 345351332 793944946 756087146 565449411 511736790 748825948 327911066 484331938 969563794 973752680 424896107 783348741 976527955 986701137 71943377 811280892 941660269 180173353 833117321 301938797 993594552 938195295 791810405 966988230 991691807 937699042 822062509 196187778 585965166 154899353 719656045 388929760 437330369 783003821 737350711 36707510 295629047 903135849 843361676 431863420 636517118 992333152 431137647 875765579 873184005 975012729 340871246 665080876 920236246 819640308 769740376 709377756 144989615 78742773 826903468 474780725 820931654 745300562 817285416 936888191 45454115 820677653 375345285 305451855 908114967 871483853 752370179 716769279 994982580 928328532 577824978 129695484 775002823 823677994 943772548 856891150 44121079 846383263 832411356 424195801 609931349 794779719 655830004 799713139 229471027 248076088 487197353 200591182 102979157 867825492 782141394 342854610 379933308 764431000 60125005 79996473 294458497 828091107 349568218 956613299 387030196 655693146 438434202 955482016 517008897 651038489 778425704 893331791 437173333 970341717 113384108 494810850 240078490 897586347 59855944 656401711 864461046 242576360 661933444 728847136 615016037 428537458 741352211 786191196 952840555 782535920 844894537 987347271 862926610 683591277 909209046 386730728 868029946 68831960 717346385 815613348 782933663 615713785 773351407 742502320 767451331 948293818 918841354 805182644 168278540 406156750 773460012 525353419 937699765 995891797 572613005 795785868 215810918 926385146 813622692 801934496 839164952 412241034 906161631 971498320 854339975 125875222 975518405 989235190 25954094 764136884 838228111 961279037 29024344 850076641 926844442 264067334 618590280 784882161 790519872 707714054 869814129 831031059 970619550 836408323 354699445 683124582 584858773 888799971 195061159 817133274 975791697 737278098 421151457 90723166 921644532 341172465 836399968 700561176 827199445 794337631 840140672 844619890 733892031 897407 24490563 928112493 821568613 892461438 956581032 784580760 948072523 919078545 949977224 947569101 833510138 214648123 992389394 863319874 260019835 568950760 799306321 133585892 193410883 645886294 504975743 970535782 321135957 313055243 773304296 887601243 909451951 617689833 54047083 865429087 626810260 767355469 569893292 767822060 236238633 433672180 970625410 978740309 54665436 700759978 839625069 404440957 861611000 982390540 869312634 962222656 525476764 915524777 270470050 543721892 304606772 734049972 565208812 508466818 802294689 780855924 939817098 899547258 928528193 293533001 485438592 534404395 779773987 233098785 887806002 798786260 591981904 900044755 878904338 792515337 745580049 894074785 789838017 772973771 781452729 958939741 893579968 426343729 838062276 669009857 144294564 302231748 82527776 18782072 835369150 837301375 329575175 930686336 793282784 845966919 734268360 944006726 942678787 754502626 31067717 956926347 573805965 833168939 171250149 705526967 929333413 745780606 914777170 994043965 981749930 596015343 268129820 681720937 12543455 768770589 321252 278587583 186762616 847158746 491574888 860299035 833819753 993973412 82824756 127340909 967457059 250726007 889344653 616016518 793954766 273317214 914376069 105499813 739800958 394567511 999076016 39399511 732535372 58607577 977301861 187497011 953928970 817039801 411893309 290222202 503340972 19354181 682096483 487638747 557675325 906494542 961983051 889694891 801063411 315536295 71357985 763525746 940942468 857239716 628092027 952315065 226672689 875686681 739263389 851876039 949902083 885918014 257428571 51766728 27365416 949343511 592065561 412610424 515948685 250616354 841994408 274665525 517418975 208416583 62129920 453503313 940092983 994962970 740924617 74218438 113491388 974789892 90150712 230215461 953089008 218395237 827737860 957610598 368313839 889822749 545968341 429341698 297543939 88336173 904417804 208638528 19753754 937972081 448568514 210070280 714095629 821151651 86329951 758286440 258284732 760247199 132958074 786623790 603595210 877179712 862384440 40523733 874360670 36724473 952620634 742446085 966465010 623691708 958377154 425298824 968410656 936488836 243413415 186973105 618294027 683421467 976656336 515218554 978251625 894006656 990436549 430653741 324654630 494432352 984312964 905312149 323463860 972683280 807714019 994104722 899946239 763628941 955681872 997031887 860298102 866230315 773483515 778376585 708024235 894922247 168458638 768834371 193070230 641950860 532998305 169206240 548134131 615362819 349888466 951098468 454343918 797232462 977540057 966256532 666605337 797381255 394466018 628563865 839633221 400030729 194010084 792968546 184067092 74795511 506794895 928308894 838771062 664650000 833791805 631359518 30763093 976953169 46311329 533161879 847135419 225934732 55290237 566944250 960085008 586656124 876362405 851899931 907451343 986275317 863250608 760151781 906290146 737020247 791049155 803785772 796758231 667735015 865585494 175564621 208497075 767514536 537213573 975729625 52778048 457392595 188186822 41774781 644470747 794835037 881084037 931359572 720981083 856691974 441305937 848875090 89314506 107207580 856898577 760170036 275848359 925763142 829890405 903289254 96897957 323535879 176816122 966812263 488338602 905786951 199896488 830442952 770896237 196313586 371335449 440338464 521912435 752351901 867993891 613788108 350545443 790101577 365627545 711358551 886069400 20125698 289332658 935715477 255443381 910461633 441381999 19384304 401087327 961577656 713919251 334435502 85299336 825936850 477337969 134743758 721582749 676784118 990947351 896955488 886912675 769664278 959692988 807451254 46997542 375061745 263818523 131818310 423209310 954048556 339545419 224515064 909830418 680768110 145068352 875328282 847648269 884844935 922528482 668436414 376768315 217811542 942963148 777363390 648741022 23277996 613108222 760461284 865775738 99445148 650391837 407747406 823465205 722951251 447681479 795620259 45875214 391139361 577727549 747477192 848127308 950936058 737356855 800742266 26586822 452576310 848407126 647423427 202872212 142434579 149533860 617948875 758488863 87393790 461197765 134253877 816586905 803898218 771600379 633117891 356281908 897258305 321730001 902180325 179002249 458623353 840530752 853390253 751940158 750863459 945405825 637306379 557388852 529109785 540459807 544842158 956338258 672282762 200193023 47844201 853447993 881414795 584838511 766153960 671237698 887171106 556394809 756034456 202608582 946314926 929579298 367050266 775682288 922850948 890925833 370507115 969326528 904496737 243658947 245463687 749739962 914889798 445350423 577418868 904904265 928847061 377765068 603148364 612592089 79310051 883157557 834974627 15989761 13307716 987044889 430118057 91723531 743325302 793530668 739794752 277244153 197975571 885396804 778417610 661701313 230781409 609294354 766438782 76023445 396327639 937326010 743570501 246993916 62278746 303184752 913127251 192234424 863029423 766393598 515119442 902618666 519028282 843379351 352294825 940936388 56362085 54769530 918729848 935524394 716718938 546762620 34046936 521645924 279498834 973006817 777721227 649386806 929705306 814618042 800716140 986360902 422433710 63882814 248401194 560116053 784366259 653705145 982451775 828867952 670702046 621243188 606352026 927251021 280313113 755851861 845089054 571328548 173554176 544067476 615542846 460572315 48035950 878418215 865066627 572807274 865003109 532307308 965964822 751697656 849131176 916055454 892583654 934228395 281130458 736253329 442013766 765781154 297724985 591445302 954595061 2589304 388218517 610496702 222334156 654934467 896943880 504092371 119250229 912049417 706082572 850423871 583466386 778942474 273224112 659738650 670441248 755659368 897146431 853022772 608307714 938541670 513920814 870833488 199528985 145050584 978666833 694040968 286787911 578867259 988728689 14513966 454743807 733313265 981639363 49633288 539665224 806622472 561467251 774155294 352572944 791457934 993339041 612921613 898193058 690696311 292930574 793181491 28319329 376146031 757630408 935717719 822271927 948818203 206268231 728462682 998654021 938852928 589724761 198207901 63193549 833485498 577571519 843567407 324342827 16667384 859408325 663375906 785828562 892807865 540542684 235178763 971494954 263010026 175171792 487693356 519177096 211657440 891589621 193030264 881946682 714423927 892210780 930554978 976058931 830302994 744608781 800097433 757319230 809073818 805851111 148092368 250142738 472276125 27643511 243609046 696914181 847587755 277117958 991398849 856429375 59022767 985383982 802034020 224173443 713089858 820468159 172293299 771523313 417352095 972724649 711416950 795533269 851596318 212854001 777856937 966041406 479007996 874617638 247504235 440239392 187217558 850834764 892681004 795247065 597031708 899506425 902683018 837803969 591328398 745881660 172096854 257508036 155834476 741084113 385996299 72420678 814380176 844837551 871104414 857694965 369411163 63338138 801949089 910268802 629555348 145386582 175349266 749473015 429035402 10291670 338064334 427097110 170654844 489444896 765919269 863419495 936558448 930846669 442040760 397457926 473088040 776385864 770905082 180084040 923535291 923163449 467847076 898582711 383854391 160649694 739780211 544812253 163773119 802139726 755070907 704568822 913459315 858837351 764845979 796138529 786726421 32074072 813588239 955549613 635550317 282903132 662810151 740700097 962075649 840174815 303335185 826584398 23229597 108867099 989041321 97996637 209125698 400286363 862419719 369390712 913784208 996010958 820788938 416688584 269499935 961300784 194357437 240150085 806774550 883591962 714117914 555491562 963075214 5112711 834879127 754020570 854597925 468223193 210194269 973802775 827200972 14852722 988151533 922090317 470469278 962622511 959603740 969043678 854567845 56469880 856133179 921131792 910650927 670640787 148215099 662271354 518000590 997159168 923286637 618515294 822353198 950646811 378011728 795293608 985953597 771210455 909228837 164122196 751579475 949944128 67959 953788629 297102728 465340860 272280834 271270771 885626441 462289109 955284549 174939481 103813165 787260225 395497715 444496703 576155576 779976912 854996189 986241209 791611627 742193157 586910005 690116493 784721285 495405087 8317358 617446810 793924574 967682869 468973406 527927270 140362382 876093479 867173581 515493175 441260904 14059629 731267765 299806057 67777599 182191963 132365365 750751529 308767994 959972580 757618375 741770131 845274790 169352685 997325858 122035772 431697010 341977839 62927191 134021455 138077197 475468961 313652005 323774774 975732966 850968597 936591229 9679009 170310170 858692243 814986452 51711893 157421608 141646545 861195949 974930552 93651304 81543418 899845783 888462477 821975992 298166469 93710449 187985468 283823440 675040353 793261914 786671799 786645610 324923524 922908835 75655394 861801707 886692708 844629949 791982797 659766741 495084214 633498253 3089198 965552510 821622794 81990768 307581307 939018355 558949507 758001358 571913471 720441547 967024678 933362703 869553842 59152934 530078138 35892050 652214892 872300671 730502090 767799136 968434559 620924311 880157452 120986928 788532150 815243227 20750313 4364679 472016207 362442157 555961730 778176853 428077959 913274751 374270776 900850464 263637074 19601532 440538074 204277540 983997257 678996428 11833528 85265091 335211168 622017755 958878357 203472841 637171314 646256390 165589957 996834844 305988783 765651258 160810238 642485 323603549 902912456 486036067 764901034 566794282 622840159 558401365 881786722 267380939 841637163 849410920 973387309 661465232 813508609 511654644 332449581 831661970 914861740 770058856 833631651 950044027 171610957 826500007 591365442 946996254 903711497 483140548 939625222 5721565 915459826 552744761 450575456 19726713 648847203 150265757 398017264 787239377 766305263 379569143 766972508 839960713 797086687 711263 425437224 858996414 990119298 686252199 345581233 918961040 974737610 891045325 613107147 777979519 156125622 909445406 769314340 29188065 816592130 386485286 510370221 893380560 979663897 791537553 791240735 448686330 800707105 774315123 869761489 39692468 227679429 961377880 956187584 983220876 271544396 256710401 212298769 576364599 840846899 910349147 6062717 576333332 990677505 86473921 606235212 770029337 237658878 504569935 825800777 812351585 245759448 460774645 702943651 853190798 894857650 899028445 857703877 844911257 18536787 389378588 908585971 928071861 751187806 863761670 530618641 761157629 977791093 819137795 683188640 465829165 266962787 249717858 254538597 848214415 847244585 969559033 874358114 904147011 875775802 846883027 864864307 932078161 770996247 838948311 804394511 731842399 849643315 888402953 924668122 177684587 132170060 802411535 983393689 878857944 827947820 725897089 894750273 289338225 979389578 851774472 101034567 708581516 977123181 274826414 994087321 987304948 311832638 859688003 524598780 421108775 962244027 441236589 805994432 886211643 933053342 434977421 343422186 634556950 724713077 316575217 110246599 289214291 152265505 374433703 613783577 465232295 955163970 102771506 282996765 930398978 607347125 791974195 749729215 747295732 826044365 893478187 853031258 998214159 487791994 479205953 790061548 83930325 979285705 541760002 185190783 458153428 139790210 81261936 98313920 841717590 499747566 109495784 397679730 130922287 298105553 843779216 850955863 491335305 964525301 31245265 378789343 889692665 769594142 781646908 763451123 739571613 170729743 384373327 942154674 244349846 47774923 850949269 246865158 5146952 941619705 775778549 447037655 654396700 923799958 678627929 762323344 1973708 768041989 986356457 640011787 666251766 849530153 231077329 298611332 151237383 63021601 472310532 918640113 673014662 806255997 19867499 924853870 958245061 987179745 727236724 278991926 934507768 5563454 746230504 929227002 635529712 811131471 763977720 901713537 803458008 168644689 743630161 893035718 155345056 485815432 823982998 820425876 866506537 573205446 765837908 982333891 807842660 348334385 985665014 724479873 862297431 774307138 406668680 627241817 768863973 187716217 472155195 761819289 784797254 722813180 424081708 994507462 996096947 742595457 509602297 802510961 924974533 735513235 889641213 72570016 397751479 745299289 713844941 82628698 837476702 18405243 863510860 737103709 530378333 50437661 961156005 960730429 919522530 501364930 699722984 222348609 534170120 195734320 937150870 956851416 90773849 805597945 806751060 960042592 957008245 144642730 319487168 994568095 89640176 852189805 859315477 758444955 690316997 913677232 924152237 730961496 671222718 651821588 667651086 807826893 776751161 710450513 289151681 989227099 874211610 969917628 953672207 286136583 1779989 497554265 218885224 798409527 265380654 527700452 782382862 150842190 313702426 842879461 837017259 168419547 806339793 770781056 933558032 996421978 668081029 5971677 210385952 410191383 83502290 903881176 137052847 944824042 143435624 242292616 415349817 49843129 97960635 612140139 875405043 245978272 853738952 647799060 562451555 846585504 887402668 842116231 922533947 720858499 804090353 267206650 677558420 941356185 860513787 830715072 383821096 105910675 833824239 331615691 239726330 237068681 784346679 470123417 786870593 431240069 915047541 797166038 910934254 924255347 661918309 203838359 533666166 778740424 729738595 528371308 476349828 860427876 68125925 292187584 897216295 956517660 239067640 768280893 306542951 848808368 422908373 491625799 773835632 850413808 781794318 430210946 89792386 577474044 695515048 318370259 982416712 832502567 891416672 987224830 753595776 890045226 959694683 915161964 541636418 744080998 866907423 64590909 861117919 470298029 928801368 198393131 950269820 810818038 19794682 853555220 352373425 902447893 942353192 517382220 145928426 884695159 735272432 438698571 746586726 587705215 546627776 901263772 822807268 821544893 32288564 546457779 770534832 859691811 640872806 722207993 65389179 949718030 62395674 943510133 812237147 142308362 973612553 906381498 253286677 618043589 139202011 966575537 46588014 397754645 961515557 312742948 906223411 889850719 860831116 690046097 836570249 884943798 114720758 850947159 462174712 614541339 481118074 534993427 125113759 202509500 739803478 822742982 874684204 794024017 901614269 758232758 489973882 894090382 973569028 818946748 772202992 274750175 463002293 855209045 633009340 772894049 928455030 7709653 902360464 949568182 480410921 959562289 619718844 427901726 739390602 703143271 927613915 84059808 779696153 775082751 880965848 362671307 942228047 712944723 563571937 823808815 409573597 925150592 340227596 669955551 746285765 279435503 345062748 775757328 113598169 975204130 369764792 876986127 491880981 885715951 954542268 292166173 956490545 663454235 160443629 671682725 850608941 423172926 817754961 791414488 794070522 964472019 189477210 899834938 965197288 948520469 820259297 454907089 38408507 328630447 653705396 873383972 738282147 965647962 834147013 651984831 795912474 813121527 910240128 384432989 888686937 909315665 364710247 490957399 734945157 307328783 906311679 940725917 748997467 974562515 750769660 931578806 788078398 80008398 925051898 957958288 237987976 515283837 933547537 952606884 979519208 438392056 125134348 963536849 835574713 965511031 403253105 713853532 923578003 50508052 449737911 991664703 201115849 922326660 903540830 953068785 802409584 452010013 812751114 637410836 22235767 924584711 995035240 225546785 811857008 805567167 59021109 623579445 240602543 313682763 693378990 913714193 900022845 675361311 864683213 241122036 931909348 16552499 760988793 951789092 759832605 802026855 439851441 780885752 846317076 822702934 629456913 268581742 810572903 907438838 195926047 682903502 47339170 971896184 819043621 395690985 786591829 879801104 603518808 937233170 965805905 894168686 825590724 526941539 826915510 822143302 24834823 967337109 126650922 759190333 725205642 582588269 996676283 474858421 710319839 869180682 529325831 771701855 851524833 944555069 627646594 915057423 790468050 421536507 232029262 259439663 572211027 995865728 459857448 718460639 538155754 106183249 760886354 820890251 823082747 929028926 864643363 761761309 876260845 838201977 478116085 983566809 95185322 746971755 674798723 351758290 289667711 903900768 922243404 13279598 380336919 922474999 770994397 469337542 869130979 920256792 976265039 811139801 194883774 906636341 570744559 301949310 862838196 89611485 47341308 745555950 816574925 722834280 772832997 538419426 835496033 733188021 85488819 35906475 841164825 989340761 653213140 431109400 985756302 866945693 677016021 761255671 72485919 445984757 280268214 597840599 797030534 166119939 526561659 187321829 269899669 942319679 503621793 942328087 815244960 520447173 563841891 636485819 783648455 180026198 758434590 977140270 928746812 214987146 541979488 799679792 880723215 755528281 446025682 843394242 633487975 882735357 930043345 773238168 743990194 833031813 826985205 134892888 812100422 819971285 35950403 404509780 200388434 125877130 761655028 243457498 963946513 863813606 290233983 344261555 986121285 784538183 44799134 764101494 292027749 881920869 223012252 708490782 451194062 256113452 209282583 112718562 151849957 900403705 255410615 812666723 930512850 979453236 747870181 875895399 235593417 344427979 220674608 861212852 95093983 905599498 988534799 661825017 986325231 143503421 483430102 831469921 860769575 8783826 624946296 421006858 144081528 679352883 950618286 922477227 545636212 948022466 65375032 90003703 365753528 232372883 606596987 194339334 243921282 756966253 962973991 174072416 28882938 896994407 486183830 956003031 210445640 252963468 745943039 996068104 909604322 226984315 103005449 953627347 843503315 108854092 165734694 688823714 960639385 957406624 767732720 376519442 928652985 922750978 839905955 880094385 452261781 925262046 864704093 740091319 859868304 415203880 68193347 493290162 994809043 596943418 238649070 515066102 149281517 885424447 787062619 924180955 555642483 322713301 880220990 622414827 900330210 915712274 772398558 252838351 843374597 564836006 635716766 992466531 915071807 988772078 737324864 925742962 782291355 829068783 956226767 358401158 539426680 837103672 754468037 609625024 996246411 761562727 488404741 769807332 500766954 805546330 938971479 660231100 602805948 55999317 690950294 915578164 863605771 846525287 769717748 108578605 518327450 842269673 512424383 945077680 999580969 284484445 184187550 609258875 260764579 312412618 884023667 303774758 456497170 997091334 392874366 859993445 508827759 462580597 562565788 219657289 123113760 963408040 727092757 835121321 915356536 752472325 30186121 61047680 887819043 78122079 999181410 771965831 809462470 987796023 521396324 359122495 897792488 429859535 418939940 449045368 873128512 616060304 598313104 317069095 773082378 274814843 684547329 916459564 792297395 945907317 50271112 16687514 660268334 936493752 140642564 278680191 699050232 455794736 662408665 581951649 285463002 836721219 810083399 957566705 404163417 966630235 725941268 149224024 987076214 887503246 936900673 193251646 995130668 996900903 752278798 760122778 295688945 982346104 73450437 802426251 960168407 789693937 673642044 313398009 729509289 995396496 37730676 46411728 286583060 910807808 280725254 56420015 306414739 910481263 892324625 847623874 903107145 322392290 702195091 976676733 218250043 406445039 522246075 793241371 920087816 98662720 885421566 595950833 875249213 71478711 27839246 956245199 621848939 501855832 942190722 105827915 687096199 727223383 115040870 355346160 999644935 988511446 786146829 743760186 286196751 567648479 763424733 252371270 865715174 34374613 615581309 61340624 873062949 908339926 298930935 25286337 511260391 774868997 720337834 948441447 820453965 125305373 784287562 807186129 959246789 15985491 977282647 845934170 358160247 248228784 79389193 163944086 940753391 991105662 22057107 639696459 25011643 199535886 741630900 4503094 234993449 788617672 183436927 784425195 175293938 604025986 472488897 657634553 978133361 583915131 239413055 593929163 437223230 867870801 769358928 242271750 797929234 790549729 804099713 855408979 569679490 907982182 894727243 859828830 331299436 772469511 877496244 262049602 775259872 849250473 672517274 781174777 818352358 247488227 977940108 42661108 903197624 778539547 947589144 788911920 961569551 83094931 777251556 737512782 554519117 987759881 772360162 816674458 844835810 225699385 654108872 993117252 359367397 919090787 782477240 957755869 971705548 434306566 756699123 900864911 756711970 123205866 477545904 331818926 953543936 749063167 287398526 913193117 29724639 101363370 879171548 904989612 964742391 752512633 847303441 954629001 749267662 271992648 416062356 823650844 812249425 524742014 672822111 767566896 884619595 96353273 559873889 194694357 898926345 647365845 965383650 803402036 791803407 669720565 812954265 264216385 830207733 604714481 829801966 863870739 148244225 636867765 435218688 209228890 508563222 306314011 805958224 560099350 195097007 743106891 817441174 978611044 470202506 58278168 771436671 93106800 774296569 266619284 770242985 763497056 743134404 916273363 760513605 976726492 785079727 816013873 883005966 333637630 845063010 954077374 900386264 260282048 976239861 978104205 534716150 95671855 962887513 868453122 264974076 48011615 979395876 992111677 936103764 65241061 400198566 971605638 815038195 659298664 963568280 856807454 779128816 178878129 870121635 606087128 660321144 919388974 344575266 433258497 205900886 880468114 116457094 173277569 608311351 372185171 195715536 744058190 801286458 325885119 864768080 506792824 819415102 871789772 364344935 999854851 533838860 790628678 687691373 581161492 103626470 200314195 49207773 275198433 415631317 900799848 951150874 749381837 977991820 790722366 60919193 818586377 793852855 853050274 859934290 321104527 897494874 335400241 925413775 955049702 872611445 893638725 919678479 138143925 888157998 514773927 832985368 737020247 559395990 275672975 741902206 952864465 745801656 654363293 784977863 741844596 845160529 902905808 772095552 46197271 120825425 155340262 792829221 272158116 216539705 962089974 966270426 565900329 857420598 939064643 20858273 808040477 120309554 246864231 426175333 228158047 444684817 776177684 889215069 384325278 982941080 968294374 946241702 760023339 468292743 743841208 680335902 437676653 599129783 998425045 344895670 450355632 947841324 836434637 853414982 596797701 488856184 756374994 361779267 752031045 948123639 621001457 979775674 158927015 881614625 194404145 179055228 615957089 811475965 157285785 132999381 59698740 552211467 56565689 889031104 761948552 685758377 899790398 486752773 852125768 111811121 822529046 877017855 900937395 855097412 604247052 48164475 980023997 296910010 785340731 607249830 126357806 194162442 182609493 738808935 955930456 27391171 179307959 895194538 947790640 394604068 783268994 746531493 753570516 38193774 69679938 712904329 754442442 933067456 747157647 340597114 571988593 810572049 704627658 300688942 765772694 785385377 965032011 233836288 19793096 319569856 723537917 374411955 488522239 769913098 996421495 783891349 575163865 807008576 285778021 625536174 355722568 839400946 904214345 310407007 2244103 921013364 894283363 300167317 333346370 824000168 969766792 554721944 990704433 980447159 968573389 260750616 314856106 839103747 733134346 753532280 771748672 843731128 984882818 173853032 774032812 262999598 911270704 915089619 676217439 116884413 571562241 570927090 6741101 969043817 421719141 56864989 903797859 860413837 318129087 428607182 86703799 813556959 226732327 724580711 234894172 517546700 738154386 926586830 829915652 953671997 808641678 184766987 21522891 822561191 489074132 828769668 453722643 549753013 830718663 997659368 913939185 870399048 930059161 860679063 244498050 275297311 964593127 500061042 263226513 217410290 521386035 369385220 965091442 447261802 851892377 967370448 515797137 781435304 737020247 811269395 432733715 820217249 423806180 295157506 890323581 396458656 792333491 959598727 925051289 67030604 503269164 855104537 925291219 831193571 999446389 955089546 911640665 95817743 657230975 251145662 963727555 527081496 115025824 794954814 929278028 757708499 502477791 464134502 877088330 898360340 763335429 821223137 424002953 954909760 780057812 976135156 732790162 767266441 134124503 154181249 342596703 31031109 746632963 713837671 928906753 595812740 9858514 857845092 574901916 851250334 219682437 759619455 879824002 678872699 996160403 875600150 906160060 876831733 970495948 915079834 554608301 662290544 675537074 359638215 896478101 678453245 501297027 370818519 81551625 323700817 996446457 187060788 764144508 483681152 871731660 606004863 81131382 802700787 761844487 250195423 318033900 659377934 678414904 971045526 520287231 364354030 55502139 921532517 774553428 809010245 982533779 779121062 889205004 91933494 907261270 876858024 138885447 758156180 886390376 216940710 550805178 984029575 868032946 533183454 832843873 804691387 777989273 728126468 938676063 396649499 446541130 609075844 887171369 128759967 770031295 629933671 845423715 537160263 351526738 754554685 991007848 264953274 439066579 466122856 315689567 928874201 756472727 684818178 326963405 651240883 27757380 810348140 988631438 35776223 905873811 750465245 399948583 394138022 4902460 262460406 598031724 833771799 144102984 68730611 104887388 831453766 784626613 723072986 913676681 919633229 166479994 436567349 132592017 399459606 270892682 793863754 873677666 495819615 752159491 125144787 931391886 407306832 81176882 571712952 156191681 957718470 842100481 894140850 959961146 962708673 484947319 149262061 707553009 841972852 951729001 404966606 927543724 360124821 367625198 998440821 101233270 252991636 922230758 607606079 522519771 198453181 948407425 351438260 201988101 429316640 190629374 948528509 362057307 745179225 831727640 996522686 825410735 421189812 457237196 185917416 876567077 915639001 987339501 936739092 724093799 902898126 889832978 179684149 155101693 785283980 962960296 362039923 807174893 41592467 196046578 90085894 412154363 225229422 562009143 900861954 285240159 678083759 905238583 931142842 974402890 44733819 496319609 454335420 794260457 985325860 797054537 256278992 811103053 792820677 903232516 158154453 740115305 41817935 801222290 158784854 523758819 794007572 907391466 692076792 69038479 723493354 266138609 484251350 353244487 559469658 742887254 816191320 54592662 405756121 940455188 973575973 930198155 791027227 855568885 938914262 180851977 962823092 748471346 44750339 996638012 940856924 372383620 901473667 687282257 938729481 850815221 922394754 448069947 691791214 854722930 134841821 699723581 844813734 759594654 524078414 445354415 640680933 909002655 14941733 394214812 269212402 152918818 769776022 873139385 897685612 749974647 357051292 790930579 247524540 88358046 83352627 121035578 381694562 853538920 468988009 737020247 51535354 408567413 399316878 767926432 749018382 376569690 409345375 8127249 876907135 117664254 476010931 321426281 157485251 890561709 265401841 959011242 598008737 484113816 63896980 520491459 49675085 132157174 698914315 316872200 688963739 91053778 261918947 894799029 412305407 899155215 147274732 824362984 999952902 972734310 509282087 885235454 949907226 535795404 575904172 926297864 722620093 791091485 226116598 805084092 742336589 189866186 850228727 790378209 279910816 876497943 869172920 918869388 600175217 198421210 37648068 433729628 907117274 898477150 834389371 768647278 761652933 853605127 70040831 906122892 912812892 986289663 955203213 699153457 590498006 71817464 796696977 764029496 924746409 403762257 850716555 836981401 437600435 360991902 825796809 174590220 829182283 910705787 278183973 884827065 491739905 233209476 674934755 904628657 803356579 903782529 347591363 154703757 894728206 900652475 474922107 772669094 719054349 753525214 588567855 587404132 181842010 756934249 957881816 890610668 177509742 787997465 750787797 175884271 783165958 991300714 648890367 987956067 994568083 978117138 212945561 105098253 431878731 943158527 814862565 23716537 555983549 535134110 282532791 372092836 357502553 81789323 946719228 368651370 960432734 705133231 645036346 372078455 69605603 822596095 998837348 426149823 727048764 446509609 598992228 977197262 28428857 803071110 249695698 936627474 26265099 714199090 920124965 344253528 928823833 883071621 657914925 213089242 845539805 103320691 582080111 824132349 219428843 240667081 151959438 969982438 625007971 977193479 798813711 269090590 893579359 793203720 760476221 616101308 653502191 393656675 22565712 820329868 782157720 887756910 553277942 137746372 608080700 836001709 767559796 534834400 856882774 150339213 706178640 924778481 926550342 939527689 243877219 2385921 954423088 620059933 760128577 804627572 994082825 928344240 38194333 853830719 994938071 236424586 785477460 539821645 312443312 766950480 763776000 966529796 46014275 912261011 809835011 90156067 809955012 291210801 883819385 860448874 352127492 883141023 556482157 437378463 996033132 830816556 801501175 870761439 18735013 54979386 965182633 817876729 454936418 471176341 72225681 216372545 653821892 375650874 130066306 901508271 6585798 270285109 450429063 219355860 194725525 515950947 879792148 328782316 911314464 163417936 599886298 648131499 951246466 849245856 998037941 499030501 996108782 161136431 299828018 622721301 191327568 570351075 809147377 402764234 193759627 901333172 177107861 894617247 321894566 665999923 731056192 925958054 420001320 814190625 919736670 261834530 291697437 334441355 480311892 712598434 998445305 166961911 793911601 883144365 218819563 807134139 890902579 797918213 102091515 785124742 909900707 227064831 636054946 143315737 845326923 349061010 574704679 879912768 766599088 708761206 785391577 557460925 905352564 28027818 962774987 876365271 919438579 946284048 841456678 976786533 272262428 928706168 996185060 206863470 873452615 753143541 362702518 15648597 840932324 512909461 881090262 896581291 121312279 797422806 550071850 129033159 797804111 141578790 885454670 881610468 372170405 633673341 918704400 621519951 167874300 299521407 911199395 134806699 826976441 841394653 516976027 984086835 24046208 868411034 122816716 725069774 568562464 743471650 904684596 203833404 228420456 70371676 801469033 753856989 987632943 662302987 804741799 989268270 656653687 792238344 392137571 734493296 647338855 319309750 441317535 667420856 533131763 845761196 992227755 933051468 775068079 429495240 126528640 94776047 352030445 933033340 560277481 829019996 71405294 134412239 167475551 988725970 797071605 359824122 819837428 186177241 865781665 753437041 214158674 937893707 780448168 980544315 268966484 204927717 438019953 601540322 843495418 765438608 674786693 13848729 421188978 883406555 585876814 926016343 321979530 894281379 328752664 790858547 904821501 639039399 351474350 790888394 945720161 643016591 411449929 863434457 762807159 525930254 308050194 172523554 979947810 856827987 438172345 196443826 835570549 755207079 976820341 215017508 955943021 207487191 802924001 349359825 874310364 746955535 160219156 869097395 699592881 753257367 231125099 743627188 816397410 794205752 892972798 740317490 682508073 698674662 441407675 857514545 876062138 891297930 836307499 304787673 923902979 768401954 998651583 242052270 892857436 130865052 252016739 851354733 836247818 744194599 557460282 503695146 887995645 376779117 395674273 24154440 976010056 842684346 293888623 768851428 705770015 747298017 933727584 766162841 485256896 533197695 689900693 597468989 604804973 760804765 788171279 187650608 349046196 800966876 889667245 63142537 122824680 889173502 312050209 921404678 742507714 550969243 762935073 613208600 418413094 338646493 795866923 563396571 672607505 296521940 515011982 996913132 564592429 371684771 427588690 885674157 936128955 881848451 450690123 244687743 686014683 221880643 80321494 255202587 758008424 888794193 987693896 920717136 971840417 816437449 984105484 157957744 10524180 288220924 248912101 868204127 791276164 470212884 385855761 135639970 763170673 499677540 838741079 967895154 913134821 112119423 416235794 77598653 912726160 285314167 751866732 272102086 692164372 31275927 813497159 793739544 31761968 131445190 334808273 820728034 892878760 799484823 273968510 812195410 966420572 605077763 677921839 419244735 590207868 765687313 286726302 834961916 374231679 797970512 834938054 49424135 822008169 959459640 723383114 123718112 488543520 524594629 912839200 890144140 506216038 826226371 830298745 251380947 782567434 645413693 777098798 255523605 288563069 622669865 990376695 93500577 791864276 973567842 900635663 755082895 986290427 774583464 758701975 578846638 770075330 662421783 865303229 953831169 9999015 817399792 818769848 829073168 655886527 845254430 583985433 575524992 964500557 750732023 218891143 998936987 150833133 626482883 494873214 101678540 876331263 716255390 10491751 375370708 810337971 197868827 527706949 86458995 913871594 426596940 546168454 220494975 722772014 717057038 932457184 276215752 775590484 284017151 822106444 379858556 152946998 972652769 305601612 880344839 786392624 430145418 441546745 844214336 471790247 883476696 126137950 974840367 863944648 937966934 654136801 43424614 151397214 410328447 401824159 550242572 256911033 831095357 224097037 327707103 817656560 189151273 799004611 93006651 941394463 218484295 825474299 786949505 73986270 454760890 479207340 738126814 968168530 666735410 752982127 744605301 661056178 816239753 198675309 873977616 749611456 307046757 794298378 622983772 433719672 393277644 856376528 925680139 107228406 816293105 917208481 884264082 949680544 442653008 521426056 191606264 897089810 608572349 107389982 87867820 583831932 95015988 282685745 937013324 287293555 962045482 537504766 816628574 846386757 959202923 391420992 753956759 840750831 212108434 863965238 863521418 372299144 393841746 113076442 999701746 814274555 479022051 310079983 863981192 420631357 514794595 451893838 989400803 84196055 744287942 188598776 919633977 617312174 492597730 964884017 723109881 886725386 807319911 139304527 517175231 236461038 837859797 215096749 795965440 847960439 909553580 176323460 33084623 365148716 34021277 401533212 854116232 977115683 543548356 798809924 930115008 67773664 845065124 811241224 598482661 802726735 752204434 922554325 820169345 967104394 838629351 935466651 759925172 540695165 557386963 964036870 552075317 846629978 948092831 129343777 85341028 359049003 379916658 981239790 257805736 912180439 177099007 216546003 745501557 774355691 295116251 685884760 554266111 512120537 599923238 403862298 40204332 367862286 50580166 31931540 969500605 860772330 864107409 674071331 285579222 230702116 389010170 919949569 477075198 950445887 141309633 837249086 370318770 553719571 163025204 777416506 469655670 433871396 742341092 225143027 992904477 362196889 317695134 396425826 558958427 864773100 873116002 363456779 848325479 908363146 135129737 18743364 950104567 14082588 202173670 486596865 150811368 514378412 288314434 967608346 809048071 281849130 128409347 25766467 761994935 911924607 406521363 114800139 279455635 755725940 473557577 821728793 815642592 122635899 822558774 795117566 179570626 204072735 842060760 939276572 118414528 208799389 775675838 774968335 829042114 83069787 904024551 797004548 527021202 830998503 162368202 822131942 934041163 825126935 14149038 831635447 586568113 866948459 782399699 751625547 752711916 785494887 929834031 862763872 683794339 751191298 21297695 173480247 758020742 616785558 556387943 989564861 779338929 751147343 903454968 922707529 768834696 580688826 660333072 939839638 796638336 193454474 853254718 753505106 596181781 854000492 904403816 17367564 241559747 916453158 805903706 78489889 314583098 30679409 428779149 725168826 709538981 989618064 384681543 732516505 750189587 608950312 692672189 980747810 205919682 932429874 859663181 586126027 87949003 770624528 429755319 857204155 22331664 752976972 741402791 935109649 808511539 982567664 471990679 892950535 97806845 990738743 801278010 996674114 398912694 429996022 316782136 739497902 781448907 796792286 297971673 632912976 805189733 820244582 684802235 399764697 895098692 922428044 951168714 353911554 819706641 476310987 925426379 989421316 449333260 256246779 388075929 389263560 800607540 108093255 839046719 921322781 28759195 143729316 2269912 484201990 638297239 580893559 420180787 117710878 910134295 353333736 930272551 807253442 479450358 443679130 644820053 147559781 946492249 666889853 766129924 97852811 62575581 801054185 137391333 255567260 905285776 933243806 243687531 713880148 819783611 338890600 113731382 901796563 579488754 216044298 852738798 507440501 958059010 886093860 427551828 223274320 289654237 450041362 887939445 458603574 839150615 35098697 815833634 934885725 776761826 356696635 777762428 765906005 864278706 550394450 777466258 588555631 943465993 147965312 871723033 718725683 960051005 747442307 549201229 878367352 58992463 818601752 738909124 585745717 635598213 992754758 82876870 793675935 992648505 906086035 984823748 646459505 847549735 52314866 214643532 912620974 919451400 611067917 630799975 898488011 833988286 925628923 685374262 537852567 919846783 845036725 895437743 761367010 38726839 237334068 859011165 793603209 818288229 110660401 751518658 921413368 792209982 356549913 770122054 837459798 381640518 851359026 947349946 466029159 915804283 797892447 885172530 845946252 856495549 401526690 730933158 884984838 758193259 756316176 135627903 781008332 465700908 985504238 881833903 943922835 553975834 515414898 131846492 179597852 628711091 965697581 763872570 561581523 464080194 908186496 425802052 994292564 138863059 30120341 221423731 551928448 793619071 112662308 749210171 327360281 368260246 226094130 965754435 616958516 657298874 743004000 773717562 892341284 813770693 929023079 806614633 688115012 567400287 759115204 196530282 822576353 572361191 879820051 837132536 805076946 959789299 803263466 394926112 828788776 972137661 103569758 365772320 780544624 600863593 141641986 860488536 725092181 756694436 986635423 694001395 177232652 835168364 778900475 853259415 815249479 990731845 975740299 7674442 662955157 910471011 779696128 874115851 165850622 754856826 164620371 651134663 371096356 264590713 700757449 971927068 469811744 665401635 700504671 248860384 850076604 218460882 212177068 184129275 249422907 286563480 65022245 606827710 797230474 81169399 821304656 959121196 308098112 917468752 229281385 867792443 969488660 319323550 912004226 981128619 554228624 554182662 822315660 309465965 826234319 938190992 684712111 195547327 523863443 283038107 842907825 829785296 777822444 811575309 18002125 168736326 842952851 174499918 813142840 847011814 898076193 983675872 591679014 690392208 433088823 355958386 445036202 143698629 427664892 221368340 594488235 223528651 904862687 898087092 459314643 624804288 825425223 730894778 457492896 942353041 881732444 933897914 889432145 69565424 186299155 885499556 996914081 596816400 20441815 110703905 815848335 601796060 263208899 958259441 806917081 951503094 556593722 909287602 29645003 922883726 989678714 764493930 449279369 595029671 462106640 842157444 501719166 947333531 268910272 754574338 347005866 770286305 749585074 839562565 837104695 785249240 292545153 304716013 213916866 881748032 491613935 724298918 471231644 743254900 708799971 645844098 93049912 755611919 925459390 715124190 738965895 420984927 965365916 849309068 414337668 971207523 955573783 142886468 573727327 994251994 671245317 981970904 926925269 762512274 877872898 927562373 4737782 868023493 626084367 101088768 634261337 975214462 856778100 641969516 917426682 861435486 745666671 915953085 449939311 873356762 744896955 996586973 315299935 417152179 923403652 856270516 262144976 770237652 453872924 353410623 540754567 705968758 10007886 628530572 47451376 904416492 784326606 833588877 526591264 153664372 472704012 917497523 804949583 776674659 681050867 236715007 234922285 523266672 590745357 151588931 727102927 896602779 731237738 817509954 944247278 348223418 621162382 103035584 749389884 420798406 891938495 589695370 768018273 43850673 100836325 924244355 343515568 764944582 361350527 700298856 92093920 695814438 976223272 18959396 662725679 819381384 655556246 473995999 607080794 777735230 241629401 884532747 943361464 159173122 516196681 668763530 251558683 460155329 95033947 461102815 871042793 85011801 851955623 737020247 270141356 249359420 13496201 645053661 857157775 159257162 691701780 666299685 852711313 636853570 748618167 954461921 871091385 775675381 991025176 846955201 609804022 873867714 423897410 108238370 906373497 961091199 738777551 967723464 758880870 857267591 939199167 683009169 929226218 968694523 749534339 82504482 872483646 671638981 899338286 950417226 728062388 886322576 30592149 526364077 661863251 741245864 826001242 380854833 259445753 92736555 149532187 849795609 758168988 151082445 528080288 11694739 927478211 863651613 785255058 174805351 924410504 402081570 863827365 968827175 838564843 23271784 614175939 919092799 990740000 650659726 927063774 188573135 855652016 913520576 448103716 622866020 361408188 472103703 946307802 810594829 261566911 821478756 797653351 751700898 62263600 621835840 120368016 949800103 269391174 540769655 684050816 614128598 366461642 620919118 91826329 899797380 934730340 782258610 290247294 784303234 990362678 815099522 173029752 972977515 276655256 888380738 746520170 873437410 580381454 50864624 9620839 254605066 824031249 248677339 194693555 129284281 580983909 868090073 857575332 877582054 932144966 199372847 931535872 739661512 292373429 184343721 151142394 226446191 798963428 593527347 417005790 960254495 388157557 949923356 687595874 916329370 908164535 763480698 715327607 906957816 868765503 783862425 417036368 339312427 774884503 397109977 859508675 948846251 744987113 112261987 513838803 978397847 338424797 304140421 126416989 8674771 720477642 343471436 840215327 732967795 748924666 555166547 428934234 931408966 370419332 595443496 462953062 381435473 691877514 919016160 483504858 8968911 325497013 14568222 288378009 412468467 471080551 521224177 979897677 897301221 853017432 274341730 844559171 80369468 726722035 753538706 790831399 963324492 38377245 818569975 800769497 381513498 924218876 766512426 113988518 899367039 192659613 42705330 193749601 83426129 737639147 840581115 692870815 153944248 350371767 826386889 779099099 853809041 123705203 791406954 599221038 187353617 966870455 576458678 343365156 790427361 68959623 544240785 521690299 952830300 924188285 777709814 273760876 827974093 486965203 72664795 773033415 189934686 921645265 425278811 38316841 683247277 879139984 492881636 885036456 25713601 396659875 142459531 427603468 789365749 875467259 996781065 943701212 212351714 781150309 965437463 757832329 834289256 743214921 180986878 866262272 994564570 448362873 898766042 921507730 989864526 913172240 261966087 2468193 273283072 441927165 954726117 996844313 806108277 105750508 534992147 405679592 819862289 747169314 322860839 848948320 632362674 956954592 949383933 247529341 389766917 791212243 938483337 555415435 880025733 43658154 363799382 868289435 426488240 921956413 40953345 929646720 26339059 647057147 289478262 293445885 917577858 442117939 547286678 422749697 815946180 958453230 814443618 135792580 790593722 229891392 258876977 453766374 679359922 376996629 711319269 747213621 49916903 853776820 757806522 871858367 976943526 411371096 696797646 863142982 187080509 929942545 385813934 820511922 786909930 19491138 700584938 525031203 840362999 374894277 304187911 331329532 168602628 191047064 404631266 603554036 832716807 17176845 852413484 758314545 696000187 751548527 810360329 997860767 814418074 468790009 956345590 814704822 803899026 979058454 658353984 981068339 791538024 906640125 692943184 547195461 474610947 364361388 307617136 631133388 320691484 799493523 808670440 371603240 74744406 222863359 294962449 186083099 757995553 738014774 316658729 744042970 949732960 272164599 507921568 277596141 184687609 605497655 672904814 291691350 897159189 635947623 763902381 642173219 906117367 511690593 983469930 997477906 629147689 647490109 941794191 748590285 560973486 802829953 585808922 119371311 216401712 322140656 985311983 64852641 899199210 803732343 78627227 844834231 843148735 751560514 997890117 863946153 449904755 252924761 822802420 921261684 547845477 898448636 860047798 209166042 931836283 499359206 184949125 42222833 612471884 808721646 695812418 959650294 277174999 123759855 655828166 692082256 563381576 914921489 763097036 755912589 332684947 937433233 974784684 713529817 862159083 713276504 836643167 881954678 363039503 540454640 770644298 967051918 669932935 988245629 826338472 953526111 960751245 398826019 580758309 602151392 916627177 37873235 731607977 912219045 473058584 901231426 940588839 892283576 860065815 178079743 749566019 902232988 866455228 26524478 203766162 760818026 648689603 999966313 990303612 864315841 950985537 473783927 757624187 976234257 956948688 901653241 802104831 240377800 511595241 82698083 956863023 953040357 735895228 917045115 33468609 553969425 842453937 139335208 921025099 853131344 751356258 449546037 84906807 478070813 914411690 432628485 344146973 933114879 233698572 814564586 742509166 664413761 304963608 762825676 754255462 84142805 882037314 952077884 856410841 741263163 403600764 635668494 906612883 769865494 967065464 765403964 207676586 806972861 857667365 972513916 941688853 863764859 985408122 964673091 15977827 933098985 882943403 927817005 825283821 544433909 161943301 897304213 920067713 861282425 974017158 672599706 349285203 841696109 886616515 705932056 631535532 91973010 889377646 957109424 551009973 384861541 170754388 836082214 312096303 477919991 166661743 334532130 795214907 195386453 80508346 901481126 29075898 898580978 278241536 991058259 847447499 746304186 328506596 407233791 729713900 537094942 862565257 865256326 584129212 776877452 996481347 406376923 496274270 205536631 592719345 980134386 991030129 909943248 853955884 453938033 961169249 669822072 149370109 385150112 920369381 177442163 987709846 47856741 996824760 859715052 50784219 191351441 996229957 918750724 814836175 622746494 311619399 135837176 12138599 760210963 101587836 91394028 687883823 98567535 226288726 686241403 772392161 739692879 182118721 538732081 764026590 803246515 919771937 994197906 568632783 158417343 773290312 466806677 95245274 154142333 209370741 109449685 117926505 614802651 942669416 993827821 680002362 583077307 319029016 255727361 829535951 206493223 885099322 878244927 820187672 769797722 799139174 207733342 830367935 903002990 878479167 325859332 485683087 330321003 746284259 943185179 331688624 684793567 573917550 355080047 971833667 849659878 922250733 267008065 866279612 958526718 93703702 831403667 597645994 621028984 801665594 781549661 406962637 40660088 540380366 121400394 748754884 333169295 921535337 894164713 787750980 563895090 937712297 166932374 850416567 769320365 974918593 771960069 995014491 750491933 932856628 401807223 881413302 40103626 450179911 921091188 337767862 812892013 341721264 234699469 815708288 937728954 703132391 13791726 913624496 109848444 408814753 852725747 759758522 855176396 759316501 921679086 70012696 449766541 967414664 792673914 605564228 348107582 809950994 97710141 972058123 762845607 764076382 560290787 264483360 914681611 394347164 838640671 231834228 462033969 634827367 965250509 960166106 365170185 689762580 863894684 763253014 765095396 903519165 956724858 661263029 515563823 192372027 836196448 33891331 790079451 902534813 799425210 779052367 972558845 756869807 842314574 143691340 930761780 680934619 632123434 553659108 190779642 985597323 237724899 259224830 352090253 836374721 190297598 934818562 897135773 904357054 683682720 335215018 235531009 431109205 337832905 544016175 839405106 292398800 897508517 416237496 758022090 770655678 838532422 742187312 146327836 599808155 748751648 562451266 177228666 847143843 802774527 783147532 440266716 943904169 741439451 846779251 839424324 973648019 159187176 788485338 763714925 248924495 471183293 295942437 542990817 892047809 392233249 790825416 930823869 523574130 53608344 994007751 859254714 692343179 884222537 729768800 772271414 528305393 387406123 806882421 721106923 740768836 66998007 873880804 825365514 884388975 267319059 168572530 59596360 914845423 532463750 938280043 962083737 221501603 903813132 314489019 834635477 763513929 952216155 799001667 795658126 884939767 173931211 970952762 68519833 142770674 313898506 936744212 780932192 326510160 862551390 40250061 901184881 975190417 110983055 7851567 439054123 557668948 311015396 962463778 835943134 861949103 107593469 601228556 823936274 746360673 993982058 952034677 961884672 568274152 631412686 465917482 650294965 962477260 615904999 854302228 830360650 896932936 383489903 887096689 944741547 40525711 741491704 270248847 641390328 148693283 953094183 386193644 749252883 738973970 965665385 16047224 883655674 851233514 603749295 893042630 398580169 287953437 924343725 178741736 258579861 874712795 985583358 463450289 870468496 857947783 336194128 169298888 259049160 978286676 123327330 88993824 574274427 494854580 931827686 958243761 830481905 353304489 67939298 872605473 246249535 974005812 123709841 322510748 381911013 375062679 598404147 233026398 568408851 11184781 400643492 877667902 343416629 112237602 968091526 865259998 764262130 870952318 750219431 146946507 689998973 298066070 906566513 36167564 686959656 676985719 921789822 184960035 197033813 997039418 391202612 695859544 459562454 771766785 745469510 514575278 455118595 156380132 527452099 380904724 949592807 860046041 750813596 785730533 27811450 425123797 572370001 557435560 572916476 350110357 138830536 466127812 933387488 122749267 994807251 847347122 818053074 908834911 536381344 620082330 130087966 415862597 889042357 932234266 29375846 979770028 828961722 807155895 978275037 64986418 844091024 56137618 875112913 948518532 149486970 965670915 928403213 672746929 861317441 563051841 947527228 945136358 892698346 122943918 586036193 808004941 811947797 351929173 921359714 72484237 989532104 536909317 822567204 890104747 939659791 903263113 492392217 150964368 334480248 830573949 662908899 690448023 476010606 667238644 855295061 924286949 922356745 43021402 134761444 891021986 200378360 974298720 866723285 808630818 742935302 118706401 770954321 980584122 626791890 729058929 999656978 551848345 701278913 67469474 819861658 980384293 670180382 396498387 714246397 520694580 764947020 865613382 962894854 251717008 738765591 981445407 932957463 606215033 368473260 507196677 894341648 162335168 828726117 178780389 108804190 990553373 745356287 594912483 982039724 192388067 6458651 195948837 839497745 199162747 59433506 827326908 107276494 954132526 166649099 422403463 736909365 943863888 772559595 109004436 624387030 965621937 973840956 843157640 116663663 749433874 283393016 62889908 474390318 996738973 139997798 5369948 808904243 757765719 976750344 951730456 402374902 467189783 777290177 94698907 746847352 865271787 737902550 547101699 644558867 545201373 835468450 182452585 493324893 722530672 765171248 703436230 518235394 767657310 981188978 589289467 403458279 512543687 933241384 43563538 814841065 231576072 867593684 868464279 752957462 684998339 300977630 870212822 110943079 363687725 993310518 946232684 754931170 346481195 370663281 392184587 419531473 961701375 209691230 540271162 87679291 789657574 995832976 373242809 847302017 219095808 724118268 38165428 669830660 655235954 774091470 852932990 556707259 904796393 739354369 575032114 963977229 747086693 480685118 644813863 959647077 166426070 647905464 895997858 167976118 737020247 957745028 591571304 866139051 710735338 772549315 424203312 572714652 941120595 407469262 999708616 259296635 840603492 370422521 931470581 911254716 588363288 726739187 791030684 762257152 893569077 746701876 654325370 845163206 872249875 76930331 889174915 9993448 809375973 198047773 390240838 209696900 401372834 963394771 962682379 141436848 395881033 861556041 830974235 516285756 540545403 765206559 462240106 419730856 78979152 928250676 125045143 755680013 350702396 982413419 252743504 979719317 296020218 471326694 582533377 785194636 754302746 802450087 164579304 974253809 875385041 458502267 472079050 734417082 860626944 935159011 166576470 544842650 846483210 70437496 462583816 874751737 303420306 763233700 467879870 341365213 131362599 986121712 178204923 147681647 183914424 999620164 712371786 652301329 4137911 408727200 201032432 793027143 193671152 926116557 928462637 846832681 921009449 48640980 866581628 870647722 356970578 479548430 110787859 881504828 125575793 210528989 771463074 638618549 491170243 754685468 909608083 670427303 437373957 185078491 949582807 990439272 206238320 956035625 818618103 20547244 283608932 886423307 437522573 631775817 205247502 165813568 880841475 921827339 240064955 978028246 386989567 777880060 235534665 845831309 749046405 639726866 977478949 56605093 466380335 669748419 285924534 3309596 397075015 993830576 259864329 393076875 959030473 239123359 39020658 178835051 949855221 167333242 338726753 907482819 488660556 327009756 816855272 739006105 148538751 403154239 316209506 974614858 43983659 634769558 438934760 376486178 869549634 935897677 260465631 571068311 731569010 883103094 164466858 982093184 878774531 810375093 842067472 673790390 777694176 862057444 477348080 193782104 512610492 750995954 477701848 959630553 988679922 765989478 808105294 963749468 677786823 921180471 496475509 566106050 592483107 888929700 571879602 444092938 879378902 61493629 888155113 969801914 61267078 592784090 947607133 366667101 801202773 34914499 539255930 966675256 653665430 848438606 156410377 467578445 252859368 988278759 645279909 599980111 218772595 685865365 798719371 792848349 800463962 594382094 777874770 810716495 191538565 991765269 908080881 998867884 299697637 849176252 320621792 875125422 483149945 990380508 530243439 467993706 837225721 728737273 897642313 129455815 386055484 933684696 139313434 812957665 361792668 810978980 804342532 807079311 963886672 828266661 930809223 844123188 971076444 56789133 838210953 821620763 301174482 678777738 911724706 487244456 81192523 985233980 638575784 305510814 232737577 994944769 736422537 57759255 510161242 893903241 999756528 879990832 655323474 22244172 10957265 900963068 948409879 875736786 992021391 960036195 131497841 465593366 195370230 835183262 868609510 48232774 898850026 837192253 290428501 933046624 699727956 809806256 239102320 882658398 155962265 574094932 831376841 908058499 304389206 892821460 411409152 52359601 932448233 933871856 989573062 490404964 259342667 879265633 960770726 151098773 861166239 916388289 882591647 249671056 921172605 775412310 744621736 762327259 109797315 746909894 755150148 319146527 97736900 656898180 792785061 5708887 825177085 807133493 882335644 110856456 350938630 901869488 856623297 742619880 85350634 458502058 462401498 422532752 424394716 750397912 623564000 738092746 763447190 849090471 755399717 698720624 23490576 893212415 881318051 840338979 124509102 802351401 911039342 909357543 852590625 275080354 959691877 773256622 961100602 542479428 226106893 759499401 430937978 485556941 2453711 890714205 711328686 708392114 204707945 503154054 893534080 529585524 220902926 923850622 911125162 751925293 509126251 831764242 418949313 243284221 843055457 340806837 706738183 104333058 895720229 978946214 561674699 923890284 870955961 615946206 930669437 289045507 905518864 218967499 809110086 912763139 807201600 841581319 117306718 586907462 834799226 978586559 345288080 843065377 780753064 328000755 994621187 905132677 971486606 125042393 611411915 496153547 45056500 182563679 441972264 693508381 395756335 101432373 628256966 531299408 721562564 796226041 194785322 917156237 751353708 806072829 358894694 430855776 784238663 492345349 278065948 947849468 737896860 279556291 376497936 144240957 906118239 978777976 985299892 90396091 921756572 795534204 857634530 499927072 660339498 920405683 706651467 624662120 46133767 801669030 282365524 210845417 879993487 162119167 832021193 76347732 62892878 665838568 167742502 216455195 63851157 813497053 997056914 93427762 655905808 78350974 514594869 606945431 812276779 904965311 227768672 491485752 216783602 891373727 504349325 454269201 823254157 118586821 749734718 592010072 673434463 784545819 969168701 921150117 658702503 996301122 990153028 799615469 632744635 855216266 425898203 481203748 138407203 933885323 401893723 757290750 978094078 227778774 785877502 2271939 225506132 857617237 860504788 888239345 877790948 991987712 622159150 809579590 883775869 813819826 101954709 917069118 81055402 799914898 262897493 966502664 684366317 15433924 870013190 315866636 387483989 256228172 294441472 980083053 538484043 380852752 876764041 154713164 302002417 948144778 818793757 590394913 300899213 913150138 780399634 784804271 695422755 611515898 760532583 421954396 347664480 818913566 533879179 98721347 529813017 761132265 913722546 36176874 809225651 987802216 959101783 799978109 792794500 161031487 911756942 973382229 703606858 760141361 884980098 988822685 617982449 765873083 557021576 630169496 876128099 342459101 936286894 849205180 948816618 453506831 819337311 955642183 147466416 763220016 559071568 756449317 930431483 154958760 654345837 791856022 298579515 926743955 830213896 953205139 540244489 475292054 61251927 726597085 406394389 837363984 100469222 663553862 234535216 869981017 418644585 787352620 865615640 855940872 925465483 991957564 679014265 878864889 360763498 985087637 758214870 929472589 63218802 352022924 734554803 854166405 810598877 749059091 838787921 248764962 136192932 845687881 932285501 355262637 257820298 898070384 41162533 965115231 317106279 969416995 468656286 798041960 695274172 932399174 779581688 977052178 212640164 73947662 800384724 92713431 338201299 831556560 861480361 882863096 965216001 460421759 940025528 376232974 218060689 275460068 819425162 855577654 905150684 39589813 779758960 122707236 434737736 203920209 818299916 614879526 434010300 589057973 874938830 311233151 272584387 770247113 261686052 770526564 949027827 293276415 952524892 91520588 667601726 932741231 982693923 786571799 478610378 118559529 929164056 2195458 936120849 244128485 470826548 948598013 833161288 66097565 948816705 34618517 833215791 797729150 359986140 505470543 476594874 889152466 751513527 515833066 474204298 413871799 880859253 824069538 172804812 918398679 965118853 869424320 773736546 739027866 860097076 985766752 508505749 300921004 477769591 140141723 944252349 605918 773964285 112786803 841601765 910892257 908291140 313430187 110296321 563199163 862641688 881825837 743570749 963787136 964509894 766273948 991182407 400293318 267139189 914334412 918133458 815261316 387255980 831511901 269536021 713764281 930162881 111390975 143100562 445729692 693747635 913141585 790959978 881438400 770771491 849039478 42423283 521215100 243386375 837285784 467973353 743563718 523990747 995319480 54233965 927267282 841222422 630635513 29664365 942311428 771339761 844834337 59752100 121042851 741276715 841181522 818569587 763171845 996643417 849734588 150319181 836953840 572055107 38962404 542040912 300621963 840500723 117062751 824150405 162609167 606016258 787021537 969272423 979762106 606062964 793508785 894621914 877311876 829469027 715214810 78523281 981004973 836042734 946463453 989497042 754760430 61592677 907005492 921751991 692067334 66754066 47569930 3620859 763698989 906965476 284098724 919203059 384930713 885455120 840805786 816862068 986347866 592789372 892027904 766933458 754618453 618253278 684192197 608772872 801636094 877856118 580624525 717051088 994232098 886930857 765965242 346334327 661532558 936866059 758169829 911530000 74683530 436808008 487138944 603050352 148923827 775436190 905629447 145806944 767751649 797471821 940149146 866572786 576383031 447373487 867890053 789582928 51367108 711810298 551763560 771393093 680462190 800993111 731302091 281470109 610868660 921738143 568521406 300269166 693231880 797436800 225647089 34188648 671818992 444943900 813676524 939614325 985644108 43535613 800461064 275196925 379049098 470464937 706028457 415435407 216653130 265227122 787531747 775472786 814055666 996451762 929661044 883040850 836231113 247562007 846839048 955663085 192193628 335639480 563335512 856788863 55317356 909717751 34493040 470117015 821783872 189242281 281618603 648111563 815054072 725764549 889837178 967426313 826540592 807744145 171162827 769399087 935516581 54829745 842220828 774265319 761811479 838729190 874181285 113947855 716115679 877034358 381288040 871389221 964741885 423919176 962309126 958355879 768874620 656004494 766741333 18350599 976248714 515864722 916863698 443208566 267113513 66783472 690106337 945353188 810850837 755371512 871033921 797119633 306354267 754545174 297562769 675059872 784600588 735375582 989008629 940999104 472142108 679766572 774661293 90858283 376559734 478423082 839793050 760347599 66542312 124022125 872629515 990793453 763275892 315725037 350828780 483962146 815839226 851972336 383349904 966815909 211038442 303780337 597414526 434283808 833259284 541498510 151090561 374241959 847297909 923501142 740902818 916957953 821834640 551751021 395713517 771085666 670016428 972078802 956549077 830899594 981850228 939733556 687721302 895242053 825613413 904013196 658028530 771333976 874962408 556558029 975122233 818057919 777039547 282830853 999425435 918152443 824958744 534689569 957146666 792366329 646764042 444599548 37431327 772176938 11433992 465036500 848319930 277854942 671659728 667592573 317096317 873568399 870000007 187199685 443776169 725517035 618870391 731920222 8026326 510631799 925484899 883009490 878653177 207011602 544716509 280032403 549597428 279495701 712611892 746616629 739897669 207892032 751514105 37124870 404925650 843063643 699650232 753326114 702660374 213893293 167264280 968202905 897458773 631057287 27395597 195685614 845346398 420984116 369530096 844307286 741075488 818704073 856879240 421311254 429664858 785903752 897433789 840978678 854010220 962351811 763245142 353499307 456448799 297800550 943663858 670672733 229070621 535011721 626356792 457013445 864038358 886472994 831486141 979476456 785412443 326424387 906822092 875561376 310838045 829773323 887051937 452882917 745823386 578033128 128390701 285223398 150449851 879578818 801846660 473077719 321987922 889896008 884802243 431580873 2333085 457881495 104157919 238374435 767855699 939656727 616627296 543026857 6927916 442726468 841820161 806913878 960136595 99783618 60505910 892144543 139314200 111700749 773263344 825845189 869544447 983821785 937858624 92331010 918504932 743474685 939894337 730355323 262697427 643975168 911700270 70352062 897726027 550138249 363644341 32998894 995099785 812791005 273838836 664848067 809408844 945798171 282207334 533005632 399128069 772262793 313520590 885036685 299528515 674865584 166108262 404230506 871414364 984306359 115240867 947769482 785435775 856252193 133435197 64706966 716879009 594699336 823507247 844016046 474041674 859057221 776453920 753280361 949352301 886690707 892751990 152494302 792858638 801169201 685027294 776025845 940739294 531208661 875964070 229141607 79658066 664007362 403351291 261498114 751596446 996977974 977193088 771580372 810699642 239412090 468913948 920620975 628248167 437338432 601467816 112205190 612964308 759132071 510000228 982722541 982494726 252071525 981390251 147197418 468523329 239299236 539392444 339163503 78877297 965282959 466722909 739633676 431870942 788150055 978196174 986342319 786027578 427477782 789946848 508633952 949749762 931405361 695875675 731064808 952856630 892023755 292855045 660362159 763499384 676580241 861184021 899737433 222231384 975437968 827162540 365360508 141084695 654024163 983433688 829668018 907559203 985732351 743399991 364818318 737651608 26756932 948537614 609250732 539079212 682055697 895957745 181180149 902620362 548485864 56167613 785451391 620776897 631255312 924737178 359595462 525049205 700812030 541928375 482410458 979812152 753629228 933875542 531292522 766814348 906778750 240059113 25665378 77460104 403841254 435733358 831658917 801416080 11562413 485975711 55406924 268983382 737542857 830850375 243942158 204540344 819604543 289939215 765370004 435120661 783376078 558245735 118674947 813532702 898136232 968765429 172843735 182410037 908811150 532524268 742973685 135741171 608819343 981705764 104173122 504214711 370747728 299033068 804336296 585835544 595249810 822074832 629253253 801379061 307966050 706557143 718701951 871326583 570002748 469340431 760767132 234033930 865742684 890761156 586885853 584869717 824980819 335869763 680168574 757679734 41127553 267470333 715075872 350255096 472160517 563335122 54896438 893332185 825060760 183632225 479158945 35709651 90986137 656066511 499613578 823748903 769143775 898609704 849587695 562653232 674882315 834746821 759096813 845228042 601155162 666210383 402901246 319250488 82200155 925846598 771511804 878521564 136703100 999759372 182293643 774679571 35461104 160896648 295337181 47519520 951432491 765885250 775063165 760268851 974569438 749511973 131233484 873691908 697205417 983673876 14793954 904204152 318298438 970611028 769395775 984687510 828660996 546295168 607255742 249195866 960874178 935172355 223025571 714258422 550246620 945322589 714682083 762811308 832106020 245136352 510630100 495567528 584754435 936917993 770374540 225182950 882475524 242219118 553935996 847272408 822465346 878092091 404033417 963408915 513215241 592271249 853353939 656670854 600209541 935265015 980288712 177386728 67599715 53088928 999043091 215121319 370048326 89536290 819995549 141245481 730624536 912311139 689027443 346631454 989722123 758070025 464660075 652447358 142495002 811400812 601486368 786415813 524088468 775844948 877638663 738685141 367909252 450513051 766396296 980833927 864060107 666929551 668540789 460466804 622350577 519638303 855514504 874593799 772904606 866767998 677879641 963985022 726946736 989054226 753490417 837773415 746858587 350911072 724369490 634988797 956916106 136296378 865953054 794728708 749646449 872750230 404940412 747450219 777081868 605516044 467743698 333041445 877104977 571303136 814612466 146199564 799118763 723479260 772184430 353019375 161231074 742412257 205576509 952546194 242907321 805003023 838858202 881271481 889682959 533180602 278817686 10400009 517718305 999086935 89120638 426110753 636729317 890703906 809361806 818980587 639939369 855215172 675271447 843232325 343727303 945475466 908036338 823995030 848210185 465064130 125234484 12468639 992323542 590537751 150332437 791115440 986962955 447815002 392913447 742650391 833333635 88246383 42444194 541182857 444540311 62473961 636121423 868743964 547294641 940747549 680307066 177642276 785698098 993378163 330931340 716261009 965511894 819558676 832985635 785785620 800737708 481139007 863563508 747666812 67815622 933266984 857009766 790480265 388181797 161190294 977170870 878469819 528311935 17966733 869928420 139967035 513027245 958066066 524997279 979622896 906636485 794944790 897393827 618407955 955213859 669095075 887921276 756368434 756450016 655515850 437336815 961562342 48296462 230882438 945135517 889003385 230754998 308466212 502966116 885764409 7505695 950938414 778723052 913352291 819876394 856164280 593257702 383367269 960860794 399783198 943308989 770491397 914252361 972180140 743843534 748234466 136550938 986523948 337499962 53634540 605863941 943410044 395357031 984954888 851128207 649091821 464600799 608464142 912351436 64677933 796256458 50105977 246702937 459607471 827957761 950174978 559252229 180298849 134650875 103482006 816051939 148947876 241769422 162353375 978881377 971865151 737020247 861426628 907146980 764726649 856039929 827683365 13021930 830528473 760701664 947292830 830697648 933501304 559112209 939206402 306854555 49198131 833747674 853862409 433416004 409287065 139322652 667545314 956435870 828056606 219701925 935656087 691931587 409180594 927673793 921037613 873038814 951517057 256007302 316414927 421580971 73385287 687662534 952115818 750406686 860729298 785620002 931094071 989402300 764179442 922642084 704740031 102559286 803995506 878805520 674069285 913180543 197566113 200370327 68453069 767580209 108596231 528521307 871465579 344401801 972388859 451954850 334172066 881694694 870515619 782587591 867405383 957018274 824867697 364569430 376606317 398284312 970743303 116552006 700424933 763058244 801757716 956844950 676200380 951151113 927885992 977401588 445899760 852276652 632048568 167442240 851946142 244593755 933757175 912316586 845747145 472109367 705563082 881303937 231531463 949960687 761077009 613253753 941443976 954276306 998531275 552014657 446245011 910950860 773384498 836943592 97310601 83178915 725307603 2250433 788540985 5199341 336489274 117121589 884569534 519145745 774207269 60508219 543621709 286377065 341908541 714245505 554668137 512978862 894458097 299393658 877488088 114492224 769442966 221891775 421352421 537243605 401445985 828874936 456931459 999239711 297339942 216700120 977833987 795330485 785909163 879329365 37800272 751040813 996364669 924368643 562952478 162112275 591664789 119309619 30432825 871836498 57903770 280759639 803332550 44947136 727437646 781244484 367979717 916156045 830996063 780722267 963570114 875278874 665847922 789130886 877518126 445634108 606082894 537194548 849163025 256534367 204849955 858671391 585847693 994155111 999828933 859369060 351885315 732591606 722774020 914913414 164238088 847065545 900451186 832574318 898177415 741946728 154389830 872814809 138768663 313843792 788975485 860293713 923589609 603576109 954279616 862899095 879304864 924941306 91233294 162232194 169738832 940268224 304273806 477460589 217364468 749358314 931172298 957242463 967236487 765847104 72020788 323861442 942749163 796653244 37822548 532003129 929125158 762819722 872212927 695363615 785678049 766734384 513191453 873925584 599251317 346082217 769925119 103556057 599194161 930186384 359394048 2365762 836724512 617912951 107998100 462185828 98270453 745657799 852916312 985775057 419773436 296599703 509072860 844096409 329593234 645208059 77837064 566335549 882543521 405177337 802059483 489882211 964002224 932945447 578459362 758419649 906009433 34432441 560060140 577319068 696145086 827994253 784882861 799021452 788239028 511510631 943169498 954527423 784880510 881084802 755790252 884818066 891456721 579658286 934819402 766382221 129203155 483529906 887220868 549509894 772113331 732346171 747009511 865042289 124702299 78996268 100221222 992187545 607148410 24586152 214709898 903342950 801018514 964974215 773837835 970502285 295335923 981960347 286606272 268949995 790404732 162895761 905443006 874098842 583086938 494420870 817253028 598294187 899531791 597373711 640952218 883465622 636847800 1182415 288776514 806356652 973975752 668564112 782960678 908593791 431426623 755970273 515830092 232561960 759268573 752528173 729991193 725387677 510650591 897026978 913170471 826497652 848514880 290880634 919367850 597921438 121835156 552713332 543855235 607522899 989912152 410140499 825523031 830101550 850664196 776072450 767324323 835785163 795912940 643956359 887909560 265155860 71526035 530689629 876132160 361824199 915976633 924995844 49241466 844212412 298449821 125269259 176548727 763392493 724138018 493057971 746282245 53606659 721831357 771288993 916265618 759008131 369540482 820489801 815819007 613327560 796423988 663594855 232593196 844719606 857969569 98692167 999942875 767985445 986928968 831493327 786156227 426110337 688250408 457581752 263976323 297196127 851855409 898167180 824900744 963867840 693235811 754546537 956953399 546975752 771811488 91435632 418209098 590869541 995845964 261011835 690254562 660991700 853835318 874055562 785244922 719739302 927837848 119572168 994694701 135363783 999616290 774516089 75352001 786712001 91524323 547535897 563599000 968891052 708625760 989598459 289801103 973512223 933753551 761861075 87784902 97491565 732632246 783132411 985148545 215540670 960729556 142301652 865152625 597642917 689070813 752529310 736779588 693215563 941484388 883247960 203316614 625756675 948209548 930964422 180858713 393049066 740269050 843988441 363577183 812323374 815133996 161245495 277129906 935706413 975297683 888779811 686538602 769023249 901275335 841428407 217515979 152909419 635061607 920520555 956028762 829303144 318468335 274311828 287633100 840034424 385197147 846759100 49515460 117336726 714348806 811494808 484257036 12909968 482339103 332105534 181669752 106403599 658224004 4223418 815092656 157676501 860870123 967971811 833934365 861446861 666223743 985994745 922925353 117341132 711925295 703608226 191142790 713391006 403041962 989841078 236143859 711838294 923361866 712889569 961203360 701232556 52639258 756799155 190821800 765829788 770955664 925471487 903465096 777639579 252957265 852529923 656162342 459325576 362922579 396053006 377506178 810537973 972571689 994648121 268933990 808278162 787883899 844193997 899769257 430296885 32541771 181726636 123732485 782589770 507018509 203728451 980120083 246391965 954931338 799346225 839918052 177268586 988773333 521913071 159139814 781362709 448062731 783583195 772051627 980061358 708894493 755654841 604507006 46963955 660216109 895120561 567749509 885628930 857009362 801192642 555394105 852876007 338988450 95592940 717552833 561267430 596656322 89880943 249276763 735068447 679227898 340664355 62244896 785839946 235647854 568643082 653370893 90746777 405247367 787872325 898199748 492848047 835674459 738489639 714131414 262084760 845917737 598733862 854366193 968566338 687790070 142117841 192377565 925160720 919303880 994614800 796918139 502089712 147454465 934689580 630759478 686761570 869101665 902344014 461423402 797766523 479712811 221622092 937464051 951244727 467111917 878312357 740404493 59397397 928584867 973114994 996302335 991671516 15902392 816087134 934153659 173015659 875558969 672873287 913437375 115563131 628974107 70709322 920799852 889976438 865076828 364637154 527308655 406491513 987654824 401219847 641822040 985154012 793157333 445786468 777651073 869375501 945553115 877710511 839040298 650088245 997432229 844153551 845035650 808255578 673695075 690459445 832922587 820300661 499117159 940466088 38709498 840592559 621243369 368456732 485413196 809108422 933194433 889499094 676262964 341633058 933598187 715906991 790028618 313382401 821628531 973513658 745606199 775021718 46362467 502248346 972372448 152736377 140633997 816263720 858162792 627953910 739063683 747761255 650758085 94802658 818564643 315202464 74349217 360545094 850585298 22179961 17004234 607495592 954220035 139167398 447588952 199579129 765602791 851315533 287000752 370517404 149910849 432739937 856780913 248156750 673475347 98436296 744633343 972357628 239343500 650331999 814199517 940338106 880929144 507728150 324245113 814184429 572330096 396709609 802052346 977512703 569214147 31573841 237247650 940349862 331797347 937448159 255658100 527063306 872824187 149670061 699833321 632611726 333678432 117063641 856416663 19144440 42507340 799277677 931302788 176454217 43762599 403590865 157538713 818619648 162635713 870425069 298630186 455481101 931394240 757733679 195980643 959552245 115845149 819615363 849376668 682036907 420800180 264554203 240514531 331823331 603345575 771979291 173838083 446298523 459844198 737779915 789938499 713532009 995541119 621140760 201196141 950930556 866000970 913330036 555126875 508720557 238271034 999468756 285687996 494415887 229225892 870999813 948377147 153892801 164815574 868338796 325772583 669282564 763251250 941240862 30756263 336034872 265806417 577983608 533002230 136561468 392387710 771334728 808303394 830987949 162304150 39401962 910949994 997208282 585806776 255355406 148601314 912275699 760482328 746176500 493095635 740937722 842984421 982237868 857550204 377720312 336129568 782286824 927848713 117208785 974553149 412442285 537953525 655391007 315575790 370269128 150630701 775198921 632925883 729618791 957385294 792868380 933834810 887464553 774569470 246557478 647298708 935672580 380701544 924572144 4024207 943272220 280396863 662936898 237073116 966208872 288535753 773163744 117247656 976061668 595904039 471931257 100344852 954511332 950992990 809498978 233546229 820874174 41006325 698257612 837454947 184667587 187879393 365747385 872407529 943257538 908140142 978673204 355248139 637506127 822102297 988971341 576506368 299241584 674822925 737020247 373049609 746825839 301168991 905073838 750390194 924758525 961838006 336947820 959314409 752497570 827737803 581888209 403075120 373188187 924103252 377810728 567488967 22202110 455277609 979837463 984883170 335946505 545743359 339254919 710651957 987192083 441858611 576828098 300074713 251595565 961911465 895713654 819582089 759811263 897211327 778223163 332077996 23326169 806344041 950834533 308267453 575948549 577224153 881003851 43806584 725151719 785720058 707376167 779989872 271801844 9425942 643540842 532094947 471600363 288956347 267556271 853931184 812580362 759129638 887666905 366290213 411453483 595562892 380330372 963267755 811484082 45159131 938892021 949958488 848658178 128930782 799584064 61643174 973044297 366952701 141373700 969096312 849924585 745020426 146316163 875972413 701942399 741628154 965982496 93658309 696512433 175196114 776522162 431346595 826276661 781308267 797716073 891094148 306396539 827103432 839599085 649226028 837400942 126266466 37498650 407306918 848538622 99023531 290169354 985424547 50301691 986746205 921657535 821209003 72616599 493170500 53277640 162689493 218119278 948756782 839075974 330453513 225197782 919285068 436162156 856750196 502693379 779350680 209023738 185175545 862159760 979888653 840986359 854192745 670222779 466424307 2573494 957519941 799347798 974246851 129397383 127682055 808476978 766995540 702106165 390873192 707454382 855094984 864313769 934058456 533504672 789389833 750340759 427465132 550312727 56004061 641390952 556719990 595830488 461843738 190368572 642007645 129323113 105002241 662996168 886343078 62614436 662236804 33105876 908173025 569120431 478506270 136908990 255467020 675330891 818725033 922675441 689749491 764327034 608728581 698462931 689683594 515015551 929187774 903613634 848430160 298841684 471417603 831950286 674285788 918378569 711861824 269289795 56221102 243979182 802763761 551035381 373687940 816680413 776274773 797983819 988087366 880277273 753345701 894076612 882517928 877827622 584674702 118920722 597770936 488231461 357399562 162967453 476403751 672366306 745875917 345243042 680896634 581405180 790263187 986967599 31742618 821183620 13993200 984910680 821486027 800901107 674947437 607241312 649675750 481514891 936073260 78382768 748181904 992252075 423653164 924079843 119777763 354679838 868794272 959253800 535080855 939239478 873055616 737020247 36954986 888571426 896573455 553682752 663586273 30802359 721000897 653230546 802427466 992792153 955596882 645064302 636017938 146931003 330521291 215047824 262003066 974642703 298377993 849875559 829911793 607888606 839698191 484531639 696100264 584156528 912730454 558797591 991554846 763007165 578815163 686710700 427081143 866119208 513172374 606976023 56410388 107108338 73121804 516313476 891088990 896263079 211861654 896463821 3480738 987119759 908257104 979183549 809032176 953311248 815151351 894697883 33547416 499769548 347615832 674881611 823572895 883448178 296706318 553307676 963373803 828620821 302542722 971466691 326426770 802760284 822403196 946315835 204716259 638585899 301244140 98964110 904825423 166305502 977690754 909318451 171522695 908579670 749581734 143305366 952950856 750583742 780527822 871432268 571780722 745312982 857228701 777058310 206449883 720483769 964942162 747652594 475031650 27177170 992412943 912064234 548352734 734635614 980330795 748595387 436527592 979530003 808448001 765939248 884483471 367988550 273792309 103316629 416838496 836194593 876799496 754862330 805930096 872073873 584125433 850476853 530649708 750795918 760651549 630847216 826399644 180601397 194157323 262792536 59272912 755706705 555272859 931623806 74346127 870904230 475176990 746396455 379923337 904074466 992795206 460190704 846605224 671637313 564907905 812150192 519066471 909647890 524158989 737020247 825309944 558889191 849386942 972701851 765240199 281249153 747753222 996447738 817830695 942368371 391057178 326075285 914588998 876968647 163989048 414031164 985720373 102110472 90468957 873839798 365619940 932701110 755811219 449198159 922205936 743337948 737207211 996935663 780145958 147981655 913205340 911742510 877901595 461301610 931798806 164150105 625146331 779639510 41213513 817339297 942417620 619133564 366705329 896256734 131945514 825032689 382411453 980859160 392261105 933984920 194370285 23087778 924483392 195041258 942758084 776159161 924105934 783075268 415587592 907495997 950309740 58107030 839476666 510750368 116996156 766490913 991638894 784872222 989731674 741975943 756780501 950144286 560027859 982157 169797160 182059772 956466815 999626270 856013268 975221059 823147010 526853463 987950367 898143170 708529017 411535443 340562950 763804737 157231968 958648205 969900947 442009066 488410095 21745692 784946004 798571288 919744907 737931476 388435088 111674566 792960630 679927964 990692540 906731901 647968986 201889856 792196670 900568737 336643536 52904755 990257843 461570226 404247756 361431050 289424009 365056660 834890262 781528866 38610846 558642540 946448779 839239710 786212198 532028545 455380666 737020247 894693784 999912640 901412729 134315298 183925398 158498296 204994891 523297030 710950034 920931728 837777517 769249247 711870974 950673550 32938956 914362406 892387824 859441733 320910645 823661427 832119291 627251316 334362615 309888206 830215843 576477922 932073804 258054398 793666707 627986302 807237519 970215502 994948783 785673202 325534616 598134607 137341667 725993868 594578513 806171808 917485271 956154867 441894460 494102745 533800171 711945146 954405156 116090636 978724004 988705174 764795383 411482332 282432511 940950020 827711234 889695847 977767495 979207294 657074426 436654194 606878420 753378587 820251452 386810417 913884629 986997448 938993739 973732207 857672013 476384853 362422026 56566045 847082484 165916119 827122286 677774924 467409412 21836708 153665829 241776998 745872245 703520503 772627604 973361589 771323547 184898052 856503750 995662086 806917609 799316305 239025231 819607613 684273286 630235638 469681414 554896587 986207943 342692028 338904308 487971941 779077937 353058240 906534074 25362436 772969411 650587014 258046312 327143140 533129869 849496159 790002008 316923947 478260517 315352303 961123608 250348121 635324289 758474075 853272563 912080572 728972915 586760488 178861891 683833519 822668586 513497694 475085130 947918370 835960895 92044173 782853041 730699418 734596289 280148123 931263715 257852129 736124817 704740082 114520686 776234082 355266880 193271284 966592922 98841356 102457318 475241967 755389723 937637630 321593789 790180883 918510255 833618057 800105059 883965316 973542211 928028250 83510572 988052053 828011592 904965735 101813955 926130308 767604880 600103674 636932617 823180294 820640065 825629489 610993080 178744202 37641372 620273065 685242449 466752868 475278557 29794309 903097104 818996445 480025207 869035374 929562100 178611087 110773862 154306715 334778101 396944367 380079594 728014693 880042075 485325231 263606005 227181058 783243381 851904975 901965686 762787693 908024924 852917787 747776752 961826491 334095070 805400200 990044932 829542470 390447686 62862134 661578845 270610941 556424767 300556107 554097208 761009005 781612333 59038068 955877922 686835020 765506839 842070901 84568725 201937543 139221674 184276305 187643677 985584877 92104303 254615980 886456175 923419298 435958380 895015279 958339042 902234597 910189022 537751705 250657978 918126971 467960662 322178090 950273935 517272227 899746202 268467878 270149988 665861494 237386196 809240862 779360187 842215648 808559703 760210930 810521180 734495013 62152336 920082288 826029299 930967608 12546392 489395114 799580506 818204442 251826948 899575647 987016316 992336608 91359936 256278036 465757483 823966058 579747306 96394568 234282246 132431668 131807706 776883889 162698197 90320344 864704979 840480121 28593875 459703299 240148995 755879055 219729939 889297128 828227353 973626720 979638851 979585394 938346482 796163358 396344441 434648730 864792819 361584749 20567620 654814515 724140705 819726636 905525658 809791975 945628016 862764274 179331971 370891639 945044250 804320365 591157226 892870415 521215575 626054341 852019316 392967400 582906625 996393328 741051158 969812921 698615386 799401217 203774191 329097455 154612533 666321149 946001789 808853940 403388606 452016253 895368819 961116288 848252007 904441906 505229723 955398824 793024415 308765365 971089008 500773855 130246370 647509655 658897948 823253137 832634217 507495095 650678841 877786402 212135707 611528704 280658535 972633386 556683312 167249327 952368869 100199738 941868366 815225687 998090506 500227418 743948914 840801832 766217321 337547778 926630417 277729998 888872051 752152239 575068583 895888036 42454342 885341521 969084355 951780893 798435996 646760588 959843136 123253219 757702491 151965186 6511957 767605496 155788802 955310071 852601425 939252311 709165763 995525978 344692968 303113723 779268377 773345029 751545247 980833386 914144921 357755281 236573103 699132407 466610523 860965352 30882695 912728132 458958538 418094528 554116476 789437442 986411617 785943406 383531713 997937441 987256716 98861126 859664641 996491988 536173449 925728299 368152399 753110419 43595924 729312192 161304782 878841415 650800398 67592713 753006457 407954750 171225882 920056570 857475246 428836727 408400666 918240376 676913838 699254200 322161054 986148359 226713330 972208260 766140307 182484336 872901746 791053589 677741216 873678646 879804821 842236477 306222538 833224775 348099721 785611200 903171861 901192733 356259186 100598313 892317463 879176721 977648946 911002160 827988740 239305871 865988490 808424792 2371699 388429745 958029473 260338143 848419604 318311844 933448968 901665060 529607855 952631091 209131960 858721269 12262938 983684685 979620263 920159243 606108461 345112580 824640570 942369102 860311014 763256191 324280899 287950277 861432924 915886716 531803578 947865507 918470492 863345058 912014762 891400201 719482490 796591984 437379885 897185474 992089882 841346931 651429052 698883600 766143655 473269407 909953087 773747960 960520065 289825096 836444453 864338584 803777024 760218948 974500298 534502781 478988297 857034294 965744149 519713062 854473118 924452526 846456063 353796319 860117218 751503277 813232058 398848131 27025508 597777557 902463637 962591129 990357906 8738495 568162580 356576591 669311514 487830903 532730736 634265684 748589090 948394542 945625455 972567848 937874910 742059628 450943389 93312309 871199954 740206776 722669190 418649870 200637418 584240082 97380989 107477679 57433057 770851830 37733028 5255405 825658571 329076250 40661050 41074341 935617255 761853896 175634663 875025417 82714033 967790477 345549826 915242820 492148406 863889954 885424115 915795999 336146883 295953035 47991043 755036523 772566881 932918407 795013239 853008349 776455668 498330650 820871316 371505817 583226301 335887850 905724635 921815672 75026026 676520677 115631814 225763455 754756346 999343342 369017388 805093165 854850932 872564493 801760759 884485303 390053175 818450584 644099162 304417226 184957906 919672110 258132613 787422225 147081792 692193432 920500967 757745301 432253135 666691177 989231824 995012781 674987909 436020201 462382976 808117523 973410633 883639853 567998879 921519461 193575885 71890642 256591376 956097610 950271177 29187891 477839092 846999765 580544142 952247599 850805931 228453961 313780495 619232517 221568257 780179501 814127923 867233082 758980522 80779073 811596791 286869548 863474671 920861965 807872276 507393513 503420394 822276766 737916548 767573938 107011059 434360166 927258898 645709477 898913656 97829105 184018219 105550306 849846041 832099075 717900145 566042322 723593969 718599886 518272490 295751134 127163353 883625887 95289667 678541296 907116002 673080795 817357416 943228907 917360682 302060013 473540632 29331591 939327265 53340061 148807110 876858516 829152469 246569637 270193256 743092887 924337145 448636664 739901310 864662648 895172679 979925089 425152172 476307731 370899831 978315428 617596524 846690051 977257140 744895847 614929555 753957065 814112400 146966993 766304151 581616575 416893041 156502316 811683077 131601698 975516462 830211924 968549068 262457612 70857308 91569736 40627831 90052206 529812841 848673677 151253259 831465415 536353717 271364694 495015834 201204540 923452922 41770105 932932091 407620876 995159705 880407574 494417900 932401689 968747527 856070880 164784241 848433960 146979292 294084260 196929555 703080903 272217575 958450682 127237897 65067504 184049689 389609144 920195895 860124540 917178296 477248767 860457150 425977253 863049893 863629230 385536246 987955051 693585117 867885036 145266551 901401325 971060776 805825577 933548403 937395892 112909502 829793891 775961880 575244927 942203356 814332423 342086892 747913889 918634892 48862606 996771696 805597133 127926855 951817060 912731899 717645830 415374036 924951380 585058503 599834774 868914516 470516314 248410890 901099135 472564856 285891353 710048598 948061952 756537304 811966792 599166340 837003945 777050756 193041173 750784925 912970420 668194100 943573782 959641759 937919538 627667942 980594631 579223235 709286810 367761714 88932662 973758352 745151445 396990289 773143576 835773838 997710323 502876553 795891875 921533802 77730932 802670368 168804081 373595111 801629803 433242042 759712505 645497433 751052212 154977803 590348557 435871129 786690829 799784289 660960605 754465089 881982532 973927603 953086724 784776507 916628969 953598083 63408003 232883587 859190340 805983460 815285314 678741887 596213014 762799822 691881906 902585734 85358729 172686626 900908803 835234668 970179297 197421764 337556483 621583891 493204152 33752346 370761794 14269233 925786977 209365112 882526393 778407651 854035398 883507461 861713579 636006299 720154593 316052478 883515891 260757739 479648179 48002924 757621286 770861970 791441768 219873860 123520334 803263125 823873543 959556220 634319155 962981452 23928711 286048746 887727731 793375185 828485522 955564996 846272060 559709649 418242920 886277528 970682081 489368884 703660157 859572743 824545981 753225085 547496111 911423650 752357614 843026632 922971316 778468759 504087501 546683801 756345288 160576528 736889545 921769489 809067537 919189272 156455009 793567006 793024967 903691912 283267383 187404459 57180502 64224622 910046221 488683616 912338937 725571976 770659146 552737227 853627941 891946094 927595429 828702637 960682729 828425856 698667450 877073601 23109184 984834251 834837322 944145772 307308312 3962383 303296043 860053333 769350980 928372314 964064455 946201287 457652577 898254722 395413978 22433844 732234780 554262589 873408558 683801790 624841742 902630717 630705131 904514207 391334970 838387063 538342913 855744918 244477281 812195354 996638136 748438593 871100268 186847346 767178305 836296091 686062854 672444777 962636438 515786137 460317072 278981516 913040205 648425676 890151752 186031448 392810403 892764840 708687734 170000487 453175175 922722619 481313535 804525188 993696886 451014856 875556983 71652070 959250357 904242561 878032699 473284891 737020247 231533178 958763886 524937387 544495457 129713835 740845809 307818039 296942286 550779714 804870016 809804593 814993941 508787289 903980141 943955086 542627413 168274851 947901069 156554350 113307535 150954588 494136161 695656947 100562959 808367296 324217478 522359057 704237957 225729398 819823719 870302573 752868620 963445608 603608680 588647821 213201252 454035611 913741995 22400764 236576846 951202666 972681077 137243364 272466200 884316715 867342451 664644927 988672529 642412238 14829809 865250806 939226259 737635387 816741686 258189693 449897895 860069092 439469452 940962752 962873901 239324509 804900090 920490269 817959990 538049624 864549418 545185760 876364088 881871182 975656644 783996014 969292958 344700105 825660371 957491140 676946977 810390695 141987549 474486418 136589704 294959058 514153760 725567679 858608149 201271428 519862098 717194793 765026838 912788887 562084135 439479515 853990544 225588339 889037993 470695465 258794991 786387621 793774905 936053831 709231317 826225962 770664166 655932313 483827746 989234516 378202553 875254462 733134142 183688067 230698139 746618998 11263670 755284325 183097518 221433080 740397397 894028309 112013810 605295774 203127461 50285759 823183122 138112938 146582633 880270062 945787047 906853029 769199549 672273275 866878319 848690600 815242165 943481629 981297882 688087978 283314853 830821903 666479994 917016260 966975384 746271014 61036497 812458277 522379012 670504636 717364452 996694404 194613672 978825212 863689815 864758159 981507453 871337242 79243116 269517028 47255440 884807777 138516586 571002319 142523261 343854572 472424848 310107894 214951131 926304389 971861200 606700006 222642983 199653341 775236565 659942475 880871310 647675789 737020247 378662062 917219743 927191388 590611223 180760630 930820075 982437585 844276400 509896854 439709722 742916777 340093754 573623020 246203636 54336224 295801264 31700790 905714798 899794590 368746535 222928122 775624374 984839443 505300859 39767913 855207392 914876805 634338572 178431949 711148065 557016111 972184246 911465865 303797289 900986353 662708427 370774488 526706514 94402324 994783033 66395496 438755163 934730342 810582555 989950838 41762300 44311083 952920247 751623398 923959291 932495434 672361815 255894376 567863812 295578256 890267500 696827581 524613540 794270558 852181296 138687110 590787593 511022509 117236236 947656198 587377751 939608770 174654238 584412185 736675947 958998686 194497103 754064188 762080375 889421318 316864696 891267016 400568597 100278242 939776114 807573147 503916620 47395736 298272375 416530801 930100922 690488317 926953322 929784608 925890412 926470484 771208068 964076110 914864701 214028406 717418556 568500114 184564818 860163250 440113781 104581742 814295946 815053915 730697855 985826969 569915112 567259257 903449726 56139015 120940573 802640919 891615060 502566861 755047688 810371655 503534000 651774447 277329961 763485867 713118935 381264884 714865974 831534816 398676668 646009151 989988114 1823548 313289259 84788456 130296780 969055833 473823538 749112481 805583633 868709031 547393360 568533326 990394823 892481392 204633763 910023409 998068880 358126305 909076580 402225606 785282477 781957956 445292791 828361158 171405899 77929043 997665009 979678810 486653098 719107670 555594571 773047949 998231016 378842405 414471758 425619988 831493351 781738614 862517218 908093185 114804952 598413740 797923236 907421375 133896019 958760507 407329208 71342263 820578828 756795089 666944317 505218945 908742709 889113623 748265780 951741743 817655453 980416597 523689351 743177734 850095496 337504258 428352347 139999510 193065774 179912398 991490997 984229106 531807894 332266540 75908934 890650858 225219813 35322565 808770725 416239513 932446476 99838467 41224147 974628179 163060616 102260056 17358330 426025951 462005258 827721505 943504088 972193832 809307062 305102148 363835000 828863578 354304882 261323362 239072542 842353886 933471619 24687980 519564771 218546492 974517505 64996107 993254263 817525187 914067873 958871159 355269549 861670323 174436313 830258192 842977789 433718723 978902014 596677793 72345520 875098048 731359378 937459670 352580893 826270978 686595495 784668849 785851954 820542661 757973586 234018139 868702585 700946264 422504137 541970464 748402091 177525493 875968613 822410392 840047134 790187413 737020247 927458940 786877071 876627146 597924505 581141088 847172237 99697250 459016230 834370560 599686408 843832311 913014869 744139076 963916142 918293709 574536347 743150606 909598185 932067977 885700336 699704096 576954933 933483448 837269983 760841261 481669628 990252578 649147855 837553394 728283061 314876310 842110339 870752363 501402606 834098976 981897181 960547955 890020483 942071750 592773004 762055392 630339871 736484322 850176171 451739775 984759582 969536921 146124683 14146533 464442170 594280275 824317449 999145463 921238225 198648673 40404999 158897694 961283790 995764288 963317880 865104865 238854990 786655095 289679216 138906543 145017375 367723364 748114554 43056082 129458270 963769062 70307189 382337748 900283879 990943883 104932121 83555451 644344450 950306697 737020247 883381524 978185073 57595667 838036259 918832582 789668973 354015409 260427325 191559373 926935610 956955214 962836392 862106504 711375384 786644162 534916038 895201102 817555502 641972153 812847436 845145908 681627628 309416706 304130560 949345310 82995232 228507401 655327856 954073594 493643565 995049646 639520092 927981243 925831584 779790524 943401975 894002274 859613311 364437198 600356712 118990796 254178500 857932958 261251356 770875614 311564848 774678230 201558518 777605343 908372595 370958368 416049540 399490384 486657790 43788162 967191133 345315862 950218420 872868156 978443798 147222163 985631436 322570136 981154478 848030612 146284115 680965658 691849141 746335140 963831393 993087671 644051003 234231562 804602268 892757478 813812482 240645547 629023492 813316028 213746557 533641498 898466129 298026398 785232692 990898030 787158075 773151162 442072436 249484249 158120952 815714633 36089875 760832809 825509613 254116130 90680790 129945421 345749335 978421028 946332751 775384348 585546327 959023541 784055175 934712226 274558496 939892018 146467720 620574051 538091156 101858690 667327733 780929689 966672553 783874487 501636347 210873670 424657433 678093161 808312701 337850905 893105948 851561459 998555756 785892571 731468079 498120277 953877662 844346208 366793571 631443076 854323900 845527630 135206445 616343005 924544187 192926384 643658837 795001600 503514211 177767350 738113554 606244216 960026637 939593475 174257283 411193385 943197678 989998461 501261069 991919960 505588658 387489571 835188047 850191574 755432535 74456692 568662079 483795501 831327581 426476982 36469185 766735686 436802519 804660635 895908759 274352041 32990415 700734880 590476946 388802944 270237950 647221770 737020247 137752051 987977930 746162463 8264119 739263685 216893607 561301437 621367543 624611523 279424588 526925246 752092562 815851437 936435142 719451260 483803502 883329197 519260000 96213312 33872279 184097585 347298031 549817084 871400995 831953091 792141375 775696170 912383555 799582662 283030448 318262369 913690380 367825025 814478538 774417988 980993639 117889677 640724624 352644668 623528975 898616070 489268173 967579892 978555803 730457339 973783844 28763897 854539252 724779400 875109952 761175737 51758609 778776840 694954182 700082334 298584168 872181435 8954534 259514717 319446162 794034919 929301424 739512611 809255621 906671205 980778281 995504881 899421811 659696781 777764638 58085523 36055259 820788503 972432230 790817447 856208605 450730249 770169998 790836397 491265287 833543073 894770488 960244110 921762143 920356433 699609328 900756121 549509504 910237672 234499625 66897445 827204861 789691560 904089453 979673053 979738524 71414508 769389748 923857561 876393525 902489992 24258990 906115404 562026298 703082110 918598865 779111179 925226096 527954258 848181791 256570484 849329386 39945106 46355027 926492349 284478703 597965518 497780671 951077450 765776276 582832878 843100067 281164115 825055626 149576209 105159777 283946823 697630042 991174893 856180631 167080142 94457464 52169958 55959933 627028736 738693109 336607727 188369475 916061164 860652443 789499762 56006677 363479992 966011737 206687683 913611423 874029490 310473576 267123858 33005159 941534588 840820636 444682428 867716625 260481028 932748568 100081964 264916140 421862082 987636921 84116993 152383303 192274188 828517953 575190665 996553118 799403714 909482943 772423301 276042767 963035780 942463101 28950104 926602999 935381178 957765585 840816908 989816557 33580585 921111254 125377350 857584986 21989851 152433720 772697833 249677175 500348998 553580693 836060168 908016079 270164068 80668835 259161016 757477600 639597092 780591585 240393494 878683353 791439009 528930354 604462851 893412198 744007459 453540998 158550168 875321188 232809514 847717268 119151164 793522102 973518214 836642195 623711301 854778883 65514454 810318326 739925104 61905145 767014894 888931151 395220763 811012049 800815262 897090506 995038747 949426919 223673984 257696491 911203332 275839444 998551307 774645042 44154123 255495572 822024186 44097934 912906427 375116427 586654311 485467870 282795733 734250738 945314289 753672329 842133433 49940987 164683946 759718733 933353725 767011257 459911090 850509497 859078684 479122684 311234708 998189762 403534145 103592607 804476863 888351161 587747909 737582272 765072049 380558936 874753176 207690215 850097485 535050177 818155879 750933440 60275941 16806937 106465699 783884190 916132392 757691647 440692546 817068473 38812322 772643176 395737417 934422100 942420831 786573624 51226737 776743153 226214682 559016799 353155020 226235183 750036572 607721664 219145211 313012507 203520187 800616192 672996499 700308278 521720280 914127315 564080841 72629020 887739055 902166156 921845445 587309767 912055186 822746640 899621167 752186289 918820277 296477784 9580577 567815062 95745839 879284281 847209577 677594943 811342516 975412236 735200218 903965321 770316290 204741316 208324389 486418542 109719174 847016119 874753888 995621820 821716829 331306198 466628432 463877318 442716291 631550774 684093730 552629537 895993399 827238072 894036946 13274363 981516976 121611834 527988640 876808850 311320500 981048839 925791543 907346042 900666525 849222327 804251007 889555022 858145948 664462000 927078006 672933137 836658434 255570216 994553591 277246864 34241463 753178094 750393415 260621943 836618741 391712112 886802818 13433459 780233327 998852762 772212064 910104196 382402277 942207590 434576170 302891219 73951773 248470998 887762127 91008050 751938495 674544624 212837129 926995063 811852264 749253581 485613648 905627630 236017915 90011243 817558119 806941219 24553889 798238898 922263318 267474886 795764962 539741900 854658199 186638764 959795308 942539653 193873645 905005465 465954903 722930647 110069253 948886725 747660622 588983695 982910187 938867263 384396648 986454749 902712903 298172106 901694084 501630418 786675423 984356334 865037152 805990252 915980749 962537351 831098421 767046345 392371825 883002367 932823792 101560355 766871146 303752314 895327108 714636675 697950556 717714279 340261568 513302194 645910225 925740605 237468159 983840354 860682264 970267000 112686577 787158186 898763222 278666577 846868282 958341283 765844287 914303531 807028214 868566066 734336039 984354388 304485277 348562630 844053230 758679138 627573622 839215683 539641738 750564839 577205410 501754260 881287049 183159363 236921959 976746783 312669892 945369681 889735087 883825268 769120522 354710573 599487768 981072844 615599134 82862009 916285067 236291654 320657553 362747269 810209452 916975633 233385331 704542315 149946624 465857596 730161191 182410543 966671649 443098893 419250265 730157990 908301567 773500277 329820495 880174438 161261885 775677792 915614569 751680771 424537126 799697511 151912193 577612164 889244729 576551570 961334290 619281272 756075269 499717555 121391873 207073000 461082652 29252232 858430387 899743316 891613875 877012936 13207737 139762507 748219850 910559932 762184144 820938026 515452307 926404436 887817278 836108273 788860102 898281401 886525660 710750146 931964748 587391802 530400872 798343018 810845357 588460880 97766135 992731174 795436153 473291665 460048992 863612566 763825849 820776646 278382229 451602178 286878059 814466326 474798927 702628663 758802972 741961699 425654451 867785272 637161426 783653721 920229787 287703974 322299102 393525880 742221790 546951919 683306838 485187608 484909967 408954547 665836867 813665474 469584983 737020247 237460489 253137167 932762305 862812410 624838096 800602723 779742335 263311020 752238301 982905153 217945353 767550734 904752868 889252152 227784337 929803698 920869931 923712498 346802820 989761136 904141180 45781630 624782237 975021681 723230081 209890826 860100736 478729949 990924794 782809109 843798186 292170652 776896644 662921894 778122502 999256995 252159923 881303022 762407311 355074958 793951295 792330758 914695808 796242927 929719122 818620157 224141314 368451671 983831766 446350491 804924000 831234465 947010961 801804565 501031409 533051465 984161472 829616965 102489107 822032915 825053319 350433059 852856275 866965302 95308264 576639059 609438541 78225843 866011386 991088174 855881409 395474996 310358226 777700994 861082580 963511694 835950748 917236668 386341913 813542794 433115391 844950704 72380826 485986430 980740685 593674829 424216479 117826275 924759881 976285381 827046943 842063066 957717143 955129443 570298264 70559122 769285488 36907515 390585354 764074806 30611709 659351867 724713580 667705404 775879241 991487775 592291735 998409566 798388054 909689819 644650172 791268358 927385764 714557206 762092577 474818079 935952332 783779900 65745439 488680292 920345616 879198396 504764246 747763645 81631368 157977103 4777222 844014813 779445148 363143722 563973434 57956146 936593851 890755449 523808106 313281313 190519336 673496355 388907961 871991132 895654065 577961040 592876341 811442025 74836238 639428290 828423864 268309312 843902730 928878320 385852473 995471548 138949361 882909415 804325036 110296133 675525112 818372842 794427515 44567948 853043994 355020085 92863297 15259443 649128864 927192046 851468798 438723203 91608737 988527200 999226669 793374994 514697180 704271376 930568598 346838112 265932842 705386219 518387282 998001157 935821165 803007213 827513460 203577199 499254288 738011404 102556347 486968442 869998696 741729541 914835182 348302042 438208497 196273951 854777055 968917756 895008788 515345935 706537634 451208077 997178808 867118385 987244778 878410755 805076888 784556324 84270258 808020509 885106377 316757199 848606365 618998422 424394037 780115083 733617733 598889085 209513869 734743938 213733232 407783052 882436025 376659847 976916527 619760126 50553516 828664492 563354109 853968686 697659813 218200943 635929470 278388606 120505968 808425683 838325464 773581520 249334309 767018571 128094789 346699597 895302750 923279880 755951528 799277259 609338805 869655417 297370048 433086659 360381322 425347388 323882500 909173919 369206388 305129525 783325453 601839831 123622938 784588823 513463139 713300869 511374599 335685097 966743343 972169047 853797311 575727758 984312614 277790254 101516957 425339861 569441570 827238263 383715878 783545492 197689672 852847825 938910422 877064931 74152376 454684012 842413335 477338067 738996223 266976608 570613029 972070654 24497991 587567402 920308720 569978648 857449118 453078367 749836207 997119870 834980724 110871873 916902334 167128615 494449490 526232787 961282224 165470005 923573600 670039648 176184231 58208451 893680382 79027873 327118110 425796339 235687850 28795245 885157247 925966282 758717701 661816709 564639949 659585 529606080 623943854 856737976 430157998 199026570 813483717 453328599 3367014 994024823 937097187 986260183 750236265 948084475 675060823 606348081 843094131 403157206 201615256 776143449 980393074 944604451 578345017 750669083 203190846 711325842 888650600 341921189 415235368 852623807 981310834 84270068 997264501 775210507 807906448 744217724 797834013 813451610 871705039 830532703 423507307 899938515 244126827 225444641 638356924 940143924 542701935 264007745 463379783 417743894 681438231 906267309 70038310 777875005 741650319 976763361 497060560 857399773 116433806 128930674 24256692 779326689 151968108 719949967 908061831 927305481 743187239 942829541 850815899 729866083 672740334 701733894 799563875 799441006 206732590 156912234 777104685 836616064 684523442 203525536 199061016 18619910 309319346 898103113 208529073 967273109 124122570 415652377 636588657 878837889 69694514 89980424 945741449 629934789 740975842 593754691 945308223 224299603 509515007 856685784 924582841 761491046 756439851 218201440 612932561 816068339 483267748 98919582 738733578 62936666 829770661 868972590 43001858 913377959 128598001 792771638 965809777 840129974 78553594 255818238 893119142 509405110 820084623 56369442 902489006 830729161 123818581 905297434 426084236 829003218 514991611 236736167 880834400 671688899 890223074 942317666 356157598 951577371 942347061 344295401 838682026 314586391 156046593 284272880 767434317 36885553 174923242 987358195 906852926 751974277 610936920 993715426 813902438 796141037 809283625 538377737 842055168 373823897 381714007 851561693 394094787 281576511 295190448 252062308 701424140 320055625 606999475 1745855 843658619 558427637 765341207 234676519 98117776 895373890 973429084 26392483 876293246 279880055 775579359 7059360 914111831 859585558 798573830 966511923 182265965 695964944 899028404 256569743 984803240 37160265 760239472 822684377 731014788 953900506 655218274 659220322 954233739 857203179 553413751 824127088 897116561 264306154 984411646 742589760 170102752 307219320 799583648 347302324 884970643 304373155 964432767 806615130 801680053 814320945 893123903 148569987 918320610 29312075 847895314 933202011 230269468 3986156 379123151 328946874 888825348 879849323 2510645 220696341 86790053 130554805 363096111 562825206 838374639 364900359 509681126 812318964 791029183 295598313 29041150 960263254 669468226 601400661 284091856 607566377 164383732 240784135 548551824 505226626 366301025 309582415 510340962 891265018 292503745 1368602 734974371 545995817 974364820 807224727 779007118 758638956 836633722 58122785 768329574 300965229 975394196 459534614 612726367 608162442 628513010 410845482 805100424 773675644 413840505 943492696 856787889 445619172 962553590 860066998 221161808 745007097 8641018 770542963 246974594 418359780 772297703 572985945 139567920 557967679 416328206 67291587 664225657 290503353 829640789 561970901 740403811 35737210 786779851 705951575 767844233 280532476 911141638 817415108 759563298 196272699 903207039 947915093 874905116 26234281 119024101 386807434 247475009 986131855 37413600 167696590 26125218 674079736 53337489 400619535 296082049 969043575 978728018 740845934 729002284 845834531 800785978 845974097 601264006 937248259 641425941 168204524 515003193 518798542 804821052 519221045 207994399 579052663 155014609 887309020 353962742 347810513 272672779 111444133 874065926 892298915 206787585 797447634 220002273 871587371 20602217 785645590 463793165 247355185 930596779 903241824 120001386 527676473 845612538 179019572 827181109 30849116 828991664 403040926 983891031 959925974 938574695 778468490 461832885 501334071 840645722 722804685 490188900 386609564 572914154 232353994 322583211 937592399 32928073 783389504 657161907 715709334 753683132 271742302 828172256 820455382 630506797 926287511 53033571 992551165 808410323 789690205 459237529 800602384 742115316 538529172 920386841 767215097 971815824 175927441 273807719 854649807 243648066 340960900 777554794 806753250 749034810 862749712 931420563 938843477 566689048 737951251 726183425 731866471 10890623 347592044 783437582 752771569 92122882 85121846 958431598 650669294 916444283 769857511 752295297 300716706 135192414 141177165 453865352 784914610 141217244 943813328 864422811 260966641 338251582 595886482 531669963 783136361 968167817 365231779 852970072 766334336 417178451 713851826 720109427 699110536 997705772 214940963 740862466 756239579 515806522 282004147 853960182 722424019 765854025 113812491 178128583 832138177 822857842 897814492 347279378 792446817 647950003 983092867 757425283 168161283 993513319 762740154 782987329 609997014 904887136 164613502 868970880 57555369 808680476 818635950 669592169 989163030 419918308 849616740 945431300 965716611 591673064 544917448 335332012 611470844 287675691 361864305 782589893 236254167 919575973 765445284 981807486 925643990 973829219 784502386 575173593 569473851 958553389 382520920 223461854 191887439 774974515 824196725 624430830 395881142 898161086 795386871 780463208 843280176 899656484 742735740 855720253 882897447 765779449 717177030 832903371 954319717 61094173 109558452 365580324 984759567 610772949 934738384 509542121 953447122 352657568 257703875 289662446 923249699 194026926 995544951 330276468 608628358 738641390 65867831 734755495 986237025 400437674 291743685 587411007 992138446 358985351 334668105 765062492 394101829 811551729 917481983 418787364 852456200 290828982 230001087 971896152 766239787 964638073 825758283 680096874 969323677 839468835 829568921 227284585 157092902 413454216 604751232 17924201 427611835 789328699 895620717 968347618 23242463 966567190 522624742 70295955 567488712 320462181 869720512 782873743 643778330 813872528 900906729 252566707 707333512 699584869 795246548 337142533 813451759 759223055 871741203 352340256 830111573 958377734 837887911 970877963 113039071 983795290 804816294 706855196 954483289 974681601 831019759 863361836 18449804 907398360 773499946 86510875 805001982 427129465 766927103 993926638 26810177 457114070 886324200 652206679 983470244 950908721 546281419 757771430 513377206 938210222 532778873 856343364 938296346 542383541 820691182 815153166 241307670 322026804 704448818 361598040 795335248 770376080 781919990 892384434 78861868 830371168 72159271 993170496 812071085 788361115 919264803 815095247 511818163 177228211 976568004 339883023 271219209 744086864 549049118 125138997 877705675 76197925 949806312 734109244 933063409 792169087 965499851 821585832 900984630 878461465 743051962 850335656 916118683 979040814 645899285 830641648 29498945 881967944 250214601 739970394 761962640 938067335 156036627 804403599 365293279 428905834 919826191 949980766 606521764 876355034 747560324 104186969 896293222 724844078 739749136 297203413 813997175 278512799 894240487 613025190 787211511 40011742 535653822 739038288 845673110 953724442 476757950 289162081 281443745 381363016 807490144 928755109 672707208 441666254 785732486 339513381 882861970 75922648 997068702 748542523 143128714 625234419 970304669 891308517 975160890 546645016 910504981 774973411 845232862 415468877 885406969 862678103 920881727 57574358 737926831 412073847 61124818 475875191 505120295 237581495 963711331 825738024 832455654 741554041 643092699 926299557 607219428 271410887 810980649 811649163 477632711 579333266 110090911 583199432 960695212 401881125 793191829 927407400 922893974 932925454 276927890 927089637 432265616 186701791 380833775 365544265 746661569 880212589 707180182 396521817 134984682 668124632 104096463 574942644 775363966 451071072 978373311 796684405 591448350 840651099 977068825 979557181 778235291 9271663 771877857 40884757 918677018 792525970 241350843 926230677 882555490 801121941 251149926 563564729 264127919 369727517 781812204 966400578 199330822 907450071 778410736 907264688 340229422 806035659 348711324 996076541 691237268 938742112 738835611 627944477 777431938 306152257 217189039 721294222 480298818 201767140 340833097 484947307 759690134 919959262 614937202 794460213 827347737 319286633 869580625 360959133 459757239 914382820 991784897 269014465 467099275 982815831 726641342 742746629 674090925 124728543 147575038 494147656 747216622 944940200 980522884 692947510 965597457 954738123 962707353 588257129 747350790 902142965 770816911 891153233 913052696 80326133 847540534 127043074 790111668 776043157 765013094 845641905 459393720 111252522 876511435 768056398 937291033 771113114 249209553 260259382 962410448 795106111 468660196 875226649 667908018 310916566 630108539 931464434 32470237 70560936 809975078 418860935 890406662 694933441 744136499 998838201 995671271 807366463 237243898 749993255 289930336 194791559 918661987 929561718 865506760 832818003 936082816 588288853 952374868 497385085 795140611 232165578 828516238 746935940 268819349 616952231 372570719 999710986 475813028 821676577 89663480 812174943 943576731 720171015 362932151 494306993 808934037 703301138 680912304 954671511 515215474 415480949 352887082 847027557 853933346 870247658 616815869 370560676 298721002 738732498 86213212 392076663 935312237 775323898 747707886 192397690 571772287 266746108 944200929 298623134 940001469 747335368 870339827 214646492 170346528 791343354 772595417 812118461 771703383 147471497 43417413 897891959 750873830 546496116 146165052 133769588 840400773 819806002 940409687 977163622 867553328 958127922 224300746 963236877 961112762 22004194 497270693 271763367 79164020 728237447 531559536 894404023 983074932 746575709 244293888 756922128 758698319 990651653 643019505 963420957 166676057 774939385 932653075 984373429 91708277 979360936 815010132 337546885 971956755 503569542 982397299 337952996 746018001 677381889 349039538 415484860 776867487 796586409 933277487 700843792 450353832 868534151 900240228 878690434 580269643 345686291 843781841 768608475 758446882 255902673 786366798 919551458 656964371 190257113 79289265 20122458 865835820 215990085 915277094 838998077 818645221 815632282 771286347 338615500 951374625 972011207 399410483 151963516 712083235 200518953 882924460 972416218 948696477 261191129 776715994 373332161 485227413 979315818 749177393 946021247 976906575 577593376 209941406 959736600 492385722 109931287 281425681 977600267 925924201 762245390 201237907 298907528 934418537 438614126 758167059 420302610 196657339 878327447 384482296 766861486 442710028 221708496 906877060 3888193 286033241 412023328 991434476 632834188 932438219 4591253 884032287 95801970 143903352 854789115 826744780 282873660 708745090 88898071 328794479 973665390 627741144 916845732 257216096 526259617 1539410 334397190 345200747 862912117 522990660 977035384 824184150 997879805 44915754 535424779 139804438 557941270 451067615 602574471 883466036 416206221 802532228 523523797 769580884 704507324 740753489 931489480 910240984 603429480 144425237 135393048 292884112 153620191 879405195 237538502 437285089 379905085 730314981 849528159 812404216 652800534 211293482 388892701 429157598 204067906 8522104 477420794 624619383 952240669 893743906 778627898 18642887 226226814 278493708 795120821 302155392 850908904 75995686 562885469 427640040 71563099 573423285 191516930 267833705 679081813 851467742 911996930 380878303 315679747 809753790 346543711 496866846 764305496 615626443 200141777 886314130 857839105 904584825 22958497 150665871 104268585 738184091 923901977 967931982 872850729 592153505 314964362 681198779 594809982 142366848 484810384 246439933 357363102 933239711 762305267 517823723 446727742 818048604 494982006 288033992 946541145 867582819 115274834 551606055 932026364 350091338 833996639 945289626 891506910 404632414 476674733 846338614 985857389 886381067 861711609 610268747 833271946 788197621 232853775 929478414 478830772 757051853 198637595 867762062 490324141 254771585 64432077 437642603 5413164 375879000 557814183 101135208 905548741 82466042 886062000 43907977 737020247 790866248 869913680 219356505 868328298 351566229 679829672 302444913 769224425 485306064 868254946 977221793 726264905 171776898 767460128 80053591 505656052 943689878 452301140 677911834 936758579 817360526 116019581 418668494 985850342 159169796 575042858 368130824 965814307 134052705 341834365 381752661 687646897 837328935 938949491 233953797 883653337 399991813 775006961 927828338 199635384 136151254 384551788 789278260 865736353 923350441 637677154 913477622 260176275 775088459 843327801 947644758 112752209 962505355 855050777 703375669 238985457 83977280 980124824 823026630 211420734 685489666 626466687 742651259 968671127 778061541 383711767 926473978 884719852 676820003 907019361 772470683 419109783 562561414 642991472 152661575 941305315 329682548 252517710 614385119 811234686 528195549 794219304 665167240 693147135 417780974 560063670 446276555 616880375 756292029 184178669 348539698 298332113 902862327 829163485 790433165 905660724 731716463 877694534 780784831 391441899 816213116 84139103 132430542 7216590 745377294 738876506 350068754 960538705 496394383 857159637 846628561 165269523 125281351 320299118 40541104 581898814 765209795 755558723 860614084 835701992 407805188 906401078 739456783 822226829 58658533 943601275 333736893 828166921 828933997 129114169 842345343 855697483 813877688 848632709 866262541 748912193 876201479 753687697 745873021 273313633 994991541 18568998 443086546 750211830 419026355 374526681 805102070 969677762 569295653 959443305 794724657 930701976 177429641 750122361 660774359 190510676 797151958 86044113 68036547 531250346 905893144 977486044 767845210 835857796 572025829 348493367 948269707 972715175 615508144 220635532 938177807 411728108 800904166 885885041 836636538 736640743 881472570 477471465 823985856 427573651 175097721 941680415 845659821 988783885 196220674 509081653 443491090 18707004 851053574 27100964 972872282 940858025 514495937 769903416 795473030 942626118 228893389 851911471 311931035 375718372 887805876 843548923 568128135 913055144 73278065 824365573 952658583 726108707 991050899 970113272 194097566 654004055 43637534 986636278 927363974 893549844 735439804 957582436 947979200 861357516 312484624 228924559 985103141 826797352 374261229 901443192 562728634 344432273 54165494 243575873 885074284 493458296 7526624 616583553 121943142 82209724 802328680 61200055 27205098 924584930 957714496 148845405 375473288 257410116 898717592 665547015 800908132 445141635 801838829 978750696 709507019 277049159 782421698 897494444 140224259 183619916 631438635 454831138 247415474 417188638 765477059 654908093 653198307 7392109 553303127 961330250 757245481 230619331 810128698 918330720 998367991 254751423 686165760 94792846 474360870 890004370 667798230 138700961 423057344 899638165 973463600 70916574 743273180 848142817 8898763 995710945 461637967 168513907 259919069 972083373 503425176 902669816 578189268 834889303 426364616 644255130 777530089 982543208 346307297 562086808 80662774 790055853 36535676 391176984 839799871 976956339 657951575 444417075 612118972 975116225 915647365 190808817 858970790 98450268 20360402 969668153 497582885 707550563 760250488 798495224 974143634 82588128 271804927 866886507 700605709 972471158 899793372 756270032 748773258 82248497 880372485 38824449 991813817 793655545 890237750 375735974 957184235 16419730 356126226 399886857 667577563 930428566 592089565 784036187 635675619 796123788 975121062 523790644 768189447 748860781 3247719 307162013 288340956 902275203 735368081 907780472 894034332 913901336 912101263 358482706 494957829 990206230 698081003 111117301 776131721 524385216 806227229 835375848 897361227 920189779 700492873 332610229 595995872 208948782 627493595 857093313 556634265 38219796 929921518 985375365 615058551 101491283 417424745 799220678 48847025 450550252 101586923 692258446 712467739 949764617 894770979 963408255 810716852 599116999 175770596 2368889 797284840 846394812 253636885 786749007 908367422 734794052 973840376 851089626 909320786 881671120 876366294 630277395 998932853 855989552 924258351 99218266 93761164 784021609 522768217 109461589 785574404 820013710 925207941 740954147 889128029 408843786 888996522 774310777 737542907 857625486 636474591 652596498 996347936 749541927 906180982 602503746 759369815 849726943 750581659 104300826 883236482 570584335 416452232 866523602 903302105 904637178 511883025 348065911 165024951 935039620 877620037 944293905 336054256 793420993 784966526 968422274 791346178 464460187 140047172 154144254 390295220 857043429 359479990 930735467 755297265 476890056 874127890 248080077 884455722 645510649 585150880 612602335 744557974 906136184 734880241 38205667 753609035 851968238 805025419 740124447 226417891 336492250 458362384 436223373 294690686 171583693 245024262 952223063 475638773 88377045 785900569 71421439 427383428 972825324 794087334 423047886 741165060 794192836 197540474 494920529 615365164 765742952 888246774 454123670 380275450 841964011 80618954 745189984 176428993 344828376 869746834 481434159 916593247 826677210 398347506 963232485 645810678 354141703 7627104 338770448 433860808 192633009 472498220 849237936 922568622 242305519 765743141 918813132 818058145 653389712 363336619 806712569 744290065 181162261 17812473 383566732 860438513 871927342 89195008 742562625 889910304 916980376 442403078 986255617 928099434 867162644 185131823 642042439 797477046 203269392 772149896 824141122 950102028 779615685 680552384 457460242 718199111 822012443 83224943 700445323 923608992 892608325 226432229 780323124 808295150 609296791 836140272 42829352 790384490 891608730 945915611 737479555 901304521 883494803 342546744 332747384 807109768 344541272 821409918 868976489 877357122 257778006 888605800 951371493 121908508 692476587 954453559 880762747 974526367 504752589 47454124 428718715 200343784 835607363 638848707 835491295 899976055 465705902 444806621 979932629 865209666 654718315 420192191 972885412 915260590 924296446 689472403 942205218 696554049 803171318 414391350 987775260 671956935 875129495 828726981 738250426 854040137 949201110 289956681 908040650 903281996 664856769 139237694 803838144 643978317 779100990 603537367 759409428 711875192 927822660 754650176 76130672 776173554 957510386 382908896 946705776 84528190 959017210 261125799 700446041 241258846 708640760 812461244 501513090 874918654 169911558 284433900 255149831 829929205 816140041 64317162 721051780 905778351 572261304 146763084 175288174 830337705 808550127 144007288 318409029 228122998 976647271 926368408 981922736 787341512 474041806 79794883 169471769 229434960 910033925 760146319 661934491 649441865 139427833 62725865 818136938 910260428 936003015 834948402 764473161 408186783 139708336 860001753 570272862 739782327 988722298 884186912 820869811 69883844 792039763 323359576 666968367 742124208 282369917 801128916 316906766 422543113 125105966 884088433 138280843 832569927 142630882 53163726 235768016 997619323 844797589 784492999 371543556 810305395 286080142 60807151 718881137 764127293 835110747 977311271 857977951 27883735 873089001 2868004 266392158 719597755 783255145 194494993 760193930 643430307 508285804 746026145 858404307 634536577 773026593 963291393 889223280 228705051 403131295 355114085 923494890 887911001 802066915 957449543 957181365 946115603 858803731 820642386 943695448 736331622 723840874 994381980 537514469 815916770 915437375 356517420 972112009 403119474 587971547 40101088 741494083 178632231 675225595 770843599 756059582 90980008 933807364 681086332 782006395 398914906 720924202 758615641 447641294 752944607 391988290 209527317 743486310 24110430 161145171 983868708 851489083 35272662 773907808 854299955 946464877 969751859 89125680 988962359 758167157 793426950 819406984 374155554 395903177 459442204 887183799 750872928 888656688 877884220 955146139 33274106 357146615 894519242 217502970 804688332 409358992 800615386 955336408 817549729 313634911 892347358 285516221 944261949 188567688 807011942 943637651 658053172 373023223 773797370 207247412 988253455 835644365 626991649 634571485 420252342 861111956 100928539 273031892 97140685 969772852 834352384 782413980 938590211 622037599 829148829 804122366 822481383 397123792 551489580 990018030 912606527 459428745 756883938 759612341 249148315 201117648 904312697 637887830 555301057 764020214 68851702 885367182 968189561 981189041 906250333 745723445 527096862 343711216 946800259 172941895 865111868 123183089 818327836 880581191 765780425 923124331 793296228 904511084 86423096 796848888 891833355 985200108 759536768 1702643 205659669 49158675 765498821 389438606 960844051 523910378 39905674 821992983 256898991 715694133 261927409 724982906 942446083 839578404 77528746 75584027 571614353 904999521 890689666 583342593 849536951 873258105 125231588 146438462 999121342 457827500 965956547 45904935 727253462 582733608 110430119 819147171 972710376 852314075 885001118 15097676 953158726 701414192 890614843 935919575 880089696 851825073 119863959 344293489 678708537 935081051 802401763 378056130 917206023 515473519 79615448 92742728 820902811 809295776 988244443 744451947 794294209 968267270 56034202 585370708 637553322 218403568 451867174 983335369 933691084 731568924 924706800 847444834 346734211 77216705 905694780 185956947 580913083 725795243 380486914 57146496 533203517 923505539 455263679 371212605 58937737 789806954 913776041 318060406 162199480 816501618 211549265 680028207 404434105 636316915 877328126 903725609 772100220 781524597 802889202 754234665 750947693 804042286 377627773 909719054 690856455 17691496 226007616 134146455 916074304 352766930 390031339 844190531 875716435 121689401 947519579 492131485 355008025 177014726 635746364 590407087 26560277 938032497 587485972 805105483 292449368 948219490 72681802 869133826 389875213 896906129 927425854 991903803 992021414 359393873 639070192 846655516 341074300 948863565 641592392 811183268 901591965 922936135 761081356 132769819 550324 784051586 900876742 298859835 14896730 379818282 937956501 20221624 764395294 963524048 362454383 799370826 88258393 882810856 164792455 826903753 312049545 743334680 967341690 533229350 125002403 121524991 929523135 841398773 622480542 906847712 928461262 536396354 607071911 571111509 733037004 109610124 56729232 299960969 557055373 945173811 998677590 195402510 864875132 443914051 922198500 947247331 804298994 75226130 824125405 252875151 326387083 91889385 344041993 989923313 939486261 868892066 443950779 988089502 741283419 807717664 871608896 990239222 467900759 840015430 782355960 540312345 997765656 561734489 880568953 534120621 488447727 167008310 766995704 896696106 968402343 846244135 808132390 957943073 794351353 803302883 290211675 761371940 714765335 816768618 889330941 421281273 882447384 848769693 146074319 609087511 415119035 97310300 855934864 739638925 962088036 809073984 959210953 387132637 788333676 704452253 860419110 679112193 901723974 765745871 815058795 737510848 346121713 720986919 993966781 958876259 180300006 740938615 144945172 829939611 790253969 753901111 916729222 957970592 997793719 895957280 878005294 750458935 621741238 106613463 984961986 881926314 429747435 824729398 257320900 963964381 765544892 887538864 761515276 807873367 689021018 67875152 347090420 720519553 810095684 372954405 921168935 901041126 279046170 91506444 907633200 126342008 784842858 886802654 816021436 607682963 539975414 64578181 958624322 827353522 930351640 928291196 519489492 801099050 37035050 862560296 540047902 617514255 89325673 187654607 922644605 216426941 56198075 656958038 391664416 899925050 982409765 743294227 692871938 116459706 782338295 767722752 576307226 910633071 949070365 133201075 979052196 701643997 985922810 864191519 461989665 553264366 925222184 861636402 410450489 359361461 878087733 737454555 63024749 404586810 112691692 833087622 140394285 245010256 848643461 845974159 748727657 919147696 52369473 759315221 897894458 784638045 295709652 798130737 928524686 940579854 422278365 415747044 669376735 873531192 790839029 89999017 568387074 55886166 296079789 566641895 909718069 407573193 462631693 93238804 886010903 786238503 76112340 500844506 105563047 46033833 748799028 310583179 424010792 883992344 853384965 433374796 245773799 490025010 758034282 202930307 451332133 892304750 298792743 714848375 144665149 931307928 741734014 440564455 839111043 901396438 391062567 784143970 718851310 807832629 191007551 988128649 870854437 846752251 714009203 546957469 128325560 419736406 396860225 533046447 634702978 957914817 853435863 572378169 998785266 833932905 858402519 933171538 950463751 889119360 680212139 54706366 258468814 26320824 240822602 791246352 957651984 891303418 924028002 857353811 459962806 171277034 372890664 976209593 932940413 244446392 663552189 577650516 154554914 793112046 87113258 158865598 871702833 879153758 712061657 558598858 653714242 932730881 737020247 474035386 558392871 297445244 999942543 433884321 755762403 961694071 818806541 203167888 104886641 370256034 745851906 746551865 928536952 164785018 639497067 673418223 526027914 877039180 491549576 953355239 749107861 737994967 423983397 572455333 58160442 902342250 335637322 855278084 783336484 268882510 589667705 725349442 460867618 758863329 250539809 161886177 238675824 764341960 83055372 257867551 930814142 814229898 684974639 749311083 779528980 494587582 946836183 735346855 494497644 722185027 983405471 812317948 969491859 541514772 897004134 156809629 791287787 536484727 764861764 168758058 893563180 849235676 303750393 118204219 751524983 345667984 886297585 968419174 850723875 208167121 513313160 768798312 998573157 990676732 720799170 917356716 900526772 848732183 780059372 189665719 37137808 805830425 871025486 296158758 797637821 239779400 610954231 856324039 701979471 118777578 679039008 803649777 273174506 975643907 818100837 918726659 762634482 875428019 867627478 951958697 426844646 755285588 859702012 352452575 408994765 140419675 277678709 110612292 781942961 536547099 24197885 980359678 804615948 893752393 377223375 110532920 835251776 880400470 832675490 299844780 806247590 868501622 862923965 281905795 773098712 561201581 431190952 926636280 922492029 970777041 158626650 965982808 319025411 488488670 869389556 325398621 513373756 967436281 909752838 964565991 419265749 981150614 729815086 873769730 380331406 870585668 933618036 83321243 962324529 629639494 533170724 627628184 110870517 861548796 801489723 547831138 104046644 29349357 218890300 293653743 483353459 977330716 641587234 134145380 747065060 825035745 201916505 452157912 936430211 967182931 999135294 860043575 888855539 5282425 213086685 459780848 490746437 836056924 152712152 783809651 670474188 10188519 736761888 232908963 343301814 11395800 149846602 755691621 108936967 976908151 807231309 202181499 478993831 914443004 934079401 823651852 856982563 817437850 263657557 925275663 781548330 21319640 892120669 820693860 671570297 998160730 814168896 740307355 30457010 789252931 246111341 540680036 221661038 906121906 740593845 357600910 142674664 760674243 970441386 248455621 185375188 655705977 847883974 569862623 756771996 123523874 64435121 181417368 283346754 743106328 780342563 920447289 566891774 967793769 952689917 209419816 795422571 53159507 896251908 965182326 841295271 793945688 903298568 436281438 867274958 475679542 343874666 524231842 920136732 579458571 462935491 909320822 381105556 966756521 254006760 825190269 697709361 761801467 893114927 967011707 448889203 895469631 512699916 841250160 891157755 745262669 232004742 22902614 835496456 945556228 375251760 946779562 218207597 112075070 347418425 12459441 225953947 946279649 982441420 202642556 331005731 767621562 934010169 843426564 907184187 195166679 172203691 743793686 155140004 894270600 354335941 278277255 515594436 20439275 216604569 837060336 823045870 947793915 813405351 235380479 52083444 17010612 429678729 870774353 314773373 19153730 508008278 667583530 773583106 425782426 949391183 816796030 711185441 10886968 869354344 910729027 204626080 636166863 323927483 539675268 591538505 303146096 189049003 347347913 343182765 785294194 816968650 46929582 740445492 932986969 347486816 796638466 809550094 648026957 446014588 818693306 952977150 629780349 841102756 932816904 212037684 341684958 254087940 941853654 964508570 153200338 867438361 745423555 981131197 160926584 320554719 563512001 138548973 995199693 634402384 901460702 739936996 430906116 802133979 79714793 785992374 766338259 708896666 753260093 650034638 998671875 774509333 71385567 172561932 981088203 759847662 745829238 449790969 125550873 388539662 219691091 437655663 997145702 959214996 177904220 379691084 258497463 145012351 147666092 626843494 588218511 926469174 422503153 787532847 900465321 541799864 546716572 93035589 762523501 20916394 873897287 83376631 822889538 433679638 575393807 278769222 173328426 846639815 967028023 211073296 258889679 732285397 854973137 123595072 828810731 615616440 653500695 454557441 904259341 811425042 820247850 437699915 350230762 836753128 247365629 827174425 629982016 935052093 627843970 126608757 956069841 173569735 537561615 690185825 134004403 888490406 238035476 394564159 856003434 412344299 992834470 724199033 878075084 752086239 923379949 813663797 324003272 770573463 443300739 182506656 36848091 595014490 926034073 943994968 758097776 838082531 295264682 894519518 10730387 772986218 828045365 949468980 933429322 583241341 794152229 497352884 641117688 717248824 932017131 268913007 157796984 621904750 630243345 112245249 847839134 809658654 82435509 271886602 963995408 794200873 787963389 353796960 885987089 953660555 956775295 916664745 222134689 491470174 987057552 706533522 293413091 994367882 859161902 594138877 882771623 987042964 711220510 233663021 887423727 485578118 658332538 387996231 400987018 781356113 847588449 717795115 586860368 314209234 982427911 482201813 434663409 844380587 998485492 861843093 837261711 627238455 156079868 831043745 489580182 629994443 745975376 901307351 623434041 551958732 842003704 744650414 177075716 629740503 56886581 530948923 960033040 807601814 803342852 914555358 65352719 744426455 935529609 861424241 922650272 401828389 83201916 209285545 305455657 841033399 188572309 303435313 807370013 958070727 146393218 846627271 952642754 720211450 888684517 979521065 869677223 970536748 739251199 931703227 902383464 938391455 226551411 262803607 193213956 938144819 801996412 867073703 991251577 915543181 973910432 77434720 441280152 108535842 890688494 844620883 372430640 290990627 912315048 938550967 848286498 699744669 310341208 799198184 465112324 103851123 313861658 809616381 939696797 964113957 707829224 730060819 754101185 228152836 833928983 120289911 645247518 380509073 772932685 554738726 821062301 30828311 678206007 909767341 243021633 620360509 194717196 998299238 917778163 573525848 960857281 802149780 827592013 870347996 899094938 920703915 793823327 519207614 740173884 384075235 954048355 955036742 810539748 321689231 960041348 483760100 444861518 882883182 151020775 324551187 822265331 984522113 908760528 169040007 955304590 244675143 868027915 750876419 947174029 729221509 122688928 738545751 76710138 998539012 774797338 51924637 913805413 933711524 856293336 775058597 55419581 846052770 458227645 649635427 852867556 971414542 835158897 646807860 715672545 32377868 883649932 548968363 814898828 688346074 689856958 153929720 826689505 964546310 418646264 700355819 820108847 473458768 731906597 953481066 308009282 978066390 820945969 970418016 753611206 742794934 897630807 826913897 768716028 872223218 296781775 472422123 809501087 111704204 577141177 758395868 340432272 978608967 988386630 293479567 769405175 766377867 790288436 832957817 673911551 49254059 122105775 861278550 652203238 837659254 767747799 917458335 961856724 169864559 912097285 91501055 181885929 882174284 922830765 584961924 421332453 519976294 441883655 22662006 951061656 914082424 822642744 512769822 935448426 343645672 830651392 706812339 898357128 700065632 943994850 817990805 917057388 910451313 984941293 906053428 973552385 760168305 381671089 804806541 165430353 613313913 913699796 55951350 84346580 336715460 956563517 814282410 706402741 619123311 759524464 755818002 489622048 770754912 990715182 391739202 331034088 729421528 902583929 959465769 760738994 137132793 780468116 74451465 36884668 356920048 748374937 899994155 891213879 992411513 497031956 776686649 549444231 197447492 850791239 537144610 935134464 791994159 991181124 953327050 841113546 477230116 253231862 717077827 951170477 652078978 885268248 646485239 257030596 806694432 202767098 579026392 826968129 808874793 392791919 669816799 143326403 782972779 855073139 976154437 742493436 937904892 659736842 106390951 805729347 506946327 714500267 792518630 183729681 915976306 159376601 949520737 948097038 814757292 523580966 851698928 924254598 6729191 915776253 842463784 287565027 923358623 536291108 181047927 934220798 597774181 393485382 987412034 110950902 861666858 802587850 789359177 156296809 948521189 833799119 525686543 618658817 990932852 804280836 392734431 833379659 331032039 781736363 304881061 966671090 503061750 738494733 939178929 961976870 303086877 935980271 775124494 483602903 719617962 511368099 941567134 322650140 791266502 821262783 715829128 31055415 926537489 868358335 971741363 787743831 769517921 636933524 348767603 103966895 906325532 600853766 977843968 719702452 791967409 765525806 998323461 293702225 606423976 941490841 436986058 787751222 951729926 184539069 914917391 702530601 463884579 902981756 811452049 4104832 770081516 914657752 506762323 65108712 490044699 207481171 853305744 741261840 926808174 881222807 845465993 792883996 743964191 649411254 931682018 943263201 737020247 319144885 749301124 841428463 456305819 763363768 824719010 718409537 735019522 391659179 661150550 901305478 176546501 618027345 592049896 922658412 874495809 294821496 908022487 668326490 889731057 123075803 765496908 303909934 375357318 84634534 436868 766350766 488446283 453363654 333609785 479808453 560232003 118498174 793579170 885543573 954410243 293333765 807384575 372202143 875092714 181143607 757195126 11297613 914792023 349108324 951500665 310839141 827001871 837632193 926486649 52799263 506367166 756639287 899040844 881306990 505839033 643181120 744595055 954636358 64268620 374526324 437292232 380029992 248670545 449597090 750461184 95054932 318157182 891624560 996050669 932014098 122629242 239648323 961445379 945931338 693606199 439454541 648968649 679706732 411735671 395683342 626500419 753017227 23148470 643342474 284804570 878022939 327925101 830634930 883979932 812651241 61595986 685973024 147718680 631468087 231365660 931420844 706373273 920868271 267578702 923937683 7849805 876563233 895071251 768338132 848775830 920287140 643187425 898257529 868244766 817193750 276618804 405296204 782874614 302294436 598009965 962520472 241702029 923648897 58698915 14791125 340787425 920541445 608818586 740923886 291052611 438057383 903777266 861541274 87155777 940412299 800035744 605810689 692402062 799948718 683400348 917725007 278762938 710947265 203261042 417071915 829045870 873783159 400041688 188699407 916089447 180478114 862983444 998068587 696954282 994209866 973377447 865609232 814835001 723852765 761111011 560553530 609714150 373104917 87628781 660974516 721786112 356288384 598334988 948867656 997989537 912364322 818644435 12266339 705670220 976454693 417419971 10050233 775966176 839034632 401500807 827533271 977696403 115848587 121919484 925772435 905065864 306590597 298722840 898629252 397831419 747465863 55413728 978239366 916126565 782008145 680694158 154478265 854467385 889765652 554287198 572621347 847170900 985666736 598444265 964924118 815429542 680848411 247653516 879962052 969097176 892138181 933693315 97211309 938598429 950202504 280730841 367675331 902361415 901372299 180751802 745001802 136509446 442008911 837419750 877459316 991657957 899035606 740199934 800864719 778059564 66635699 907847697 914056196 754182401 664282808 82167873 987068782 424061078 759013943 790780874 571805757 796591569 580494302 406550177 340784302 347577475 880918485 673343092 796653112 612635151 317207032 131410776 904368031 430515258 747491703 809325048 396300858 7069684 461577673 161861045 803783157 249924718 557707271 275028284 396809630 521902627 860402285 866242805 296400588 841401637 197217134 470939977 174594167 656421154 935195515 896893205 236602764 849487850 997099674 636676930 37452705 981109351 808535408 867171701 501701611 140569632 742659166 763230867 811794320 673322677 969256564 826651956 158054130 11592414 5138484 787647976 128857659 321434063 979861048 887608947 137165284 928416387 918397421 49944027 977517109 883392923 694961061 86335954 559506364 987741573 855504483 402756174 919968712 448728255 767626672 28996455 791025679 249809426 980841862 533044137 294680527 35089046 833170093 838106320 945835120 78685882 896607090 781427528 956216938 907469255 29250172 135214500 573708525 84575589 739000062 158164393 937600267 963588510 903650787 943891474 678966476 454641950 846265930 787245438 654481354 967107256 702310386 386585876 832059143 794448416 892560958 891762939 922854212 103036570 531596667 573276784 768901213 967354033 955484178 739310249 795396102 415963432 413682549 935091449 844036979 783446590 573351858 852694087 359209517 918359121 471346865 809025450 443830273 925390262 976407535 851129227 748434479 393835176 697814103 829327955 867701742 310592081 805020002 809382094 37520872 674504742 688199318 316661577 788324245 982845038 766261121 199665425 474978036 934676015 637780102 483455684 816574208 910602714 671175899 512314118 714387915 929592883 75549627 993691086 362158310 709218950 557349888 796060414 788906516 885521755 370325370 49862426 737020247 819958845 322963747 868396281 841545240 914463718 309959377 971432748 317312892 10386420 710903664 603250854 136753811 960854446 811873491 940932409 319936635 288851499 924917508 872622019 400031096 74574832 45055689 408608830 289941297 532153676 335767290 612854242 812582401 104804173 278803754 596236104 795410777 973656679 440433585 48056832 756202097 919051934 625714039 295283806 197421939 927385188 847332292 444466492 713816675 189244888 957077032 779053296 166653857 418814662 206579128 837593764 889692906 127139961 952604164 108082294 933278425 5353445 147999206 873346409 944083610 848418021 103705310 350234436 783602554 893541744 127915981 777333908 730563707 944822937 299076366 334028198 182226781 850635158 983820507 699455304 772093229 973121432 749165101 560628530 251436075 757808043 760584321 288249619 223977452 989907222 596813039 131989292 621780333 320560463 203593712 627489292 737807986 823451990 922741049 326662079 874660970 874265351 617318519 300707920 859111373 991593178 891865107 216746231 819739211 391335896 903052884 153254618 891468452 886869171 102694586 283614042 807895868 145753084 342677315 980380500 773436331 621199705 71179472 845305519 918631003 464190972 563904439 487617218 812173325 838106914 893958321 800741781 845356486 912778920 979317203 59699159 62446789 588297256 252280177 884945184 920949459 690752039 298319998 159041831 814770628 770481357 63403329 898190523 893999458 606002044 834157090 311360010 888284363 409598268 114572984 81118380 87080889 827248407 302416601 214798465 104232689 51370057 609577111 602243600 960910604 634682056 569902082 931243619 572025950 927893407 235138504 911465174 516094071 882003676 746134518 898157259 735130458 787563860 822970723 368907035 811357835 907145248 452356143 525545698 892283813 845292168 961541163 912399664 548206453 969963953 647675958 911528931 939935638 775411928 823259389 147237967 815457411 808285100 822742710 511852777 814070110 877695405 954166998 526384902 817601669 944359704 729117827 777572053 545196087 885801146 394467108 350208142 940668257 4079060 821708774 737074196 770381438 261391519 845903522 770977151 922429510 886552985 224361821 810887923 383257111 836436241 627912961 639694728 170423583 146219153 676985057 393389537 753012971 306810015 996293809 345939475 900714972 876635302 765918839 600649008 983342813 965436902 260837600 967581714 520504453 900819379 77572142 814913262 678469880 751118841 769069327 763652515 717849565 974229439 764775920 76383185 582369845 337248554 915538395 843652430 760535896 843127453 609118260 757059861 131576412 763313267 361473715 668660522 543690768 606109286 253633953 289661368 888835334 407391710 762204976 94236144 458475785 763410074 73753122 55789794 790833368 252803160 821554274 996108818 188983438 774447646 497774318 172320298 900417058 945573509 819095679 566869214 88051882 3838814 771776415 666410469 936433103 499164152 842863741 949961715 289464572 230363122 667535624 417488533 944571700 720568297 880674270 812946658 790210184 441807581 753426932 976985738 65393564 840517451 262649310 298174186 773024314 130635884 157008431 289178974 680149787 826957182 266743550 883957102 887446877 831388615 152635545 124113891 955550951 71866073 420779753 320309025 794969696 704001606 691496449 852834801 173666303 846200947 871607452 865886328 791237329 601443384 342909730 292923854 844024761 458317481 5998413 163805575 15698508 800264138 12924563 255659391 125502132 566850526 814205217 804370729 314094045 737541496 868149155 661168126 211795172 234843037 875718841 700837628 846435423 450882547 612145974 910633176 408027939 13104377 824550332 187496039 368139141 454848745 675544719 792050069 567558939 965555440 145717064 941707779 951164794 795222866 91490569 239488062 623717336 39296937 296604816 871469763 280952295 942159528 876980753 786118966 836797234 936764434 581946872 917063656 745638148 686617634 820796588 794238447 945305522 64882461 748921558 488503299 368926885 168815212 645547206 883344010 796714102 680323417 994304758 284568959 861968999 927732732 67396237 634661114 585186610 786599621 399736555 438344813 299508831 562872264 404677650 758925995 523142972 175502282 669401172 709788490 904963869 621619486 939913737 439827090 962969717 608077782 363552430 937351600 781966076 963890608 337453527 980159951 268387131 984261212 191793544 98538762 854434903 237604792 652662941 276616216 793671613 199587214 158575339 243970736 822029561 842762247 895857820 905568885 931896807 15063875 807719293 584951879 825778883 741869524 779638787 224230839 762761088 893643627 921611976 367143346 111285044 982756256 416744769 504615228 779317629 887022390 972433701 371264037 681618503 612199697 716343683 812592908 997328222 809746830 558085766 156881396 914981695 770116610 740032777 550412735 984532862 715164772 897688497 473467516 61207798 578741351 700631648 342622983 841015434 103459513 742794728 977229738 770344421 695488636 846838186 868559558 213841206 575882925 377578673 43945386 656891556 804931795 864858157 769300379 841706736 359361215 43793704 58857601 932844463 838957132 994024830 339688208 952958191 310788993 264250515 909165128 852318179 562931766 614084025 796937232 766912969 738598219 947787445 906054973 756996650 800953464 540785077 76528628 879432922 984333447 223296253 143075178 415272975 74568821 923175656 854202041 799319876 440567058 783182967 765383522 999198257 978334570 31654105 573535329 854888350 782889342 15344246 556378595 943725687 906858311 454224997 864784051 209640669 970152249 629643752 422469503 473055678 733357216 721324333 937864770 786783842 782016825 743773441 547133096 954910581 413000592 82011542 687339886 903374651 130188197 905084843 752941326 609195340 722441381 831002533 109557250 89022007 722579079 966750981 825421350 966268426 980476879 700701604 67415064 149413174 771828081 218714358 320225388 803346040 778547718 818749222 105005313 890300085 813502085 899198434 337180854 502667657 67173565 413107074 816724266 936123684 837958437 740856737 94426190 985684502 496571816 52625128 928152720 888235344 226237088 752459359 824475398 899370789 745417115 952579110 917824029 137168666 252850078 923969663 613851645 822602258 828663539 504908744 849482617 943154451 842078994 451431924 36432666 194214450 818794534 933223604 753407082 232749228 696750880 793262238 370561465 713449501 960881581 992907021 948118702 806365380 801234704 981448818 323548399 909451904 818862573 861607510 517274798 821601717 852165140 683766968 953019547 989522595 777600078 853165246 347197272 87184432 604153153 477893834 768112939 130319094 913062926 663963086 155887876 326949352 917542768 123231209 285199114 345412557 966068066 802743200 677195502 170342674 604815834 223172833 748190089 551609819 931402619 887615541 814653705 555513072 919363421 313757331 275325336 397103422 935180045 397386572 886909122 931497639 959410178 886749282 944226731 287626486 979430034 166094148 464869953 772493610 213230392 950130523 867330454 845712146 484362659 659290807 683634697 968410793 740726747 281910660 917723481 897777609 287751171 349858500 977602868 278825823 398514624 23305024 957310478 558446172 873887714 525286531 795085897 898501417 420407189 377523613 352873741 897352941 949609554 940189552 137086505 990530570 274167951 780593909 972918682 951508128 988464898 858998464 593350718 407125514 813572532 179852332 914945362 693969153 128075165 931757543 830066151 995753449 340335128 909716017 774444020 150404100 773265716 778115712 451563207 246622038 784219869 487133402 862918696 75402571 8809292 30426733 547118116 803654477 191939236 271200335 813986291 910921905 130726189 879780428 804934741 670940876 839420322 764104067 752947861 894753631 875343053 476221192 100188266 717375824 797817984 939099342 454723553 375182771 926387092 13959937 289244963 961926892 810271684 889137954 716156804 819685721 751953495 410389538 913179877 717530523 775603098 96021377 983864921 460286349 748029016 604428689 925779765 774144192 940732841 252568087 847529034 227312464 283820725 860657299 878395486 622224733 900396113 828751780 942278192 965000760 885406962 270764227 605188710 207751265 931466956 872260211 865713954 960386976 897345936 713033776 235834930 875716752 945356331 763468180 312101858 674362364 122095513 62379388 9777063 17909779 783228286 32791298 840877744 764903853 902838396 737508676 750933244 812005571 715615534 383626069 194617704 926385685 971539437 164809387 635849805 803044219 675970936 424349280 431727787 188079594 105933655 159565881 804329167 267681367 4786943 738265947 291746632 19874316 794196110 917067439 592544394 705021841 40198325 116858475 85505600 191157314 390042500 111610387 846154044 519069305 995602824 859209420 349501545 515841754 764627676 607795957 25794936 650233237 362142275 445200008 332029506 343586320 836296873 107701928 585220634 49770322 529416941 962721029 903324967 673354207 862267749 900375207 399603799 647827215 967067633 413797836 385223682 740595694 802133307 299088423 985093197 861160495 658868345 363006894 597077404 677349947 938121927 865243953 951532043 826612090 511562992 39001265 81537541 756122997 957870904 357592369 613822671 264510114 864074364 898851645 112100989 992837984 882686600 495551672 700973195 461901441 823581353 779421470 753195282 23310584 332946138 29644707 873849400 306648383 232330738 669251505 80908309 269281849 943857282 127208697 121353127 172133453 944409749 924231789 453573117 78676701 306189916 443495480 979801759 916417318 834077122 122267727 198145379 943008085 44634808 138862132 871674123 884103849 819286711 858776310 344022861 524507276 273784266 263402068 761344644 718047939 620822670 355787744 837613098 868584612 251967321 935182252 753620480 64423817 838112163 792337128 434074881 912194392 604532263 558413289 279627725 764823883 883294391 554324292 958273644 288073060 936644428 782678850 779473141 385951383 79015938 827404990 891048592 262299702 812998961 898575188 60558275 518616463 854567294 380358288 765674158 517797388 904024679 394378640 495320496 878930916 688169267 31106252 706749018 994042298 805933988 64650278 60762818 294877431 821976030 174923938 886588522 135430254 786431952 266995540 693862371 184735961 822772412 411876435 28329235 178556756 952274641 497842987 687093596 235266722 842449475 803804272 994798405 941245313 901540980 774847279 535697975 992295315 330446645 963430831 496679383 108797654 747392056 142256150 389363604 667267940 948025674 794965790 885171473 956748643 985234451 20882988 229773106 924686698 888702164 817271903 859828262 188190966 772422758 802274182 559871995 896881344 897115595 769733371 272956951 716902479 614139941 749376955 38591465 990764297 934746353 149091241 417060559 722563997 131687598 515292394 122435429 551196528 701744758 112129885 829687436 175998066 847531634 948719758 972262950 810607229 204536884 179575427 828134490 998947824 740447323 714139817 739464302 666614971 682427109 131699209 440872098 193401877 490733235 530444268 399512678 845997132 609214719 598413537 668790468 728663402 613237800 585112387 57590161 673206631 566866603 329415727 925219676 823547840 630038305 652831028 986659353 629571202 652779665 287713893 302331702 962722711 935495907 375998034 535994149 738789233 332297290 743728092 622899912 823759586 905967303 797697959 673933617 894054522 73828251 319980704 969871038 144977822 753269289 834247145 764105750 854653143 768017284 246300653 454848649 688309646 154503471 159298653 953623626 747822825 85526391 679063128 944992657 279326192 109456629 514885697 950968025 777099133 850808358 463719847 145554394 922258701 727264485 251303646 739801805 898884664 680191533 932023665 38805359 880914132 468247140 865577182 84460125 208942506 872201202 645501560 130595206 299505677 857049381 882448247 910494301 91191348 872564577 67438614 198449182 419394048 536994269 299050786 305593469 267986228 742968834 956192795 792752078 909641748 938113376 975607192 958989035 962509465 838305243 797212660 245914091 518952135 346395196 963309948 731204825 592488681 132665675 337097625 866950347 882090422 822963252 239881116 971682760 960306505 605964819 41290121 926672655 332259530 417615141 36125259 701543256 983640499 809700512 703550007 679138528 929720584 835344842 885045937 979241660 650813762 186396239 445677710 991289818 757738227 942344187 288228569 612165626 931911874 899493241 482811418 719402727 882095831 734451598 860951724 375899243 289981906 983317039 837980219 611274162 875360153 853838748 499845835 403593657 890345045 806457509 791503699 579176692 752008878 823878640 921958121 914616207 571934234 86717290 546643945 568099524 430570254 253546481 564250337 650289586 283941551 325754394 950316260 976249502 849472758 855597801 499026386 987833049 333893019 684278839 849872508 330577021 594908273 834976350 968027721 928781756 80385708 287964939 612055141 744276426 443673840 69746013 817901683 444279118 858189958 26876646 941797782 567161047 597096256 869620480 909743739 813505561 221090606 818231566 995688513 936185698 784608001 982351757 966870900 905446391 664541308 22588353 337546420 571969043 871174032 174236046 37639770 995983692 280028728 120529544 407827788 693817930 916943632 962706747 563076637 834182412 471470356 376275182 762796777 930843541 490551179 355985817 415180066 487131128 961675676 602932069 58395701 552815847 819540080 770457469 895229550 860370408 931316866 201857838 984364433 147649508 41039923 304635065 338431281 820732272 810011065 205128694 804360575 970154231 19250467 946363413 917385192 465351218 745242916 411113909 805846914 925507830 827267577 978299933 720445753 405724186 812976993 485417692 741927261 787659952 921701583 539777571 267849192 912948634 822765173 193591747 845035712 817366153 978680733 435944888 190621430 825411609 736730392 594655591 989880727 308783340 940125982 780980596 477775978 883993152 935533307 303753501 850909597 803671449 994781535 378911682 406394515 168000073 787871283 804706877 979936619 38217609 850350086 932673467 486850311 810789866 811131720 733060426 92684414 938356780 880276615 997419541 825735352 930859669 879153192 861893215 277281939 418459557 805494477 732908087 173262207 765960020 489805343 713895323 771875636 235835316 799294748 756593700 414576671 222814565 341759877 438623097 982604661 84461224 68165239 852668208 542694372 962126536 70706370 502546867 783868873 903878917 553954841 561033771 451580248 994164816 720679147 227965363 859253496 851026950 663298828 794186668 187978402 987250926 52402660 330876799 774124321 661046816 847235600 975247681 792378455 160368424 744766045 229913866 905527587 756849381 708362156 936708229 366625636 769867872 977438466 878850407 646607509 655519919 566856993 873499711 827633595 993806940 767252344 758392210 321799306 384539950 255797724 251237929 172972004 276180886 945734068 769513766 939047236 604558481 317144551 403023841 218630716 745389302 773382022 903468394 888531252 825166654 844084902 958179396 922865510 930740033 440653612 447726459 699916397 542179941 975397931 781664101 267092970 948777077 595079275 760576484 560770864 796330175 783868045 478827051 873409998 544705748 416461338 871618436 421286277 591838896 911532715 895352932 297046766 210978360 967544983 365998714 934068807 793050152 179824269 990231015 975244795 557158040 922358844 949470275 358571412 745721984 980597395 630922703 800291102 5997920 864939537 795654267 754938425 22536726 182789945 884839331 24803555 853354677 866084914 903974585 903832561 818920993 467589113 573572716 460048839 760037808 249425750 906204836 138185761 737723943 626277609 488942602 445244208 441125497 102040174 794258819 932169820 45000720 346685865 749621805 945349026 190926095 527880054 775896147 468613996 567197413 291013047 608783699 76934096 544633473 119606359 973444870 3008790 666260159 841051668 156179501 107617084 84300483 936828538 384476714 33460659 155173107 259207902 824804045 784435442 702671807 797389825 975368877 837897904 768226538 845372663 250230947 403721040 878546683 667690458 494480980 557824849 978620598 701275038 465483544 803443989 227402418 963174234 769522517 440185005 769161904 528800882 959374921 789359971 791825011 682150366 979487530 928533204 809149658 477190409 53969417 830108643 648437601 482006683 289378201 293721636 489877491 864317260 771227685 804091826 666092034 979237006 794431878 382693389 479893960 70389330 928166718 996935398 217317350 836524265 702735237 885678210 816549215 774450324 752765625 892437868 850989282 932140322 646017580 100300341 504578250 142079331 945369265 502210648 940741170 71744524 815745407 834262374 900582106 758145486 477509990 445760335 741274104 960426700 497114773 49086173 566744439 408735856 160957934 202913589 734673027 968805016 972841443 194454767 895088464 904420745 284382398 807552637 775753915 975916742 952908446 97943135 991683311 122516097 914483404 970598020 313096738 930481446 642487535 649773257 353121527 417340074 252626611 883720793 364169024 987406468 664152628 246161793 761150200 947014703 858781924 395347967 758150518 740724931 872994127 134968068 585541913 362424882 98561154 892724030 671980653 41860219 964668919 372131633 922112008 690111933 523677404 931707716 997383695 490711206 955705948 625445859 745659068 827879344 935882879 10864643 950281457 908177163 198851316 549065964 954156671 318318661 930906590 708123504 304842000 968788453 982550397 197086172 881007614 404675074 959859779 850054883 35001113 627501638 642028275 908280341 840500262 139267866 558638410 992238374 966862927 218611626 974202379 481540315 953807898 134452530 510311328 966979047 226014456 790724306 794270419 603145063 487420687 667744922 536507539 249908632 809043131 334980736 224471270 896976472 900244192 564983464 902352019 829456207 501767497 867774202 937467451 308940505 530572972 87353263 52422013 818876569 945096604 813660796 795230769 822431783 64303410 122170643 267147457 814639295 971231453 899006409 976205042 737321550 23956853 863971146 930914695 72969118 768688373 224762035 84089044 470482082 754877982 719361160 786053408 523121256 776210013 976401935 976125853 566027915 622679136 403742787 70857110 425027244 704869613 44757535 798768341 607667884 186209389 809521081 932825726 877881556 973830594 696958499 971917510 33403702 54404485 167865642 504842425 754874118 878624290 657145345 788950957 770844832 934978310 987591799 376780065 931508009 952075334 967407131 816195843 892622112 853995455 736659561 792622540 847536031 904738476 926160812 347058633 832310645 982406577 49392415 996687111 807797134 819144489 942836484 27606737 857297893 782783772 757469007 908974181 415249615 163530317 290430144 832158812 880403222 758930613 949948359 825963042 989958547 997951257 715264752 658607750 445186360 443790476 815902507 933634068 949693972 893365335 826196997 125838748 577819757 787456753 980804160 906712661 750842219 967190097 973376569 32460672 995474854 584651596 59490761 154283518 329136990 715314561 217947541 898273082 813766396 753939165 825241137 900116053 380885571 425393108 825926747 466064416 516550309 221237768 200317872 809973883 627552388 609582445 342159413 970003016 810744401 510638853 935379830 956089394 930922368 348655815 247681594 551690575 817597387 415316679 960855540 180518227 892955113 842873562 897219968 590520190 983100848 6114397 370196987 921546615 993414068 939416656 459785893 85979626 881576491 845771878 46990866 558238600 962898776 879807939 397226806 895062492 633965730 855195287 797127648 845786165 748233545 945039930 731056775 772146698 745937095 102605015 508987195 963528003 749552662 935322508 671872267 42384746 552460286 48237119 796322232 944500377 753390433 168909048 768656415 781295302 619133681 22365005 254410595 917136222 497960044 855537388 943108621 903148940 301315489 986201626 68403891 803179382 842029255 800874954 722417705 74127917 274257892 516079657 698627934 174766683 900417367 443312594 87568236 757571815 359858239 104323835 309396063 110074925 82819564 759472425 925166980 983872462 928214597 810945206 982309415 253708501 961918352 881565638 794669001 493224717 740075107 655404002 968624365 337180787 162651515 177551237 754742195 935530660 626386709 549883687 188837743 118714202 95031957 849450177 405619926 783387687 952609111 864204773 889292531 154035709 918552335 869971752 925590651 369524497 941667737 896432789 667462484 930667115 390498905 746269305 879107685 760661412 626603258 744448539 999666993 81586289 786261543 981607439 994558338 308064413 281218402 828097328 214818004 901753545 317092394 551062480 662562443 751627907 985810964 757811780 552106931 184767761 506842109 637607778 89963020 777055569 864672184 331140072 849804784 694253399 870669137 272908388 963633551 294391229 779071982 842930092 843083914 478069049 765215528 784304738 919801964 931216453 692800613 808048763 511944068 497036255 770915855 831262801 749499351 776185633 515599944 931342946 784762733 881414743 162830656 60198139 949427978 914122928 368027281 844781185 358300980 74021572 982993411 924858268 15993191 511278152 437055718 127624505 535050690 996627093 814132061 890928027 974134016 936375901 946006898 86967753 786988797 29622871 935405511 308586369 706537552 465288206 397163709 972835397 856211576 859745782 969106668 11626907 910517221 79574502 144802180 995712140 385426708 172042949 529912680 965556151 485668151 60285353 747124585 764656483 926790503 256620997 972922435 414690886 789501547 48343906 739253931 280842357 41805902 830554184 219388319 437491294 941410009 860847738 330770953 621285764 101462816 950402829 818797549 797003406 843805753 527189807 761047275 226463645 715470233 901107707 778511157 768409280 887109529 772897916 928705393 759149023 533486766 616210116 903866112 633402037 135383171 908414456 735773655 89827698 456922723 96025779 985384711 152407440 94517583 866412055 818285828 601731472 931302496 741730512 112862780 798104503 160989215 951993829 713207863 536985384 902488048 597266608 210911187 700872380 529863281 287051872 147413222 378729648 839689401 408529343 353042871 246153762 872954672 968052849 808629139 754799263 457136634 695778090 769985488 170512318 171760996 589875747 845153534 315599524 827095985 799735021 200372168 911152640 784938951 956245134 888342452 592616423 907703215 784627930 294513183 785473380 886860797 966181494 870469019 133615338 795717617 914488237 854402329 992785508 282315428 742653996 940788220 863194451 445007774 509330535 149112625 910955773 849002032 110085629 773449035 541961845 830936039 701156029 952805282 59281154 813437927 425348884 725991051 472557761 108380882 428688331 993033363 803113669 764388775 97460090 731270436 720523592 625608749 857060146 204628398 922786669 356663380 205882435 888381086 985529685 501897551 671740404 802717658 742072349 188427194 675815922 23210645 695498600 293417842 737020247 898876316 58231592 982773083 130179003 194187871 845762574 875308724 548893137 760127758 433082266 996671346 447036230 259039050 818834251 918956562 120581481 277371981 885453945 515859475 917636609 379196897 114213659 759986260 325922877 926987307 965026402 971816629 568784385 126752674 453004199 858530901 903182063 684840007 944002519 574213537 533574408 840875569 22161113 287033570 43031672 23987200 996534046 973743681 839526078 859450854 717747200 633792135 309970969 646522888 728664036 842026956 887046835 797755668 895379232 567332592 825608221 843894524 646035983 780965191 153079289 492379900 528792310 754497501 840885110 805848864 886359109 19903018 687351211 757897072 207355097 122349289 36718593 407014035 83091880 989096724 840060140 142946405 842441328 619337436 470392286 6854671 845867717 809092285 927306217 393510549 973932626 850599199 931959760 512371693 831692441 977948292 981848535 939125349 189681228 140561893 38990912 739495633 691415920 310064348 983801379 732707995 36149721 289137877 17021329 156303270 969329955 135738293 333578749 521371959 811948290 263709570 594349711 923791029 843946816 400013523 741111858 363423531 875330727 836249401 661071657 310221639 943725789 802735245 905420332 969895264 22520779 32555885 770485952 711021311 710249957 49945973 743078578 967372555 412314624 767080463 535316219 902416499 879369510 91678131 54565961 543472329 759220472 984165820 804612769 777704929 335817499 789043335 179882991 907357198 36571012 578125362 754773998 985657067 793358598 797063800 194608886 725960247 856411975 461640693 789947700 481926146 786983871 143865840 964051546 870191936 148788821 320285236 2935857 750366254 430904827 485374650 805623234 437160522 845174760 315763326 165393438 501570845 506297032 753243037 765011561 739933137 868857650 560618635 319527825 380572809 590037161 993755543 585546223 966683019 372404279 613419679 275282366 459011538 704445496 748326405 790708936 603542663 437717611 798759068 504143355 669913095 790061450 538839078 743959552 822868200 945403312 206939442 105033201 858238139 882225621 974905566 136858821 960827970 412755566 587374160 745075237 322474437 802041396 505884159 658016802 364022859 841178327 342710362 981616777 979636021 982880703 378703807 964661431 846623434 172750246 660387893 321589960 942594899 930034787 999654915 682866632 400638034 219613650 302433742 967334339 203725244 581194621 870767539 973571983 15095466 813172320 128030113 956013484 834515864 928884014 848987056 558078459 162068490 948045105 255587697 105500570 664515607 274592884 877849210 150888362 609549345 672569859 775368139 63971523 369771438 277352536 417416074 205377144 536130270 741133202 365821728 292084177 544497650 895890027 442100976 281120891 310097887 219022615 901366100 30745900 842960548 180360332 335251239 802438740 335766141 678642672 787604669 972890026 55901926 759161194 58708752 749615812 572600571 884721451 162064638 168456872 182237864 978457748 555282837 451951943 778045753 561960155 367524396 577590591 737235439 869744607 533896125 631428744 953385497 858353905 456203003 791864863 838339348 965884059 826997311 664586028 960577840 662963544 760380094 928668846 980530183 72748312 915318018 118320121 771816923 22453290 28051671 261431110 789042575 167339207 892012887 75254085 236335023 344930334 158956298 802836884 453569556 457144151 757683110 742329973 913002512 998937427 967797822 95075817 436595522 879455304 941479476 901223381 801423230 896369229 648334291 932038361 416250475 886230667 198750355 751103281 845466107 938568531 221226164 654597109 750361497 990667257 741544448 961360847 204682846 939113445 115176034 199979686 966405871 924051755 909369715 81160798 695895100 602496724 409427856 873456751 782295855 965709555 145961567 174826382 883773006 806704224 739956033 686942460 703131536 857107020 748721262 368963128 838570303 193390919 585517402 879985931 795598693 757010938 852084822 916942048 362026195 994342904 795985388 312626029 838672034 722032436 740203308 888874645 889822781 872670232 166743915 851598658 901793876 711867977 516408650 742658018 749497244 553872590 786703585 85373080 858340556 761845670 922303907 355424292 845927660 881650431 475441121 166619276 617071616 694225729 958073773 425536873 616784300 470872226 879845672 959509937 799821165 655492320 759853859 927402789 325646950 774987602 401532590 682055208 951033762 582833090 868567880 933315218 748199982 245499199 695454122 985926619 411311785 570971111 425351662 903008625 855131569 228741460 903974585 179912281 711641578 901938564 911746810 244425885 803089494 109783617 819693040 684391723 957743663 965849120 455701178 985705907 998699658 971907154 671955623 716295835 988137890 726172020 422469291 139503167 988976862 564909173 828201858 581307717 802904982 933571741 530912527 144510203 106861293 216775218 185808910 820169700 413500435 335221789 739323474 380987521 971645602 208004946 571508409 872599851 974877932 822521981 748750171 806755828 758023001 851717665 968914457 787971820 12519807 965524969 228508328 364101803 979534446 815867017 810010367 993212692 225461273 774599928 962267789 761874453 366467518 729199520 877422782 819936112 257481190 97087454 323848400 935275297 898257621 122240158 216101813 782210263 677732999 61465630 548016498 804539842 588850218 38070079 435992587 403331353 285410038 996814059 864875697 609455819 259265123 702311080 742567653 837037635 507607751 275990260 139595502 285997440 109269406 63538144 812130602 312619619 731510870 749303009 236484564 888315578 998741895 824701027 749884780 377537354 863485357 885055411 953807407 879920586 756819539 859769208 64381575 655538207 983942951 682261107 602293700 311776708 767192327 439367380 789923418 849085288 817324202 939987772 927633995 571298582 440874739 548524596 816008172 231195977 366530377 255510058 369239721 191950539 115741914 971542893 977103663 741623483 872850125 903167428 921788486 590203786 699023785 832689496 930589012 661971547 340203252 811959266 143221848 336455057 460990098 441171374 250977983 881180167 907918326 272850892 643411642 968633633 239248100 866408141 208258719 195543056 34339155 153924830 733684738 846241108 800219035 273928302 861838260 859503041 343942235 752628553 314053014 119610728 789713909 237354369 700176961 971088857 835053118 792455905 858565739 770977857 758230369 380035993 175538897 298751017 793428889 841053552 798183170 958232923 761684467 658298454 663143573 962725293 585251511 802660021 105771043 639537329 691175446 69507970 830126466 745035959 898298303 878279458 757567452 446238458 20456911 176292312 826302817 738407265 737020247 256072889 851623302 955511337 132437373 135588856 771265895 250594731 717543541 620059856 760223941 158570094 765598037 847083455 967122189 368351292 858950980 759838722 859238908 176989066 714808014 815062484 824442844 327915842 616040458 990807783 521891912 221717024 455683800 925117566 156099613 956477727 170477921 981662306 891846793 9920521 52941225 234337823 184932650 488385172 821808396 870455461 961917022 538634439 350335169 695317148 314004180 195722460 326952093 998874592 939655232 6407359 761023922 897585523 591842053 77059310 831970769 962585751 988504727 709464731 773084398 894015210 27177293 817185097 603952836 162384182 776563515 741061190 314692779 917935498 920975826 799887103 304914122 871850718 877504099 483819431 945601422 900553968 972035942 493418616 746845126 837097480 863816271 563496527 275918183 802859444 943297103 760905484 247338988 171384239 748934396 825889790 901663625 536402065 121031637 656017191 78267151 753180814 508407088 777875010 546608722 239454074 854743116 688200599 699010298 547998729 172297573 836534106 772818665 936272403 942838879 339860473 944709373 163301997 926020562 904467258 948618497 211072921 791670026 136907926 73574324 762421256 949036423 599835720 660906460 739162316 780845693 852901549 793601172 835159171 953750998 767163215 870443135 865285345 759099440 306895740 994161449 614032645 947012012 745276831 25645783 901672524 928709991 706708600 621863497 892781870 98157617 807433185 560387761 390395677 509199911 735246333 988568701 838600904 960162960 903816601 133864346 27379204 960335923 677163836 752622270 922673267 832525573 801274 824391824 489710133 954370282 257086658 363586888 336409962 791570133 745142141 330692468 699487033 289185805 978271094 3212022 84771154 947784010 740394890 872516930 893979532 893245743 501302528 314232487 93246428 227546618 763046363 375274438 806827693 839872502 106250204 841742887 836566641 969369372 837964053 411796512 230700406 812768641 221752574 950643364 994094637 108414230 575661345 356799190 901151229 946679491 669690369 781613881 872007691 438022150 507993028 916061735 599518229 976837384 861055574 457008070 915093236 5923804 102127649 944736080 978563553 61099209 923814945 921518291 574465844 49934842 486187424 729014451 251238430 363506153 853894256 660904415 942830738 920664541 950077701 732320793 198268823 454568521 713439139 700155769 387355754 780891285 741230875 883488955 332992006 955508095 828444909 784860524 299361549 980357865 252543281 261964735 912566714 770202031 755692141 817700864 979728184 405749920 812656109 855808548 826454523 27655180 765991874 788110599 480957123 942225515 399412099 680511394 986319804 900825560 108631039 903965762 980414104 819570107 5707712 885586716 979791358 800310628 254772891 175430761 801092880 517842312 816127039 665363403 855845275 92951048 981433220 521622273 831588801 96594776 316959012 365842245 554970505 363715046 867323742 952126196 893792147 421640313 767196528 738620721 190816504 301379377 762773292 412979010 897785995 609783748 606088775 407889076 959922614 956234773 74806887 923433328 344444356 198957202 832040332 741288765 987178566 819756328 473208460 819990464 515037150 824830597 76530720 920072952 88343096 464672694 244630722 494814273 672363373 850482557 923908265 771960717 496883129 497155282 947225877 739274285 881889381 340853971 192995920 992458657 500089302 687007288 331286795 840307192 481710175 943099111 748397823 949519656 824401792 412229306 973797206 888590122 738272709 389095521 785723080 748136594 900985071 261421136 838102580 888032110 630772048 9754669 145758815 964459886 810197011 508207524 839186700 231260900 846635683 870314914 872922922 255966862 881632167 648072072 123103842 344499780 149446213 604635253 880473327 873444122 341293763 556368903 402143004 850818916 232645509 893004831 813457268 908846824 246485213 632738812 948014629 181349128 305550735 408339365 167064724 811555538 929790940 823962755 239059666 386821894 278968882 263592477 980787815 407751361 150704347 464864733 199028048 695533838 946403774 377670115 812116560 405731291 998410221 220717653 90528045 267494068 444730992 289517241 679430431 542380676 909806636 833328011 211331571 864441541 726612583 234932505 92981652 996467926 783927651 710503989 399033395 805379373 934823718 429606853 840939319 710475957 690821265 943740969 967146262 438075591 556127392 897892155 409512239 876505300 806040829 861819586 905069939 618036740 195938907 889416607 21970452 632825003 354128453 931754135 812307102 919097455 924238804 868581702 495053835 814590126 10246461 854539436 683091174 834177246 126830140 975662684 570685724 740525156 478258395 918154357 636863146 538221673 404331827 818654328 132508833 144700586 789508849 376965178 893210903 941382207 737662718 750351753 173622751 279754514 189510305 263747866 240242880 266901326 842349245 776846457 836069668 997703095 320967994 754630459 832854845 336847158 888919505 649300882 914091208 758443278 869327327 733765183 975718552 822805406 935516283 572685090 858694590 284969438 791084714 459375001 147951961 741196401 139721912 867732397 172834171 250436970 63047938 964749694 947365170 799267794 762273794 764406150 673310350 868627268 405840495 934974293 842092238 819480621 269050168 977436897 723167062 745582282 934170317 797538928 393167769 691602720 45257899 819484507 825195000 788853513 341046581 97103775 344984303 979563057 884903985 780267920 765134453 938072803 912935727 470960929 858815830 874217155 981265360 161778484 937555880 890867979 975701906 530777085 300686856 960482400 623162814 475713448 907287868 787264866 301467832 869524718 806701860 467907499 600759869 990049285 766221487 753676843 492263150 453636538 540101579 963702218 464634997 655012179 209854668 940186544 664940793 753467660 20287126 892049175 917989089 824733191 700939967 841545932 251663648 737745295 800373980 533152904 496259331 307516027 479391140 712365371 152915874 764056198 456948269 472043069 234063974 81833539 427496215 445903396 265025853 859012144 88864996 808119523 530525622 983382534 207276014 506108926 513810790 764942627 561952911 249719408 873688664 648334015 487367107 804380425 978227670 308443098 186486586 845860420 426048656 964305486 816906287 767387844 737531669 807025900 734693318 738792440 831532243 181252489 761257124 871345982 990832647 841366234 407135905 839311182 728048468 563408313 870857062 895264131 808996018 545982704 764466738 908870518 291089017 22414931 94665328 511642332 316904433 186696989 411910445 240677904 255099983 715284715 71433605 959101783 859421635 486396353 763366538 982614097 517543151 974298113 659252065 458686911 721709536 844649367 127343977 924714882 760653282 440591497 547103115 669539147 982161694 949759189 294876045 180674771 900321138 819689919 991216609 753087577 758304273 944989126 181904330 829886846 56540698 947513712 737020247 913633399 733346964 965559380 803770134 445301839 61857975 840682093 833426823 894532711 238531899 375712566 575269667 974943745 444132385 731378547 725097590 896613800 908008774 773216105 798723706 140663119 197892226 501213856 925244859 852729031 184684324 908959268 120852689 323786129 451278413 867248742 902774549 768633051 892690512 700726892 973473325 872931713 694680831 898731667 764215131 599348262 822573922 834145290 862421668 645809541 154030932 112897940 201985089 787718135 899758707 971377716 821381888 880427210 426531249 987562253 965301678 998184936 769266592 406917862 817135489 825420567 825129464 775192551 861485734 513232582 398764706 613065714 334540530 597600560 456181924 418377674 166427134 921115648 825597786 845980945 25661418 299326710 826026757 524318409 991666697 791717248 498727420 958742748 271955071 653440096 938925749 874370583 954899990 289935378 230993058 778288094 139640369 551853985 840457156 451860797 770355099 821237049 930621020 860495474 737020247 584536035 468759794 904960926 942810059 968472687 747815740 813253054 804609683 893865596 967193918 778596984 910158890 894029840 43880992 851428833 440808548 591309033 348259134 925813863 614019917 461785469 498561880 761621762 164776110 759110468 784072630 847850002 900050390 373956710 578933212 767600337 918116293 532562782 938384673 136302951 737269646 883018087 713459983 469644349 37052273 819242651 440156664 233091777 821283084 761443045 905677996 745500782 875335970 541876087 43285945 159031620 839002293 486584091 270312091 824233278 425313702 268293334 150103542 994468274 334112203 366227290 791735356 924864751 663637354 886577215 774185147 459380963 984641857 743351888 341699498 201593505 778223385 892155000 782726541 765874642 392358027 487299864 56434684 862967866 854670472 677205755 149065716 700309311 462721944 366428904 969437752 216742405 904786984 800282426 752524488 925648692 961675590 613672070 905744004 940201632 842895077 92364506 737277093 589455150 680989885 811658664 820470455 52913467 859063784 758809092 844816558 788741821 506532269 141187479 827869976 475106603 120670069 882508072 764720370 783665241 606502394 940765703 230697421 838458288 235119007 36812024 452100925 862430608 774846964 781419566 202070817 761217681 803287515 442667828 853071797 354135965 844987301 318765575 799485471 435510380 739447019 255211056 124618239 41825061 869940981 659177180 808455024 214870507 959537743 737375626 658395226 746329557 745291150 265823683 917961012 912418995 279670767 952891079 588907490 100137588 425898215 610411731 974319385 809384152 467720726 879977606 534642635 684854484 926386465 674757278 806708975 811921234 930292311 374873772 359980418 299780292 807320470 135527165 972904378 179991289 856194183 744254835 669545719 380289762 846207819 347590761 785885700 782779933 4168318 797717557 433127844 653240267 902055016 182677217 907811403 738984008 845974519 963966186 501982217 773202843 264910566 468380373 576782512 553472051 316201756 371808335 27606654 60392917 751456413 864817441 68257385 861462767 976738360 395652498 984284085 754916389 481451104 765212382 761382912 986207733 524534338 58485683 995072338 770319028 911130727 928594305 924531619 904122095 922240508 136577645 869883501 228895639 828639541 873565011 915396261 768125504 343568288 222789033 865956725 290266902 59087545 122790427 353576183 991386790 928742544 591314249 987598194 334633890 277874885 634834731 984531011 350288143 963736448 414114692 834690007 412119017 785373022 306176648 339639439 755485358 815717623 268953117 187660566 37389714 214631717 878352857 933736876 282850217 901137576 114555369 853418325 393095520 683942813 941204352 446826100 822814643 808787209 541770554 455258559 977646709 881100516 737022276 20051948 90343266 419454926 966472923 805654981 797379510 460750891 345081957 894150878 458895893 130857580 926251642 370987362 423213149 947609857 633352840 718005242 801280583 881071556 953303035 715855744 745567810 961685228 715123335 640349061 323134191 910900970 608307339 423038590 412004870 760981667 110210950 865763224 921370669 803266456 18490138 952662615 798776660 86797654 864226798 514744942 851425880 958333157 917863652 506154376 469033915 141441875 699942063 750604665 917091350 922046199 546386889 700370325 468149230 369180188 646945931 558812160 420208969 977738616 433623600 600206586 32983536 910987274 483971989 907752799 504426918 694837851 21641376 743878224 779444813 367778652 757866544 355023657 542351798 115910882 322010851 853076999 430033716 327345023 369163147 753192674 220088619 324473215 869186156 829001319 748947791 822887988 205138403 921685209 849407891 50818652 112100214 758124879 423415298 760582230 986031841 773622077 748272923 916591835 352397346 959853696 656155311 524464751 66220658 298961976 612131542 316027448 859608075 70223971 871051370 52732893 19972081 816657531 943913085 904190197 267764199 838086426 873434193 655574857 949153410 147122596 996185796 907935598 821553904 140337240 21348038 838141047 815987348 165643188 853837272 755890520 547741883 966535080 121065093 541043677 405667695 325544180 150405943 207990075 976053997 206344277 30797754 418861101 791958093 905429123 992135413 533680872 29259955 902524949 825847808 814821664 817790361 950195332 218340732 826801367 831288423 943710064 23383373 698163580 873955391 886771881 41076061 99736041 894733368 462883356 878658321 878317774 781708226 871177571 672049048 233959206 308837193 817184383 996392728 397374376 991673341 54670913 714093601 870717589 408300057 905295993 294111643 952075490 816461887 780638636 730767491 848037637 651495586 616738437 606229609 643691283 925629140 931844774 77562111 59854363 811766713 791657964 900017461 258626739 922148610 876989002 938799924 496076110 224283438 828439946 406865320 347395024 869572587 516570439 988612922 918772195 767524687 816710450 223541903 188731430 715092538 34222880 422113906 997537851 902739794 761296757 771931212 884201793 816219021 161520402 170680592 770681344 538358775 222597968 951106789 933217788 774429762 925007988 832329652 946693036 888444597 228335101 994214458 766377691 622796587 912117191 911607014 902933197 923313368 993071918 403546280 774783190 93451885 813168555 242149145 529172321 919357402 483579712 977422377 489948520 234578904 794697849 471742382 262008246 725073672 24738888 160757024 902810138 721334025 560460771 705302476 179025050 582465684 123896886 10108782 995694275 787385139 179611506 526575677 687907891 943275795 867364017 809970055 750630183 868340676 923059144 827086746 791867539 491648498 657443490 776180024 655896263 751176843 908050826 1484597 320807774 867496278 810896670 983396703 899108951 891979671 862746812 913783722 427934189 78327364 825075975 401461636 764318162 106597154 810468122 964488011 962042462 249274273 210335310 409601730 315787075 426488357 457591486 815603766 812043069 923160521 989823494 43075948 755926065 834223577 106403544 469216120 186605205 995278479 514889286 344719130 342586329 705260185 232136810 787828788 350308718 934159110 737020247 916779672 937157746 824363326 313204502 606628253 801105104 823899722 797743881 824399949 460876296 559138077 813904356 884857453 24341598 821178448 172330715 767577021 852844690 344990866 854020806 366455515 787273337 895799931 780611391 577506592 1834846 716756332 107347070 791329773 953658216 976714612 599949253 656821577 882528224 407915618 626035495 759968043 808082314 801870497 106542253 502093858 829336735 832143230 561651979 892891304 302069002 815962815 768141370 375704413 751693104 910785186 778682215 827640184 974987283 184530320 347138766 954642968 273052541 814022137 423029028 353300141 64701051 775825265 141404398 984812520 927637943 249711652 977625161 829547433 406400187 910400676 995541548 227005357 856229896 549184072 781869242 469521561 905469231 746918053 106003223 860018487 759070270 152287852 371400490 892728313 837548077 256674015 980807697 929990754 456119544 597399694 907082365 662651063 16073603 820484192 832531526 779099668 471450978 472649579 719464759 812829942 665743171 260455856 333371668 546445132 986740918 817164341 233199006 844888201 488890029 922934819 568740806 995769037 935921494 948954340 423497445 781203192 378371487 993676230 824454939 21656910 314313806 888779574 794596975 477858604 804351152 777835556 874691380 95203522 3972317 743632705 765121105 335604147 742645031 343668804 258541707 872847571 818152741 925428830 535775249 594909570 319578438 625031753 954512732 821285475 89037222 877155178 332227981 915133105 927539914 38985410 500077610 803939049 321411909 767749211 247153976 615710029 34673534 443545738 926501893 482264059 858570188 589159574 810022177 107707470 755174568 286878802 245250661 606176213 856236105 690944695 835404946 220569452 424386387 432571672 292822379 617779407 788511287 579564513 650453267 767626444 353890572 950123238 796706635 192115385 61208818 411451266 28078780 870511212 778233299 316293760 700112697 321938193 842914574 581221949 135819628 557623633 897151933 827434401 964281316 415976538 396492329 657985585 468702495 22418793 776519195 936306647 776243800 691178862 897733783 960973703 6939836 812897138 871524963 827843433 934969341 793774555 948414649 741229405 876566724 578150385 501802501 131942403 872793853 782658275 775756545 544960596 836001140 871167698 540140385 911626622 603010208 564042107 767968532 730843747 650110826 913063338 927684691 739990419 389964446 790193848 229704156 763385351 249675220 498494520 125980520 896102730 979321315 174421607 486176135 906422573 989152724 770626832 427306817 317968265 659551204 767016194 650907134 784363635 859473764 993527860 185027442 231814511 560596711 140513441 190493584 275735332 460162869 965353622 23470843 516488667 826459313 370952928 749678402 171063177 661253640 248770804 665744297 841015019 974299105 71233775 926855106 645820317 987571593 931275111 942154654 122894951 162064469 855158866 307225280 105815144 927045293 687443760 744571791 898896488 844346141 378186535 5434155 169909436 963618273 778240452 257161513 932132943 811742282 168457068 999378771 853071556 435979831 434138604 76314207 61847230 813174181 810069767 388433058 954811518 93206969 460947286 777414155 112407459 312721875 942755971 583060234 12535117 37362741 691912865 160420284 145360683 923948983 427617735 678286987 558862377 96339127 738151536 408142990 866729522 644518820 966971856 972095623 964355748 644267000 902267538 632608869 958349419 816722924 640129928 998779384 960255577 644687580 595390240 532334050 234215368 506307649 856344669 966966034 999213376 749030141 918828639 68452457 294878890 204398455 22272000 955375575 851574834 165074155 794988575 213182105 397123678 911688901 770618062 414946945 921464528 33799841 326542699 665870212 738199025 496994217 328712157 390550073 992751485 619148570 323514806 910059904 16686188 889937732 749020070 156118250 920229334 908218483 211124949 876638344 844506436 948379636 714477072 911433986 818805374 599670047 67328750 872762943 948902278 151841990 403693713 879957573 372921162 800881800 933496812 544294643 228914043 391674783 851283084 779411968 40332109 986840028 754549346 813939200 943498294 586595939 779476844 664738355 711509791 770412749 361930872 947287032 814572475 888442379 311156822 912046578 885842012 527838220 21541558 910353258 83114794 831814900 929778309 585506120 988680875 958194255 397108046 627548020 758833807 828495548 409438094 71131720 980574079 333850565 985225737 515978530 749522597 823357304 760204908 512381651 449298102 952267867 743182953 409686210 826922461 865824411 820225867 885087291 162249594 76776685 965014789 790451054 4105432 288077457 176645545 801024157 1591058 10664920 410612927 999623860 749209998 185165786 737020247 605015121 410383138 802476296 839692997 289543216 704384866 760830985 844318195 930994419 409984702 803697402 901912406 991259582 922193108 119842921 770661211 956369113 352425537 136149375 578520999 977096081 779797194 862762522 328244697 721200259 396210344 726692686 747644280 478838409 853835042 419960930 976872738 280175830 612090106 416432352 870360655 466620388 372719692 929303796 494329865 281102425 531309793 577447482 583627147 524804964 556766342 468510878 824254022 215522231 798412369 440699907 976027141 947058337 342056605 273211572 759514161 932578500 12755531 799514231 250280187 939178059 941918491 737293598 993298583 900650760 802081765 61416008 572624711 745704935 78373841 762080810 234048033 274394908 274977910 747026265 765761541 613816363 843979223 838447590 752442316 507324174 454170382 363113974 693054242 340439669 629186724 952136695 625867426 666616372 258880986 535354724 60854126 536016242 704476848 861897105 817240659 221159889 201028114 363731261 823523334 121143004 802354764 105588145 743421821 963636668 740577543 889687118 526839196 885491386 739348563 153543013 686012149 440755593 948081398 943047932 801240886 470071201 816627582 431884271 785079226 194410234 230895945 844094988 704463851 153043057 30380186 783274121 744574227 542999617 260453211 779223662 167013303 847293512 933786807 592993501 937911838 976171263 219717605 60169110 791232461 805779299 639697997 891642751 931013482 511138902 793874764 51434687 467885700 210541967 226412489 780037412 917060418 920843064 819242762 938271261 855672818 212628002 826586055 798026603 761304493 923082687 521296293 791691297 388002525 164775501 263421634 392048393 166005684 904311120 502313339 756152395 179041476 979117133 939240955 835519965 863312679 965037938 806969956 355545447 160639695 483173373 516568690 868916926 471638246 252633399 965459967 429859350 750622241 191891222 322459137 239658417 777274806 847598957 264872248 811115003 677657707 990728380 908074213 78540979 748611261 997370153 888289719 847204795 990265787 626545497 152762163 91289572 659882739 996420641 804394317 654346816 298937553 236093401 899504075 470410349 286797230 279148330 283841307 930157672 748806516 955463748 962538435 912223411 750054679 366210583 327556537 768176425 25834168 940308002 904209938 967350959 223778768 938813992 279306441 422951857 968837446 653895282 751289922 553417201 893362010 949513340 766904336 282665583 382621359 872428315 368275837 597264328 216041333 488533175 758169567 992003742 23666904 483311375 315977251 454285779 524807034 881679920 290282384 947588958 856430235 822436948 858813062 967589588 790710720 44555698 842798867 77801920 579812897 96333377 428988711 341315609 928626148 891684815 818424712 294019189 937946265 890525701 405125656 387546646 661667046 280809240 911723645 554908429 220163334 758502631 829236677 967044976 855064410 944686037 147850969 806523152 705402882 17609218 931933894 260328027 853201213 771682914 892043494 954939462 158556345 913035061 919037593 861977844 737257309 919725087 486785006 949132968 202266343 757521684 409873377 174900646 961109661 774645012 104196694 222302794 91295294 968295028 987699641 787832727 196606389 724961401 774133002 416089576 880967457 880590166 347334192 85356054 861091244 931356261 380467057 736091034 492973949 548967360 836672044 529067235 352330932 785192030 312350867 596700932 743881924 870325970 348871711 850639398 878787476 802847559 552021064 220883090 858426022 432616560 299637883 941017883 933405163 772620558 408303962 403784211 986047841 989470550 197517263 313832384 789737000 821343906 217406182 162726546 944626569 485049266 966870383 752542543 248452370 612457751 467928006 303161712 260216377 977495484 935783933 724667908 774922570 128514403 939380242 536768754 817803521 933745425 750803054 884772670 758747525 790230881 885126025 620654595 357871539 653915027 853093577 715984687 670917818 261348074 132272516 142754938 773324926 878831749 862265343 110708026 116345005 755189522 159661910 956918734 265525188 774345109 212492602 953060563 556306162 919618519 866632746 541135456 890502726 970479008 213968982 523610705 264602129 827522164 526967880 644841768 184689392 553687286 262197027 96759115 979255749 840675620 926506481 258175392 852033880 924927917 743993564 442481202 94721197 377641121 797683484 973405489 211626278 739408503 379822771 928732085 818627998 898764913 804160592 104307830 851320362 921831201 397415596 629612931 709844540 794860704 294065935 244488517 993545437 507301127 784013286 509247707 30120489 816328243 481879126 738758180 249656647 20838502 992813121 463029244 771782429 516722655 737149737 986629250 838701589 463135514 287632073 932899056 425656722 748369124 214459412 803610056 710947454 874986692 271765421 440475259 776342541 505402263 880278987 976176291 972719297 389991773 873275616 188030068 694666768 150318608 824069400 996744110 850668927 549633880 783519484 204315512 935149167 361588061 293377380 996184631 909504307 373245387 752523170 749775902 229098620 700161005 399184971 959063618 998522620 336339265 599690428 104716727 625363701 809343860 829224573 844390607 929936205 993884565 822435853 815975335 205256591 173369852 232719482 850204570 823015133 337859751 844496835 804466252 221450998 833412698 392807968 733799614 808792540 144883137 815247436 270911596 859082340 483228402 192520987 368087331 815209904 442705418 933789708 798534672 684209433 822073021 555772308 941382008 958944044 433729505 99421231 503163526 194193538 252297588 223486294 789480584 715214985 222694423 399016713 358612041 419653467 952014306 446176092 570700544 319019934 161131851 502060900 215853178 542066827 873964059 985381125 958848793 697799941 603390264 15960486 986824147 115964067 285686677 748037932 749727312 840361779 713030138 743065814 878579121 372201071 947433065 749000495 268247500 568406099 598482461 881398444 603692327 153653354 59286572 837444598 249730965 77216207 438039733 462273464 396366335 88189491 281634423 839570460 880671343 925445429 162760685 841190826 149819756 935019373 723527884 820129083 260211845 693179433 670598472 725252656 2188112 992850643 917105086 689056850 962132416 314722530 871112819 525590188 483719323 137169183 787415788 983739858 348267024 564678065 235897824 15777296 237599928 351696042 815346169 739772001 961970800 738544318 328151283 854983398 901581617 584281826 974974594 821101939 978937013 115760792 765087571 532155482 934902863 939987696 264762786 800579505 959453247 174690799 553229768 749652680 175460483 994759498 917820407 992548540 503624217 960500058 105892464 873943435 566348364 971914730 805978468 688828763 917942585 989055873 607522949 268959603 771097803 331505159 877952160 604866505 986684856 526221276 274133903 699909172 807101690 526735578 864939170 552599251 949277466 279009670 992668840 774001812 888835084 800145644 698130943 823124112 839665050 861614054 987356090 606898683 907192658 874730891 965340454 918521960 988161501 669602105 906715629 38072132 175401919 783753336 942864098 556821424 462858225 463921971 240568502 168515570 32601172 313010500 317527367 353529845 359579027 882508235 951627177 202078002 911717824 776666646 847854599 61417695 866618109 808552381 873829648 849759304 472023686 864465424 552267876 830300710 855149260 163867166 89420073 433417618 431120319 327833276 494301959 779777846 888057411 825245801 380215567 961583786 747795600 697920420 774879016 661632502 68536412 20959068 826823745 254826132 920971306 181842899 991428676 924559381 805107477 319212897 246217768 494921251 5879596 435600199 792114286 14437566 904892730 923350600 572118895 832915684 561879861 817488601 754760486 190673174 127738179 455483140 126715091 868640688 677560180 781698541 833654541 764115945 591584334 993805873 59860760 484214686 82263530 148342777 841158323 985664523 948922699 914897811 866365239 124089427 631900951 990393572 710978826 240118333 947096358 730158707 593149376 856703700 613023389 443009363 505011751 881267012 806557520 803873368 249582925 988128627 142085645 35745600 863349965 954793344 102915773 851642575 659668267 374541792 56524947 807116139 319727235 910549402 207203894 841960214 579228345 916658415 773293923 28337721 770942030 879244891 324964400 680966046 738443268 753873241 36207541 813139269 941040607 754961710 347692616 502722719 1199248 859680726 822114246 264195977 120646620 77256222 920596506 418095982 888743681 881461344 860474807 636480461 801371065 621348359 303162123 916499577 399191615 852621656 493391881 366590791 849575378 774890334 479592442 325586112 227977338 245966952 81657375 990723751 740731784 165780482 346482683 355871610 875253249 443476658 859972823 866481960 998461550 740033381 848905869 976994260 481740354 779382378 752383261 894870516 404678257 835030160 802495670 184984375 765527649 960849419 34570366 332541318 869618746 110832576 967595073 209541765 281192656 784596817 108370768 760679325 631390857 687626503 68897311 866406932 141875192 22292878 246903193 462740758 158671404 985112564 940403195 836808345 460744857 881808232 167120978 927169332 671198580 965076712 767149983 946934722 386287506 841687447 156257674 532187138 789895130 783706251 977006303 834099566 130900014 984946823 959248238 276679527 998767919 920514883 940217372 187687745 666640530 790378352 354237829 854464346 252384276 747368071 852153927 682919853 510214088 983870804 784842442 795689355 963025098 945885239 317448835 436421431 926123008 960444070 314387712 300860328 991820242 841157546 553325557 967191146 284623184 677089704 216118506 371080643 58460090 956401187 913810765 241148738 217839298 704603913 940125868 825466211 567198633 880956821 839466986 588921054 38593431 787560490 911699634 60164347 188050773 760555909 801457924 354588999 823808087 114540696 935161524 991279649 770794750 445044464 496160774 763957375 393479472 921819865 807090961 952666562 295271349 720307391 307373677 852321920 407428674 470086453 617364701 954394094 798579982 782057753 306467817 552896709 801733253 365544869 139015097 754518991 335004193 773173169 800840656 942054048 975530227 710628537 228434292 759203128 742908130 943966552 197090857 943902365 967360114 89266953 88587057 755283643 684348562 850604351 942672345 746481066 791032557 406522115 881083758 857657393 2868584 992881751 917105870 808104573 842166166 894486597 723902091 929270463 608293611 152591688 885543055 441599007 844684461 825784142 96352511 939695603 21292940 940747598 713890805 881076859 874889131 681265019 787005359 769474430 695432903 278899567 903316437 841208473 286625240 920513073 941069618 839166038 909610848 858373957 825146207 767940800 934525845 5155465 949574668 173676757 792130672 938227294 906362308 797925486 330827911 944910061 572609828 966962446 119748393 938596516 588636107 220459222 763944407 676351594 888910871 35883119 904487654 109741016 927782622 700875644 967576081 427030077 987005142 747254310 949303287 524473639 214814055 921118233 549610756 900814072 509963317 500297855 795354857 354578908 429974619 193875574 703162535 250497397 999472247 750530726 789071128 311284784 141482259 604234478 810223159 955512235 821343834 42970057 55266520 581666263 313397564 802056703 873679357 970246941 153097622 300494593 956098449 787729719 457903198 244985790 914636996 779609279 517184508 370618085 794701181 817897112 768046207 741821193 154928803 12135773 838287380 655314392 961324643 129632101 966567980 592922615 93478496 223675280 743970847 532953377 673479513 655888329 552171839 666836344 1072991 146528593 975908960 844725338 670310807 436277931 153349700 868761012 976057338 782706444 593853742 843861376 56426876 871695548 540256556 824100283 353713812 849499657 905985606 897971168 802754156 764803187 364848131 684662330 465657360 423390678 778166112 793276119 627684618 258005388 929416906 525915056 818029429 619343074 819002883 908408334 999569103 931085600 878136934 874507108 999198684 90168728 430765751 673582983 591719499 954660815 973004000 813437723 403516741 620523293 887525624 468384840 792214357 116845563 8692766 84495448 170098221 986267169 995492949 107422784 363977247 894167510 177389956 673211497 882268157 800830748 833684503 745489999 743255672 966049697 930612439 729377037 438205694 665213941 590516320 549900726 145610064 408971516 542780836 25250485 905938998 452933261 696223826 927660918 225722348 999983375 922268641 412622666 797358550 245712271 721306254 274941272 750752124 903518715 461867557 802699111 992199345 656169405 551320514 864682825 985648562 584397471 829859931 716117957 340218471 970956536 775952334 793221896 737020247 679505419 898676539 904107333 480220355 897886881 898207463 890956924 934144942 746054500 759288409 578821579 350561982 237822769 564608313 753033069 952086722 857063387 67696028 797133526 418058461 729873712 867640547 984664886 167016939 604887218 933900261 918837313 505701123 563436485 836621625 851539792 778754172 393467032 814923770 732125071 935369802 882948482 842048250 527101597 396557492 162952906 17658807 644881063 616303243 788407929 377549699 790801324 570254904 878393779 860195653 312072499 375465664 685361124 731999190 820541023 886557948 505877795 756574079 64625491 265248847 678160425 807228194 861991174 883673590 10664134 757062334 944902244 914708263 904929359 823911191 90731550 780972642 76133046 701221129 764215460 274575084 299594234 931768273 721559760 339962261 696764175 842250400 29547332 169182024 817010845 808241415 263942474 377793983 168801247 904115166 628275674 993746552 910176863 977238912 488554618 897791641 975551305 969968348 285445781 942548849 877880752 260417498 994521304 343991140 856754668 904001094 484470937 46236721 901473513 942746953 819646909 491366969 983387225 377644281 537520406 339880186 929737829 786427984 243547933 154791543 932460173 961684171 670480790 736544360 72480515 194354016 750645841 739831345 767238108 646068637 65333170 930996111 740018650 970893983 929355297 175551019 189698189 139102303 865263174 970481497 289207955 991828398 805915559 684466519 985829916 687256049 911501206 374092181 467776635 146950509 386146787 677041230 720083192 456306746 441852585 991303118 456944656 802143636 934201251 683607327 862813379 386837034 881389105 594129789 989831896 930856459 976530941 909269632 111817984 681812751 209282183 50997023 367415734 650770712 830393778 946161677 907213158 265918715 568710997 964292523 35776812 857067108 808122504 842683619 129343676 827339950 723773338 167658952 144594199 664609844 794344622 948676053 987720952 954344911 527807979 228660329 832923916 769016694 926354455 750510167 805644295 649040440 334705722 108458430 24028513 919132664 242008115 26046014 469680509 210867728 813002370 5867294 163573452 888380373 988601657 560870785 126773244 933487357 22748576 181635895 895833209 198388812 773587733 892668056 883932530 16132466 103406172 945242827 687165087 569635177 940404636 281192021 870944502 382596970 963762043 955639022 31323116 111506665 761011545 788964152 485117733 498772445 986215610 9341552 976629871 645904099 116063821 847580724 332991173 135155572 712042562 842999287 220650520 534199437 799964782 527525184 795683061 159923870 888590857 966260080 814553773 109884864 235690372 817290417 907670653 592801326 989929305 911791387 382794257 957215891 909527159 764775421 704494835 626905575 940020939 805384309 922288399 773614475 916689785 756874390 888772174 160848226 359033562 620680200 684479021 934817282 444857941 751518304 449526128 528209577 887610317 857891363 979876722 984582683 988783044 427934337 108448992 904000260 629889660 520344375 99054954 66115140 946215499 819085428 724794759 238750126 195317146 892280781 540239181 975681830 101468120 907249341 46682036 69977091 924144743 615988009 814887059 14782954 324579690 554901229 952431717 993585887 974008175 729176808 885410778 354016251 844520239 864551865 242670434 519308475 545550637 795100197 905485034 958610566 15184593 966446667 744869165 374612498 397644785 831499264 51460193 208256443 183731776 936347649 264335146 900935671 792525810 60147646 749397375 414773270 832535836 998626750 765260690 68064460 792169781 215211853 257876720 776421255 250882331 762144995 603276345 849092776 892214392 200609950 804118557 231558068 743197027 720644729 864681940 191896431 89367153 628256271 318295866 875602502 134441597 953044481 426326752 89555548 932084665 383617271 792172868 739972595 778936875 592776614 910645327 215236776 751081002 501434063 838081114 883009025 747014255 371565482 997691405 282960014 441690009 884043720 771636283 878273342 836491596 4144566 326196522 803411449 841683610 987738616 753621276 812406687 995192137 505225162 690030200 494456323 573218866 803914735 275982891 49908398 434932474 742773751 13291161 113022797 634930804 199863907 835427438 833221514 296885572 494841735 48756175 654856232 793938167 850864986 899964817 298462096 4119660 781141377 865759689 337384580 892341660 976404305 33723683 342429762 977479820 31614634 815957703 758036488 796182207 908989658 786624090 113143502 770659592 880503745 793398091 868773324 748133830 839030407 143342029 242764120 908267395 465914825 738482074 99214076 733198524 343279146 721055443 822999286 450300169 119376185 907557203 812128520 919200489 654857094 372437422 198793903 935022434 229712090 463495639 556193451 993213738 982351478 804226575 533357043 973381546 152171099 109340232 699149534 971913351 809380226 842236720 912801012 982347651 274402815 933593619 824681564 930068037 748108267 850279797 827146849 149802690 188127443 489232330 684317273 801809666 7051440 939824799 811897032 414687838 989689617 285123887 977377789 995939474 934955707 935275706 990531060 879470799 78938578 984434365 737020247 878269408 401305134 754676150 811279212 109133752 912416632 529623316 882068439 242886831 742127935 863848919 490694331 197981020 781388726 936082348 970136640 800894750 38227021 960201404 376354194 91601909 282819081 129300555 763751420 308045634 199897481 940417841 844172686 173162528 197699906 627086539 768107137 921588840 935261363 603686124 897178226 791882168 846335066 989187037 829370563 610265350 735546326 779470917 890992620 899125004 751001294 844468463 644214075 360223471 868218015 884320129 764361489 962911669 596013208 425116249 390264925 826963041 809642828 924087183 894721021 822105307 818806038 351625007 463374151 938712513 691617494 138840507 918229236 990757117 957804789 821089754 916995191 427665308 116154736 678050336 916814500 66220466 524929735 728787960 980284120 870179350 252152127 748656368 500775804 506003013 752338100 621585118 598881617 481535415 712082654 970930901 396368314 810052328 943005055 294673266 899572446 904955185 791128051 751352213 488317858 975307856 869460958 838466230 414555916 634937061 566670698 936073066 948896806 905683107 727232303 897505208 619931598 965496630 990646319 631221294 774482361 496924493 89714569 742478130 845879894 682355959 561255508 967242893 512520487 708526344 941621062 953695613 41298826 59657411 283896731 796267789 755287290 677842426 476568214 828604801 718834125 914977666 784186657 517179299 950273653 741281198 864071688 926502588 978875513 588163121 819955811 849457451 398677983 942207128 57308701 858533375 11453199 834384004 770893864 392485766 848612433 431732522 357740664 638417492 277938858 589096277 200492127 991433146 768975450 632231919 369728698 281537668 750603704 975852450 737286358 256108624 739874862 696549706 321175441 126986376 833784593 986785168 991507293 949472712 793480168 266703195 44139201 312689926 654270513 104590058 606107677 857054143 643957369 148276739 57288903 895666552 887907321 371250587 793401560 637523922 476863898 18637316 876458062 398364400 783233824 234058987 907708490 453724384 288705085 936503124 146728156 861321623 774152350 525960480 649917349 194233440 767481390 846782250 920325010 215243742 529915057 210590876 906280288 303872989 847873915 913033474 599697511 575150750 899806133 835820424 541356028 144757372 621107877 8491967 887190805 763478405 769294980 957206410 925735110 877191955 508565630 796661824 983108370 559068179 935902641 409552319 731790041 823217811 769907300 498935098 951797413 810839776 754240298 781826177 271247982 923093007 788903321 943134103 998608019 868862339 852260510 662861085 62667112 835639659 807083107 585077826 168369584 200028393 821745608 879291729 115248551 927134620 927056766 981960587 228956689 758541713 825248345 837004259 823198183 274610457 90825674 521667288 769745053 641450851 352223931 807347375 976390496 873193026 795912078 620041078 30669171 918313136 749752597 779117284 967172573 348351459 853412150 956074107 382233645 656419904 662898388 954332789 140585111 102039504 767720045 237480695 355904015 451476033 355026433 21545312 981478436 29676846 994014489 657047840 858527611 447222588 378365859 585451083 782266492 947891612 123685042 445542938 832151251 831233703 754386086 936746286 68780665 707361585 614898681 535879371 933946991 22358312 995579676 839991304 884666873 840036901 509804900 925798021 135245119 191357894 955823548 298462606 460401601 984777117 870264146 151109486 816185114 978389514 210281551 793682587 375848120 532966512 485633869 641894530 18964622 122680373 444669610 998850516 352392045 598941044 859759025 923927096 791475942 435262184 171042021 70752158 981796908 971924879 914827590 476295286 694803409 937443595 314815843 794568084 853459351 447940618 513824265 54771229 960672899 207333032 499060957 980037307 392939096 690499355 679069376 809906270 79185627 203410429 676416981 872874389 538666867 737020247 765617465 191572796 342033574 268910852 936430760 328561255 198307308 992843895 873948283 220764115 870600198 687266922 441454354 932420830 43478492 862173477 239590198 637437032 6708961 849958785 883141462 141483753 847210576 547457033 215710313 891597215 946604759 902408487 707502176 251202537 965155236 670957172 913872668 937912246 459820890 965716950 836699044 438494645 935088824 921306051 805268780 244643765 441455658 944499931 999697472 825058087 871915952 682284132 909915195 753725362 19835373 457019482 475037994 528235608 816652412 910663311 180142577 838162082 47892433 635958517 629606243 939131294 940002095 866886293 141246105 190039008 950152177 460574699 812208314 349955131 622975907 848382438 858495153 966876279 56048979 373197434 375540802 327236422 189074713 770167755 443226799 623161170 769558845 499337588 757922484 760369546 748445403 519259780 895523753 766213725 172006592 615243989 943542184 745856792 45297102 794772696 330711966 806973824 64780924 868183247 936100267 928852146 136509259 24246553 367163977 974057067 266596273 641948934 942055097 499813679 451391605 947957189 935141082 532344671 815833836 36718001 951343054 513738442 957150302 979039470 919301676 146653198 998141673 951339486 830074814 672188336 690825482 979128568 251506568 108415997 816134876 743476945 877820683 328618501 899277828 993243328 897469389 123371242 951788039 908578729 725085186 334648598 928791415 181384564 947387163 558730833 311469959 675622296 193149616 682621635 973885980 994854332 732846589 232500359 906413095 385058581 802005565 220907309 831550716 88277911 743157020 258807323 892262575 928225474 473254531 86989192 147041779 944470031 814944145 868669093 108048948 834459124 371032871 421615197 643972417 788327808 936810551 69493440 764848972 545572730 624797259 739986295 920924253 979848927 819568471 738796065 859396338 229852037 774560482 711511336 328181600 823280523 924502501 842206702 414648494 888789374 943170109 801793563 605168272 337661407 252696904 170491861 800551887 836497428 947615301 371114979 30548887 583143049 296920354 931616902 894310184 928218821 220278953 249561640 802054138 541039899 948448107 161116387 173877545 290721647 798443176 84250241 165420386 915319257 956199450 993739471 342817759 870966269 922408988 48116979 888750091 317290286 619752236 855306530 811136371 976290274 897149724 920353336 908887364 707176439 849662877 881679024 526293438 983439729 737171717 11333834 812274108 927701505 987859787 66816202 962581225 699247824 385590813 296257986 927205490 219634577 811467486 573096673 900479307 132003799 873893290 336272084 511267824 851220332 989517000 850090141 859761047 156081856 880036345 661526529 958037590 398713273 402982497 424679631 266515733 918586654 757375250 704281326 497420704 803770905 985375031 794645589 801077540 573515362 866985385 888793817 445767096 963325189 799245769 158208692 321970955 238318046 737020247 138174228 647104721 826859878 617859825 898798567 985614285 951232623 817470083 465507560 643918050 819805923 310126698 290972851 688360831 905543078 782443330 48700275 858547093 299858250 780570188 661680818 818690479 790464737 202779863 53172763 812587157 428968514 526215606 975636023 810000763 678986913 441608228 776454614 102823198 480654428 952251496 863482383 768201884 683580004 851863126 788041171 435341766 748848221 635116376 754739477 250175826 389043485 287698737 806529174 353993455 910001736 997618701 38082224 981436053 972721439 787452980 771640192 956169456 589929942 885389056 603644336 768992534 442821828 896862052 721620728 583335975 778263906 927273705 810928679 822346013 16916632 858120721 917069986 989414305 517816605 241487216 471143969 523130193 66142372 193044546 915060186 31229641 283500416 800374079 995874372 790833359 647396988 947422246 163184611 902637643 128831749 728863642 83105228 450833521 829207492 815471733 573215396 948652666 766779997 773261548 47292318 34778041 792053149 677018485 499865615 738304935 908677332 934317400 915606370 548701421 173167447 846482949 942552559 825587855 140016792 884971523 915426561 747752904 770956148 815295025 634400619 935241650 805022236 491832837 747699979 781318551 996455723 666172362 821961395 809018022 513362229 771980698 370992321 775715655 104269056 294033513 313699956 970281425 88064007 904966039 678581778 944958632 468606987 295901730 975878850 99493018 612479467 414232000 931118294 778278732 382577447 289173790 767863238 784171238 332841090 878953134 863585876 907666393 839001458 516820468 791082192 77351365 521089694 903781613 968214979 880753180 885946457 996444351 910835529 983432095 105691532 259488236 846256926 389737210 786497034 898474114 203866796 855055873 930163146 941692109 885559680 793628942 186845385 150643095 118381198 898713482 556641516 99456040 197005242 857886921 461531601 782376662 767616796 192004809 218827956 979210984 828144676 910654270 852671960 824299164 804626423 985511949 453972633 693721338 959916388 326686355 836682574 736659570 196838461 896257201 952232953 337754853 303982541 368975129 742618822 253736243 806165196 801335938 289655407 831182430 250474526 953677374 43971816 940855707 769717860 828835413 423694349 239451811 722336936 7806396 857473553 768075328 29020982 985528587 473712092 327763834 244709953 188814988 967317521 320316589 933967066 811027959 684220017 883979988 126711558 910390067 4879070 968172108 901185895 818179244 829369154 484769469 703079138 801482949 347872072 871022792 429034087 370558802 981140341 688047557 748769645 144283809 870381891 321540349 566807232 179492134 345897163 817749413 11577788 826480592 910691948 543549785 224693197 162117100 281183789 378148110 208635600 737607030 37941998 986267420 925918752 465846947 816042820 303762628 908887678 912800209 339655910 804675619 754667678 932477236 574770384 418725211 851849956 983266974 742105495 827306787 130907224 787935876 794850192 451434566 535746404 823720738 177409826 893942186 345111366 893617876 920643822 874480481 896376444 932801811 23813693 449261704 459710351 854916875 303240643 261201338 436608028 817712480 7576232 944627391 185731099 742619875 776755040 899103830 769323354 789178180 431345310 531652201 426304522 936023975 989280986 928200871 858570227 326420404 807966215 189392206 983336257 355153653 927516049 619467751 492616006 252482851 847729769 996829675 692532978 738342279 273464141 745927314 852502170 359937438 997986424 758737183 906808683 778939147 396119589 266459333 554284803 879110277 629062785 953325469 807368900 425450341 894551423 720901745 319450581 629506107 423194250 729671558 413918122 668852981 456609654 988569443 212201124 341975712 992928351 958803964 920969871 979243351 774445755 703015021 644611041 59803339 369105370 942233062 923822612 993920844 892231575 498216048 45931951 592983039 768902525 287535955 566597867 364673828 764044296 745762346 916545409 889226936 349154609 865053760 840147908 314028051 30340943 836306167 796216830 792954973 809080193 440555841 894669194 925300374 19573038 440810286 854585029 935981504 527872402 983310123 867808697 66062287 933502370 200334939 731169637 903152937 496896360 186415164 14103749 983874050 653500630 563855541 1449934 75929487 256688143 53684321 937423154 965618683 940003094 249266203 990316813 229401067 573462373 390075261 23139811 901681728 772522051 258001730 547048551 191968795 866348280 901015286 780820401 267174387 759523462 10494597 927950228 841897965 186336487 630654528 786603544 830814870 841300601 878615458 374900113 231742742 330190976 69314846 901278229 393944868 537021274 635228954 970259542 45392454 930394294 373116087 747133423 667716893 349355842 83693173 207234094 352671936 370266359 853663496 809406003 998449914 666252986 888536101 582291181 515423892 289503518 549595540 867858926 863490225 56796940 942228304 868130780 320794014 929898680 365727827 236505604 582853849 119583913 42576227 216501198 786973166 903861141 870167315 603090872 618734249 365171154 475160143 609703784 923008074 445401583 313849234 847813394 910121816 896812852 929932174 258458205 698899023 534144199 802119123 78003717 816603183 926191757 922998659 946634554 842409948 968582076 621308463 778673870 388636877 875994731 809307102 583286671 950679766 500466398 891995655 396020954 92516309 946682318 195968709 939943369 467449146 5334933 734908207 982017536 12606523 491276969 478966219 364125211 750417024 673787429 822785105 119275340 34186775 60745090 464418245 873271882 610030113 832057115 789800770 949480451 982439752 289668916 137509887 819576888 943552598 711457421 676296710 328820648 860745260 539414505 599039402 526969684 828150401 27609625 925928161 591455446 864989215 338228069 912706826 6732655 592937987 976903333 748357257 812615976 120459616 725351505 941131228 821470541 460105741 969265203 916428014 779585779 449394832 709180758 860542170 599141954 790706456 798314182 879064724 934686642 823706908 966406767 778408925 517568907 752615298 555474033 470545477 789954054 836041781 700646644 945427909 2131854 766651488 390255058 764532349 856073619 981210748 876725803 243826260 85663364 769876741 782571488 998408800 863440854 789275402 450674365 752203642 559195196 803903638 856623445 451005947 787115724 910000517 260840786 992527829 35934319 282092945 260698432 203080339 907984177 757350653 932543934 707823323 382998272 828604632 143848172 745671907 876217201 874917064 865961602 741237269 465053550 378610875 564445165 241725122 534595811 743108351 699873581 984490651 466277516 467080560 726773164 821488506 215569770 644486016 414584203 719342390 874944121 928295664 943895982 955134408 992261748 810218897 979780949 481427835 616297005 961850521 815276979 858236599 915599612 749915175 821024921 883321327 136843100 968746009 448760373 341446992 242862743 792931378 383478652 953661473 294548497 220848266 76198362 65429425 585211832 890995282 737024258 184270778 502402571 887398138 985239081 771243029 695189665 289901909 169024649 71487606 364491106 364719787 423561461 849433289 931002541 395733387 690793537 477419114 992162470 19694401 341293694 878605785 384756316 483983785 673804488 706145681 780245590 957403309 954123291 880016793 738841965 802074689 135503056 734219314 250322035 915715112 301739596 238694010 906087984 289463956 410817519 840897200 276655108 862341788 66362212 323480076 806247426 227147449 396300277 848601884 32807322 796628512 743821299 944317904 727165074 536523144 300860360 763643823 952342565 975000970 661799263 915925234 946435352 754396232 876114246 96054525 830525840 961998126 826429865 952370202 682552273 712196917 298018722 982931768 229204268 857647487 830718723 713312871 864184540 806493789 500197648 599079052 756384973 795154149 977869751 897351874 138919021 544718883 270224400 616954061 868421282 23680970 451118643 948668926 306386133 849502492 550337861 938516620 20893610 889674011 817906183 769259178 754054106 142590521 370480946 945979136 964674164 741738548 841462889 879137978 911746904 807349571 475830039 455187645 194832816 978753368 988082444 837808038 482580380 49465447 892008820 857954665 930849301 915532784 834668755 879841351 803507980 446867343 950603692 437101526 727466442 849904950 765956492 777064305 402303028 830735200 588978708 17377714 761865527 897789950 971789880 973277355 413036210 497311303 944109837 882778598 962690616 42419908 862576548 779372114 614491351 379393977 142736681 403767974 332884081 489806089 39958890 821520786 998741119 748952639 593086122 402983815 474429093 161374049 856036320 913029456 273745813 511688265 893217819 934190447 846456741 882938814 383438201 760886387 573403979 935710222 986456047 258746364 835750272 453454749 922423015 791421983 912415878 817725364 301099710 759065534 903527193 269288471 188930981 938090357 940246700 47474705 826840137 47469995 323513431 62325463 877034793 707875936 861591291 676834993 6207656 678865582 520460202 530113139 513675635 728733818 786881489 772787526 822280081 238751801 116352867 847593137 814677665 787996071 172693745 614082174 996547353 807164037 687623362 242457487 891792265 753794063 804096098 977722131 119707362 694675321 545417661 612882724 751515169 115700454 257301818 890714526 787093670 678842300 259122602 834040392 899502163 784972047 831448174 873036433 736947032 826675328 273614201 511772525 357543418 938905134 639203824 925122634 920183488 390850687 829684239 393832156 437872667 571001191 920021108 315076944 136349218 438100184 190649050 253089519 372999944 127496861 891821470 159095534 601283267 759213155 818015576 146456570 882059445 847396447 578999503 877578839 209472262 911328199 413395331 410902661 844799327 159143519 975728767 800183034 529730534 916366880 4865716 36276495 726183459 615173399 765754265 171582307 103621229 833042306 555803898 905736356 918357034 928372666 703596606 374099748 804502108 594745725 864577789 930210959 866882539 925170993 964399521 948210707 312964661 110378352 986924040 876707018 623313266 842758602 478374709 9412179 841246996 41138937 747364001 827615130 912726805 841375529 951535133 167309727 982981493 879524461 452317422 90528398 800638966 136248395 289442257 541635794 207679871 743358672 878630171 71349976 671246947 837751944 810738845 733417085 60214698 713035223 418233825 760946750 381108060 708218442 790361583 85536915 915094936 359216496 262647208 48775404 837683429 182417280 855958763 185992481 303899268 340315195 926307632 4097363 809392361 652403880 66099801 951318627 829333127 106468924 810341629 451035496 815587758 887206079 994035335 263088860 719692661 904396796 922987456 987572206 309284612 965157619 777947261 987078417 711759841 817766243 319056984 519642639 484701434 847275113 230620167 813245416 48541850 193012400 943458028 238812872 199047816 887414818 87214631 434383337 175620425 908840425 794769764 311944156 936802887 173122583 800649307 926684328 90502493 666551657 640345852 421804823 930288204 737020247 169211424 5717418 140132893 734905696 266389760 439200720 102772820 977842353 332506933 671111755 418394433 287453904 432248547 228119000 190238442 61933956 306588075 766198479 882092665 181895967 111709621 914365139 828580677 894003160 805533743 709291917 635257721 838946112 709239848 223021200 283764140 121356364 896059534 426913218 867059748 977777017 797472374 688022980 739379099 784883271 947756324 896543079 705438687 447807751 254575111 702303391 514640800 906300889 790561535 785637212 309197740 773171169 84804350 733523016 364969601 868181791 280501378 613306305 882729288 821914891 698998233 817193300 991508429 466721586 229616185 827336088 945894989 996027485 750585110 403622949 742263398 894097776 796759150 875281833 291678461 581346822 447935983 549713166 930953777 986036292 368368058 811239537 290631473 122877665 821545508 549451393 196506211 385486340 831151247 762092662 97352351 325305567 893297901 863746720 222572319 476844101 808959086 892367500 988645339 376969124 962754083 864882347 800563821 567682539 784215804 767335617 206476423 842505186 714681694 610223595 835649720 931288659 999120649 555249165 886273579 383567534 491633597 221884117 840012556 864039057 504807262 756039782 886059216 939774108 271899621 238286678 734648187 30729795 362556218 549585195 990551123 765213815 670194814 243199169 176097536 348916472 341258418 251569917 640644144 626155573 604977417 564159365 770488120 208697112 533561406 584887036 721192590 840818910 811527667 190810861 437451746 766249943 973121032 322189889 764354518 124897212 454860536 786716527 260979219 355551488 793182636 587549918 968535032 144246480 895179883 220177763 501389542 977138414 981764463 839059543 224230050 801061417 917113728 398572377 833086779 749113360 281532374 827857932 795070431 876088840 342368889 740975801 978465799 235449010 922175272 379758513 925295655 36587646 690071743 84400786 942744325 934629227 762374091 742823758 484459758 755014626 829176253 932246540 598404096 192835178 856300603 190508393 931538290 428487394 775264101 171796200 918557865 948007390 867329558 670356842 744180341 855489528 457409678 51320624 700183848 309429383 996698882 737185435 799432290 974198357 791758229 296379052 803939329 607003062 530886229 713650073 183161299 415811266 93504839 871550605 798629936 450598058 864213483 955114814 768860238 275798839 786345860 977449575 967284439 385854426 877603883 751826516 553567108 140014187 412421976 909332929 997407568 879490317 655393005 917229073 73974764 882446453 774437967 829934546 476517339 215516953 569547703 831907924 12372341 54747619 840253293 916492613 999952883 950787620 763457539 684961855 740385698 941929786 320591036 765404060 141408464 946350264 758997779 107297219 968807738 586267047 923438237 598113935 967904799 37562089 551440244 541519716 124552079 515858990 624695054 600068970 800121150 119149681 893170882 414968003 644851099 753242720 342355156 713616558 174848331 830936828 350231493 417791829 908089894 991198764 919181768 58411001 513107051 855872148 922897072 948839185 952547119 958331239 538544591 879855851 995354801 970544298 390974468 384082748 915859018 944231025 254254329 402977133 777675497 302695808 57703624 771602202 817799160 194041008 704341920 120366362 951729954 776523556 980726013 754259246 904566477 808537035 767262288 988520480 955436061 210172704 133614696 538663529 985218062 537327127 297399078 804762605 454860527 499021454 926677733 161953639 186201124 218352687 866746510 130885170 867201309 618607633 559910998 303694495 653315107 739852093 817006119 887509383 614280220 956864393 279540772 433364355 7258568 915549974 877814883 934007076 832791406 750891039 799004686 892056977 132618091 780367143 107302325 321916231 525498091 899717728 771760389 952835625 857721336 75054826 66280547 667625109 838861711 809242148 804961077 936598745 103310908 756440395 798409292 707313456 793436825 930585902 325903526 742619494 275328242 22373799 988766180 851649811 891658009 880587279 907657025 967794929 982434672 22539318 35337528 943272766 181442172 411174155 672926736 652558966 157667709 730464378 888805519 776335056 477058931 819469428 128938863 890511759 605812358 827339680 119993595 588112459 23695605 981097453 17560181 74722687 399584724 283146186 923724686 486615169 962947237 794414729 286944847 219888899 862485311 632550169 760973995 259644171 442888807 124074583 922405682 87899373 859868546 578423418 964055882 765638862 890607325 725422547 801491225 737136228 139617484 41318927 131324035 229231450 955593296 710750618 368511334 919688903 344701568 844218945 885225252 800510192 273586795 454233485 775487876 117481079 923037363 858096511 531952775 521857745 448970569 889208658 999259614 290936017 330331458 251199173 852672458 866036918 934552861 919702906 264935751 518309260 940949146 10686551 766701339 643551285 769088284 926025117 214031476 914923141 920387748 901836955 469365237 461665371 937048743 978017428 499966647 863090317 857630839 963896268 161451395 973252788 793787605 398903476 379365024 20805009 241904096 816213829 397153487 218372670 777682376 918860052 860497241 812936724 818410945 798550862 409471502 48360658 253526115 834633411 860475595 28905074 449142752 856121904 959862910 903244009 843277935 918359984 793014085 962286069 910245789 468080974 964571973 751380650 300704388 991101538 539383936 975684235 408920214 804798575 858466046 858695129 908747680 998284749 734061558 951016789 295511223 995802739 879498789 978352789 914353948 50655032 918192901 247056024 933376943 790334507 803931404 293820134 932805294 437107673 960003725 943643463 864710081 465184373 975003580 935247701 686490054 137376717 963985412 849544226 773819107 948443615 838833265 881952262 890441256 916531723 691395655 931617907 908143619 862691352 12589636 601559707 984692984 837109387 196356790 807542524 186864196 881005191 383945908 865729655 107787438 20040096 820711844 529199992 938453678 633434313 757143243 693896846 688949262 777163680 760322284 286764564 984084992 805656341 911796249 623635356 649590013 50495067 79045224 59827694 942987970 941809644 730230638 836469821 486946583 972671177 802861901 811548730 428752054 117651496 916798291 908794954 529607277 362416325 880431499 492640124 840184613 980863126 863764501 52041562 303992588 892148321 926265008 947536017 156972655 803215320 887057455 971310939 808894824 863338996 547265247 769539446 903558275 593163970 772438335 417340626 608932052 368896606 769777489 98105146 996681762 357309330 786432334 993972887 621169572 673324951 885329801 985339657 338537410 605467269 117530781 766868147 741870847 877241879 756841926 858283653 911618434 67404604 500615902 906358476 526122133 821455349 260284172 693147211 888702563 109923556 602291754 992005376 115657105 710631761 455792879 325168967 689442685 946047796 505665071 655384040 851817150 949933968 524878835 984038427 727673939 885028890 495690216 996315896 580653954 308516688 724214043 787379447 995766596 145140234 184115179 982163772 900859705 990849727 877360085 898513217 773065009 760075049 388238393 898188495 853310893 815840676 999076115 318743646 780229264 802599637 606522730 470743447 852641852 960203114 993496945 839583306 921798267 836532698 609775478 400746202 217443859 853499193 452270654 941610064 377694062 959057610 742902332 841546024 7465013 182335717 370035959 858773931 768829948 39612916 176474777 197375674 944581870 837449114 905276493 600694798 845084919 707490363 173923711 992455665 460904564 773182279 423383123 872407703 960931498 530198276 996295292 805320102 891172842 769947793 282480369 581158207 765076440 866682426 725254984 489924459 147269686 84008421 597850135 118629995 755511240 23593252 399586263 534517755 552419146 188563604 939084407 767429760 682907303 958390351 973434983 957102112 57360118 815671894 930969321 511764049 241962446 1915420 492945746 388962459 975604829 594361030 696394885 261658137 957748548 165109912 603840303 632045377 896042506 35273548 875133052 879947859 397924850 970637756 768371931 786531420 866292502 996954974 382801560 38756 619314360 701548457 798078480 198567230 315940250 635815743 595512238 923414533 970063949 623818930 244578828 625180740 27335309 996728067 217786180 714818739 119041881 855837900 662847336 292638058 807041841 310820751 883331637 911914155 137304668 917544691 245715748 886800893 899581087 920032251 488194322 941875605 988892708 706232067 744172750 582370369 922153033 495971898 10481407 740814432 543737989 846941434 234949046 472915692 965850281 359569062 229671592 13175926 972713967 975367024 854177600 433406153 768630965 187570557 928433659 475411090 748818428 704312271 204439925 207511344 746951883 364865350 574004439 935884949 635767610 428284026 211973435 180255342 869727934 856479529 701604621 753426089 771057683 854866834 826301138 859304171 973111041 980075792 949745915 492277967 336123230 94503396 778087421 961250349 938945785 130430063 121600905 875035167 856108928 246125820 917190740 855118560 658356357 796580725 212861718 115051824 786016411 946977200 236820429 300274550 502898781 968381527 934330460 915318897 966872453 890101024 845287649 951589524 470688627 824718948 943470109 777495465 969887345 877721977 768484391 844710733 327868055 126247836 529150187 334084953 676397706 430058360 849451920 935855730 70526558 447293134 335712029 323224354 438652237 760190424 966401061 556866421 843684973 969404481 362973416 1088642 271119929 697678696 453466060 706934204 745481401 920597304 972958777 14363347 821428312 468687047 749890570 910355323 531132208 889301680 985431136 828244593 500092152 563253390 465366064 787891142 535251167 959978047 963347276 31862672 882328069 753855778 830408413 938955291 720187879 779033056 983225130 992739735 552869890 833556743 795615226 906152629 571871411 285008742 921519785 896917471 84631895 994045617 768507579 587793422 688788641 415907548 927785014 396937203 168968426 825289777 982974928 818897392 770679153 796164891 931375390 992464072 775896368 364386313 111158482 208701567 534289758 837027912 850700865 528104203 949418792 827980796 68114229 158745245 370045350 943027119 823083786 54534815 940078250 925141617 42238664 606674899 261099999 923485043 456551270 960116937 171034635 844369859 208473852 322901735 721708442 109847227 256069685 794749883 411343841 983737737 521389502 305223320 897130189 143241441 9372016 265620218 932001282 163428227 906585260 479862926 469032778 155286467 868837091 568386249 853894830 576059162 587584584 992207167 791607679 786382400 85689134 464330021 841935978 762733082 627776371 915262660 569668404 864621472 436579019 141585290 499114360 797984012 324408068 389885387 992532947 101056592 850963508 682163280 307508591 751257319 930291469 155685863 306958443 940153522 245777872 217578366 734180246 191754994 756336421 75958855 141817758 386900484 709465131 269028563 133972324 977630235 951804978 202323883 799719296 905835509 760680193 318336989 560993191 343017437 245688628 770033638 633594493 845840316 871210558 517573724 225272635 790437011 325289923 890038159 836068776 62847312 19605993 913554071 983975830 67120584 949665486 263391112 896680389 6036215 798120081 870542639 902542038 998451869 536600678 958483665 755032839 67101331 287161182 827603364 675066259 392028478 922508917 144518264 863474204 844139973 191619479 847872647 853385908 982416568 409561919 723893381 746470480 801941986 918814719 934987313 192965124 364003869 854699757 353319082 464407205 494548539 593452021 962216193 737180263 914404205 765454022 535979538 697090179 277344307 14239921 680029412 744439267 793645562 866819361 865386832 931468094 912221685 517095979 758613775 995820722 167369946 372297900 489848556 839467812 990234518 926779667 999218165 764064919 839395277 229240932 846012585 445926919 836311799 912855957 866580145 472625480 777550714 153089060 851297226 207593815 684804538 983416485 81143172 394250405 30904338 961299473 104823482 745706691 919803951 998175682 40467080 990517914 910113918 602904181 926678126 252080035 904490607 202096132 901990980 980016001 922477562 723464742 182545336 279778742 577274493 941259193 902259718 889702274 850105148 283292907 935365127 836660443 519098447 446239479 982232417 90831166 293447875 297504545 815646809 775621216 31704926 975932575 983518458 992063848 306022380 914154784 86212648 828313447 931964233 550204411 773045233 974333212 759348572 181799354 931507083 711436796 164666510 985860941 886656678 877984653 763541404 100086543 148964018 601431935 170974500 175417965 513936210 442362514 775253747 748030850 747657641 393933955 918403362 705299295 561150043 658838485 22284549 469628830 523682557 771967414 460035350 777814676 764164697 440427497 737020247 315733659 823845071 848973971 153226748 165395402 368675798 946146787 808196673 860177976 331445466 760947301 332928350 742459655 593077368 54775846 945068543 878156510 747474335 220975071 950374711 957012912 13905013 548366347 276478880 679878176 749995248 924221177 912776512 868779955 560537677 896774677 291657931 200266897 235393059 836530893 972093577 852010295 921427384 985938880 858532998 479692159 744775907 274495362 727411970 738412289 511105852 776886365 282315420 159628499 371045462 936871648 839037035 418122513 811060128 921796523 65756260 147959433 887867807 830416316 816244728 188303617 99848567 364331647 504836400 526731475 183411719 883502596 671158850 266531974 866362681 291062906 612589854 330419170 833161048 383501870 270899075 471412763 953540457 748548820 893521364 187873695 766191698 438917389 120863433 882820261 492203579 618523899 946816828 803386527 881786539 530156057 520349369 648198870 992391627 492725126 979340673 742887938 943382235 983041193 621038926 685814339 201922107 768301631 866213763 133980817 581361121 622754018 847161854 773138385 349597185 865358207 23227446 869371612 308053099 867509795 131014300 360639770 944501009 800067236 815262701 842209594 964531202 457366049 321928655 788426593 124046124 888473714 405407601 737101167 227861422 870829551 363239310 719618006 929008988 763580059 893249812 726669155 804434379 44336339 988284842 968071093 926399147 154133815 135817280 910712932 228604500 997576530 825598118 775432267 819897076 879055977 731699876 783027015 37214579 804804940 995593928 474539966 785690324 529229625 826380720 26258014 630917785 977945953 786737947 820672159 50520810 699017790 779112418 793211022 721178864 249694753 855844536 396816512 412992465 273349153 614534577 184802087 998069911 346826746 962597708 761268818 176971968 973789731 518097949 737020247 655162664 398047408 428287460 760076039 976804700 964073179 308164616 801792782 504961713 902811988 768983640 451280169 326517675 388724688 105983841 144773614 549921455 41860488 980415965 533149063 484480475 867222185 897200829 800744447 702463374 902553793 414212302 137301806 416696453 271706969 459574824 677834692 836720651 337237667 848717767 365942409 898299488 759605916 863369509 662358884 746784603 949436684 727828336 525811076 553401226 491192015 801551131 767066485 735748982 866678245 2108685 509700488 79089110 383590606 6985154 810998922 617168153 669655375 768778632 800604803 888521613 587847135 934338909 830235051 351791313 19223521 742880874 884358526 717216311 81165763 845383898 173176708 29117911 103511088 606207569 607970032 934521815 744483091 742382288 930630067 866215603 864582070 418685349 905384783 383510623 119390189 247768749 48317733 146389912 236053909 53417546 18807385 959762319 897730747 221614243 379519872 825341004 782542559 835846397 833567953 854099907 891986105 797393275 890981610 396708380 889855895 602110929 510784031 918158163 322706956 322372964 849193025 891528838 386441221 932935389 807083393 56328066 857180135 246662405 953338553 975441122 920352972 671897591 248847777 958092618 822400801 528048353 837618980 432959847 989039043 930016236 728178190 840439069 869110825 862710985 929140842 946202765 293524908 978185724 258981070 976584924 487002150 137515832 62947091 184385586 944518600 867191243 771530114 596280947 478257099 888132483 874288672 760980131 724120961 825295112 572844226 446423266 915288190 53810487 992871781 528669290 171766981 339634279 826210882 851316513 791469752 364540022 100904465 29606883 401806583 705858224 236599494 459407369 421036081 235561337 254511297 956163570 536902089 157427751 679791518 553765439 917177838 162279019 540447683 778474292 900902445 758676151 724371539 954820105 462234008 129149488 596304076 55428985 738141882 807185166 512268016 955412759 761588571 432431333 878747860 932662697 869314456 527568304 554742208 452728615 606595210 710948951 596467328 807798282 12127912 858024991 747350940 35726387 846783778 628128967 134754404 897246149 183162979 870534954 797623247 386371291 396536822 110044589 716155196 820449009 945719627 855165172 789311833 485873461 897528075 28550149 872641494 771117989 410838677 808958174 846792296 324876584 532314279 678416809 940716752 85507466 542129667 793112171 919743128 374558979 964433153 901879334 798975725 876043164 781723034 843814 811089782 768940680 96455753 794176908 635151967 456951611 37113096 855308932 935942732 776159157 778542341 84637355 347029436 209992153 314065999 804467157 819628085 361783674 935091125 52047281 743160362 880735483 778618744 345557819 524427621 853539303 992709569 805506070 962046424 365662511 981712873 937787448 323142004 788274029 805514971 783324676 484180717 71146361 845395843 343533434 555590078 719153248 746810266 101047297 894641067 923623686 374846701 569312207 902427806 543969582 840469590 764855986 544764428 810702536 919386608 406475373 681367339 229274736 777572637 529759795 847169801 769145033 735494641 237374905 991362859 826588430 931390262 912849798 512253204 595590973 870917808 270448333 257927327 802222943 888799061 773210885 641323597 747580518 331684197 792396370 822253749 876785254 180641967 352526550 830787163 347183380 828437396 955725657 480053963 239953010 572696619 871130362 66000384 132056603 889152956 144223708 845983233 122965625 871269183 891503318 660941831 865818014 891869243 839198060 798578472 563409762 527894505 846979671 991981933 847875048 153555157 420544774 959393616 382252366 997195269 751680113 737020247 794102846 520819489 800754110 652639525 14262701 728562073 314911542 946805080 971164175 295819820 738003133 714832743 356778698 641164760 31709727 771136019 159955325 555751132 916981891 799989717 435667354 207842834 813337746 965077887 978603234 885750844 625454404 210080277 846411307 493400730 593386680 812107921 836033267 814844611 877214634 418612185 305607138 335807719 882512139 731313713 13355640 679992107 445890867 506856737 822989235 163806010 911748453 926305810 993513887 335924698 527579165 766906631 842044710 302559712 761822682 302722637 170456207 824174652 927097463 720732385 956961570 903154645 596854099 394692459 113199364 925483848 883810129 595299669 912934250 399645490 883097453 613885602 960576312 798854745 935270748 885231945 360342762 141200954 587154873 666476515 645798958 575420682 72779593 387787386 902414755 170381279 822739140 962526651 899595158 833791765 220391163 361743519 816918842 997251629 813807789 63874412 935038356 430220760 879187853 960820698 271886965 798867080 828555194 979006627 764203163 820365330 121981191 910930402 334250473 434295965 824476931 795551294 636021679 364380764 977835843 664861853 884483402 940429613 841989050 776820314 75631665 103124046 576956081 791692567 784409108 166554256 559956852 713515129 665139981 499581123 826106886 469386078 869108664 846211260 989752284 624032525 923310318 96292734 454604381 377507812 821924507 615506886 868282826 948497148 889871801 324115945 790846143 686924214 962379754 779345627 958452602 838950550 743423163 901045584 944949023 737872908 225256352 201331496 469952472 871682533 716967891 985858135 995362707 859367171 130676155 503700689 982226368 997061754 803431661 884038471 800018957 280758136 440007979 622137118 538466748 96274594 625101783 412929994 820884463 802280136 538721654 980536327 988015234 883624329 219304184 3393879 818182743 773692896 653133515 195350361 928387547 96988249 842038776 204247423 984511541 791481133 329151935 421219168 873828232 924268801 841825732 978169058 949382192 565544363 209745981 329974688 790175470 594226721 915523204 204455989 96976816 591463383 252016744 754355533 172283128 968081031 927018473 142739956 966680629 932982496 110100148 873139211 170456086 645601408 625496268 659873944 658218245 518668019 796893610 765843885 524804393 738264666 845542791 728770158 962509804 682820491 217324018 984718349 911782175 47601829 891257379 954063428 820949134 893636838 859898943 957923279 367523901 94404341 906777514 535146976 345703986 948666963 152348090 96894818 932609778 915917718 860486350 563140128 401985605 637450506 157086324 210315824 680202229 296978540 968905477 997755225 345323777 730927984 809826643 928131067 862372450 955106432 780403244 946909388 963027810 88242875 942177821 480381301 594977083 304103715 344942085 794783052 992931706 911208938 872737808 360707915 331726263 870198761 197059152 891751880 625758351 943184077 339180950 487807763 776680158 867605510 175733409 350212240 349965360 534890566 815093153 363421094 680267235 390062657 769267863 33429370 805700915 891101110 410053722 284086725 800290905 73502909 746517137 893183551 602031108 744487547 221619536 589064176 813924673 574361307 807560521 84796897 756481356 977777629 395355896 754585275 742290325 814544175 897207845 864204973 942355912 377234980 359178589 781908732 826215445 970759475 11647368 210104729 262901017 15969482 142510242 471557397 828200554 410765416 80116617 821866888 976257016 931165664 814642286 160778126 831882308 44867677 750807972 842596496 16669764 804393668 494753959 945011336 936192857 898170517 717383480 263970518 805040132 649105497 667794403 177885157 544383752 976817304 522685931 843712351 280918168 286574764 27310647 774108201 929529054 957951754 379121195 973220346 825743007 895786084 804216903 460740374 235969755 776586800 954427953 336267367 760001379 444675940 914175472 683448098 907872510 569273023 747450962 719136339 177444652 768382273 108607480 759148393 422889639 359999411 537767306 493240894 15522475 922378888 417194976 355493950 941516243 826347320 894491098 904832847 479446378 940725583 894069211 15770165 310974463 685428347 917990189 965099629 868224461 872989983 774276047 73351925 206301322 270477173 749998166 391101847 5584175 743014618 688909526 125921029 813344854 744806944 397733517 142454164 970715212 799293604 966933087 641627448 910236032 507452919 30093588 214749152 344954923 302362291 559854646 986239691 249649893 981652630 527142608 832464099 753287962 236347524 744722752 297579572 382113666 640224665 20726504 808524567 438380205 99478854 983816660 947055306 804895213 950185038 900690061 435210726 208928590 906477391 76448199 912411062 61040115 796044989 936903558 418476876 808461365 19308594 999400121 181252051 798702233 908746080 651641268 852503648 986049952 788203978 931495054 859032904 635177780 843683164 909904543 595681184 876231435 747484882 769051395 817110492 979108555 928066769 388634673 302047764 810767313 745384258 741617575 113318648 951211436 957327199 156372645 945149505 26435733 757272934 51454360 921755276 745333202 349804656 841304478 348929191 930984661 742955306 160055114 774742431 856427123 892772732 828902376 348637669 895159507 744005684 766104597 781233247 22205427 217362567 928755726 897809442 669748185 13748383 586687864 846604872 352214523 856311216 313301906 282932280 763160509 870506513 893811744 116176950 981595579 603154315 986172240 806820863 853228283 924523803 264479950 248967463 811134605 817632026 881643489 797314577 926911588 774500934 754895106 839556282 961786234 278523556 747587310 831038525 519806296 55751154 891223888 871295259 513332249 857551602 945313970 783769611 922597155 823869727 181194298 557027881 13463428 520005534 106786383 823326878 748178167 390738411 443037239 750586202 878424423 734827493 341009372 956072838 451061116 447606643 932252460 982225787 136491344 848121308 940711915 138461455 513632387 904837182 737020247 502091693 235960055 979648500 963160939 661456707 876130631 825634819 613461700 155421173 91880460 848190049 923743920 415975590 819709225 45093373 142251724 380464172 960126230 289304288 947719689 825042642 828619919 225782881 379842578 828134248 325006069 985485753 448227478 521007596 252593366 984939545 976728461 725733176 1498807 721544168 983918278 873475108 574848322 796099780 490887878 259463019 567212145 811857973 331658816 941697720 38867460 930328709 844230350 717553610 87139289 954391993 911596921 686873644 116948084 922746404 867403337 676643632 890887915 21982606 970772293 869160749 810366028 786703979 939962567 989006485 650339312 57242066 726694011 830818484 887496721 861330526 431737546 684560542 813281368 19770438 217598160 808874959 897667655 874227699 793055312 381785093 620559666 943957845 436412425 614065369 869387150 72251071 787686752 859893234 130431830 414726803 639308223 172611624 179238078 241238981 522750909 829617643 659457117 743675087 878737235 851932858 751361499 820578947 767496615 793864941 909970589 757959113 887133871 109783351 515368171 230880272 970964663 807453523 465345940 505634415 303256813 919627660 215005944 505944636 742835562 772464794 109943676 650388204 711380547 110736689 45584041 308893334 545360340 894091348 230076490 939956037 838672933 232161008 755070301 827620146 879636217 893032165 27862517 139851630 776235361 899228388 29754246 920304070 437815265 249209065 137549024 2177245 814670048 665976999 893607925 556643529 826345305 147290326 217979031 804393431 561543215 831712403 139333686 855106819 142524042 794137881 857479526 986641300 177761689 850800045 717116024 853482320 446957695 707568582 422515653 940835365 711014817 812234291 839563676 425774932 826706621 597574246 157463376 414225916 834185481 907816428 118666375 888242303 968350446 36363059 859485150 492715262 680301504 298626769 400247879 880516590 396049643 40358895 927695310 521539583 939817197 265768418 841823035 190980203 988238805 133121723 784018420 494210188 928668568 788376042 980202859 530919684 804474557 328281614 700644019 201617965 479374272 104049376 571709935 287443487 937406267 329387374 776668845 846919796 927456837 785431009 822267465 614340584 924223635 747287400 727815237 114393064 825260811 899282257 940650858 172323376 990628669 182723745 537155064 789164667 770237897 129565370 823129975 574615164 808444176 350185546 537489214 896317158 97946379 874921077 989659703 971897707 893884562 884746331 350511064 971247029 302723146 692291999 981836971 923797162 321735428 44406509 69891022 996749320 852690258 882043382 604243836 913610556 595211443 128156067 738349156 787054840 87636663 221141928 832011479 991058593 185481496 872429985 947357480 985705323 978902748 551356973 622866147 197731903 949023472 891502551 745266341 854479034 945079230 824679815 759016596 168091405 928841725 411728918 204265777 194095945 829755073 736554580 254237112 911807239 204940947 916154973 795470520 851743851 331119777 60809090 756825415 621103784 727012469 757792568 991681571 896417834 417448622 690662774 760427693 859574559 761921817 868880610 988852773 203132248 115195479 932513252 53644972 720473018 946693361 116687231 943702659 631473093 330119339 168863636 296253160 120373434 153396395 739518527 115078098 262013701 984889846 638655793 897664498 983469319 796543332 959912677 977731097 10374705 825933813 564984115 979852343 400467506 944949444 204133489 310463957 808258641 319889822 730850259 976923726 640672538 939628495 96134835 798501042 957261348 78537312 88711916 159614047 965733743 255746302 797788144 177151168 529590875 855510081 679281986 892890740 177791389 966143949 88043918 978154893 75810623 511693872 107442049 741826659 969049067 832503452 996010262 879047973 493240285 240468259 893940966 863762971 938593479 922981944 800008475 936651003 920799892 888156145 595942627 143187546 278628059 798680813 114804018 404776641 276876121 643567280 172996159 55283021 829669172 269019614 535831492 798906990 944763826 808566554 956014829 997110556 337549668 29053245 768767961 153244089 10963971 365754452 73548095 412758785 335394241 830040165 852639128 998630077 772966608 203893797 789192930 968323689 876915056 799529889 632827327 142555227 796782899 906422616 784519584 34918206 48240265 549990802 918442736 745584744 922605472 443322818 322546963 705462911 891062692 236512213 233580094 877103265 409519154 889202548 854822276 807513885 202873654 759523270 855327045 786130706 913187796 609287534 818290827 995306670 935323712 776680323 941174907 699833281 926487675 742354509 101854079 989190170 72096102 718992889 862928488 533773422 203903793 626266027 638921735 430758 737270881 912542933 749253482 908724576 115504885 603648455 614840880 136354299 595008516 869760706 847721768 467212150 842772830 72849992 295495585 928723922 629812622 360234881 853666367 230482583 923206596 807163818 809278491 997562284 480526406 905638109 990906565 768233730 842668191 789697421 846062451 884851766 128996148 946076501 713021530 836153180 820872063 951250283 210862593 626192562 665975061 674367806 993347537 957992932 723374769 212830073 632699011 863744324 114672181 878626123 239604795 327234109 828544378 17197174 898184492 825572216 525450733 613585414 862523335 163742157 282608156 843843221 628825445 767940138 895666284 998870584 715471289 872306982 820713556 712889393 435180913 929042160 411843309 373936873 497829296 595930366 916305208 588204489 509032865 2873400 125796611 393869063 574633817 966273862 205668269 807281670 931151565 544726991 481725952 724544731 483979443 968755681 742480004 37822357 943179430 72393124 362517329 895219101 738569883 932795816 222155619 62906082 420621388 784558229 964294098 957284270 411783015 12003510 194108442 767322366 333637804 461818917 772867716 841314572 788211975 394500942 898285762 913514903 202169178 671657611 625836260 273356474 205843094 880751889 265796094 989172348 851207552 817152071 830173456 981801955 693834161 625934055 509221736 89612700 741524685 810162464 972122803 351618369 541180697 848211114 396610472 973606675 883033281 646755800 13154442 899738432 786006754 681077650 63775609 660272049 834676869 960013805 142968361 172139312 941966928 872084669 142648486 917334323 812302225 780957585 968784838 173749069 737480029 102217890 805926706 999796495 745171208 22767843 876972615 233601039 852371527 379264966 995262684 922943379 163971914 737020247 846573378 870654657 283367192 101978392 878981627 957014632 677157844 563396746 602608785 290693250 829703525 466747343 885996163 131185928 838288383 578447802 25626067 753285810 874516356 421326149 568848502 205947624 728642042 517607808 984979549 718691714 696128958 300774335 762663552 203977308 763494152 459210636 731254531 199662583 696184019 763513413 395383535 205256843 339989301 559200534 641631574 752435812 491092831 893437898 899993409 520116522 22071105 747252394 157885308 859823035 437433754 30139705 371694560 435649143 700829333 982076377 592128804 443563674 792937600 44026743 967635199 873816407 969031252 349654578 85369954 802624852 782221120 202458480 513601360 516071932 163820120 213491993 827071109 123774540 265743212 739542411 779466757 827268771 946302851 347259219 537385749 805646198 952518738 134873649 945923252 812998830 946976524 996175027 741833311 892436162 890133767 996493858 271885956 336634021 84313337 998143573 21730261 789876746 446308589 356449327 502085321 835053846 283509587 781732587 870180116 805807361 944021344 835055672 797741138 145852613 784727005 649104312 710447989 973733288 483615178 876864632 966568862 949543122 975151654 257735221 990692310 135084642 124596545 791613397 649304183 531776348 87571577 568603210 173741279 787967935 609288332 856623241 823448518 804456874 650593798 967522968 850404677 922069643 36918320 969842061 353432032 81276576 331732706 342629938 804517299 456797418 532334343 199044713 449541894 797822164 416194851 898558811 220042880 576000143 968086294 613562731 939199912 22121425 757295187 830887607 846374788 14431811 389255272 551782371 764125349 676251883 486585438 793691161 563252030 863348106 153807909 139787705 123354071 51293889 566502855 386781413 33743209 558963885 820102255 338470695 787941972 159027395 380356571 996193319 844170814 965197401 867250124 926516522 510643231 226963777 632207332 9543936 561244776 821597020 90127348 45002660 834161137 632089036 865199460 414578555 418517757 768841872 779901311 89174557 348010326 767311430 431565318 804113003 113985205 637647481 519183553 33613794 791832076 174858259 265956317 849826420 470395143 487417393 841991679 440197050 576371011 807784170 989709179 871608210 200045268 674934854 867613754 924356778 981364565 407141804 243796394 363620156 842038489 356411829 647144263 623927363 961862334 827779792 742120887 368536439 358637779 31171194 508346520 821184563 630777421 608585916 757132282 925978117 522676454 914338080 270441610 145625880 580604948 777341971 828860050 634286042 783213430 763487341 479927477 946136899 117946116 811947039 16932112 261460125 799940829 819274014 833508656 261029731 162200052 955688183 930798275 978170522 990184972 181192160 979632465 80507794 815437440 608492517 413148469 832060798 754010874 127701573 373620558 714871374 896646160 556194949 857047166 301750683 973925864 372234860 573918022 955769383 18057809 836192956 785481762 372884679 995705946 709845165 532259984 238806259 979454663 898628921 42435622 772825419 994885128 9421705 916378448 991383632 752940382 223560297 768912365 463459403 946578006 905797800 805250154 645865583 458829614 766930530 295724234 150692109 924971400 253249732 928429442 831367261 10614443 976840443 834256511 852860804 329925065 425080703 789755348 845634674 792920733 551261993 966960478 775130748 887070268 933640298 962668555 820689724 845909809 797447202 774428934 162213546 351862705 753756162 168852759 336266012 822985925 481795527 973750875 759270843 628443911 814282254 837338101 818497206 2400226 967651493 656105662 918409323 766947800 232149714 793519361 760914857 2956016 969749314 199578381 231610628 984736305 960037313 916900545 453256953 985998310 855043199 211364964 448997673 302204150 429241344 331369284 903094956 183894790 907300304 544312130 56753542 669299584 116811998 903024515 460697168 906787126 424212569 72509280 974017619 501393078 196537931 899882364 263939185 643023282 901409804 852293883 865735549 964617617 178785318 867923993 708476037 707286222 802400979 135009444 805366071 746630834 816071456 484984812 458783220 123542807 624847997 835905849 735902079 476235539 69711286 601791374 843821159 664669238 319796566 755794840 754190975 819186375 920257895 580451482 903457551 351032307 486403434 180794593 941694539 984964440 219544171 509651666 936408387 710724098 471555275 439584093 155447712 951352108 763466466 67364923 321367079 798594459 533354969 915309059 192063526 681496086 948228028 928119389 79162566 678990672 104010089 691692058 357629693 978662858 774298496 686395921 902676138 245777275 765922418 887154713 846344424 970516226 845615116 801344907 945072388 974575450 899923132 898672758 48761931 559960172 911538716 351696549 803630420 918811613 120255798 263353714 182469456 495535734 955070998 831645872 888557417 424496860 738363856 97249114 639639924 903814728 817864291 933477780 811449673 468299675 242166074 286915963 988281101 186596631 50426837 354406224 11489532 842829290 985415714 904145422 781919584 89995333 835228507 183916999 683798466 515445135 352182734 419393910 717210024 838989510 950231813 400577449 955423160 924368627 201586831 730557706 86325294 322944491 57838214 507527218 812486986 750645514 443265131 858313148 792853572 865650264 698727677 137752283 477172975 74494312 569865043 943579902 338619366 319474148 748035387 832876973 916056903 54655022 68395863 673145706 154399759 927370203 13987457 800084874 799074777 720715754 866994467 241169710 872721460 182296619 800123291 957011892 496162403 870313545 540403855 862049687 931824914 595541505 499622197 571342616 749920295 300541946 977690954 832559116 363044115 788512881 966697696 81762206 912528757 82034500 768040708 826530698 361242079 486197607 951115985 880986807 210516766 733632699 933153020 759390410 861581713 757849412 950493005 902428180 242797411 839814455 969367739 585614898 990379456 987415817 457667301 30113269 285057824 567056600 604958726 918897122 627653252 737020247 98299490 986934325 567289195 309079738 741768547 955695376 458536475 556217002 552306222 937651647 566582538 985826798 958829857 160592258 547001107 805840638 908617138 611888512 857578595 522711770 311598194 186602488 928055778 864878220 802533635 264969908 851254321 935529628 309758448 500300855 290233217 950853006 573509362 992022474 970877268 760056852 829979470 948021744 492540338 412106088 696485437 573496186 858436877 905316459 393415171 782661612 829725773 257898972 822185516 905043238 927155513 893551817 995451657 709537610 881398108 192561745 847574091 778792597 735252736 786481933 511372970 102475831 776258617 449978523 891901828 410389871 453661353 950692838 905988969 768749739 766889665 986426737 869995722 752390302 822932479 976540679 403467569 6734240 874259899 776039652 722718826 944278333 907515854 28777883 55091939 918455488 813030230 966560441 812499851 931628402 897521391 812772101 735431650 844921462 249398655 809746920 844884840 746850291 24047783 994700635 821595355 659820935 760730729 159382149 36736273 767664322 636477620 774845301 767937342 323933972 65792584 591275319 323442385 869458969 687594419 147470244 691090485 944974525 636130001 272931268 587404685 801736112 787746723 860424816 815997886 173502245 943595318 578973596 917202089 863425810 186337357 501140833 110717989 362179923 686541832 758829581 898260318 568097119 53420669 692402866 124130984 418381006 884314092 316729957 975686289 944586214 612977014 22562357 828176568 474627714 80394296 344950372 909233627 779835228 233412498 882773887 341904141 797851842 763876286 794562856 284850938 982492823 815752805 982089093 76591303 851897132 888446156 113850193 980460830 39754514 853837364 596227111 952203381 875595142 819867730 52907410 816225170 494951658 517341654 807680867 236090624 647694197 556291053 657127619 146551541 327829898 311496866 570019728 255072172 986124772 579570279 836840873 963575567 925088266 523169341 875565448 920758260 824471921 289554208 13556849 861413738 884661497 902718543 938076302 615481609 830001376 934384551 36392852 909588386 632777502 920986323 588418667 998263600 981419462 50293817 981587571 844317266 157135131 511862650 721484596 581528261 884576528 973475896 114054596 644424673 711276710 934883003 261261989 379535026 407272704 152602425 759101577 189224175 804816831 889366020 880507917 857709845 694455138 273875619 942216890 789000368 783144473 152014827 297550478 904677802 140696886 936435334 805254761 899263616 892287266 433108256 932785894 703119089 442210146 917748362 888083826 811796952 996192428 530568228 300280614 201540102 790095378 804052135 869358427 941516996 232383378 744160107 800253754 970927442 399286882 956438371 596139479 804499779 929804101 327764505 650076710 353225025 939194500 711205871 248381309 740155405 512227621 987121449 383668960 486591184 974678698 587049370 975098853 756715094 120929229 388332259 470945783 128799164 214099438 782829814 930152148 438212411 882446220 855259479 454359828 197111031 428184053 431081002 823768571 631253402 888567744 952218318 553378037 187613349 755024647 817285189 906997009 920057569 358793459 293040722 464067791 951680758 812689481 427831089 33727165 834560132 562395366 785206128 334434597 740610688 528741724 686651948 908263132 881385138 478689232 625645199 756617695 369639330 85948113 986223501 960316711 636225013 777454507 204687264 216368172 986379272 874290809 869559791 589914198 114313294 589972258 899590450 370711057 960940642 629054690 524885113 701645398 303431874 495320299 239252794 688731581 848458721 192812173 876118065 988301511 614575198 784458304 740946568 861545545 939447143 778163392 734037806 795968277 175205767 776021753 747719882 747551022 825535255 901160122 58628747 485169942 219881212 850189097 856461002 489043194 731293249 907364992 865349674 758391311 711778271 811626459 740584647 121213248 488343538 30930869 894229144 923186677 956100063 908420208 105300868 732696331 973828280 953335482 811723436 881808293 428795154 59375855 815669028 991787731 4509049 628905506 897769898 737539044 902230241 452301022 179214349 376822632 958822539 239486987 880495355 935603881 208654565 848094520 583074473 648814463 737020247 741947358 12337600 606959217 202213735 137466323 892029900 445220238 636288318 578751492 836888589 915732721 815104379 459946676 875933470 956002552 120012511 540397694 710176698 514152423 407281717 986165230 804506725 647571182 783819179 435557617 974258266 787811299 950840860 929143125 142303172 232602712 798072496 558013147 381800538 322626864 348024404 907481708 159710622 4247674 451514487 762029704 814533219 753023295 157744155 535761897 609483842 526920150 745723366 966153154 935335894 238827950 523194781 564588221 790761175 54190949 779958724 476883134 994102650 813996546 284104941 430037356 558207116 223821290 841148349 167610605 673136306 680003857 646524137 860891294 812205937 422589849 943414460 732405557 772192034 690495370 273294161 156252541 993804371 869535037 294617134 714829671 532838751 787126872 991311094 737020247 738083908 988665213 343819789 949066140 670766148 984043223 969672182 838605789 811096041 988484690 504611964 170699415 829957563 966169657 528538241 145149954 898624317 966734242 855612329 766179550 502942862 784040581 232942189 966654168 883138068 760928159 699399970 755211550 878443986 897969032 945273081 761259392 823610814 867469392 304277029 785789873 563226314 385086292 938622714 668950207 650938172 467784571 388576717 828167002 627174482 128245309 861096185 346322409 284287148 610568406 674394971 806438301 192510600 949730069 976570718 230368874 996541308 130122856 999055314 853412381 875454285 845023136 873411802 90837391 968571758 682302460 698837164 942320469 642534231 212241857 278972290 201817868 507887954 128589975 746279656 836164232 824384690 104946105 656621593 596232927 962027336 520054851 486050913 204445539 825088948 190517939 879570061 859492349 826564729 411945739 705781007 503944614 768778690 881454378 466726877 101686945 488372831 58582116 323615814 415054413 215871886 449812347 402848102 319467258 43921806 56091326 837224991 856432197 784270955 746258830 313349765 810668543 177041608 737389313 188662860 157624942 9435623 778702640 750240300 5254901 893912052 937097977 225570636 962206104 953405046 749873567 963143906 888474066 966123398 74418544 689877554 208699970 750017799 195068876 455679963 313719322 151196323 906969613 843759966 941837648 927914632 232958213 660027827 585014281 739629074 619080934 954415174 616373827 725048061 702648502 873109363 284002943 519388246 587072032 931922975 89234432 52291438 195407017 344597671 401734060 985617801 569403774 383307318 474731581 906786395 455434453 884226421 827891179 942064915 764033778 821919022 457638903 755390783 554715011 851141815 939068240 688269228 623298416 851883022 529240652 928618985 751382018 92092168 281186152 321794 137061017 773867366 430771565 764326332 676174330 745532031 926477214 451819203 611865480 435936013 858457107 956497179 791385413 948614912 973910169 784640633 859826422 251403303 972484405 867261941 128201509 806505955 806991172 294910404 233172429 876086466 806026413 416166381 715325836 833843120 936876842 629696804 903031867 705935403 287509678 783462405 240693442 788484398 852757089 521508347 416263634 958885819 744811738 401132074 67472460 415942519 936502078 664498168 990617605 781714904 707814559 846320158 837926970 571421826 934685454 977856907 747585197 310763408 827095226 428461608 921096943 191429651 131092941 909473635 360130138 307295678 921647183 952442591 145350486 519747736 863832465 174605509 799432986 514622243 906144880 847673197 848880599 973363174 794548818 902007233 541701645 346618760 817099951 282618065 976825755 606496825 753704808 915674456 858170291 978960806 345181788 994958072 969894507 193120121 829922304 727851001 837311569 747295251 448614746 564590952 939986924 980257455 446578276 780360685 713881742 198638699 283061322 280568136 998764412 302427649 944950462 529091965 684028925 872816989 683218656 14536907 979335887 958798831 238929668 767709385 303574592 762580375 965138006 930082680 865522508 898939013 426529650 768393452 685431702 841926777 493307731 214666282 969909129 851510642 823541182 28346069 769372034 697055240 288723744 828606762 793005119 927984762 841114389 830258548 404959405 873631507 901861205 962879812 86342748 424272943 702998062 764382168 862566680 824756052 756054395 166497278 815869331 477048953 267955213 470077386 472275814 700183672 753424193 149549794 602379210 934567515 962362166 62566654 129795265 294628917 785195271 996450390 795808560 209087819 492185120 326314340 744548582 953758797 592805048 896920584 616323354 437959158 351551090 35668159 134041464 980345095 618087428 760421703 963049418 696509654 840170218 632898339 312371897 800446602 800697053 841468275 743171937 201577494 939676762 552255224 827585246 665109456 837577163 382717383 202909994 649288042 764702745 12091422 735443326 855261947 881197310 499017955 588284743 123430713 819212199 126078958 133350947 966560555 787296307 909548901 822950848 268061035 89116542 550872568 153499634 791437540 970431498 788883911 254010017 525389375 782912233 386346005 740711869 349000716 998575045 750646934 767066369 374380610 726165211 907056206 960554610 718806906 280507741 835941604 435484583 555391403 948986662 243157677 726522969 961688234 826136767 657803482 757650312 963833144 911525157 999897802 727603386 775324518 965804202 849236656 956368866 262852988 208537417 626438388 908196739 879966501 766840146 359671218 372456391 816951746 936297201 757343806 527463076 395640825 930780767 346613799 517058351 896279833 830817693 903725050 142576289 892231643 205509532 240447655 676576820 878129026 320827971 755883617 779186763 150603011 864480967 940742036 830678336 921582416 878867636 988369697 381870989 409947668 49164327 990889983 454223750 774946817 610400197 973247309 417015809 386535092 269216362 832441410 882948100 485500968 856749186 362104590 502790605 889019404 179331238 939212992 681192170 133299212 959987745 889090058 347075920 125789040 306399075 821537225 804867931 385442111 901840298 380581238 785319501 355032109 281042704 58177783 618868383 661351309 806629870 213971419 318170550 686365255 959421748 933068670 426483767 367537290 258766755 226235954 539492868 743633827 368610980 74456075 836230043 675543743 954721547 120596199 183968405 806436295 852747011 385992301 559295969 266949734 968206113 223700738 654597601 341666233 538108509 695061963 748178906 820990436 926273084 849488132 23120342 829863454 642589684 939858102 828921019 639622150 556783995 882228728 940078990 558032934 467112872 841941593 745042558 462449249 813314228 506406087 300356150 895270857 990709390 760844825 813583436 5985021 900921112 964352106 980027659 869167322 182853942 369727587 183367851 943256358 653851928 875793578 153305559 777854034 914716257 198272376 933301270 810490051 380827812 410101754 65923050 855127045 246539567 957248898 685850912 998117114 524417210 400439155 58749340 205087564 218684237 544128221 131873886 907495171 744925513 327180758 902396474 820631701 787799251 992606280 322073650 606610517 806875612 912463146 791893901 148490306 64813299 291284434 879956312 31179918 527154933 670899737 942054975 466376098 448023659 985624955 392014880 314515475 19680090 833038344 511414113 428346095 500389497 514188586 51634669 801431047 603672906 574342107 475948936 924195429 763816855 832241188 856695643 443885804 806609718 187096677 105626183 938800343 948330031 60938751 292187849 203350342 577971936 948965872 33980880 297652508 831771403 172098882 609483150 756963680 503309722 788660242 882980243 655578400 768499836 992644118 420681628 982536345 91934275 433498888 916298247 882318225 330216404 254588557 899064781 30977381 737207920 558960389 170246274 810616203 845337386 846548651 39547038 932964933 355430789 854320650 702623489 393378887 580333658 817800113 874901256 200005595 792794289 185612517 209110037 840837336 590820385 332283549 827247049 789973591 804837958 805144277 330512803 454985473 864404559 594164410 984953411 804093043 978469496 929242347 387091944 903477737 474003370 468327252 977982405 209875885 150664203 39522530 842378080 672505063 990154342 885296534 73868407 909095024 856975278 887714661 938393518 717865724 289847116 485918964 506234694 389764446 245661876 947800816 917969911 78134168 752803977 953645283 209508330 5197417 899513959 577020762 967917242 95997834 990627158 100876014 229075676 837831674 434301197 721575227 959055341 984376389 337752267 276729408 96882383 954633378 844598801 769537384 79429099 611026614 985962179 433410886 138175535 652783888 987540505 403931996 674044783 819203867 783197476 889883250 302262142 404983447 746723001 902626944 188351566 783598744 748278786 843239693 433761360 782360470 983864778 648197282 826289252 178138947 654087138 962287026 414359232 593769404 936123283 745213728 856695011 354535223 794663095 813037093 729625586 849877372 229326109 986578972 196533991 965227294 941329133 941129370 899946659 723088231 751675212 870158856 258173954 613133487 951333787 869263491 645995337 883864929 783016645 384877767 523703183 756974150 729789485 54007629 871245180 945801600 888107765 906500714 257385974 73670791 885679208 252859095 146100453 670594670 64482684 967962556 159525945 910807694 397280106 847625403 867302208 757077761 427779204 932083294 993436303 843016899 166251214 759489116 978881195 743159385 424798946 492967356 734927383 452883590 655879139 468254354 742661202 219205786 799715494 791236239 864270143 218075902 833193669 294518580 497583684 789583815 641145872 558291279 798650432 957823035 889179533 926969927 414653493 187739415 166883110 439661311 978697676 102965762 659287914 576987034 516497744 825729121 857592956 906640640 742409141 372042571 305958811 924680473 11968652 819057598 419485561 780178302 871682441 974791 743683697 618637273 990340368 442430598 937541047 471621744 786981802 446692383 682855555 948508279 470039651 845126055 278387904 416344790 392566077 808986196 792689091 803731852 26389266 865876389 318884167 886071147 557792671 260571920 882985562 116596499 573711298 742084312 633791109 339009656 592622322 927596231 936613819 796128293 172334096 611105736 677512952 456262458 871299312 998210944 839999706 461654959 790455512 421540990 426049663 177358368 415205195 950351569 309984556 66280285 645060883 837811953 762124081 64689412 840405781 795032142 563631556 957048341 367269034 193486165 946076519 673016994 862735799 888369602 66812303 353095780 209945147 855109939 842963693 425330948 831910870 450006929 148210945 52243259 761707704 506614289 847178966 886986950 748727761 293151010 4001615 377274944 778017335 910224956 760863492 846646772 66382337 377230916 234652267 865919530 194763929 755219117 902055917 429456579 250520272 350327464 743385821 746122221 249586596 30131294 893958453 770289119 120818646 884061735 468143330 719639191 981478121 924505947 764433753 627885266 1065152 892343301 902259051 190288208 741024618 869815473 468041577 36893065 860953876 911452612 236533718 505924505 854706943 332131138 671222408 909569372 938384391 967213507 629050667 303010465 239264964 256205184 80327299 737090041 820991940 819207735 938633809 795717165 862217181 956685731 431206728 902657934 770945338 931445333 536503873 92922381 814965257 873032878 767298341 315409225 139650082 827148634 801789644 752057527 335986127 474915628 585178045 873230010 990500426 729630643 928595669 918192490 27225013 787670446 365768388 978097250 774845229 766392659 32568419 976701429 820877192 478693027 873744870 809380733 384240333 615897725 917025778 497563900 760519665 430693143 869027484 756845061 458596305 639424790 784803639 868979132 885642938 861749715 711874552 427179240 936492988 353224028 987677809 139385822 393693639 397909091 289802452 760800180 888087406 966813527 181642340 697928124 674796118 914876209 634816360 126729094 551820866 131663461 827953669 712545020 846806781 672711742 591641116 826530892 976091953 916136734 284480665 166973552 476852312 703858016 746902338 568190728 907682230 817033462 819369006 927697028 123955746 845830218 898517233 147093802 404372029 722295907 126396703 537606033 817894368 894604756 755279506 970596092 411069576 25922679 13404456 677995901 706247782 273568447 967964448 990835112 912434162 834992310 802318929 182201777 700082347 937071078 793308355 890027092 745087540 494938811 352278993 872218809 838069559 891599370 739473388 430662679 198755602 992498141 915905001 737020247 960939938 362933344 265685025 970292873 130532235 991150605 124726443 276750630 780537113 975086852 531517548 782166204 581898032 942871336 566278295 853124284 857855161 789512255 643908312 263995049 919460601 530786633 985259028 655490612 73108908 871802838 951415528 466549670 989984784 968658311 939968887 945018465 798186245 925923767 366040005 387894545 997818165 683105549 972384742 979119466 833759975 356071724 836648724 810865253 150890788 143978682 30921338 976022026 798851839 998041967 999621097 463888782 758474051 776080357 457104579 207265143 769830360 558596115 340416508 918169312 779060378 76096973 889461095 892366172 724083407 573966768 117445705 583002898 870126630 998038235 872044760 264539827 340899230 688665140 244583069 428174366 474786516 228777886 579309686 372850809 296535455 924960337 338634000 943659762 822031903 570782195 320570061 197996466 20777956 488840219 549640750 427981832 125554854 840955129 85220739 830899873 915332899 881822173 280251515 774004748 842867214 289517711 961689917 988385176 893181069 399922780 900988614 791232546 814574431 994526786 344231528 796663623 789653401 887128395 905591313 496434296 927161927 778870299 475946065 697457133 214948709 910984568 999094030 873215999 838050547 760754132 762662459 455244018 463451154 481843892 30926773 992561435 637138770 831032303 453402817 938237894 989602289 807261969 853829987 453460582 192955194 845298322 990868040 799907966 451957834 805441146 985100255 773611612 299167031 326364333 796777690 700822775 895428412 909117219 25113119 610563677 937268473 523546194 442583520 738363179 738777607 589656484 737020247 103169791 757189882 992104173 695791785 274340439 931694989 845226026 876721310 42720860 406779621 594475314 878614166 826616873 27128972 385877632 712017156 863427138 716490208 951967062 934963015 790109189 385243658 774501284 745324109 959241953 891474891 904925131 970791481 895184975 881113963 819562290 987061060 14064270 860867803 819769896 934502308 815566638 805288763 903613311 148950276 933479952 759340249 810702576 179161824 70852125 26978926 780112253 869407660 734835359 872319943 993753731 962095452 548695846 246450833 8898257 628383525 835725068 784714187 608166805 583588359 199629202 912567438 792367541 73772082 34410743 463012321 979952529 163419526 597156179 82552527 771791831 748591822 7812356 929382339 798682624 650404276 846097173 744458480 709267198 905929438 241026720 54860716 114629655 902898762 413825445 745685084 460916204 481093425 185474848 956573749 737948449 379122118 75005159 584696185 750149051 434329291 349478260 937302512 964484281 352538129 791844452 850913040 709622942 761417982 812523472 481740010 104359512 592240629 28363586 863152103 800164983 952636128 840610718 427151931 649392494 842968465 45152046 953424109 750987128 854811623 169650759 788240756 770574895 591310139 790055723 800727854 780212387 182577092 206919583 440836446 44016507 517628353 759141695 129395924 7717485 808823358 891358164 719979306 600800881 774886847 558691779 107625884 222225185 224086882 947165222 736823641 194381679 820805703 336429832 934011688 772348950 891591117 634967912 944565721 748135948 934797124 55127815 418782612 254042173 927634845 771168347 695852184 704486130 805097108 731898630 765289638 805065661 941033373 678998540 492896621 853775040 420545517 679117131 89189625 97550356 581830476 414739207 561952348 747616315 624463014 971669767 172011611 782982246 896691666 839680053 945032288 360914036 940080493 664152257 819125707 779438362 818277308 919165704 921775037 201662731 504953097 849522916 269629168 217872284 56778803 339922213 380211092 823253523 548244483 894290191 199550224 944633299 502054936 855097461 767822729 997145088 961087653 922917396 94883545 12015120 954532470 57289752 469545680 363000889 800778659 886667203 853984094 799148156 701978099 943274576 801840231 604229346 116102767 55418914 607080053 306760988 347648517 278213334 692605470 932843462 578064041 850443164 913372810 979700741 810609539 780661565 96244333 911657637 988009497 501677740 484128 843215943 841642848 759683318 997583411 794029795 915895270 547573095 720662239 218798631 148104528 959534069 155444208 605278585 142185072 882964419 464394641 850999513 357370012 585174154 763955328 54365182 174579628 839990319 815455896 304810295 307774220 15225046 335498203 848022017 984648876 211059687 833600537 814746719 936867657 625664066 779450679 951330737 921261032 307901728 613526778 98866162 933937237 24874209 493954912 615833627 415393937 745792544 966595008 594555650 849432581 459561104 894032558 377037174 810185515 911250972 870749778 52881803 853479462 991295822 337241166 968033706 175493594 670417429 823478170 696742613 768548396 915444503 9534174 720108617 830030857 164868784 744430085 383345590 861129338 74694446 24146488 887922676 64477446 802052945 773484165 989412329 276412666 849787838 875272627 906796381 766943291 653049529 261132136 920628685 738849113 379172065 189725606 972962317 809635623 899105527 883938438 901476901 368910796 474194240 922870545 582089042 793788162 441571423 93648654 712513431 778518070 528937830 183642059 948942433 359425877 356525072 312402922 987824103 861121436 938786437 564171283 375867530 920316589 968770927 826578304 823191525 854560631 884691846 772693321 691157208 871588716 927614771 221551402 945317905 883440299 550061415 752242720 789194903 251830141 654043877 949559178 641284743 529657887 188878179 980437735 745889919 299605881 780451279 88236115 698685684 976699724 772678616 32291870 235883041 749200039 970507978 247439759 830199332 102336470 44223391 156549566 462425331 814391411 781862393 830129008 766860051 731596655 461799911 750869606 870085027 968290775 394066431 926829551 585898282 649955511 662520059 988695097 968977489 537586690 244595612 111180826 764985733 741780716 928812508 893755335 449549964 828800762 924908497 125194414 577747266 885287314 7519560 788204635 707261368 973404649 912173813 853073219 670810955 848511284 876551277 606684719 720699846 400511228 930819778 786001612 818535872 133416876 811900214 83765691 831256099 239604146 359072726 242119127 630667099 118308518 351579730 596447613 840028201 119573958 816045252 203596548 997378865 609587907 985921543 770458942 933028242 760917876 860584543 854261678 1564640 409714901 147489798 332144489 912838628 898228817 296041749 902630089 462915657 762284951 614636547 789118013 807888471 887584132 438907555 401086840 996474082 177006074 775904781 803812382 933999341 435764515 963653416 938763780 39713528 82154061 376324299 596668107 783156500 582568035 849032451 866237538 883779519 225172984 31358468 965307801 901673723 170001247 919000610 462234053 861768500 58915120 738055160 374538876 906620025 34118273 347490873 111490452 645445361 923985808 748430059 839316643 794759495 894371802 750430848 869058666 126363896 300874837 133168063 940122385 497661449 982205439 873005370 590167683 696299024 502348645 973618376 322527429 846153298 254951820 226254344 714058052 829453171 523538253 638999163 924196642 866525088 726043241 744780593 867756082 991506032 896830668 51274002 372708117 909080608 414003648 952386686 799351352 626359592 662579521 923929424 942583276 106097963 970080966 607626228 270637206 768655677 308776226 941309749 312460575 459247161 797436990 919476610 381753605 702970090 801434399 129270946 752269159 377116282 642063503 68572250 197561978 70607777 671091108 656032339 839188740 795856521 936649720 848214117 895491249 281200787 774997464 900044513 823316584 605187496 405534441 229098892 817156698 595257304 918302896 410741619 849589991 938870308 849865772 8291073 741383327 377921668 796957745 708953965 297153526 856694799 555377880 289377365 947847923 840894088 671024148 377112013 872980521 894594589 383726834 755684791 744079903 987266292 774764529 406248536 938931244 270367831 127775304 842159253 794768454 676905594 705473130 952349270 875376684 891614964 438866234 919806122 952477999 374464391 116345881 796627473 998993832 163977944 200573005 606909756 409163178 767440680 7214931 341643541 769079760 352189440 957815477 395074944 845041787 918220494 530734063 768548357 966512530 859385210 850029854 244692561 795326482 807276262 892494687 737895495 115186427 853124993 79507883 77483245 852232138 778106165 907014361 148526539 373484972 753509792 883850497 19909921 967913543 30978933 355412829 896548707 891139482 502472204 959178002 792394531 477047101 248348385 773433935 331984081 974997712 812451215 637358324 464859154 383371186 518371499 135515738 404116415 498782538 755784345 833542483 45872285 885440450 480616595 199686455 882806411 57891165 586654862 467575628 807061862 184576235 730620652 594538384 812143948 951899412 860984567 869550221 743308626 976578391 884476077 306178329 427623273 94694060 860732572 131457950 269071202 190772766 948110198 837349977 982342888 87546129 870748022 693230121 32899615 924051462 993323988 972012529 10133773 363106770 793090869 922205884 326106436 761039619 165450553 974284600 9841348 194092122 827422588 199260894 754502837 46118155 727829719 992076836 930574048 941583300 666783756 860025594 353844765 40178890 805478690 334484282 682106041 556530284 504320441 755487166 545159816 481035943 594054692 967329148 675500196 327584412 14601606 447158120 53188980 892227209 865616937 968650314 909568561 823601791 16687128 812523760 340193419 975841854 840218809 897916213 864622409 844639100 523700079 554312443 118837604 441862321 790817975 756674460 295877340 41504347 943415855 855774116 406924023 623104299 790651939 907949829 363140329 666321987 796395728 531371933 795910481 393358581 883088548 210679905 775632366 28732362 911518123 983621004 61010062 830865300 829803771 694491865 930949934 891618800 626460417 851813346 387021177 934513173 995041637 879923199 461057514 832765650 171341672 712556062 243644199 969987495 571438093 473242950 676612708 754762669 292901248 883182548 410095717 633124800 106429224 301281796 213728630 962897261 306399959 475814381 887742932 321054373 219375929 412080633 722293282 825399344 414688753 796842948 145151143 752474319 141257421 755013919 958136640 871114718 746282654 306180335 951388258 145574158 186137131 960352519 233467307 918345678 510491526 906124125 756694074 949867382 697489463 731510463 990361469 538527493 766838552 754671307 563972003 798246752 204542720 786731737 932850959 708834078 844703962 812800152 797287932 964298531 547605147 749755895 347480459 987060091 844703494 895375688 38300625 876127206 54957751 609223323 181002390 986345612 461026107 149657616 73559750 861619627 647383056 746896405 113970442 786718824 844595645 969788453 174541310 987389575 735209667 156901227 925303677 67180083 164373844 671602665 704533056 909181190 336694355 750648242 157804753 291785271 762257814 124800218 915266622 499688358 996555456 851238835 785206411 72931570 389150186 781536370 515488718 947248049 937214008 357285011 403015232 958514245 74169178 774902500 57330688 193903886 749424173 887742351 149703467 370381590 834618049 869125399 168116063 146848325 896552690 527216954 982681111 964147731 217398350 953749931 571526010 844123094 502931627 820943994 545536578 982780436 727358626 925879776 439825958 283230212 403504020 85324686 22478773 200210202 241180212 367643424 804652861 810531344 837933141 766876726 474114752 825450841 980489428 172300031 601127266 676984331 707813103 493671843 507169325 271762250 93663823 502922985 892946014 494548680 362867548 832190629 790494243 843484544 859947057 938600096 273535708 954825003 627993931 852931459 934570359 25896059 329950692 201171072 708383298 842398071 106123724 991467083 858665959 633982245 413889411 564850777 215004499 59972048 812812488 907297260 827680819 501618957 517052380 337799581 85715555 26303419 552157125 341549584 713861931 268474252 258057844 878759065 231603926 796092262 921631558 649256499 798305938 934692729 946011132 778973998 640813778 674565028 433814522 856392816 266780750 605844152 817816548 218713286 873490828 219553256 774766385 273862029 520272754 604575539 980803822 640338471 923744024 343254617 487492362 722215932 894323236 663609162 937492323 627615124 998231404 529231200 928792965 20936210 985009840 907195069 521457009 973296064 883673694 61655445 522511382 671193687 417505080 760774020 757038734 925586368 754168553 236557594 97023646 969000000 720945105 37856496 793652306 508294505 72608555 963939338 858015481 990659172 831864386 190458825 775458522 248387210 571649604 481942531 858564379 479893356 787662636 714891425 873616810 22129929 512794034 11819928 888665639 879879610 753948534 668951481 739209838 400090612 908422933 274284169 695772125 408810605 408522286 352898761 462856003 853290589 219743321 401128980 604618162 730267092 581102201 11258850 786420832 484004892 977670340 790636617 754696157 289668253 73046763 273926208 988437551 787286890 120315616 830819908 10783685 924666448 462138866 854924436 773823706 749198859 988387549 925388721 386022006 793167645 773888629 831265679 932580368 880838903 993807290 544080652 864103915 868985028 767099928 692711237 964649682 4414691 395577231 948035761 997128025 266237149 791323426 4626971 271078208 652441301 906609706 307076893 891513372 912459730 944217681 169861293 695617850 553654103 475064244 695042652 927960381 919297360 471783506 943317099 917828250 772478184 510045092 841738725 734270177 999262663 912750566 786379927 903184366 667013505 127678364 464537056 598402009 454977940 513003541 776906400 1603356 55556461 131362776 954137537 771170902 895257394 737020247 702584387 809097543 805356791 615081971 200172589 737020247 507160556 786271225 81399882 934006104 759515961 929314013 240923621 262802602 45094785 364627508 291713130 150602468 942441398 909733945 894561658 867447421 755195001 121416179 992002771 589622388 961359214 657245389 825967276 846408036 297746302 991812017 931359827 46610427 393524659 271056312 956943185 756769800 247220804 909675990 301477972 171128189 785245811 64381979 247605799 44951143 883382483 542362246 654626471 945093965 786896231 133700398 432450020 259113097 740613909 726605632 564759883 942028082 389605243 752706642 634211320 218956624 716797583 792461163 959666260 275975313 798757069 895086440 229807447 374250795 237202738 862450181 812410537 180983482 966800169 450080046 970329875 366064113 751515290 827468951 464181570 144251064 997985992 842023409 467851153 48083434 935190110 937473990 925871577 351414630 945373473 120919527 934974733 202934853 392842961 83495567 737057335 986070086 594292640 379761683 146412595 855452869 770345057 661772031 200732415 716049794 791638576 813060390 212276328 934456528 273449445 937937340 912771813 945640932 941587042 37758800 426051506 967888189 747460705 212581364 789390244 876952820 954346442 854756260 888790040 602266438 496539935 255230618 810585575 70983480 29928270 806091361 772994266 614627388 223301704 839956120 869384480 603115557 505909973 220871188 856076605 644835126 98014865 817657568 120346250 779147930 858201688 740145969 870405995 894056943 997628014 327478029 401327802 16389926 756780738 617178683 441348430 916144346 473409818 988708509 35891719 761049261 242745673 325760933 801598502 921527039 554492672 589519699 61178109 933032111 822879917 817881255 708597830 959612509 976408374 723027167 822371401 737450503 143418689 681120839 807833350 115099099 903885325 110007421 17201245 907652729 529248983 950810746 448098933 2649269 63988076 381302691 950481722 825894170 526483519 943748551 680999260 794672005 987785550 355572554 465240325 655476860 564576861 982336103 748648636 950078172 792935169 778255879 663126101 167723706 835434073 804395105 907237626 897643444 488216110 48238262 741230539 768404234 800825788 469236358 903532768 762570746 808322732 195346568 563206912 290252885 918846492 250800579 923843992 903996309 543487088 800300973 274017374 151223923 787189352 760161875 234385934 858387925 975476217 929924519 936011466 929925661 895162184 358531102 866985903 144551133 42277415 435029769 421845661 805174993 990168235 677926072 124415534 304164726 32395873 842679416 935224307 184984593 678483674 766443883 129385082 284290167 881044336 518397244 762754522 991335658 737020247 672712186 742463810 996709162 973083471 395372302 717758068 805550523 81606965 24707781 894266342 789194307 782640731 967752981 699848603 329306264 244875434 881149218 201145164 776823456 666802773 308726764 49068857 391959421 711353465 276964909 667047488 923669894 922718560 787500015 471176587 767437134 290585972 636755116 895844339 398775448 854376652 594439130 841784017 748985959 159119551 755850232 132731953 924649790 820271352 694007603 653307254 355446015 382440960 715221727 887316233 820758878 831816828 462693640 539819483 311325364 166216963 233687675 988999066 622578895 513132177 969937530 803448700 988386013 840262626 820439125 665663218 936644177 799318339 681386131 727425537 745029142 869725515 834921089 778513155 921519243 673140424 917948255 769892752 435795423 403677171 837783987 703792128 253415933 834924537 834707569 893571066 837047090 973543742 388253857 748222319 665883774 839015862 891328292 921383624 237774867 305420748 129862728 9679383 269897202 744851823 844621843 858534544 195609346 876914247 408081981 616789592 21027860 62769768 484647388 810523513 151345882 503015648 797111643 897235975 919679885 818758039 606649204 841977760 787206565 154162345 417621318 14881298 962408917 291965913 585095594 818098683 712844487 853629630 901384301 476843584 855959798 959123499 904402108 5197770 551841989 137834908 441185240 959782005 164052917 957303580 22212421 545446647 816281398 985617707 868891193 647585859 964817255 963433168 819249314 750072566 113952896 327656777 4547067 888052117 535018039 677593368 785581707 666869395 976563913 363346841 503306923 797574904 107767565 395115635 746231574 931818015 485335668 811801773 657518114 461525024 584879379 555528697 645538111 813413052 836487822 737020247 855628513 954213091 841887720 375760689 418672994 431483779 697516792 798343312 862403520 553856376 844624715 904102641 245171956 925330736 750259662 584855969 80488256 502151903 844922763 968295038 881191708 886618526 876128463 261539949 125635626 517696698 914895116 931975901 743941328 239369128 16844434 913355369 112510767 357809931 945693694 701123465 560424182 210926992 294849812 797063431 762653262 663780753 489336295 221800239 584625250 790594065 849446444 758821453 868102846 878564158 557511375 344269733 463528484 511456610 818914480 924619932 397263699 212175213 356433763 774340145 874627987 998503227 3725633 925184664 714218931 714794131 271612444 27932405 716818737 612227061 849621437 601322690 284478853 209218132 32981524 782910865 970283444 707279388 834758582 197396234 659979531 588887393 925702650 842713456 147376500 24303229 335830922 334488283 770663249 929142065 439939955 687518688 757683188 186209343 453778880 827454737 822752101 769134323 862365524 877369070 193469970 790296162 684510213 963424024 777886382 357928101 865188402 133397972 197819496 769254428 82601456 849638809 957084702 874380536 800151009 33553209 223020707 391587872 927548910 824154421 405916437 810534668 292576139 244902443 275550685 344117577 361750509 750649893 845590269 808621737 628650894 872173637 772368802 906561736 426589167 852153307 820238314 909059127 861530433 123291732 458257951 872299679 826449838 534245116 967521286 737122126 136536145 4054612 190230366 851965022 716147990 749737877 926378686 349301833 799536579 802440172 28569488 767509140 46532625 829664305 462045934 422523737 606585205 792685003 163903244 892732195 281632117 40856704 864085998 396702129 793567307 501460761 413379163 840477682 997384587 66501934 910477239 311778440 829491448 686051443 801076319 880170494 434435621 435670160 933280178 281976674 455158140 738853554 111922803 434097175 874803808 777254260 940105516 876025973 749904702 773620277 832688292 236216890 357549659 827580359 938210505 299497252 884782804 990474367 103624499 906582663 900892405 321459751 957760794 337126590 277821873 773033766 767495388 66394853 761688764 992118707 647068868 290282223 961586391 842817638 450852781 89248235 308935171 533753858 994049853 60216622 943438562 750243848 24270013 712888381 938595300 924816291 972515482 27626467 828286106 946356709 745304940 49385172 413624254 599616415 160042598 772773910 827254720 760412365 586786513 910934363 6495476 573200722 69595429 46578133 997194845 244052394 555546567 156555392 888395335 769326934 856376873 940011847 935122611 975398503 453718399 969943097 836721063 997173393 723232073 339821166 834709786 116037427 126550039 911615429 168421483 771898169 283468666 818445432 54441369 936202004 257195603 769648318 824974911 990088511 973543446 262793846 867248929 319385087 993555671 244099613 780297335 794153614 835966206 826154463 790766317 494423896 162488961 537771657 665142542 921646518 980466759 620566860 259315211 941179603 514170309 723142597 116936205 964307969 232650859 968455252 622492683 746768539 692949035 215696972 119683272 861131713 838757919 25197334 808499402 842119621 707454625 827619002 687456047 739892753 904076231 6312729 87597586 74811268 899882468 667285346 949107005 886390489 587727743 575194792 747827113 260567146 814419544 533098909 904092065 163073883 783846033 358926184 943948075 657106075 464127669 127126008 568495909 897104216 633666805 746255490 539380583 952525214 186591926 810179943 671145146 186462491 786166047 729188746 741506627 802118751 929337629 908485277 612879075 807155233 840490135 745305309 332658362 468461667 100090933 893495957 125163738 257038949 888520597 977027640 131608567 868393713 854311568 793681687 787144534 794534728 841758090 824254146 968923141 842596193 983699497 700112071 738438261 488491147 598252148 688701211 918751733 739505706 421463237 175946384 954817993 818666817 451494609 545662145 303971962 837365226 121218352 712492854 107907870 792255488 872122699 186653801 33548546 782426866 973714434 907327916 124555289 977214653 748736697 262456281 72859958 148015342 811246369 352569866 799458759 235456402 288193629 929348971 108179677 571529465 804968697 880808053 62444154 769087873 859455549 796935461 936622746 298627394 700351563 254040587 7634377 273820837 853762622 988967813 273197073 501719483 978979745 503640484 959143595 723839831 830414816 746906412 973993995 68283711 953970602 803836279 487471279 291049658 788814767 786418381 849374944 190920591 563566415 296685682 666703767 823051604 843403562 914225262 835722319 510856370 752368063 386214297 323574237 939290363 874791399 840871084 745001130 997327459 689299305 985382422 675691310 860554669 865729942 961083868 563790438 544999857 745251876 881667518 765962681 973593299 921446514 655540174 835577297 74146623 828032551 665964564 81654938 442499604 436483303 5984568 778696255 970619345 226354262 30451259 472268492 199050031 537321728 815640249 858573905 874890147 842404565 890782401 860759780 932903820 767698376 936276231 789104826 121544301 58164923 891101511 879517924 255395000 979629144 783571917 608772777 411726040 930593860 657167849 774019411 861894434 312662471 278202505 812211948 932761311 354744980 599054329 633653334 779533206 553460041 794209751 775806036 819900593 962740875 709419316 754438932 928535620 798084207 988077576 425998507 188130502 129856778 777004621 893373843 937772080 757152604 882946763 947107739 582216387 811913448 137122792 135856646 579110728 733979081 470490412 264778677 158538358 31221688 700539600 389138452 847265364 620109575 862027725 734315350 878197293 178205008 467742956 914407957 908241955 929038077 337841196 456330715 129349019 83175347 510853952 939545893 338442900 872129673 576400015 402424101 529492202 120796726 447373810 651356832 13754467 918176325 749752142 913146133 594470150 586947676 718227820 930105074 873485126 861837550 827339955 855466678 856242110 345708569 761951175 628442256 957499707 626519823 62168852 101723872 106797912 824751727 751342696 488812940 71882563 168952322 144924899 864749859 844263855 155256924 930036371 888870826 13471173 530888777 860111279 159640721 913007057 921838303 956861813 749438977 984509536 337368417 645124903 395569769 981761673 809104075 667533858 2986301 914369159 666001393 849451746 799420267 82508281 34434993 968326549 110601761 146925240 202496165 742170497 391459688 851770255 883461828 683218083 970816768 174705273 878491385 797155979 217188164 924522153 958385021 800540617 248496403 930587375 640387135 532528481 857332720 202007311 699475797 732941013 635895675 333284776 807724528 943296695 414032272 420638906 550717227 594357653 710872111 848544474 414118298 550484031 173079731 375934233 905011894 395632286 727914410 7264172 984776357 276629180 294048605 449889797 816491289 721637897 27527726 638073896 95904951 946804018 868107175 937375936 328146316 782817635 135541708 369950287 758670714 389463505 958316720 608585899 995355137 129761710 449996671 833098053 799654699 268072515 860331200 361122584 107172585 765683963 18927878 362614026 823665316 354674634 781037818 75518720 581437911 376342956 887900395 512051517 409202907 492550449 678413550 100055198 669593872 974492893 925710132 792414993 779377173 635902743 491679005 444953879 875012054 898695088 312964824 904388409 858121683 176367028 387577737 573468575 473958264 953598092 827165750 934787468 770814252 447140872 855674950 304583169 844097411 736284145 817685475 921337321 426169749 811769337 927580193 250897005 71275190 880493772 769168593 282643430 762601603 878831827 836389940 839481922 768933769 842702881 968159251 623470098 842386606 900093647 541366636 80722361 103621323 728206991 991786913 477566170 840017400 407309213 964021549 831457123 125545938 553702773 51979166 951311126 704722221 756345399 838112057 889465764 87202619 512152366 284730660 219518601 861663357 763657208 772327040 981726189 154709867 9206280 791238161 913200792 43784726 777361722 145638909 288166532 750658155 888250351 393020145 981838803 663078418 997380569 629644765 793596948 944974136 366949591 222486508 76784765 787203683 868426020 425598018 895277341 409511760 287250718 939060374 840162742 749668852 736760088 767068895 658498878 349579631 912158958 612551001 893383692 664480788 969757979 785211208 910612413 121295233 815598140 493023549 666887946 753788587 870929257 795149844 972570822 483107954 937244682 811213295 825958503 937888097 353970391 837464676 930007723 96730000 938888316 810290214 539621850 835182070 290340080 789570445 373610985 878590624 648870493 365053912 781195572 344635834 145042500 521884600 843383959 874723221 588301986 759441025 896365364 790499909 681462840 949789071 864637608 764765517 459588673 520900086 93557248 336941828 871864728 977556033 83832537 794760169 340550890 388551967 878380367 694109793 935763753 813337867 191472684 849007981 512696829 935863948 757371305 847261478 294074139 597444361 801662375 157562143 865407405 806948473 870579871 844110586 17719859 601894292 322924445 990935650 594601143 995774707 814637879 122977864 330930967 940963500 824842 227305125 129917111 463769875 762514654 142997103 990062957 367071034 98493916 880031797 750451199 867863809 862552467 469644066 965904355 993343956 196924691 239260676 514516199 751923890 999050590 938389473 53820187 431279716 632168225 744517737 593187065 686362221 220291312 328695713 933953386 519724890 376916522 995884148 455408775 779018226 968945889 245541978 92308061 256604519 15298862 967106856 757837009 320787941 635672229 600562211 949054308 858485582 514384925 489264650 927035933 897622105 799202057 590550853 293069358 93502698 360150941 810883259 735186808 931185624 958431231 829342285 927134087 753599995 966554358 776855707 247991353 138214661 872164682 807720848 914098084 550319026 740744858 909763070 740224539 80909711 699916909 860769014 883949256 34927171 33297699 778751022 360437480 551397819 810841996 647464515 772059522 887793571 767771713 740522354 398241507 152228623 864836655 330814793 474896730 741183049 991336784 116285106 755751845 955281722 779830198 849033064 827023928 982499507 679701735 18022027 393515782 48883736 835906472 894134459 775673141 732274267 717281978 405734372 357479580 43710900 296719179 483964032 892926803 426080189 752442806 925947989 501799325 512618143 530469908 94413034 256949762 971398740 814091344 136885391 778972097 220545971 805153489 909231926 921024713 822247932 422545446 475150116 150806757 945335906 543985264 934643474 636328160 900760471 874733536 225624925 641480837 981993356 841708450 742993222 960448332 771899360 440432791 792184001 816170883 122103365 910122415 723697723 836299569 868705246 898711408 450397218 930442438 895992432 978234047 972058877 394714386 923103657 830576653 787471339 419798449 821658528 801543906 345327947 597529286 271716929 839085441 868488975 999529477 856611137 803275980 892591851 134033235 821326640 382686819 159259693 492295730 652234171 210654761 990086685 606382023 942460711 128106261 882641709 32068453 860102660 561640303 740577242 699356548 76344543 44198324 959547629 998645164 795694791 750427073 967193061 769444296 803716485 883670908 969037146 442662998 545552894 621615178 686710473 12187334 791167073 229189121 836214191 922488199 260413282 548505870 745481172 874520493 983323388 74084299 527392798 789081584 530819297 972509740 802680701 788190470 902395647 898544760 56692947 799075387 178515518 836272850 788984202 126059729 753380027 643864576 942994037 581534652 335082257 758277058 921734558 672645690 938313849 519640518 145126079 917670057 808144048 896193993 115838556 23286844 979759931 904567835 990760803 881002191 869068375 275476890 402022713 22912111 852058325 60675539 388914724 993689070 425085885 596055495 995393604 612424732 434302212 279658910 858087896 899479768 900014924 882451574 870131251 148923282 748789693 589416305 743920362 918084196 653664969 911728992 777615919 256031746 143961431 840340027 847486452 465762751 940489184 577370556 951320519 965053187 819999652 885988970 761445914 983806299 356042807 597335152 912072855 548744720 900198590 306159418 660384798 224962409 885765283 903943523 463835702 963573396 421078149 141798785 991958014 364316523 989654794 692934703 977305053 933704763 757708322 989838242 47769631 659000318 228034001 509612026 929176194 171483715 968123799 916000778 676376303 902438848 993128751 124681257 951109182 723602156 520743267 682754010 518948567 669555315 790706396 988987301 822907509 993805299 990008047 825349573 843800404 530932045 891121588 59476824 840586120 432743944 974854819 995120259 930006836 644304396 843179870 703424233 588410786 819573839 290294802 203807811 959844198 908563366 371865854 743031654 754064674 808157694 897503932 737303926 510449186 386443980 927469948 296492295 736708603 958374559 527737994 865567115 737020247 946749820 472348814 506488769 914126157 665212741 873880737 512710618 836013358 214663883 222944989 423818688 744818119 872430029 148140987 407122415 801793582 584770940 874847992 928560152 693005775 103852596 37342728 746464486 321891881 631533660 88619616 744621235 789189974 631869702 861524584 360986309 303192087 387979131 612555810 881827564 218337890 403429662 996080759 852984965 820423301 978820951 931390447 282129496 718717435 52930001 979249564 425353894 292768026 969803273 976656681 365691177 835331794 214620836 978194594 890400729 143671821 555730273 33477551 940622774 842794300 832775713 724008923 925954677 772344268 541447081 494017651 556145902 75570922 9797680 851800112 865096061 775873065 774468075 842335781 885674119 405491933 951238937 928984371 466868914 788169918 760113083 457458432 743351404 186099069 105906783 917546829 793196228 947690396 730817775 144650334 831996415 547536753 658844875 664425071 420540091 771159666 871037385 417513147 107786723 229287558 985169649 901577879 991816696 80467529 585266190 814201824 997827755 993012429 160294451 883594690 620097993 973629163 818093682 928684989 117520319 275560602 750494671 670609825 988598842 674093977 813408647 928888762 188860436 885527964 802361396 917830654 952982125 935048297 777017157 633357766 358805221 840888721 460599377 303273843 873092043 861146299 759921679 266088206 161535179 850838363 972621426 946780196 76697476 850515436 929930009 705280978 830522171 745204388 285249650 766410817 664317350 856031620 160562812 26055233 67543896 269162157 798893989 789210623 871482368 549823636 799782821 755116133 164974341 859181192 604951302 148347148 109177217 128851224 735335052 476117326 409856279 46469471 872806394 583467650 917845044 54033524 804514007 198024808 456895233 875548513 654077198 644937167 796379748 921101803 235475608 484833906 856733227 978692806 823116166 624600969 895780452 12492024 611435844 715330744 909470246 486612401 253082158 889821856 912859671 621504080 796759568 913548611 876256971 972774581 525153266 376769491 983688925 279576757 489463781 60297353 723681562 903370181 923258196 259371987 129324911 786896110 965283417 150517958 881555104 410130295 366542800 791044592 111002380 741662611 907881021 724670956 171588222 493463365 917112230 27238435 826241140 855005285 730871789 978889415 795744160 829350051 995562307 302304646 538270148 949361108 905949817 835479248 825747074 931843121 65651572 858842542 912023843 158136864 656407752 997154497 918869855 702480084 636268551 933648461 961138828 973546339 846094965 262673553 907751696 933502617 872962459 36542517 739289758 896495885 697451070 959570932 710772520 793443454 544359909 5662786 407021372 604964607 821553679 747140939 439990597 962829804 843924015 956644672 35745635 521034675 836376893 843772549 293058706 783060224 971303671 942026272 907086445 747765316 880331910 933739625 241066206 5104910 401258367 768849478 806327110 531139101 433099326 920786100 781619722 770621412 52847729 107742137 858122789 980464073 522213665 930845732 424168997 742666336 880255473 903194409 233408019 402908337 650321120 982660556 16100205 627013505 924298228 798315235 850518619 841138768 928211623 278957303 863759087 767112139 890936630 790493176 693531134 863962328 401269847 528959281 743658318 794327519 966162995 764569946 209147352 524757134 92393940 560758568 759328765 963145488 927995205 390527703 288637886 861790146 308118636 278010487 740690600 454104234 961521444 964843947 498855639 765483454 970493567 355880463 154476674 562734812 384821891 544211654 230306440 319601324 900192154 847592529 979541379 825502262 382441087 990542327 436726941 907541392 500923044 138881729 865754718 883752731 798422928 191196330 927325694 856655935 828109491 303931582 289052512 777955634 784200236 959292134 294499422 785472103 978673848 121028188 805177927 609350868 932899334 287938042 74824288 991035129 47438093 206358770 858004305 934423256 986912352 535084214 945697112 931633465 742899719 744911195 624524204 29576163 38422440 763219432 843952052 3298332 904028060 827379670 293992173 620249530 335445190 857683980 752376225 850513495 773276331 805242591 536195985 618046816 869719043 902152689 880329703 449923708 68991873 768959605 780885087 964577541 927531152 198893157 864345929 752831668 831541804 789795228 852379212 373859743 734215451 783146298 807457593 836639057 668356779 850777567 834086273 213864655 764099950 908219175 819150313 962607637 886583952 739903347 566548201 340830120 955202169 588003183 826542808 902689012 672126015 213496433 840301565 70641676 400153343 308537480 954501299 159332666 906832813 130227584 965102656 865545613 36025311 227463560 807097348 710488766 880644727 769418131 338411499 185631415 945845880 89340822 332778959 244514331 965743196 794432411 885474207 877929432 964035022 789348421 898074462 139780926 18244989 526778402 946973097 945287930 988373875 755368164 102863531 936709530 478453758 996727891 375758715 166336096 988100091 912024619 652580556 883999353 799200824 970268370 60173799 851713580 493311909 593751176 911868354 737555942 929175491 925461072 192926598 498598817 809168880 813720563 961171549 956747011 906912776 949705386 400249086 592761617 485890621 810754460 849557779 828193030 992840416 938643005 971216972 556121389 922568977 845001223 256809864 800028929 838264530 767876004 961006361 133651729 655740116 511134148 968007101 919638690 814760487 354050574 269315586 883987780 801551094 990636344 868009525 26297394 114079316 980775236 718552033 927784146 470746915 903666171 243606118 264859117 442078208 799619751 881306675 43359882 220521130 655977584 754134388 657213938 994853983 368659147 643277209 865827182 234722751 850735048 339730970 935679662 752819069 863027595 889526295 291395881 720844531 995127255 213791008 298467810 911354397 334187479 880069866 459858159 793601355 117154973 474921137 520815445 999504649 522197494 961921929 932105022 90597318 656253871 567240865 742241120 724347544 443169029 943926466 30440335 870609202 766489636 106476696 453292112 847435389 514008255 224880704 772691118 908247411 705232517 683165565 840492515 305505352 925839839 826783116 694182048 598716954 743535744 948190870 439742178 870136321 924936040 615208750 660162153 616887512 190103625 24833710 689799638 39987506 244174414 851732400 513874397 107693070 999384813 841791830 514212246 742400062 391761414 978054937 648764049 34470132 577036 44687266 836786802 734045923 725577224 773111496 760773911 972612350 390167396 750284953 757812288 386729831 223859590 553670319 763816506 128251440 546427014 828170445 811620811 911722105 984924340 290090721 789841476 177205764 3141007 775527062 647302953 991737012 207532629 801782021 631971593 357847115 155409843 218445914 859174990 950143016 869739640 299242285 804147135 242459324 856168960 800961657 17938468 847809403 957358306 873695342 45962659 798102794 961742426 299744682 854136354 720946881 946593653 582517578 546105542 775505414 943119811 940529319 864759 4983057 514458559 897042642 958724864 861250012 472983365 630914262 779486007 97629495 862351802 405856960 140528444 754962673 265527900 852559552 900814655 376710837 953535495 929857352 849598792 898013984 714872945 16404828 734196973 187470781 821392720 471490390 915126153 786483924 215879290 907428729 524512734 861433174 928104330 907178050 863727937 31434808 566916249 140545192 936457057 817681898 642682253 650483172 90691888 647360736 58224464 512661721 753102728 413720797 349628709 994988763 992833524 965722519 602472190 261526513 140225186 911723714 356923541 520974564 718335851 3906617 983820511 546501259 898435406 767083917 222583541 110608777 319605544 958249128 427343995 231656934 416601221 119776148 171359711 894599134 783136334 639106462 982549200 795680960 924620982 888163207 579118957 512133018 782012635 934139036 972485764 221939029 767258980 220257479 313132864 242737417 519948185 960032060 864821332 231341022 418468177 958233622 635135439 243830666 431447712 323893150 752625208 71810876 787913043 790662753 68167724 924679515 41885477 271376251 824957729 80692568 511611515 840237014 716174845 931100177 774120531 27795430 412905970 911336162 551372735 225636686 484369269 39093516 496601108 196353245 737245789 496922744 168108193 472886500 662957803 897794345 490940481 91996897 991943737 797702379 367131757 36732216 799328410 905696978 986000027 974626627 716844925 474811341 913448562 165802097 976257348 693896231 445587559 740047478 157460892 848159633 115424620 448361638 292624752 866582432 938827965 919041644 809775519 950927842 939135413 110290819 579691343 349995773 756133725 836267053 313137490 878791423 880779424 76268707 949527109 126970099 717535178 318156078 307887394 791649959 615367234 978263081 392316677 604670601 555455198 937551936 804600885 202430765 972733655 176394806 763195657 457015403 562932765 871867215 943085694 984635915 636100078 850680900 988549114 317565958 101305276 759983491 878531546 860507084 788568443 464697796 364813458 837961803 814446438 552711704 256896695 404160220 693704354 948352644 245973670 114561082 935715712 551709108 439347805 851637206 494742911 879235165 481386965 354517033 847956221 799578946 441092859 834785476 364426455 545291688 516206060 818818505 741732784 535339561 726895065 881305405 684143664 868245619 637777214 17466432 798340519 980523892 464497608 19202067 538286633 810081149 671600671 173458590 354831787 937240038 71005438 734903366 815382409 541898877 763598801 748666773 788681199 795439936 264456883 975658796 443971210 950290329 999902760 800781909 863188492 915705677 533616566 589265963 905353572 961549119 975142555 869624521 823786683 688177896 675619877 6492719 662550011 458373003 20357165 568208907 960300945 317919454 592679735 993155320 427178673 549012237 551824175 47837783 185645993 976275517 860527038 906455113 953188396 971559599 759720864 639634727 291302274 882637529 319649934 856084139 495815998 809261432 426394138 864202486 827445008 897064409 593243611 815642658 343740327 225951882 672419379 826928621 744221486 831773958 828167980 982141712 984813412 183314722 113314737 918698944 898287596 941292334 473498729 759904561 383069153 814945251 17807867 982898831 321626583 789693262 861494659 86074474 55398585 364924957 910076691 993628617 347717080 922445846 550934942 722760414 391721658 910059106 985793178 435880933 27220746 984605440 553241604 892851790 643307600 243524360 749799264 777317815 743710472 57109022 858836313 649774205 879467981 996362973 163225441 864073790 201944437 56884134 740227471 491829695 934352980 853240436 909481183 975648582 521453658 468697003 777654317 774212269 998003261 846230631 820510119 942875406 150688418 651963876 754422708 983637390 959327308 359665299 614516023 747562568 269980078 614661841 264852193 844193311 184610348 127815606 488692976 428477095 903021366 887225744 64983649 275119137 745365637 45853685 440596975 867392768 984466653 80811748 349489389 622207877 105460602 326375631 218010843 852101168 749268145 483401225 169462688 221285650 830709970 744980969 733964943 925494695 418509636 775891453 821170613 11031929 855261143 404698493 191362073 816172107 804939817 675250070 585544328 26246760 769843566 738629049 999330601 276901252 852602746 737598397 101320547 278225060 395174535 823511151 966265159 998318716 297258981 477046626 752438402 652858566 144586992 435235933 86393836 995852192 350795822 228333778 806301642 206086428 213901380 522253775 883936301 984440307 425775907 969629267 761521820 345859311 939357477 480209152 611754260 911188033 513414812 16891812 740037888 756926734 795435116 620743909 766594689 740302777 932695820 790946182 953168886 766858689 924516318 575691396 530060836 141409720 91061473 823253200 899023695 990507622 611399707 351560539 801179061 892141984 854819795 786958858 82016499 840772367 57340029 919563096 419059687 923149250 813145174 618375479 648990409 497004771 588155876 895841743 863621694 497792911 51360385 146495505 586253332 981583012 956903917 821736543 171664974 910132910 17327722 908921565 876274225 856452553 305808533 977734842 543111562 788943008 921417166 542969641 225126359 416429843 313302122 288371337 882138683 299811512 278185573 769697235 701235625 837659975 427272127 829645706 946763507 824717136 524815738 401702993 871951349 29769162 404178120 887582922 419425705 195680359 437416777 919248061 85076068 627763536 763450669 882711468 703256060 652351834 673398237 59470388 542233971 173746044 772610782 746519317 92196268 998516412 836141387 45932527 796990962 88426172 138314407 516408912 926412588 915961205 620950853 775708958 967280704 917115208 384829979 186476745 909042523 844995160 566923295 922345542 853613212 728985869 814785370 946777350 897661936 6411560 782100527 905056388 774090077 737020247 894804765 464793191 882013366 756079112 622160398 934310117 541597415 470101789 50255856 702380551 738404152 315306464 782349871 876222382 836025497 988965495 728538642 739366370 876460517 669365001 915415509 270455162 353146106 136637914 796520198 95270625 830505815 325238182 777646895 170485855 111766847 293839673 787679272 94512248 911196826 376970745 721236431 986002029 567057265 86172129 594683335 877401584 956047309 906948922 660960545 400256655 925930848 935154366 378860359 783450684 906092485 819923256 188229965 676838740 776606018 907360119 522731249 904060352 707882531 69886846 779001276 108520132 482882884 926262729 953215632 356750051 432114229 898981984 792759159 882187873 868274297 821664022 911048397 268943647 935065736 180076417 375580025 738003129 861823076 178260273 913568163 709501222 442681545 864937133 812001117 878032131 837342001 963059865 981018327 98421266 813340320 383734828 514343296 248673012 325227946 186673141 707937929 279313910 421920982 403200529 718939650 176838255 177540053 458716550 347802185 341375026 903139784 737020247 947188024 614960951 863111773 755847671 527367372 150199367 937185269 234405769 613953365 633032221 893423158 841531127 134436095 475507835 282076258 746923945 450435199 447769105 780617642 135241850 783871222 824936082 920395305 257570549 896039056 698951334 772383159 801637940 164675299 903572508 899117776 837626052 167032301 728875837 33791350 105791356 493193594 524447555 933248808 928103633 652235516 501670812 894119770 299325664 71481093 136886655 827173049 738384720 490353739 131051176 740571514 897941474 839724597 988950355 270608192 914193608 335015815 403767599 138898002 846284952 765513650 261968779 403498165 771075224 885431516 156619502 769358924 467466213 901398731 616012968 561753906 108340217 678495171 812967955 775583140 657468294 636203328 740194189 941608557 347551854 909682164 504856858 480956762 793262577 409635482 21674417 899537285 579896425 546667636 6860090 251484654 292639662 29381434 426673357 439034926 681857430 326685623 875796960 809192885 807160735 754258193 595269596 379497562 784728282 884180441 413655132 181014753 969190552 837651381 924648590 774248052 872537010 31942138 907232205 609186024 198764059 425781830 96567360 874046938 705772592 951198608 930590768 998570644 835527970 521377948 977190253 809119069 864004173 973288752 17400202 862158268 744855615 509234861 114276948 934358341 571064645 899938836 917217537 674230256 340509471 450612633 889066476 668718675 907935877 251141905 787402745 80130313 569777074 666422599 45657520 270767799 149396787 768322953 822276232 237514138 113114067 52134034 480231896 588914100 883648843 587216882 826653109 426620670 757997449 588247874 780643827 160446656 863416685 860270268 104666087 661152986 852529595 864051866 367017288 958036090 179169000 882550568 875722839 126987803 122589072 480053236 405641434 803553619 819975360 931457658 35440134 885059488 804622112 353793920 833543628 475470874 766123019 960466428 931709411 586075291 29439157 894741617 977523013 222582992 818761652 866709581 889218154 444221314 839665627 836164271 991139326 822064050 325471356 308623271 107407890 600549571 933166826 947450558 945968217 746738136 473160436 324433270 844026198 648543650 997615078 637832186 796660389 860843086 921575026 925844818 503722361 938478008 524275326 593317190 900205471 318728877 760102737 342479289 938837164 18255396 983528481 60240073 309708579 794674846 252778639 797653429 181332327 764805321 388350303 796188827 62626515 356350227 835663795 617412318 184483812 91662402 747953766 788642866 978297841 810878367 755849968 370159111 797150285 921115610 758776730 117046616 829416385 928555663 774169024 678542926 33718212 815016965 353991751 169864365 805086057 752551692 673203602 790305673 991313990 798110299 864996196 194063049 48507823 882268771 854936971 786141046 258603741 941850012 591864243 751863146 803952226 424721809 788405328 4822454 320604242 551873410 108885980 875380151 833077167 921356939 767661486 773466517 77265623 231252486 148971489 47291271 931189594 118379844 182126820 756876774 408429930 51584087 719932316 642250628 844141821 329437833 820299935 928643086 492946465 983677610 167242914 941902061 564274145 393789237 873254312 686563551 177322177 559450204 41189023 979007920 695779663 621154708 995426164 971631644 776159155 740308887 180795318 314993838 983792790 764854935 976102257 922187792 881246034 666380779 765585431 706844519 129476114 872295785 375839119 325148823 324350974 492736602 564377121 932782408 798063896 580676218 854065836 877679615 191248367 665322928 344275729 757247902 159101038 814537722 943604186 600720902 822394160 737119378 913157279 837558890 853499881 990213905 850789236 960262257 981023996 480761719 26088215 872375529 935415612 400105075 737388396 927764091 696819129 174669694 394033843 386771632 804069785 830417537 953609663 102236196 604911446 98903001 923158544 865963979 796170111 139301705 764743376 728711529 91668595 108367682 788419167 408489254 319751982 985634442 783102212 291114325 377199934 992675640 789355842 842459734 824692692 460229738 900460421 91599154 838630176 999268892 70844929 940780534 605288422 108593976 522114641 12698546 969339474 882834090 808530519 213518684 886390217 950537393 514048027 751017078 864160965 654970019 196713778 834810561 939798497 669195928 982291254 269152199 244077376 998779582 777242039 939263884 831078059 760661194 814666831 438141799 559794901 891388030 810252106 178152555 633066647 215072177 781558987 294895889 316792838 979638882 766236598 820594784 788839705 947444767 760487393 874739465 412819507 84325703 26985505 864661612 355367594 696492949 959943481 958301683 68103223 956776145 844967733 871438694 799566235 43799599 385739868 869357486 96501815 398613211 798319702 12461615 883206282 701866679 271168443 216452084 61899546 770200608 28235854 401676341 218783257 403365474 652963892 926411392 937887750 734266866 923940082 138667757 828929132 65822451 775475142 177506134 840422453 938372549 838329977 839961918 786565216 767012065 913457495 934903478 798990053 632859133 921959107 252212373 809924260 323679833 842629456 775764518 880941692 917735267 893880782 52711421 921540832 595115877 626535299 307910878 925761265 950767515 921756393 570400947 88089517 421726935 214067720 910952617 516680017 791934205 376759994 814155651 89100757 651313826 203819454 412782872 973582028 167643504 843359689 831743610 5554090 203344674 459230165 384084276 893066503 962743901 826244245 788344444 135325088 188746083 829905083 933926998 9938303 71247975 474501453 324267530 523890094 801310576 210422804 855888844 920623494 795450833 197125325 188270897 876282379 295644348 444710297 966198778 401271174 110151226 868411953 766367455 550314657 193121291 986596580 903377023 910020764 749774299 808734575 456136543 871268076 627951560 226258000 618097129 761372883 808564779 428518920 802391989 828264497 607074954 781123658 562151370 308732267 614861194 874618635 177801250 58049618 82223766 892858076 815465120 190688100 938866168 910512739 860634050 71035772 893864386 379338390 868050099 27142631 93691682 927700672 644790829 262452382 937113081 549583891 978803008 637612036 576489618 879898259 104469120 853448314 977852497 831381106 395546758 153333865 803412724 191780453 799230 378672768 813000352 873124293 32288930 545724405 961945628 936121156 934183878 481320031 336605876 598098579 953431136 715031133 905292757 494842556 875950444 832886547 986471861 607148331 754661518 768534583 762591549 935099174 973500620 466743730 981841198 861414475 928235959 968318425 109781460 215558480 596749865 795893531 124563189 839569265 229469808 934662901 693707028 714225047 995078094 774708199 969927653 753985524 19167344 829143536 200373600 868030295 919853120 763049889 122889185 922283288 692449726 974059833 278192165 108541504 144795072 519321715 642173371 553373525 923317249 484007310 753812168 751536315 745225234 206511695 778905169 861711722 770151240 986340970 971496039 855503406 986772356 859564595 846393526 990090843 574412432 761438156 805983163 818384557 126980266 960437303 780133204 982706063 944265175 707002605 925096274 774861289 6410857 400994956 811930686 814710537 340947195 122261850 911807609 813121994 526626204 281149477 107866023 939455236 608658240 791752330 760015318 648146559 534115261 170170295 160282650 146237436 920876391 855834353 889647538 910738879 910458526 271566238 920472543 616901362 904874158 244637363 898229826 136671606 953958200 2801272 720868510 314972088 685833606 820130236 772950147 918566762 949277504 783691529 922426867 990445967 896520000 846654384 895982600 981533777 996237600 47353596 763944648 842644345 990086283 489696995 822679591 989362758 585649356 594632826 942782963 833398242 422251769 997404709 709832376 942976872 247178873 447604653 555689692 739163834 661188549 988538184 891101728 250641820 19755754 814305834 938583510 192723883 696078975 860608856 985873978 764344291 68446246 886000598 924574095 899557407 451669533 746496007 813669008 353253737 79881095 957142382 727899170 828668753 722318475 669292869 79202960 546404889 248479559 664882191 360770564 746861686 323809287 429138655 80240919 737066909 929710408 809929756 830023275 815970820 852606912 578295446 78159372 413621793 959532505 968446912 953101227 319914828 965314384 624697075 911746051 879944852 885627882 198534471 608680269 853926232 810718527 879656173 272210278 482716296 400620778 474838951 814740726 932605665 167274598 237957141 646364263 897705359 798539587 756656806 833763237 812761153 967074189 242464849 905222770 494352820 910742401 841246613 928156528 272674438 653632738 297824417 934251158 732989640 705019890 548858135 594489797 303803906 872158535 127910396 816263337 875288685 238060828 999520994 217734226 865385382 361380305 415705127 443196813 130556184 877391053 397905125 191631934 383180063 43870204 912243608 850736477 858463405 984764770 992974152 705152382 52621380 747842146 702258521 766785565 504439039 869601381 853524390 846591799 791514512 194380388 337242083 865671138 656271121 865006006 313237849 83878881 753987295 577116621 813142328 695642765 785692325 953638508 867747087 773856828 325357515 856304673 876550755 292297403 837356996 339616080 137755255 967356684 931767161 796784533 165930685 440554133 303821913 585650553 598571253 770870002 914260820 819047367 16795949 845403982 72844929 719727376 109384459 926511376 728111523 928057327 494796975 717252386 935405990 864737406 840747736 610860088 83547400 275195027 312692069 942620372 40529263 922187981 286681944 856591549 381334398 363603065 199191474 826948393 229585738 208316161 784549470 272817846 8512552 454134752 355180855 909825232 738244591 701319629 501347038 784515966 821191294 13421220 785517134 962066437 174784068 763243224 926501570 623619056 728418136 268314394 746266215 956849328 884576536 366780740 781373408 297109445 799322291 849270054 883308559 753871023 356455294 470739 935728468 402899782 489668671 32214479 953058463 794507456 801749250 349616890 887151524 633181994 784685051 839499400 899509461 885492118 161578804 693296112 740264303 876249580 751320356 382159979 984866037 872168941 945282294 942461028 592535354 894351819 749543270 458831485 830220594 345701763 508463052 946344404 857493522 886297460 438305715 826887146 455933405 345389241 384029421 791141565 684967731 257932752 628035222 936248937 322008538 586120703 917514348 420528307 593635258 356400270 970309279 925407173 749734826 58454906 485870849 907282953 505478204 46150735 617283274 604458662 967754380 848064908 737020247 801970710 712230841 22886261 553396387 857027716 826106990 799953291 635747472 510289637 834044046 791974332 576200007 168690207 952843703 267450511 805221747 808965601 839243164 550637788 784319819 737437692 602061945 742604020 269272694 864105919 272555500 896083224 933161990 689223435 912430222 923183458 943632163 991082955 767315428 987467925 617015968 818385394 267595693 427033411 470377104 314744206 280509713 570611646 78412105 124425673 794402203 396534920 560362195 789377485 400508530 147865339 797611663 899605331 673987004 780292781 766784332 216524967 762874907 609360431 909680154 746328606 318523554 864792932 911103979 895924779 322986305 864058674 65978532 170825751 779783105 469981993 692781244 332644250 902808355 445255799 832149996 19572208 501737868 785718917 928426073 180085381 890183982 911717672 766451686 592214928 742320086 57124390 6449866 510492082 810926251 740496730 677491202 234969381 836104388 65454177 522309398 778497985 528743477 391001496 861154575 907007378 565924420 836160846 605320652 731793016 955460262 683307649 570659626 805276021 660053352 929931904 827882136 86157466 83587847 943586326 347419706 295337655 328112973 25293438 423015268 949922360 911498117 328076059 678120210 848505600 952521661 883965228 856499773 275312919 998875447 854021493 719269712 882299151 444866577 537792484 878782822 827482124 492027811 715007587 184563958 792654736 915973320 925119172 898513535 902984706 839577193 127403164 672164404 741955154 957490471 753841174 156403648 724685971 715668232 30733595 160591343 994939919 851827209 733923319 885125166 833167845 862455359 612698243 575969480 858356247 779443413 819942693 454509944 651515633 507344294 781741499 853241683 972726056 321731459 951142015 13757105 554518283 717906551 945814367 951216514 835240251 6432706 912968141 685153065 338910079 737020247 872917266 19356175 899694785 743779292 757320834 966818117 895603234 733120236 185191357 822476589 981304832 52917247 862869735 371702015 874164592 777433804 899533004 885340773 685652796 447132401 965238048 240129288 986430546 288130441 554457023 524128770 532816472 821278033 935427279 275020467 521119738 841523168 442680808 766824103 956815687 815594799 520103053 620828292 897312273 559987890 815665519 737020247 749718707 812915732 455331016 442085272 254330172 506040733 120586107 321778590 580818369 558973601 277047731 426817429 531433613 556418639 908198664 51819209 765302891 21610354 745844822 991060497 103164642 927813617 382579872 888958893 903497682 938179089 780821021 984685278 164356917 191729803 738737067 938149174 842286351 927471564 602889217 132800771 914489102 742629255 961638864 561377120 888262924 28348929 484466651 805365997 471048080 876886815 70893088 759902744 764047132 33002436 886363516 177198279 438118539 889679986 583525853 939444163 457380963 790934934 952245882 576915001 935136016 454406831 595354865 114430708 500374232 825983912 783732154 888934422 562234222 292802888 786224846 388681692 803161860 641092740 269250386 485810577 319120021 476336578 338149338 869384617 780120872 357867694 985982445 423949899 906296442 66234038 262035319 722738045 789195260 979054495 787186888 846205520 418767021 286774762 266732117 801778198 669879857 829696206 815420300 874435450 63016912 583271876 784595766 354396088 222226311 984016587 313255208 56778806 375948039 762770201 728644654 966482868 180232006 499558133 865315739 882850583 956680040 12893709 737865507 591866640 211278923 28040860 754559977 584391796 147187393 144934692 963317104 484381649 808998121 804583699 984213094 474442660 537418223 834443059 478101369 240627820 126692261 144523232 895690198 210527793 394478302 165568994 822432882 589574726 730443208 860347890 809579645 182723567 738859222 253927845 717355742 231922167 811519397 539859950 121361381 260925084 477272567 806087058 724303631 840885955 201664529 936010142 955099882 819709148 759419211 725755515 643025633 334304010 824527693 425756692 779292122 805602445 410941591 755673075 782895937 741175714 788766853 917215043 655785408 356512414 947164073 447468330 57513072 994737525 570465073 53147993 166668994 815090192 539941043 994764097 123042662 578081673 857833920 119348474 899170794 427615572 754674816 873820993 419211373 840864645 987414996 153090882 238354561 126728721 724162032 472040512 784987135 834014621 87815450 958935506 815253326 851593555 658384036 939412300 931254980 872327896 951385613 776496320 92115679 903551206 750841533 269219463 858178051 480467625 837285192 979238894 216678547 533745225 905586334 148570920 614802497 100506928 726785822 130870723 741683411 298971369 343768224 380607416 194855614 828488270 122599138 425113068 869124541 779211285 259914493 228246361 923823833 247260079 637918189 993876848 831979123 66162178 967366397 262039132 489007419 879968392 897285916 967608583 881309335 607067614 549459753 853346099 231165826 823273339 642122782 682576235 888047757 924583467 552995733 758935679 648907385 151719409 754865293 983079903 919758046 686114097 234735809 817827874 888017161 903362169 925206518 179282063 518748112 205504224 840635234 764288239 398371696 884385604 350511419 944069047 889244069 812467067 815274883 137800763 20463667 629603283 80995259 60732280 818315715 904361391 143695350 138356292 569194746 792916494 586513335 323235885 373647393 179893022 320057680 838279080 74813915 947953449 319264773 807238209 299739873 876632601 396216457 280066045 963099750 931578986 992101583 936490950 415135510 599057834 542038410 153568019 121528725 987687432 946461346 248952243 467708041 560531075 903827493 311222470 444292770 657215380 763863750 550740289 810848013 938708958 259938705 838117507 354827082 431039869 428426976 687751898 778458705 998711083 467840366 204942878 420952262 247405743 812568579 972131403 553868563 836991427 951992707 767869716 755509117 709883871 899259172 854308013 171899547 597038734 810641013 282184186 260747110 684084861 978561300 761336857 808039835 273132272 995846559 802436383 242625745 255426004 841500606 831814158 878134949 126110278 783933030 613713142 422302370 606340715 967582559 123483463 617202328 820064048 265956472 128452062 761944549 774621282 529152777 491259 996404549 624189517 797128463 587655982 881268375 208032436 235990524 863397144 928610916 812702271 863133451 213148805 118749646 920139812 935944515 843327836 455014658 691463241 700096509 937978076 963318636 702641156 969552536 141659578 769470777 22051161 743240727 596194427 769969691 951492042 476291907 282069012 434457771 451003677 763194124 739332867 488590958 649665590 983069904 586774934 973073573 440563587 944611293 794611936 841581025 891274239 927700244 265973466 993360604 564874834 719450013 694841198 906217853 819224326 779684848 728483112 338729062 767030841 758970263 778401322 579251911 66921119 819232427 90930725 923549886 745598433 857640963 899497309 730332343 743098173 740613325 554514794 292718346 891736643 785072940 968479781 947965125 982044375 988430178 102711130 900168387 832157145 323633491 370093495 905489871 671082719 821549433 929756318 954488741 452463902 914751843 820172161 963441552 573149547 180658437 606960936 722142208 957238193 824867112 759049695 978403962 725103807 985119263 887406927 488606657 901504824 767028014 626327413 932239547 965742686 810208219 336707836 999347646 796171833 872849657 790441546 534805686 290339945 850948082 892518883 762231961 611488596 846083340 262453586 785407853 84048301 240814693 308197576 740271884 423789511 133296498 858900953 840880006 916637889 801158154 887953778 836634990 459926003 925624584 867531097 80706725 366896627 851232240 169799815 269750345 751243987 838695751 789460770 142612214 378410166 937823555 934304720 886324735 671231900 337741296 462539656 770097819 430690090 937548197 27859657 906648039 327830916 720938455 144513017 912378644 970598756 686414572 902155765 773470936 980262413 744947015 990739021 442876701 995373791 820562152 964829514 629059180 827594557 871549133 928095637 990555504 849408337 283064921 803678506 970464550 886030793 946883567 28891002 781339843 797783207 986528853 679513148 797545287 323303418 811989453 188171335 681309510 954867508 840579410 617313779 326609679 118628707 264992928 860012524 118656211 191623247 809259519 878120682 507182384 812145430 469076358 932126831 863221972 700701701 896240438 459995863 738779329 832052697 928044416 755173497 886765604 41964818 963098459 435111175 274245929 762869366 648401630 343003220 162923221 208687928 911662505 451700669 931613889 466522485 767461488 945667045 795998798 119554580 933766874 695474304 394808698 986856764 291254392 959258724 954307796 774507143 753220061 570262383 164364911 806000841 288667198 981761252 919618398 967233705 807884726 742155362 426140557 937987382 944141620 789509633 941701758 993531633 342888327 918740470 604223253 928846302 298549702 959650751 440380916 754405403 866188208 879040319 572441271 966359954 426500095 583434221 748962247 725027967 902722636 944431662 829783036 931587754 893505549 988621755 242382806 372926628 909180488 234285546 737020247 742136056 979895905 12857418 726068081 793407249 896824183 13694557 720677808 809458260 540715633 862965617 407336335 472460237 701489703 53874040 684106567 113239574 222841836 592066365 851638765 767922796 869168913 459489483 49966871 151659821 858980578 917834727 20153275 964027203 420976525 199625001 299027800 705900998 503760894 303995212 477644439 307117596 504817076 848020614 110360794 965365660 499559263 205452100 629689597 612650260 284177524 941278488 841628680 2585245 893264140 420116558 306311941 653834023 949994713 900334883 954625719 750455839 453723268 849996364 935777056 780437444 174412428 699967506 164456700 642612128 958198151 861865492 779626734 853000393 72367245 790338999 759362075 29413843 266372533 825156817 496847719 602988335 789765983 595142053 995211307 7997482 958071053 995032487 163498583 984638141 454183750 325072805 8160049 901802694 964043567 818156367 431688870 613604845 757588541 285213088 326191098 571261198 101092710 515730058 619438639 211926124 785438675 919657577 875155674 809371315 828089166 424970620 790255728 636229136 977806905 162273405 345543519 663075279 920648564 872609986 808006943 304244142 358797255 658868738 701780089 653612370 899505652 713595332 93416025 959394367 983447938 467015829 662384647 311886788 770654261 866593902 37167871 239576386 641776092 350272375 288406679 925662551 918063150 782909407 979902396 741886505 887878676 873978212 904054775 570974132 495308907 172687128 14523456 978999578 90090562 905609391 11389777 497883845 795572973 70821044 229706289 679506288 945946535 231332494 458850608 227588761 811258156 755170114 940786942 88709310 854166136 429120077 749318724 385756527 737579327 251711667 984032436 425074172 980599749 857204526 639093234 321729638 409080474 333506274 806311369 804156542 750077207 469631520 894508287 561832090 30813440 975008609 187399550 916024171 868773995 956418533 461363972 806843027 807756716 191080484 397984094 997940365 535503239 337248820 968241351 784561279 746984148 856662247 319786982 76150642 575614477 117825349 287620155 981831930 903029193 977888230 852638742 606437488 806340316 485678837 224468528 970445617 2460820 779872653 725881363 933636044 200052919 135714382 494164885 328756574 758559804 111353194 607369227 346902757 919187432 833025488 427084779 989714093 993998798 832712302 494607333 979316624 719488742 537558649 939087882 412517399 231504169 908698278 698332090 828122743 194999031 744615066 567469414 64945855 279843492 553231408 662527857 143801394 851417968 361968259 899636526 810851179 841562927 7656666 928593918 875362720 890906885 871232515 887087251 941411504 264919234 906178145 979303749 966668239 289046472 228620625 447312276 898919649 122469408 418581849 961058073 581857305 151959188 325057526 749325902 549439378 932144451 870871038 709766016 453427351 444491222 145837521 985135968 528010576 417088416 608649493 35140995 824260120 68905411 882158863 399411701 952916779 997655684 332054430 157546208 480090759 805750254 708538476 904937091 758519886 861436405 872089095 679073449 926777763 969850549 871204999 214922472 845120135 95314267 998954252 757912862 368318926 993054562 843121622 848055333 929687236 863134322 925087453 865532052 934965351 235794767 308497070 770010615 793531699 847199366 248675447 925400592 797922869 814751601 778440494 756883152 588470584 794027582 899769546 778740999 837369470 225265812 436016040 983757714 858064604 322346038 624927563 913811249 504387870 914353895 642129247 927573891 822359252 499996441 507573832 352119433 764593894 615774092 721963807 964676224 972898723 209771922 995893064 320767303 133966858 274519544 118800112 700771327 254801554 368342283 759116889 946208731 90477203 704862329 466053470 531184547 466449409 55543813 411283145 733685101 425916233 886721828 821664388 470165216 687044032 984027875 897510646 792378395 768842508 337113977 801583351 355736640 797905052 103996733 914087022 255619757 895905477 620512160 452839078 749591303 31475694 627918810 383550798 991599397 957375140 341123748 716431949 954010717 884494145 603186770 118590079 792537810 852237095 319882238 287042014 314943472 456221683 318502924 642181871 914227994 512742918 976357938 945134218 857802558 823198193 780835172 808443571 789263675 868796227 178201649 737078157 878910899 801077714 936956201 630760646 304396848 162038524 953939561 121250251 197616514 74764336 650977149 405696063 767266254 979721743 842480540 615938265 529064910 457668687 543387044 860286566 718424876 854206239 743258479 866668293 989807294 138193753 659401035 480130136 632907621 229395073 918950913 400724313 9824996 8110497 928803705 68594469 983023910 944879763 571865142 999934960 864708989 457889183 894754840 737020247 403203072 867440861 395762293 975809543 846479680 415001967 854952384 557445853 466013524 576630142 131636238 753287513 319070384 902965473 841843610 416815244 914277679 323875299 355628785 993516613 457848458 934420900 25719378 153227386 39749095 859168659 52161032 816818523 711334394 591919356 590672991 866559932 954336360 742879441 985192178 339595103 843965785 831320321 828169794 782234933 986664911 994522958 577938276 723998746 874693469 960104863 867461238 748401749 591682221 699909396 830527233 848251529 223002784 468902318 972817099 562114893 829057916 220166514 749220777 813936718 955745240 240186525 975549905 881856878 956635280 472340743 6161412 178926120 938979651 336950313 993703938 744962820 928352776 655369588 788606956 642357370 908297165 11238459 86821338 197238910 282669938 759681504 907272211 179344579 983869060 209314390 80664521 875591880 640337242 371695166 769540659 866987881 827172290 308566620 149839112 565575762 174185494 966685859 160693073 713747062 830539460 888456669 667813489 873356233 232676703 784139806 95949423 806950200 492095889 703743916 756250136 186340112 235068500 220474206 414367390 665670141 989210952 889849977 941407570 750493275 771583010 852653672 846983910 675596574 366191576 883816065 986949478 877999219 700738512 860444368 853257017 669035426 961400999 286677859 989157712 599388966 893028502 402562246 337236438 488743470 633595866 819194011 934069681 611241338 958206044 77102748 888446945 804478571 247991551 273970018 976195120 887786723 897348996 757136088 690594673 821444173 9261529 607662229 859363497 498084407 628928541 793831160 461877809 995706749 884748506 107963750 425669963 610798776 546208844 754179548 577476830 868453690 741164191 727127595 760352078 908935864 823860112 679297827 428303009 701238525 849451968 976215655 795556832 893940678 816542752 43187008 704747213 889671181 322187850 937301389 977027620 756886367 473708688 652904010 333057628 788733490 254563986 932386316 535673624 968591986 871713427 505884428 875591391 861604833 877756804 497374122 262525487 273008396 287935664 968286390 236280956 772493842 208444742 789205822 931137785 185139386 837954742 811481367 809195782 850362492 10051013 952905105 199512866 933576472 929130377 901171617 230051736 918322142 162261935 770643671 866119844 592261464 898360851 869504438 852255113 814693036 948076284 929156445 282107094 531342596 263464524 920155351 468255518 154422649 938743837 849098315 843367690 99872780 484899858 840206765 944328146 959121549 734287812 942834647 558274740 150706897 497025847 871909134 443171544 505306609 923652591 694435630 981015793 882858499 336073167 737518338 13373988 978760629 998369730 865998989 799597743 165540465 905287331 980786844 4365927 903191228 781269387 804258124 11608976 231574436 606198501 259683678 863964571 516467407 621589437 518739144 621858289 754018047 842603732 426492415 13173394 67854793 834404779 52640080 807901768 350673548 27658104 773988527 980090956 829694241 912525826 705647383 229909069 993776519 393075468 518925875 214454706 399583239 379266078 185761982 737025693 906762911 590909016 807091297 773082998 754402868 825661627 740006937 774499577 564484658 835703282 373052516 309803834 283038480 996168215 670382126 334007323 969755573 63106131 960979211 888640783 905538960 912130071 432703786 875231999 585778271 827052724 970647329 365624581 198500215 219920690 190685320 981003026 270378831 281585355 456191913 94579384 181734958 892080404 120340250 824224684 992482931 939243823 934490469 98650843 644988166 275177042 494550796 864753991 949987515 248244896 114757993 240218270 819846427 861039434 372438757 800885464 969762131 785569581 177128963 878189487 814816518 955138720 610560215 790615597 922264915 703720387 143836508 582925663 891502907 146620996 136096849 623754064 740324245 933901360 500338316 608304606 774186996 863524183 612081005 431225472 773320683 864069622 635307691 687401639 742731178 960405222 824269602 704092681 168267232 936996625 171768563 323570234 763497862 348562291 676832941 387336489 629240990 369290866 848165005 872551158 530728887 593239968 842526611 563827543 746560217 742864092 755252934 755577839 556920431 213751786 803134484 822635327 773012674 385210635 947230411 998368895 979792426 37650022 37026217 541026871 954060148 415495649 970286741 822044405 837347451 416253034 397438104 482650952 491002211 833468609 847800124 828274520 273603363 43183080 62900420 782108469 951399992 959794580 773307010 457330331 702332746 514265264 753516566 996267540 535627613 630732329 351112618 799478116 959746357 583325712 775612657 508524035 930005267 847594335 626758858 900954479 1621735 751611291 316390073 143364753 881969826 201179755 918387260 441757031 701556024 953013699 345581294 551479610 553746503 963752999 673160250 906271793 877923961 858521302 813103203 738744440 481066464 429637362 926086397 895237796 590942871 974272086 497899091 966581666 862245226 958907541 580276171 681108195 4830712 690404665 821318377 819816870 665588105 875897016 846498342 863417359 156352288 795325032 626162664 941476080 105029018 793225041 447606740 492070966 534736314 953564562 740143640 624946856 828615303 922961320 195644868 238430079 43514286 274374743 984812272 738050697 669079939 778050430 178888642 68460091 360549943 921219681 998399841 67494659 178066806 149513469 438991534 872644375 887368900 542484545 327607655 346710772 163378817 165296632 384792098 815579913 99708088 569189600 421258098 941753120 928439022 984002307 954110623 806988492 437252148 302201342 758216050 879153424 286807567 854794610 780258716 799527743 856411531 562329248 362534781 930692962 834576617 699343744 926422466 806493976 278011471 763870492 167861690 882537212 234798234 266148718 735756846 305027794 841699020 879532552 928684085 954863460 792750402 575756416 509564150 247425273 391530560 635378658 879041279 762409973 171745707 676675653 930151765 124041602 542726815 18844853 179678605 876210213 961379392 776407618 273166864 500159724 843816680 745105465 294543442 157660044 37163608 843494681 993502733 916199712 621863277 815416422 585539640 372930009 52751406 255182646 929753209 795481048 803154671 877383929 623114227 778622486 713596692 761810110 564162982 922797704 987287663 9667227 263030609 778919157 845233470 136473000 877978745 232574195 781632447 743898783 148160918 747447215 687718282 572639886 919688083 709226553 12359702 23978445 938149404 961893013 781679480 13476373 987526302 89950081 519021051 347749418 795884245 805335095 29855817 569422710 642041659 947169207 758843050 701546657 188873075 976871406 761234728 847229901 211517008 951744132 345112013 414293037 795455957 756443760 908445118 468744938 402920254 765252047 762076874 806196310 831410097 864091311 91033851 605616200 197147380 309448167 831595627 853417858 744867349 448245972 485060733 786573418 844422716 855689847 148734778 905594222 914106983 25082667 785378834 522365908 258888159 10386886 571199796 997451979 992053495 719580151 859082350 720660232 853506646 240177475 668855550 322414368 988205856 238573475 788198246 931820430 530171700 900957882 206174797 92350538 396638768 43753033 793780994 922701858 623305991 43527261 136334645 853272139 845267805 737020247 763843829 146180162 942059219 844598543 925613417 68081391 871634494 286697638 132927861 952628024 805641919 841832264 887127709 84708285 569423515 247261721 838107047 811869936 185531462 784980982 33914459 973845430 956969070 426012193 288130490 733081793 318662735 794504575 768484470 844253546 328211608 459800438 946286585 753412358 767281994 596064660 835673834 170490337 201851645 767073848 911138023 763922826 609182860 149919947 486006884 846622032 651655883 26658009 3205635 172604907 995851381 275640158 774848205 424226130 390301452 235614987 66473021 798406645 648269537 635260757 761672644 216762703 801010734 539207778 535026190 452930036 833308343 228333127 140585221 678736533 998110324 177333321 36681990 861368553 973226033 174236395 817373286 980017459 193616599 763562754 939481389 786147919 853944442 774261881 753776390 939789573 859652085 407957210 77611687 561548632 4598400 191529902 994213444 909990428 754570033 951967477 16827748 796728383 772008163 898199654 818920738 894446101 860871474 352675437 724103082 833570090 819769145 845031010 959412289 836836028 496524355 695157303 967664100 949332679 688772456 749664058 740866386 957666678 638371248 165768629 441593897 249654298 903032648 916517955 225234864 935576034 275603898 467821247 997507889 776942088 767709467 803985514 818405386 858295782 828133269 741288790 399994929 906984915 632542385 240258904 872299832 882969983 896212744 968835418 889630012 763005954 432378098 27184178 363414175 751316409 537605838 967858454 169910724 385762737 980985951 853968886 937294356 737020247 914278806 813343602 996172646 982954438 152112088 197842925 334778998 299880108 101366589 655935208 967681456 643168386 63415800 567385621 994072953 397692916 947295137 919911575 828308456 885821140 23371117 186020877 57985966 349708317 623609970 2620790 737020247 761536167 831587309 865787700 930545853 174421866 425086287 814048191 480123091 622061486 753052941 141399078 838866575 892927567 239583077 747620562 565506302 199303565 392705156 84746596 272193040 905572769 106493497 80903100 706035548 977065140 881104342 796738151 832153706 772515128 502637514 231147985 421225672 799251986 20369302 60730240 281185468 902283023 410945141 782640077 114228349 891717904 294474973 211792193 81118330 281494275 786815871 778204043 973709050 697862621 394480479 875397488 990147665 461520065 934971829 892012131 859734309 727080086 828241313 745894328 721015894 765403986 444908774 247069235 911484001 391189753 960613369 826627358 474334546 331983065 753283819 826207828 326637212 774275746 447787783 958819577 316742186 376075876 52507604 418477839 887023061 775762970 378724585 416478610 484322952 752300409 325430563 571662656 654535011 893195006 740535677 336429709 259178814 492209490 541232009 742827231 851274954 756500931 885537738 564632560 838411059 865244213 977359414 975236726 67871892 658692887 875122659 881185375 237658579 150577984 532159428 985481963 829592746 739411529 744795577 838871542 846835893 813391792 440084676 945642078 372994667 824879626 814331859 397577749 776638607 828521586 294393594 905051469 409589408 749101078 668625726 844215992 828509851 229615839 162437557 894845157 45971848 518557230 778643094 125657308 825340636 375760884 883120109 165336130 105295081 807088481 284182757 577183926 873336122 270340945 387613436 905791680 148413477 981822518 745406457 723752891 716467425 822919965 898822187 765634543 756183155 357223336 927578701 143845026 889507220 828848719 816886694 21823708 161219011 904917528 859313080 969217183 262124483 220541564 247936791 867296739 386723252 779412487 206125321 848033725 351950007 79355469 986655882 792271449 671723802 548436149 565618379 156016739 754679439 877936970 256467390 788381151 612205918 782847050 774961182 74224342 45213474 927804983 776123499 674788693 725787126 974581154 662935917 431056123 832362980 875823344 974555450 799631230 926257063 565670368 47738381 825302206 369824008 777971488 850658244 638290421 352542620 972708690 821751360 935473984 135216771 748184394 972906615 763985584 955993869 879574798 851257910 923989873 904167690 883116071 652161407 352839167 996606557 856979960 431963743 169254273 793645149 907648470 967983206 864282084 771475392 369764588 938623841 116373346 97265018 111835374 874855286 544921987 209227945 912110227 826135396 808772047 959566851 630597325 722862572 805243948 94291619 358011338 813029917 979748773 533274429 833586637 750583545 776622908 936454197 114456665 546972554 929106593 395933598 112420401 498871837 187863991 933141565 521841898 854824419 548796471 779336156 84335644 734470587 383332751 959180392 776034564 530029590 777200807 519689841 143966171 219945589 384349999 987763753 912814999 416892293 918400001 775787192 736458551 805855893 844310494 719613619 917394154 903019530 803088791 918201648 285657819 856010324 754655040 78914646 809533073 266842259 376170756 784131271 591286808 586484555 446277585 526345212 858870514 823530385 626207213 194058178 993995792 866051768 940797800 539216093 585545213 762957340 738230063 416164704 960553843 450250966 321772073 787250258 842565665 961948195 799102963 944043830 861772703 734520964 965045400 82168186 574361255 257534922 652140123 865021637 65441806 103002695 599185734 850530917 294795746 737020247 837653354 104057401 62755252 976506948 808364149 429580309 760547374 760838204 776140081 782659402 345388446 494927240 876498981 765734034 835367894 759924372 266860342 770923479 941681159 819212405 607644867 786836615 176350420 767178272 817968527 666457150 754085069 209531598 758236253 234178676 959090765 425443299 833122525 765391437 87186225 5901047 846638481 432083281 975159809 747159717 518177714 468305969 861624474 366348320 631005436 383865508 969781902 947708698 921705000 823307720 476273524 961074141 877808868 574430499 191452230 674045019 617144231 487614535 121287332 951274925 87432219 858852562 883089010 828168958 856173832 994479057 892643164 42147258 886843785 968183106 786726008 793237749 767930589 861777079 915467350 236329875 983302486 908684197 875420186 746426619 962718480 410052243 932613829 499562136 783108926 20131056 839019803 238969146 837719549 939942300 855767042 432535010 53280037 574391571 939827849 646228148 169682811 641283694 540187695 782370526 874904990 889964916 923845874 714317374 808713504 938214109 873143512 870100289 245282639 910288255 613109962 949600437 918097997 738495154 991368961 247682331 897352946 87180092 941488074 797446866 833096423 766109022 889703680 962480105 989094649 535825991 312776408 560936788 552720444 416504633 830891899 769430165 935452693 966820312 655140647 581808673 6066155 909827026 544600903 464314698 871635638 610657318 101043509 351681147 387820502 638618006 862005875 123991835 819969396 646453830 991723858 269618393 774235561 579608704 759840015 89737696 849145580 914249361 988292475 964822373 988648516 939957233 885890986 75953211 972008766 972902699 726363647 689954433 819258938 835616620 951896773 741881049 963693376 746422025 397928794 888886593 611379567 919024059 788681009 785019795 347544143 798323346 834316326 872285445 95463301 990186271 416983736 484819466 620987099 743439010 287643676 345508671 272759022 561029789 551452798 892943928 279910843 118975078 666315108 811826351 893830658 450332933 453546166 206215715 936068213 939593801 704918841 969366468 497780943 890052003 492626563 855272134 511372833 231135296 178893311 798350843 893940246 906219651 410205667 221247163 926022513 754792679 904337976 391553861 911399810 826060597 818100872 990597932 905218308 690902311 124619504 157887635 882346076 749324706 855633637 799662588 770543051 982657538 223376380 677914069 850922506 413104700 279307021 787567001 802765020 402946179 717794157 100581002 928324018 799988308 747563789 912273724 994000571 610478538 786351772 988674912 957583458 571766926 910020619 171887647 968159964 826221218 377928580 779844238 932271830 733524033 920283662 880024556 817397661 609838861 704945239 344934106 848184882 888732546 247942316 537759734 938992905 456441164 57102904 623027468 436343276 776085159 834866916 157426252 357147603 785437917 990974605 20850770 800449516 82446347 777226902 821526005 998908362 869912326 907155165 492404032 724439595 18929029 813509169 768587044 862147000 750820969 897712589 977517662 240905257 923170370 904711562 699746380 898967313 647456973 767505909 652596859 434135781 324665254 625841610 583783231 866736302 908347011 990216881 603018536 901482806 259962984 863315540 824614100 815478305 959464916 957069834 293947872 915835351 783501166 973734866 857462305 810094710 805532884 751837428 331189876 746939186 430990180 643401210 41771829 537083906 739687250 565074026 91992838 340285299 889604041 274994424 801442319 785947393 641211650 928613744 899381966 875618918 235015354 857726750 176628352 447966844 344904682 654048118 374082503 78603787 280644069 397857162 945782308 766231662 86018883 485106561 970995578 57535070 957419684 805587504 359614837 388177939 215703576 871131300 775814311 997628054 206450609 757228868 796365370 16028418 508108107 748833487 903142024 167364417 774493254 789700354 845478294 662020181 428325067 931407937 939290321 839320000 497972474 188467243 545182298 874743018 989673938 538978203 916734162 595059260 699599857 879765399 971651034 860200092 884264767 809672462 582668216 678221041 577991364 990760231 744460726 736691932 849688962 218438196 876305096 159190554 765675922 869296881 930383247 922318041 765195272 850685792 833837738 948323877 164733550 378934574 791887631 42329917 767271976 876310152 848421762 964125829 302116495 162528736 843751037 928390096 937325703 900608496 714852904 483359875 487251089 589385256 372824309 920601564 433497493 125538284 890495626 737020247 487888990 588726472 975126604 727997665 389092190 483490465 899744238 807262907 381707922 942984079 555519632 151596199 487512345 166190390 288906870 868920107 125986165 810058341 406820509 871426253 964682150 914023162 947203424 190546827 431682427 382714651 745305248 960089458 861264625 855313760 896493447 643242857 436271131 229475423 226578410 170222478 978293782 282564973 742117203 588848755 741574794 530339251 671926122 925617695 968896152 487417454 305547115 995972154 433972975 278115148 849579668 772701042 798862827 765080645 148497974 812598727 908465453 241624750 853547351 592011333 860502869 815783134 52913102 312604746 872006151 684476047 247989496 750555108 968712744 817083743 628264874 593230703 685987658 974900822 405593101 122577821 869213450 744622562 527553088 148740273 922937624 314288739 249733772 705899045 157734315 76345163 876330225 889678506 524909888 451397468 606382620 672961833 846460243 450437393 892014891 508221342 788375263 355677998 781423123 949372376 134358281 993842070 525571690 785494632 242606964 538896223 860678059 666983014 476673949 241090624 466498150 78374415 146387061 483109130 103221592 166696464 747850907 196631300 889036233 466492426 895663300 455816872 306659846 913965381 4833302 579362255 769643578 916741167 149340169 980924475 796215441 838947132 50151631 195676248 862734915 979460714 562608560 259736737 779635664 999120977 931732365 324604904 968281844 863500853 389663611 308558120 244363513 725486655 787876966 461952347 147390652 94487916 181752005 211604828 913744534 159126124 329577971 269275795 841355525 863953222 455142748 827512008 25751648 771194366 760894611 737287676 950639952 764413315 533329082 977549977 966917240 783582198 979289492 789486494 833682021 942055570 856642102 302685216 158855544 435897157 195171294 755116788 924104778 987621044 829884635 919090840 355192748 894578468 38249874 345623769 191510461 630233332 507924602 483455291 378296383 91425709 761687718 829407950 858852572 995192664 401475666 268928820 150284416 765654460 750661621 804848731 690113845 80114536 789612776 877430082 992226429 841246836 243433582 268655758 139082519 557241526 868883433 986461732 757845339 544321923 829422307 818150363 920159415 914031900 960818566 517507758 938362688 255488366 774916680 803922447 824010745 342690741 970341122 418868325 848524077 935720671 722890440 88359341 223098535 608309410 401977507 684757496 766611840 113515214 902584181 15684601 884410481 72594190 744865638 929437170 172464775 766816441 115424658 638737912 347333986 411306127 580820348 467116031 664767765 803002578 198738060 897385202 718601262 107417433 747738532 564038474 325759775 895397584 566775382 959118637 801465044 784829202 637725842 368660339 794610732 983066619 234041416 828808681 864954046 941121832 135744071 693994909 794040806 363787119 720968151 852632834 726446525 744392372 594867433 574785846 612717358 883977355 53625620 981539107 550700158 381402659 574029204 765446234 993404664 916592683 375645603 503727867 648819020 948429907 853603183 864867988 977774061 888415617 853864911 295233609 508134693 126545210 975842069 939246677 797629814 842776825 663675503 853915207 824655387 726837810 38353458 466013996 549322373 844326084 996375578 757174484 368164547 922139368 865399876 992052346 58719754 634498361 294437697 930598711 118458358 333147865 581231942 221158316 738241929 835106544 523175219 319046178 776634473 582430018 936247336 476621305 954900369 114109770 801214683 761667205 596391918 616371493 703814978 917655032 792613537 362159668 976093622 976791548 796320028 719860740 377830574 712408010 652192366 618151847 924391544 994860096 409532203 233287967 839837921 938077663 817104198 730964372 784886492 79003490 677282261 365531409 412043132 952840261 174118798 861071711 583856903 916152038 604347985 939904979 15723275 748518719 103969227 797530789 944650263 76529050 893209368 837395757 356134728 756360985 998770241 767962980 258259117 312846423 929375844 856064673 191158406 559068433 793758873 985871585 899633944 694565181 886112634 88144611 897087939 422964720 882472231 156284207 586457950 975002062 38585445 958960084 207925370 909080960 622789652 957547783 803339318 742588430 180508064 299021929 446544364 607934117 953025296 991307490 133421852 811417086 827845901 381570264 936849670 881507928 435908003 842107895 971317265 195167918 741691952 754904871 344806121 373472558 762921787 817451194 247735475 124241530 992459862 538518794 667156834 832884570 515581541 796682053 169246295 257946443 335411317 375311046 911809378 884337394 555635963 865077389 811550531 17329699 923469628 736716640 743791164 903542724 950712773 680926223 704051521 155983648 412714660 912376740 798978146 694477615 754298097 342898230 718386701 218825861 306421834 373276629 760218310 543556505 793338412 574795619 876343682 673065264 798609600 409725720 738081383 796554557 562477218 903681013 947896408 814411245 915149847 801481253 197259755 871301647 828770241 793885904 995215578 423501483 9475690 218019391 792321913 995024548 13933970 666546402 903139945 975620136 356975865 758308007 500684302 855641048 334404888 292910474 455550799 938098621 954774741 553847375 949879752 120646344 285989839 889170967 444835562 920650929 787237661 581968599 769839667 889871389 782049092 621512187 580958304 902767921 224617977 506434848 937616027 31730201 815622692 756277496 948463184 846796003 898301605 607365956 917753469 288279075 660759901 929382145 685554835 164407422 928039050 854650391 117855719 923046707 303475357 626468310 97593722 830357835 923305725 908466332 966011628 274851138 928248704 810437750 841723870 11868589 692202120 597468738 847192587 865274030 786352724 7268284 768923394 899563838 592342763 927837409 220940335 119786763 29899715 476767985 789516339 938417040 980385585 358786253 72841816 987003829 32634954 865542611 369037878 536708848 999123349 895958441 920557358 913130404 793203440 887931272 301461925 658976559 939129228 918682133 527609999 922528021 488624281 507064384 933950536 886633550 977140020 950744272 32703474 680403478 974015071 983464184 550552500 191259378 379867525 845059585 944631333 155969399 752603978 697555739 239150072 467088309 961159305 844873356 737020247 221745767 963638781 926707922 781176276 875940215 635163521 197577408 529095556 790824804 215855962 797822690 871881111 61734115 336589403 945279013 846413517 856184284 699529644 706682539 302337808 228724651 755131477 913272471 829065126 981169226 754952355 947564169 882760890 266294795 943051221 842135551 737468548 869258652 831687226 86777506 998729925 740228815 745050584 987093137 128014849 586511956 912572626 804989520 747622690 839061512 877858224 786710521 749438914 610588066 931442824 981635778 86978789 868250346 881299391 153778976 854827336 250113115 923748352 470467077 629748553 216799065 770607916 31081082 317410721 807044783 712130731 870757799 931707551 345466841 90507354 786022204 286499183 799394561 957274520 147940805 926839597 685503262 518089582 798207196 202667777 486805342 365927959 128920056 834299183 150617288 889845947 229738501 609155379 725464390 748401647 859454988 802537498 96315480 859631360 911553944 208367014 747009813 950456049 276089218 295162723 368540840 737014834 645919653 919092702 142970115 165593784 847709874 732391347 611819716 224324422 984137225 134399343 989012395 781011622 122404357 346094124 20725140 343979530 934519491 113135387 777581006 252845872 173684635 656109713 141689262 743187356 783828003 189385928 942258458 790236977 717105742 225320068 741020916 744704949 991548258 745293819 816123435 790462120 591754699 347755629 970220503 28093348 675187672 864007778 360792433 589660826 896818460 981640799 782651240 442633284 296103100 20281127 365787772 939006877 786647008 942862737 316572321 960544622 948216071 748468177 861788579 489759881 849412706 492959856 848106042 238323856 890437318 847599643 429926600 976315553 290412652 760613056 936822649 671271978 333197449 558382555 399729259 964970737 309034866 861393523 41973613 817905368 972076204 57396373 802486680 188834012 265629531 36408681 684380397 827562656 762330168 972229953 442001448 670032286 346706661 716634665 971776012 992011584 446104386 808412685 811135131 97267964 275897210 848655897 898035516 80934571 65951217 774676976 228720969 79425371 895177136 952752682 327698344 433577727 502921550 739946660 978907187 862244971 418241546 432583679 995062060 610078914 856636162 357521886 755292192 604824763 301194880 611495876 880030693 534054982 106489900 814841238 899232337 881466271 517455263 629312460 774936544 134918744 890402294 913087838 483019050 747049219 300127999 935619923 788353587 902823966 562358735 857883825 421041899 815041769 327716866 118200990 194445500 660284010 982054371 876161981 920775392 463142435 744578064 389839774 667879950 971892311 743154479 260783185 323917590 384624107 875880090 736540684 768332898 257019505 819305292 706642607 810907949 851192610 856018792 799240876 834234943 745562480 694915041 410206533 959835861 935530425 827894511 488795169 179578964 953934715 46600345 687160713 354157699 786145607 918376027 486305340 557905400 412063886 813209596 852467827 962064258 864102016 152317888 7651614 597992814 741242087 573388371 905832052 419605480 694944100 771424779 861035736 504899879 652546180 291686558 910068808 675766459 740236874 745087541 935256638 855431186 863862444 572438682 506110135 688776080 726055711 975187032 907461676 854698232 902627943 840839737 907592743 836407305 348196704 387116926 543446085 476849314 855305899 883150313 612543549 953548711 613909046 952037060 451288790 817309152 861137062 748470491 739754962 294783552 811065436 797010459 421376332 678814466 831552685 929588004 794529821 784041102 967336085 609354336 56969956 562077536 766338052 224869860 952010382 660676162 983953022 624039617 55068911 503563643 199062820 803507544 877960508 930279352 559973812 899155276 700193174 367293232 25269658 810019385 260752321 751372276 895418381 372682053 122316945 956026025 990627536 412776704 754520702 385441256 502109560 123114964 755564835 578264976 357393327 443029197 568293032 729046588 936058930 956778316 186422817 139834530 866938013 610655869 147260721 954015111 839647996 813827500 854081651 834422334 781018361 330790195 616914623 335679565 923538129 382009847 890555658 593595530 395185319 83119213 297311962 861727185 991923233 468988136 700624113 797806699 756575176 856390007 519947683 369342507 755368031 670613112 917139928 616790195 904273450 935444966 961174586 886286706 972670553 787620336 295575585 389595890 906279502 515584941 999442819 843269002 273190865 161912093 331054992 754165213 102128603 851157650 213200580 596926007 897003634 897872438 990034372 245007645 402379574 981209621 427320559 63792196 516589369 914237348 332078774 926735304 266770294 793238018 741248764 914351094 873305156 894104982 791830515 271186223 106448340 748359305 832617489 496544552 628503720 914186176 718239874 934756970 130193845 887284460 562025674 654911115 191115944 762004485 262866534 525792788 108281808 999962393 821858260 39694584 457942897 752255026 796746002 138634105 412444834 823754445 723854370 758048832 130735777 738758862 582306161 710758519 653578157 536387708 585432280 60170813 741481122 774330866 747628613 934078740 902185619 253059791 896828120 975081504 896351202 773592860 447461846 863440071 923235428 946373082 579269842 882444858 844876888 847987263 714532701 904407183 740136487 769331046 742315540 612465073 623427577 739884640 362789175 890907895 848882343 230470689 823614558 217752091 114906496 824428710 619729219 798598509 942090228 748799626 929494238 672131336 750958699 874148965 227232583 22228834 400048219 485152833 342103138 966403376 997092418 613229831 973198960 983565469 608176892 840774371 805566228 142049804 950209323 825326624 386497174 988810429 751490346 944283939 636224094 168453939 144118690 409793756 241342316 430295099 146701605 600263156 52558959 751885772 890299203 47746083 496309477 925270614 965332937 937365052 802947147 449541214 150069847 892336714 375913432 439602984 517454191 229647508 830235287 952809902 784742946 906338854 998384522 339629290 580800796 557982913 372970758 795858997 946702047 935358296 886260390 229127275 478133118 388147226 933245307 899927270 738485263 492055078 143638229 359786790 40378043 991437499 569358679 126380205 281204037 843650738 85283241 182970065 198993410 896365019 474816801 974391140 44934697 956055587 244852655 704663184 511343465 606279376 850971975 676665255 946556225 647132421 835526629 967708114 776066186 436119202 849588636 860434633 823677241 975366953 165800257 907122738 28922709 580265494 780674328 927340714 865701926 324780154 856168308 773478986 499154865 259058465 964134051 333051623 15487480 296132626 812112155 740129468 963966191 911203846 654485577 994564980 512736708 782412501 847434843 671560879 99250625 18786922 326838369 331543902 996380002 842195657 850327335 797315754 727451316 192090366 533038413 519764755 458980739 917551099 884177448 480948747 474065912 133904360 802772203 937205284 696883977 496068505 882597774 433799276 975822489 214271469 922446734 790852212 371668600 561482005 788935008 235944757 114045264 680795908 714167600 279892853 860554697 795168128 885589677 789714831 919713538 163499639 785580233 671116677 829511729 287106755 889712111 467640270 272138676 497294513 849859391 954785184 388060219 234911168 911403867 788647400 868143554 745400080 103693831 184867613 998746469 881319398 196843272 549271645 917716848 855968411 170627676 844423084 950154708 808881322 992755779 810977857 970072035 886540452 956421921 119569575 866111074 962328844 760809073 491013918 808774692 846674386 279519087 177018230 874396066 800523542 362014121 501419441 956325748 805565191 938409040 869610066 760365339 57137127 125414456 849784619 797536099 789462891 231610997 661241031 984597506 49326033 358786025 937096242 592012285 789863500 859957201 766932473 950163119 622953098 465303855 892313286 59917737 332740976 943164517 793044289 892254634 912565682 896995183 986502247 914234195 269919648 295220994 847496417 877109134 278061674 809537905 834215020 563139667 162828421 317475709 879330411 157307401 830244259 866173388 164219217 895349643 832768965 67410085 916448482 950045058 459631394 53350324 108551096 877174915 812399039 477548467 984450063 319397449 989208206 265051828 890084349 79747609 766381464 41871595 932564851 799236957 730773357 678877010 887221294 413064921 485673989 274436611 566262763 657423231 169903266 568985238 126826418 776832166 434614907 885874738 807250095 766166359 376832466 586259830 609837102 992885566 551778907 846530875 80389737 314534009 709047197 811809568 756500938 829057200 426442977 658834321 910443083 930287715 193662438 228904265 213689083 804718255 584330672 821124871 243709007 876087136 646463531 949934334 572003517 256736672 818176184 616040713 984330596 402446769 290143902 811922787 109589036 381950533 884899129 842188388 724051939 924199248 221300950 568349255 93690706 74986347 666316925 749216073 679004124 826937901 777570729 661027483 923727261 536220037 937615736 504411915 650072400 458742807 997875438 880626486 827038974 107900232 355625318 137739814 144924526 913199494 880463176 899574284 876460911 462201815 369194020 628752575 851851547 737058297 869350669 826044804 55060664 608305785 937083488 630648218 852759304 885189291 509101814 776773223 812122312 557390648 901110636 885282743 590910260 737020247 924143420 962432303 438390071 875962055 849851513 783590515 932333680 984725314 904729648 895828722 453994498 370144452 473782792 898153926 629659689 627563073 817981857 830755094 269142763 737020247 141941851 425675562 917176460 902286575 939043573 221109271 671574380 29994908 819805314 3144533 842798137 706018333 180878883 457075562 810913440 597747292 846636800 737960179 382338393 897785588 341077970 411306722 737020247 215148438 388075629 585547647 521133673 810910792 835155541 306091944 592580789 898390060 632149250 418900862 472032493 889959261 641861284 866787721 737020247 841198882 151578315 461366563 665239877 757567632 598435675 935933831 120915213 903374040 605113024 220031220 124994136 931105308 744611822 234151161 98797768 581497851 740664094 939750180 157802787 726281160 269405113 600916973 853636714 641792434 768321898 801222004 809883858 852104926 897769644 976453996 950331471 426176322 65341393 176591037 28111961 752083300 824644808 360715443 929881974 739319526 743073967 144159214 579302684 200578124 764829636 243274908 280761608 674918885 837434261 836616041 723622023 876661278 979784431 562367602 648919443 799604065 847557642 681725142 784141177 715761627 323229879 943063118 793291620 172708154 7630797 12922042 901767093 879131510 272886551 11740722 133822067 251503116 738759988 933924689 806000075 652759532 945674396 969253370 788200904 741996513 849222251 235751044 990249639 781336375 824101797 997789044 324704063 792387007 249927424 980049646 123987125 266935566 695145520 879822960 304579880 641371896 21018531 288270190 759633379 610413480 752942878 524404243 331499447 813402855 963193825 998938349 793091270 915702671 984046982 830305723 963553491 379437331 835063032 111467766 572160213 175258713 893427201 995951332 737144611 832725886 930653516 853378008 801430031 235365713 991482200 970273060 770565100 461621505 895911382 881695527 801827098 693899149 788883609 816274320 281641592 485073037 366089709 575253904 955085595 475357443 332185559 840146858 392609646 206496313 187386206 917498715 760317991 981518951 784048991 89146350 762952208 861916405 962068997 123706269 771775453 533533207 440544216 834211664 923243265 486964059 595064976 953867650 895959515 905104109 804257806 837894707 781127539 944485695 881733896 208579595 714231037 371093625 815369711 926661251 328095390 231331729 51805977 725857112 114558564 918652907 863513013 186170875 814715528 994220989 925790257 994520813 696137007 913025772 746142898 911674221 788497742 997110932 911236155 756876120 559109216 78011378 17562970 139007707 12393413 328903544 876082076 988865480 119833045 390585872 781236774 859753868 991420336 127117578 762636234 783148463 546564235 529004790 450651259 869004253 737020247 24838455 821405767 897641100 961710281 815319794 496417290 364990859 150531425 456199224 812080871 977777987 413747697 700389772 124444518 441177235 70680407 394384709 977318079 271622492 992947708 881553272 555493445 932401093 589883623 975490776 602472088 805738021 883815898 251958069 846431050 57258355 454556063 659355038 404125023 868706352 631134291 914402449 869766944 952195618 285599383 809663265 1209778 141117794 424412456 813251490 615519586 761195715 888685137 744000607 974941124 751080219 804653028 977527472 977461464 41116799 208597267 186466082 810822478 874968563 963609287 587695576 245708915 434621154 973368394 743847709 846084110 870401298 861188288 62479343 937100718 737020247 856940273 449023108 105413354 845418834 783849476 802167161 19488540 263947703 161953552 769684640 53319577 530604928 771715076 474716312 530081753 434400597 437881421 232878531 811156120 826599992 489917068 837203742 91137353 177377285 409501993 959537320 134262400 916025227 683234881 868460307 864343063 909079379 832092516 756119929 138954734 748969480 780872802 879132165 954739011 544642220 569049034 955007865 996663031 686882475 914281822 91665519 370040599 318714451 869100142 288065282 502610472 797203463 680187404 930035728 537605680 489184896 958785432 848924600 826993711 349877313 961439296 902632693 385309050 385350487 569253630 307694100 318542807 977444412 868760887 859634722 399412251 424185213 770735737 477289864 637275110 656823184 164099073 754545468 805519257 199668314 767788670 821819070 132284011 807323011 159345989 953443684 385228040 362485484 884599983 985809704 652561177 930164878 986734937 724831783 589343947 281910165 873179784 475288372 952081374 744378734 99090511 164123829 564333904 819273035 338228501 573292788 148798033 737799968 103742454 994890334 805767795 92350505 274523740 493491970 657308125 826273499 480169335 433208642 722730958 765535750 947255168 997195048 855301133 153226546 868955888 297540625 812970845 940861782 931890702 963495773 782339930 753920448 483747953 778082543 212280712 342594504 739261750 632796808 914677751 809893643 405288048 776545753 741889023 596013076 677138968 808470389 565125087 644727897 561767143 459720728 862575888 903975865 943094748 824591267 273192245 827102038 319593899 750945036 899735222 194785230 843449827 224394354 392060235 43214004 992085381 757305426 949027992 468156606 669224455 378533522 874518905 588801854 755287816 873689477 691123476 855012324 810831430 56929256 871205639 985184154 685484524 894316286 522647467 457019383 771847252 556027002 444036483 936811364 948291603 306809131 855792194 962031339 782512664 411032996 968385319 103996516 786377975 820440201 453962522 302266917 946256316 613781637 262181382 611718884 303069343 673040959 852451091 155925378 803703059 781804512 924163586 746463219 102783565 180324285 886330179 754935428 918954704 983289582 738004855 811274471 779960263 797733160 897065745 502585958 929139207 344776063 842600611 776877947 396715381 610821492 967013981 491009621 833441820 136016648 630982517 157354668 757955531 117118744 810081286 656908446 811402657 530943019 746397635 626832486 255323813 833747371 737020247 928357808 703086214 570422399 550817208 99560313 815620059 745423976 739593768 313517947 437853657 24543745 132980765 121425367 349446748 775138458 697222050 134214881 220959107 398740713 556391260 744221955 381128583 829980796 613116094 343730686 226970413 804899869 258955794 836427212 882037805 852266815 231022156 743927752 435640744 978613033 210838462 422309667 725367188 1992895 26712137 836606804 940351371 864659052 464524061 251582767 853650925 809275410 843148537 769122503 910362587 557162143 784063040 509977121 342005414 467773572 78246326 591151662 471032991 644145431 795820547 60847562 590854492 850783441 839657294 764007354 992392970 673220351 617753678 380143423 996869299 764227946 789164471 792826157 167068601 75418657 932192397 756198733 931605458 979265349 787583576 896809998 899285642 752514394 833230058 284557736 741696509 393804116 433590244 576744199 614865480 704838348 634580733 534466044 425673144 211820956 355984134 114542984 370263976 458988420 8371338 879273686 924863090 878145502 778174138 996924602 385185208 523012682 831436501 668704706 755982840 739525727 908026067 826280512 860283157 737395037 808319369 158789922 892327157 243206403 961980258 832212600 842923152 595782964 940917134 178099166 750936906 245971670 284651260 918884328 460089497 251382817 957033263 499390622 456227227 823267331 274357155 873662119 866691779 948505736 856575388 92337374 743618930 933103275 867427241 487616752 776286353 648151082 782021169 296060330 376158099 853577737 788361217 530446033 950178548 629465118 942594185 888289910 982251424 843934553 796605261 520536688 823399118 823135640 184238354 721584987 875086647 801813994 227204479 183168050 999449075 193402615 925436148 849996894 820084944 875759677 466000785 909650989 10525208 976381971 435170732 240394890 852153541 600932494 331134087 233731073 869536121 888324435 737020247 186803058 789379665 264857278 85696826 106516927 253449859 991372634 750403588 524222521 672616582 448100132 3190795 570166689 219831870 51082801 760537937 837962222 849883238 726230081 943560897 544884887 726022956 24196742 24091186 947854661 871472464 45526167 9850966 99773407 801735495 899418672 555145333 97176185 828420202 349043316 869400356 220441025 193981257 787457696 128930181 142213290 483528383 817207508 167473550 402118428 785462771 142925039 913719082 968413590 496099555 207190698 771373579 996813763 683553750 915609160 739578308 172266479 753915747 418975023 841644093 679640797 729319862 998056825 856535846 705930805 479914426 277592082 822097585 994194096 997695 808428859 908428690 819934191 953165862 884823032 380708520 461459302 185321159 79960150 850566045 789323393 869097979 738321579 745542829 870957896 93633204 954336635 785762547 890096900 354443120 834473311 873872136 564735060 534508892 861495943 475367768 937867658 18723726 317788236 446253964 762368952 229560397 840394948 88622781 822426569 674612143 751987521 256530540 870779433 939250956 577241085 636880673 978782104 872407546 639104175 934296097 882550617 934616119 169710483 569763449 886355413 887702736 118186395 274835392 660796171 749012984 817425199 635277579 185594522 67805684 975312173 73558782 716620648 952178010 900956658 955163834 870644331 289124619 990459954 144603071 700283761 766643686 53820677 516186341 714529519 48524089 574346121 946417061 425060870 758507420 39357413 969364054 927013288 479775615 438210658 844661524 761599901 299283708 838229586 722607281 548631235 10699572 857818353 796665452 813697587 809734375 591015052 888654275 890825732 97167928 798512699 179480591 755797409 351581024 864238173 872848601 468612766 997105096 178771822 802123228 754724488 972065072 968913550 420775693 892527447 235299809 992412007 469427577 416914992 994558236 796484778 908423292 802099079 778721527 806474936 917154713 804641394 545096733 933098416 807178161 996981123 470181969 861492954 533072970 811790283 914033286 670156820 653280086 899568333 301601890 234020227 825442704 702388871 904757608 85759600 649161316 257317811 887113978 758223279 896810856 463910132 343193253 159107818 818754280 366058213 986975321 764137093 750718254 761617263 637791945 785881215 948231432 531793167 985097773 393978659 279723521 826135269 51653724 82505854 303635591 395801106 637360626 878007595 630098861 128022820 797796128 762420129 422271298 874290053 864685607 91196482 758038527 983929315 863271072 786016780 232191549 905416589 43572674 223527534 834063597 325112843 409838557 36091111 228743021 954300945 291023974 905636937 960242231 827895584 600227934 866111166 974313940 760059636 249433442 849571495 787161588 215519807 772184641 852214294 947167062 924091915 797215519 722055937 885843192 446878511 741397447 129985416 919377321 264360301 94283677 825503378 651087220 600244763 760493715 582915509 879807274 449278575 127269369 828724514 988804014 871737897 586843635 350239430 527150848 282609349 408257015 969681325 341212428 808843823 990623998 106785779 327728867 680362147 493781230 858921956 794648363 359866744 816436312 520217551 805690297 913520137 819518224 718727580 985934340 874056607 758969424 886161112 214804060 723745674 9713982 372797849 862283884 780423756 994054668 137403985 798441787 940890202 946767685 755397760 757232827 930656580 771956026 325768808 852108289 743020350 835864587 941708844 851859426 158708183 82412948 800484983 96632440 960996221 925539666 836649226 780714896 927355112 478280904 65769177 899891636 519374841 858798593 325623688 641214459 923914117 111344471 813275835 25760254 870508249 857152163 438616750 417968836 756606423 849819142 771146403 430323726 946789204 862978412 158078408 169235728 896498207 835163578 930174912 947234008 892870128 917555629 582973799 756147662 534367327 729104741 70064164 917217096 943202521 901028724 737020247 409205689 491622402 606169184 977686246 857173091 822548304 844555052 878006577 159793625 768169443 205668357 65131077 409348806 782787238 184844797 497303965 329879492 831685197 414128461 912586571 101632592 868062182 758731366 131242252 708639009 52357271 182178915 933560826 643035079 972686292 276533397 734184180 883130939 755853529 810573778 873807136 881797162 330480531 984231036 827788181 761492898 22823989 381652899 902681179 788836218 77952674 908319405 730865592 128208357 881938187 435281755 751004619 979492899 994252121 787444279 843341620 937279392 953604262 804631922 997697386 400825497 126736171 872996951 921546853 705173562 895182980 781511162 302455841 942565517 997474049 844824266 911364651 985790661 737020247 821834413 54066117 134601051 115142019 389172304 994883815 310993198 877324768 513720947 925020083 502866590 516472859 647805021 565281238 30765382 572487775 227544544 602996253 429543349 792250774 550180292 151954054 696395806 57024200 97405222 913506335 749268133 845544696 946321988 607738052 436396044 863992684 957183848 883024312 778004677 992969365 928687779 385885759 979285449 969138283 529839692 254829044 763343154 969260890 946149132 886139696 631597265 999756843 983228556 961144425 56064106 64651958 436069333 92578093 862933607 787551984 590651995 869273799 201382306 469468056 849537534 291953329 581130615 129006687 664751037 850237633 486718028 781895717 121778684 847356037 365116046 161341599 16253518 501416079 769721096 310691090 723795246 872000823 880358071 491637785 883783191 294623892 167475599 763275943 277035272 240241011 13229580 621725240 847193750 535958983 801492295 118224734 443204321 859732467 931445558 112000908 892231669 743045119 961698394 578800363 758951996 264406881 741141709 741196108 786133155 865231464 877286136 757982497 250347476 265302265 261535584 314496497 416729592 840889744 280353809 460578890 917862011 922125588 775242409 933667357 879763174 940918386 909673290 510106876 606745276 529067996 755035394 837811033 527178263 982634964 925578311 216766852 337884803 846706830 718970730 407317043 937483093 304483452 904369009 320071568 488898529 990470156 74335804 49611342 756093648 794714304 272156181 983683389 648373842 534614619 839581016 599022776 666436772 461283940 15515386 957303607 365801778 810480269 739890671 983080379 442238000 762380215 987290808 858444594 620891195 88590365 652886727 830711655 855009225 753229495 265166630 713948011 129637703 344868374 794211375 623787960 302306015 777954655 402675650 893935390 611801693 804762166 929697678 867099354 32996943 648931251 380996103 894893761 996202116 930415763 908640082 751474121 496166043 747544746 908428014 47564555 995648182 137551830 998008889 856718883 932500108 49236393 398773097 527355101 801674702 873865052 337634836 284416441 290696250 593478633 923331255 363390379 820604544 353272851 807263344 834099558 909027772 248757105 986833994 813843793 739472979 443406951 978680825 649061720 249141060 932973046 232296842 270605569 740802520 982999866 749139935 629352982 778597912 694326388 802809046 567418105 123927807 740656127 790414725 316792226 176315787 896572852 693921073 432488623 510867267 743135478 349628788 472458990 123596439 13846457 275117261 937744365 744728898 355577555 752503729 797166558 740086518 234296087 45638666 879107360 618276531 892723417 907414455 831526544 843250376 970139413 53325409 3192360 902610611 485994033 197115886 121400109 965550689 742919677 921450357 823061512 380449558 884795569 208136948 26654522 778774203 435196621 43643475 154370604 507565260 835759350 537992453 249580274 856759257 880031217 509450042 762404126 900519064 6113382 324200573 983249742 910451090 456237712 508674783 996968235 161321738 633032232 501157441 667937040 877078564 913180094 758029713 640256117 674325715 884042143 880188872 956623891 641745548 889600123 922221940 969623420 265863356 601567974 934773919 311484124 382342903 610680092 641199289 760619085 945065831 806743457 64283174 817873251 813001834 843681110 347760525 568788166 750714048 690041973 961450615 916405938 779218962 994029449 52222122 106840617 814962820 802397382 908859046 385375552 992617016 758484381 400332972 752449371 802623836 772100070 955307651 396858605 847006735 384059241 850952619 502737161 742325762 384650616 613687642 885916499 840393099 981124150 119280003 991718965 845436931 530800649 698221755 260818496 302618831 929307553 402389100 875297553 431346241 471098207 556556023 600272175 808956350 768506046 860447863 838971520 839516320 145507500 736824526 912484705 936323454 167475033 698045425 143300223 315654512 821674652 860486026 783203163 727990941 790078288 293340116 912536957 560599088 931049699 991990171 668002787 534251488 765774724 32943749 769370514 909913927 135233287 386178721 847919631 187449093 135775082 939258030 265474831 220907064 201115375 895886317 920870724 895150952 473011791 573963412 44822413 959327054 102424041 564747879 588091532 811587463 879667942 438290155 465438821 926651005 772326221 893338764 777049927 415783471 140755909 753262707 886798193 444084811 783898222 757679333 986169280 87329789 578925561 637081599 876332274 982033598 819708026 809767570 937553336 952088956 141830640 752148073 713654487 821782711 778833126 535558236 885788556 423464724 384079969 716856779 889901686 899773126 854088582 541667717 779351651 968244325 149951777 905399520 265305397 952273480 190077855 772639434 503171703 930957878 878750250 360659197 873715573 824973702 245170156 773318794 895337484 274027509 123177792 556501379 107671330 664146787 830794620 141958919 661455849 912196652 696378998 777769093 196395360 861914340 368311469 845420585 476528837 319232302 787452541 523940638 108619179 764040805 129731552 666872090 906997692 750733600 610102348 985640867 808865993 899824136 819492669 818849045 893141748 67694674 852528598 777185425 957090196 958079753 258299016 866834883 487261529 381024297 450500216 936701694 402435714 70830787 112025107 760726789 52950493 651730207 241296115 457047777 154053655 277294184 89372686 737020247 816969970 573301619 980469424 977018270 444043329 858249338 337080038 34657931 348838643 196144414 431374186 650425381 899439476 874089344 988940075 994116871 900976728 400071555 675610025 940394066 877467180 622253800 62362448 998344032 351083197 717869849 981519510 510752321 882870354 591368584 604962901 271805721 18263887 394081253 332493247 208329211 774412303 431188824 109709543 913144778 984533444 876752954 736349132 747517109 606679355 824924053 738320167 338841261 880096411 999769162 970361170 179750056 565645916 119889798 220722236 617369712 206094900 834169594 775819203 987880388 416309473 660961410 941032333 90830171 9104470 874191102 752037839 15685944 967154122 445383305 732064915 621102343 745794827 737020247 644545507 136409400 33546249 676798416 599427803 878366082 907309077 663631276 439662914 949618784 213169357 435085368 962249189 318650130 959973529 754439318 815484392 853370711 355036155 743958388 957260185 902491993 954543060 826776619 850247326 113843401 740498196 895036137 159497518 105732561 544900917 960023730 687241329 602937885 786374091 747767018 573063455 942744864 301564860 774124773 760984854 938119366 957864121 751667541 387567750 761908287 736672151 305252947 320076023 931385985 984312122 771234926 580211373 250994489 240095360 755621401 966820790 981981324 176240755 863360621 77762464 255917385 375730751 829287237 476134742 792400481 745687751 782665110 547263083 954085904 873632248 959630870 123030458 680538965 625342716 355012529 111698270 258002124 903011492 225715006 22769985 888395692 978195304 739788659 427156591 35928551 142604510 823272744 890213959 790517773 936393524 746188138 267023456 738126316 796272554 769679333 642310101 806594296 748738167 557001998 258136546 267856962 778145946 950251496 83831911 781109719 780514583 468291502 761498459 873659129 739607819 824198721 849763117 816666772 824460105 753642092 149872830 733452559 279767065 829559609 994463040 882506582 158087237 250144512 430709895 713451598 185349181 762605711 37848707 987626485 845230894 855500324 804749614 930869789 336628350 860836209 930069159 485213445 890834772 850603295 263867124 893413780 748350846 992606095 742501127 850987652 762822944 786497629 974258118 264961692 633053998 639816247 991942429 838972404 915602401 892098222 791182344 960665171 797860021 413191354 770922484 802583555 924512878 676662306 868672666 848432069 822965848 943907168 410066888 807600049 824885368 906058498 498526397 28060733 886756535 177976140 339952616 797955837 539558385 964120000 391397837 722996903 189119544 837986111 510178008 761989350 747154908 243421406 743934269 351447161 969217564 730865081 761534198 743590301 965749850 52679416 823242808 975004614 984797740 284963556 976412285 836770941 698292020 485609652 509978192 100675754 513204301 770133840 47341667 518082835 524516921 953506641 874536198 614319610 816277781 748443732 211077150 365551549 865179821 799820458 922432389 416123068 660796255 895516377 802032507 855113867 93029049 620551329 955677597 436845202 763257768 600435440 979611841 80532454 762437470 435034478 971226577 507246414 78702076 503497893 187566567 762072469 282458993 313718341 337597022 766415562 829773067 777040982 972011456 728814869 771267597 775270182 888384559 371202667 522884812 356110988 804662553 876752727 921101773 794888325 851089152 790392507 876355536 972890153 557798199 86252242 203886342 454983876 572805295 870848277 325281546 547732108 852778377 837874748 12470323 834201355 13205946 177019355 872793415 256812709 462791238 357095117 2481952 18466725 895501644 906991745 781338837 229208552 213573518 634466103 945125041 859702252 732984870 727417417 768697313 699161694 498443009 450083043 980298591 882920351 866334964 963603090 343050451 579601398 874082586 713967893 148640584 854898818 809626260 31182615 992817516 682278440 879133636 760626011 852144709 397839723 737924574 299833329 759804400 754010856 769478012 589283337 473101661 977320502 250110191 838391470 812201988 758533496 69239081 75994520 850914820 459835435 889328581 343752967 499745443 86370306 649180836 892771490 320379623 544510792 31616024 757692689 878999160 702236795 757222575 889358338 872897170 336779463 826290959 887246943 839424849 718508196 424960580 845033557 997635586 951825059 505574685 878255712 992188456 775326882 979798223 390334289 885744887 277448306 615682125 930891751 17713972 934477496 659236782 743457330 617457168 136809610 968879673 843061848 914599050 893295165 398766664 252792192 334240600 635590498 984031556 838110593 613283412 527373053 447808399 116392485 963165947 765842075 973110459 641377326 11177419 828964702 98213326 926421358 750682250 416166206 737445311 415560816 880880528 784290623 618998771 834592405 590493555 789920768 902586903 599393987 462881160 634190419 740080832 953116897 976774022 281542389 742622131 429751082 70597906 650331879 107744201 953646740 246563681 738295295 852352485 697351072 974600501 390943903 790154333 441652150 601853652 279924887 988497298 761746953 792951259 198798598 385169371 837375437 237617119 776997694 596026202 833261113 970438968 910433776 764719649 888894772 750910216 965901037 762824556 861877763 737020247 128183147 987072084 927837629 871371417 944256452 813101283 889266713 850646838 852087371 765127823 835292452 868821137 405299951 728290726 311913985 266958058 39788180 137333921 490662918 842853896 897448937 32347518 806672173 982935079 744473213 725294193 879177058 780369041 294164494 945719891 417160353 277216007 271769585 895711792 969355260 397620516 960488736 440060846 810648 493159703 879986906 957108229 875453090 999089268 243482562 953048577 538789348 964900331 103091546 921928323 823777756 727373731 946282735 187960361 802360095 912810618 109127051 951866496 804161246 923192298 727638617 332300521 895521007 32810690 885340998 579259966 445640229 891001814 236726748 195815386 931010886 709523480 702802771 954745803 789111088 8725501 974139252 890768192 892339353 900025414 904044929 972837580 839623147 198845858 15409696 947910817 739971273 263988782 814706233 868096493 487423993 678299391 729114402 628765660 676330467 968805986 819215597 381734849 942659738 864048978 736083966 64672050 608011507 994775213 772703997 957534533 572135862 920527434 456036672 128092937 845306602 898315417 568216949 871327352 738209628 763807339 835247983 587741545 679377765 847551158 555137948 784704490 934353848 889502982 463314763 772147073 801572691 568685827 673319829 877001811 785130588 783100486 512899838 542495678 87862756 701125960 533437468 267657041 965611925 586648522 70610495 889414392 645165226 662549258 859281571 995456570 892413732 903739056 511736758 837667121 197951364 916810846 788535198 861124242 257441134 637959255 458693733 842653238 475760932 766576238 932191397 22192102 29515452 213038136 859153529 98957750 434917929 729645517 905495363 774615370 849456343 867180772 820428969 147283827 268343224 653053526 663112939 964197245 607833343 786665333 988569681 414611366 876064371 835979518 972712026 386936568 16359347 316806401 926207221 324683069 382696553 745198723 884741983 513701488 86846086 440714595 191539022 131034878 872872705 983541758 305277107 368226803 786978433 919041235 800822709 776137109 806662730 130748609 907195187 279873804 485874826 822618678 484488844 840556822 494233541 870706667 452449597 684062608 931350299 486767928 431243073 547477036 244956385 933488783 790900881 282115330 838006912 792087766 831381433 682859922 157637612 731794859 440826713 941983827 769858901 588973731 25708760 753197654 947554432 805866485 799049863 500001570 773727534 770989249 442312691 97725240 851451694 847555180 642648523 559848955 409124280 786102606 197449983 346369678 948839066 803906559 999785535 360685577 886061604 829252650 791556072 626447783 991526982 463176735 850463588 960905702 803570925 829155423 444914474 117130923 999161850 853499499 208703362 755230298 860937447 554056097 825769951 294356622 769845358 832897146 821155164 200617117 674681852 569890541 12739104 67874264 840546968 987772183 678247783 957800035 953430676 892496345 759106058 300747811 927062386 919558200 818897386 831681812 929889055 929088451 760187613 600347807 351994986 366553267 865907806 479010809 971280583 237671963 235390530 995358941 207709899 326814163 881405682 383148188 206523745 959990287 607466642 574843718 101168826 918795224 583533978 848428624 279684990 545917382 114472055 918373010 178877781 833512916 847626739 894284175 811611726 504187146 776035055 294754167 133702178 686187150 90050244 834300959 907938545 812283982 894348389 96417558 993286190 276132155 762133080 108795207 175010764 812965629 967963075 799779993 814455016 770083139 806144809 974532759 964133053 745855887 956627460 224999298 973527084 375522985 142002715 777374901 792029173 131267468 576421759 647644765 830092997 792789955 16205376 833476742 738149267 790540382 760249104 814225457 957948505 597519941 888051234 800427876 731576688 855091530 443835860 293974551 831374451 435170162 576061140 752816530 935514333 784875447 831695887 933176582 277295275 232291790 248176315 37785104 709521403 625471839 826144972 853501639 845864748 344321656 791414492 994589833 902387608 754439644 147124621 588558588 992631914 103518772 50258216 687303319 703906271 296309444 278023648 265739988 379080407 850993217 162582158 617024350 380019596 231350612 221322586 839791534 938245074 682793005 304732710 906246175 993113591 911678712 586987142 897150649 47957992 499554936 423538398 689000933 944332220 163975359 771262534 763959202 868512784 517725957 177971239 329985908 335761023 476898872 495118311 244311121 626615208 773761488 258087241 257394194 903254269 618842396 242554702 943266193 814413649 83883577 795805953 954852198 460877470 912093949 755182642 256683970 797661469 745503894 822943760 995144120 446896613 810810783 752035967 860371262 307509102 313108162 406082582 759046773 934280158 982108528 441316752 336983130 741337078 842213679 978179594 191524836 754673817 855807347 991060947 246319124 210139885 311672950 935045557 254449636 753525887 622914998 694735184 330663994 309958456 707020773 794742897 75585450 220241894 307864329 743168548 792413656 484846898 779940494 937616784 743425417 394351026 979759659 414049700 894720573 971446162 98710456 859176379 901678108 829620058 723603919 561968586 828698901 748479352 832367957 385802192 433424766 840818547 274682904 875995251 745880665 800768879 497917966 135820262 534607212 872202887 692359195 576527703 871112866 199439989 689059382 854082754 901537824 217275608 974890443 83689984 737990324 184827990 518572414 951504621 370063014 458415053 95653341 942243417 594467325 934097587 620676105 425297497 748747885 129057261 914784577 779123712 448620503 310447244 928844415 853267503 89917103 266098839 917751440 878753250 419414667 770757258 63956794 966929059 227580 482310403 732857667 57068277 908335478 852256262 892447519 377639143 424161964 329254173 710408104 742382187 877145518 901005149 789304099 720071946 739073473 433731153 989429975 484003228 673264459 832169606 785260538 206216317 122396111 975229666 143445831 128510917 931160481 265406007 906552588 901482795 758293122 764011679 820906351 954208014 172109306 944664186 68232610 762248988 42179803 786165789 960768379 926662498 830811053 737792787 803882909 869766683 171369741 525692590 844706671 686595284 980788870 317468883 975788954 220996099 843473541 848399353 655027896 546228343 639206755 439744718 842682509 784194347 599975725 913026117 786460128 698135301 533315539 577229291 480578818 276854349 975062989 884571974 881519539 977511637 232963377 839678122 853417771 759399811 937552764 163056573 745233351 343167602 940109915 372879742 863228219 798160620 702235001 995833867 193029012 426409907 956429739 885250822 134372390 347508740 697686839 662417288 288876819 917320695 952932841 203224622 382569578 944462712 253930140 677992676 800527808 964261174 770231063 104076042 987365231 107623181 631945368 118725865 649541014 840326740 149529755 948128591 789500845 806666969 270075931 140325597 729723814 37882146 291033779 814870520 61445315 796489284 942886139 231482154 98410309 914801172 155102491 969466608 792133396 372379020 890747618 992327259 760001241 931588296 311712665 145543612 947830895 429265166 922090296 834607989 503391596 960614742 960049373 772523450 957626370 507033425 778137702 987760828 416565370 199953827 744229780 943321283 988797053 666565969 888923647 520680326 811357243 817240222 250372487 913366995 69555187 711412113 860043401 20747586 216863504 923761754 904089550 661998282 596617361 320478166 867620208 44874522 744473502 245357136 874962938 247135581 748813760 856712543 201841401 890436254 626748116 658394469 988829003 526100401 858343173 767741817 12447924 331186748 796205824 765577174 879957348 977989110 834914532 783961392 978918153 825671798 844176036 822415638 611604353 904362814 116964605 509883255 994125761 854253949 70938980 736638601 311466117 55324555 950013628 820454794 117222485 89556529 775511221 190565145 909167703 863624905 617340665 791131327 828264986 86692460 841270834 82777406 749776699 858364800 590558753 881189594 737814057 830288359 798051273 108851853 433838003 371585771 374656462 826817934 978775670 841914244 452539519 444826576 868416658 933330624 829665092 229204462 361390811 681059151 607802032 245958670 340232901 196456792 875664848 294854268 737020247 573254892 919020026 817173434 157585953 697625420 881987014 461451659 344643000 893106763 321266581 768057103 206805665 367321732 790168871 804894762 961866372 996004850 162885183 228715029 824078438 824399836 118159950 531967524 871225134 776576776 374101191 761328318 870754914 776588019 908847172 32361450 125021682 636345906 379223295 683182095 819070342 827849615 84143420 916950635 509953595 858839736 289477247 75095883 630431459 874876214 950630266 676351365 155583223 812807175 834075993 799409080 415965663 121984176 440797010 931644440 347928934 945120722 823176336 194465152 668872500 851519507 596909355 525534538 96898980 603640835 636871448 945817407 106868989 722462285 962475642 886172883 137392737 846496782 844470112 145871929 843817584 601256463 304224907 926013601 914733035 885571358 853694107 614579451 801712088 320416071 874562064 745234948 889697875 973624903 756781105 926919529 844705036 927345184 12541536 999630416 940957553 241438077 676229379 914897447 854881399 843659396 981237211 44180616 102227944 1021618 464309184 908804057 97725470 968949684 593022134 921580080 872220167 252012141 760129329 358045748 848612226 970307597 801709721 834715702 581534864 467227483 882437872 412000402 622707707 752857704 403756473 370025197 33473087 112067574 256604535 247417345 214228441 395548189 817253974 594898161 328609079 825699000 884598261 998175783 549123458 815111240 995982304 997177772 680764341 473195823 890096963 530029978 312781454 971249579 79575680 278002065 822514645 554495850 709827847 888608266 194002191 660796908 549223271 465955095 821008653 942718035 466760055 130957665 144635269 929487723 924582924 700043958 990762628 24805799 840488838 791562507 881985535 18332599 563585031 933992181 662663297 777113902 990102331 977232258 782781704 456714264 319383330 739709737 123278608 12028286 718773345 770599200 810940929 4032538 171659986 569159557 152043802 797263329 895506036 958096087 737020247 481919322 140508716 401457234 977304061 342910931 454002948 950901600 557513516 728017698 915536860 783832760 528076479 852203899 807975264 971638273 796902763 785747350 980260933 717165408 959070744 976026118 594500366 980414619 823259565 746717470 980343633 166365307 203034248 805553473 997679171 320844986 947720047 967184796 795115528 1121734 803656690 910307210 202938697 976432561 175795099 974312830 338862947 324131986 874248450 994644626 992522098 74422957 480944104 993551445 434091687 171749721 747565126 775693628 24828777 860554402 838229331 107381590 932492507 776496900 823138574 70896821 182930979 790895037 300938902 856459699 113322028 97892850 123166604 110994578 73825867 119513179 772546958 145402650 633481616 833653660 282311162 793912961 152628068 718489368 999357222 448515689 171693084 835494073 146358127 371358052 919437412 618722884 774936528 559982200 636163550 713645159 984102327 166927503 758337502 142804161 612208990 795578217 500751667 808234360 848754854 88906918 971159850 432834476 416094420 50582157 193511845 100632924 854484617 442790928 94549828 263055375 919702718 130578578 952391274 14667390 437745585 737598246 988007534 400531722 843726674 325496292 318522535 816807192 691711425 415800220 883846585 878054315 737020247 852682644 183199947 772656004 462426162 388035715 739842895 407340293 713762104 483857336 59302602 401232957 405127958 919057877 685961588 838449280 453136691 750560624 134828329 718439515 490353975 870266966 221382846 811627299 857903975 113317744 985544376 930894191 856799154 955972424 842582249 888690450 969483357 349458636 304842950 996544790 860734661 760689251 940624887 432338123 69135911 847442768 585857364 851978233 777359596 872051587 596481671 806623367 739343358 137526354 811581133 883842894 363049188 186939151 287534981 297228501 130072869 945688453 575249557 941542656 215753381 904506943 768050006 363178366 831081189 826843886 641032992 847018061 875009777 867720822 887829452 943058137 882663496 972644484 876618314 770182787 695979895 795760871 656991707 742737309 382884826 328728390 919542970 347349357 356721670 176001487 495082307 853871448 978642125 218494484 831138429 207556509 978250954 971042627 803697329 995183719 765017009 212788675 841749905 636611445 946609069 907144776 574769001 926734104 387594253 756426432 406842850 984353529 783860566 731570036 750369726 583979595 988155804 723697267 749291412 42515993 835466028 899091112 497739884 753877117 820771555 895257950 290223816 873610000 981174105 313819487 835162737 399753623 819402141 240552490 224490209 740450954 536636425 302950032 835569159 82350589 606087618 187638125 33542857 962107497 901030468 28708605 258891126 962918878 932518107 325528838 978820784 177876091 887010507 650502186 792876883 495117380 147737961 748725982 690720951 76938401 189576547 987535972 849079485 404428348 281794794 232323677 243637742 958213650 574656106 245573270 143774087 870004873 263796450 889931490 231353961 63622938 759786570 801731435 110353311 258218525 451510966 759454105 740415616 958762740 780353396 501946182 354458435 944091085 840334593 245752445 576397227 996339219 939136420 423190826 970182977 805956040 95454000 513264072 811967030 922605738 853373848 700146081 746656483 177210928 40238150 485791751 653194034 694217120 975476430 669307249 590320933 178550481 740591970 840266014 82762163 969482048 234210425 737020247 693539152 799137801 983173128 809616004 625993338 715863308 297586327 798634901 745319162 871999576 227240313 85300876 896128239 886082861 565742139 785746707 786539603 905221726 854797863 268094535 476215430 858142431 115582537 362956568 984004265 542661752 687260050 857631646 935271884 650608945 853608120 953065928 827245091 193500246 569328532 387741982 323920948 740928761 728332234 567673925 454081690 683381223 238697238 353306563 664189619 642993359 127164604 369711043 270595000 917119131 144738458 638772593 175571472 993773544 115516262 955393127 867375607 742903449 229573166 845330502 394435683 837788107 901411323 603518054 279915328 417804102 188788027 435985058 89494765 671658712 829234767 618419839 962363938 103036368 52172380 827492535 977360983 761080594 942059062 933811452 380887896 845953609 843073011 968236146 299562995 218267811 137598909 429546458 820504642 169175979 318465867 292323640 891912201 962045872 891093482 108018448 801177499 750051899 984545073 243549691 123758280 291350142 72638191 827444080 912218910 952735954 889577885 462889704 638441531 665806748 742416689 471572699 670967699 321199909 854150088 931881978 861005708 368166668 614019225 771796380 859976237 986991783 854297172 957901276 343358200 758315545 682426533 568434489 839488108 371579859 822563836 621664219 817630003 179013819 507385560 814793220 978947666 352377038 485834281 833644806 403032476 382690490 922159120 842321911 914584923 999131679 813400693 930756503 255338980 967284378 663346124 640299956 994238697 214005522 737020247 779845928 266004763 143514499 498475433 754923492 795664746 767168134 753823364 427353677 877970251 900759036 632581990 748082116 137913667 312835801 208960228 447596241 761633704 329044739 852334623 846417952 526172199 628512025 995807782 942811985 153453884 995262926 335996419 867409876 162191057 816187068 38810684 983610266 805836129 861115927 548152645 623362586 800285187 775509170 618600786 745937579 462273199 357535167 748765109 973936483 84137869 769995150 642489745 37843809 80162198 20311984 550468577 715373219 481156105 925615820 421609002 152386842 735308639 906886312 514162516 976868801 897724520 890790798 985096726 831659397 818461320 304838259 357027451 133148541 957920346 770177618 847158078 206237611 407518166 885534800 894081978 787152845 642086936 500477741 850910878 525440759 229575009 24509799 692910935 779044228 748667378 746183427 615654655 397763550 946676679 980886844 292890095 923528824 358383638 581784657 812534816 865180099 817781983 937085663 285578316 267160486 437122542 701108360 276762974 136375240 899230798 36215919 624617919 826206011 989272119 765946232 10108549 470200259 969370096 822211486 790243766 100941673 380162808 870689798 970098006 842001791 742992096 782114827 270279814 790794091 263061615 931490010 131128495 914504787 808892260 934500517 882527989 687017423 815492491 74773039 972237426 958333990 869464672 372836361 794094293 763513904 519889958 875996813 546462144 341584742 235503916 835580824 389186033 934977386 757305570 551326273 203212127 750015287 110185988 878111779 865547628 933354954 994602480 579139955 294445737 865463327 891617738 448497426 890570174 923495398 968275636 891696159 436357877 990016785 53187173 941278139 738427510 866951043 535083909 87848299 474109983 548407202 748572305 401299661 455326869 118984030 861229557 126529385 804222631 606220019 924196897 800146390 933320458 845588357 688560095 853728725 864261713 323778794 765646613 468482315 885629195 372902261 519525537 844216710 943632142 179741412 642206664 974583027 225156539 651021333 411871615 162412530 399662442 9311592 965121329 236600544 836501624 925927065 833250182 534218496 363005565 977332272 914232806 981006233 964099584 774616010 505851738 786502057 219762240 738184022 671908036 927998999 99553355 929510701 482828315 402588426 913468475 673344842 707626700 942404876 750255028 186723474 904000727 82935105 914418287 952934623 739258268 134970685 943512362 668826620 434847522 110077160 93689299 579949445 950634572 854170630 913033749 63077276 415843147 690888776 745040970 140536453 200990048 643718744 72024063 954831499 934794095 836206708 959851084 55403883 935894289 765496828 532697680 678018201 945831422 910680374 835150616 13150508 876653574 87858456 928607124 946031279 382119813 51796637 880078536 7684118 772140164 886881443 510973259 484965081 698549662 769302193 36048828 795265862 410148038 923524446 328613485 613141694 941091520 859312390 668551062 876410169 831866801 208073361 311335214 857743520 907961925 73424216 839469030 910435005 598993785 837658738 942913059 283968863 775427150 819231954 28121904 885756429 400814872 424022514 123489076 24756948 416208647 498404632 820518878 601967700 737020247 825177338 708441558 452446660 854122279 936398607 698511588 966632327 116922089 340333960 804168324 25520945 557824154 761993331 759734430 527701098 786253563 210308119 924800266 957899279 617764336 991935883 997488254 827332064 813517673 935135565 900890416 900403452 907645980 932688583 896339635 645691096 123425738 869925699 27613702 768635903 859280289 389758661 430656509 84799274 799374546 60856110 809135678 879271399 77096803 377764323 844117818 912473869 684482612 264382671 32680455 971009369 995702242 781132900 246466309 84235129 353485204 956567026 123571580 123089670 992247597 982717747 207641357 331858545 984281739 762147126 986487250 963305742 810132836 968697510 936624300 575280613 312944201 168758100 51586886 159894008 334321076 157737972 304179693 978618936 115685904 658385264 224593663 789367034 909472427 821094767 867180861 41909607 585816505 510896763 26034357 792202636 901387002 403692806 836940660 877726745 751197233 47186405 227162148 299080088 946115007 253883274 521644301 851159422 736068446 911142052 799728753 162773411 547195925 939146002 348488773 955135006 903658468 931562562 880204428 907479350 830421575 199305577 671235362 815305038 985086523 381062148 575437301 755392240 369307422 608630834 709162509 884255405 868986223 728134972 697960924 646700945 239243918 634530944 221219880 462293737 624885220 586589054 698645875 601279757 393001573 521162915 292639600 420420470 326841520 201976281 83745304 996805692 666955162 611073018 457180711 319681776 781473175 886523215 351037761 72422813 797566983 233892584 917409828 960112548 883585345 562701805 797772951 869805897 796411192 661264722 101140643 804989919 75811175 600882531 846663256 942174330 554306084 866714996 952159166 82678164 789673366 952451386 902782464 909945548 751754974 107658849 741422487 489588225 664521528 517356793 837158940 743531155 665739352 672172554 924560315 72608083 426664645 740308883 967489217 239904367 33057464 233213755 874037055 384087880 187684470 769165811 637452329 996984823 664537245 804326823 803323324 776247335 831876311 817315336 825246379 970621782 882502092 219701487 513094964 144938323 521778957 730212271 802830629 999879192 877684068 871424225 228708587 969895976 910954768 724816566 442346373 857001244 173906726 744466310 95604923 74583935 610227932 997455893 315041460 393766691 942234478 538693196 476943125 911114414 820440590 694715228 857963132 812606506 398378950 942798843 848965637 916757828 56329220 867503024 545204967 987189561 969554421 984700659 148189014 816073173 885979310 967893648 735615943 854852018 877690887 866970911 863608084 933080886 854434368 408020277 996716920 291350326 994343547 233434181 876484018 969556213 888527654 498052663 796157580 769259501 170046876 836183231 911948252 756361161 987497736 784003434 975390293 790486265 873034395 456055082 387712941 761359569 940215953 536185833 968480925 945527957 146865607 637665864 331654795 205568196 753786188 229448600 892823186 921183262 762933834 409470417 774839069 351132050 763937782 418186791 865636575 396003706 953455682 843882130 742180536 997686124 364359904 273141295 987014960 88355390 914137893 435705643 613317321 977376405 956506297 209840950 882523191 38182150 462227578 761020377 702518634 427979237 916818181 653078890 290253669 943719981 981364550 195820193 511287008 877048063 782390512 343243493 739808734 788756143 981038775 361038916 414756867 912324736 271949078 118495686 98395710 511862682 691878355 47059487 854408682 179147795 858888490 592493990 745313492 633435468 908178261 41455246 292644546 219408923 679033645 118866188 134724457 390565370 993101539 798422096 773265427 397240907 778835450 762911148 474285708 885939621 185044983 71963506 101017056 758574831 217037085 137539190 936337982 646909172 822113510 781494640 315821400 160150190 507440794 869087666 829559866 914937798 226417949 622779432 161751590 153677458 390271367 990851226 972963030 737020247 611744262 539908349 814580770 735436799 811384428 925027168 992816809 689161246 902957236 814965277 582225510 982402360 855359345 882178176 979669610 771510688 541806340 529106903 764403176 731422845 810631442 841684451 957256583 843544659 242789087 790715588 971339055 134209987 212280151 251301359 688220549 43712725 890657262 980101940 352044513 673413348 741257332 927027998 125282538 815811191 598760107 354631060 624677235 63580654 963968772 774219271 681221738 860829112 737020247 660331736 966232759 830472229 87625625 485075801 50954562 320097935 603341147 610129671 555079825 994385564 5506173 971190168 626836360 875122980 874556649 790329895 317255124 888133476 864150862 903772508 352692959 884848423 98021825 101629379 416722829 103938291 932018729 56037538 999506395 275202957 830414170 735730282 959215240 118335273 907675187 156834653 824378914 867359006 849979774 906055540 550661378 907075502 986118382 377547335 980901555 43842494 145972889 586608087 30524248 993788763 277275909 129166354 13767593 553178120 664053956 726207141 754918583 712979555 539675824 6675240 492464413 63287996 793488513 127586583 962196901 133218928 844903798 556377506 947863537 61461709 595822566 217100729 570759526 775058876 373775149 378145766 576384933 417587174 12598 790353867 518844025 34189641 40425501 987046008 970980453 652332058 856980479 990754477 986427665 272016975 665895867 97714217 284771127 254054754 464840068 814658043 569047917 771927047 801061519 240745536 808570776 743297469 747877665 39707250 262564546 192724654 994291217 311149149 109689594 928660123 802936404 941839690 283945983 269865239 750853691 702161025 920958672 775652940 807906729 93835764 902365862 828237347 858041664 760453632 157677085 743644821 627104578 108868556 9440156 959752796 944671142 769950013 842872604 758208156 930562960 952291544 401948069 936954300 442019577 965727431 789788387 878127982 786245659 243383764 853092361 888389996 672318360 281191532 901284222 964607286 666246364 152956675 990409386 916178406 974518895 568196526 206862870 997739939 33913509 752512645 809329347 123485438 2789471 917522770 134935448 279815453 170337816 901724495 930180132 933399261 879957464 466057293 430870447 885076692 932921185 346180547 952741154 842761549 487627914 778858953 642397445 23398870 958255308 757737852 329858082 261375690 412558239 970671546 909945638 661076430 410892210 582518968 341518806 741581014 897476436 760523247 808702008 569472994 652843127 919340202 667806939 479118013 643984838 912234470 282453349 993030350 688548251 791276353 43417756 530028646 801849640 529813622 813308113 77992281 297769325 976399700 943020121 258427180 822432733 429723551 946852452 960315920 896825724 491854606 837912546 778236830 884327414 997601276 852627413 881808656 928430016 951094768 322465666 466391837 995406035 290064588 30348352 965745097 864698589 906116999 154034466 806335436 449860893 257593495 277854309 406663968 931182926 994311542 567459436 938697193 311677259 558641861 669729886 314300737 810913092 805972856 759965297 734838178 662675132 733621569 750368753 349087421 981099350 769316288 889183595 577212902 954547014 246020082 767947655 660680609 950899189 793089519 313837699 775948275 127528897 964456658 69131038 931761065 250091393 12098900 437420223 431930767 772132576 149394895 349257447 963259502 741582330 67592667 827503464 801245302 792491469 769520698 903268315 948376147 835988302 379405574 607537487 947101292 972674282 926852578 763027776 928554836 67422660 266845838 661903019 108059985 860319696 928483665 801100835 112640774 482931275 658338715 685824329 867188361 660812573 921144040 917013192 207500187 253751623 822235042 821289214 865982785 206630729 858313544 909802677 255016029 63318358 827689548 772133926 338108809 943647506 29533207 927162128 912322500 897895201 806268663 526545878 125283619 344189238 810778830 216250143 528255844 857472623 800671550 215935626 946664811 863796200 953128542 516828427 165151115 499694511 90206388 948487687 673448044 851439530 885736188 383469763 800510451 905015579 756946779 92388287 762980283 781582824 749018647 468383709 796262163 377827748 947714588 165014491 118810626 70465892 241577593 441451418 940906694 460803058 482058596 353170225 590371918 934399416 690574662 841036161 961734180 982503701 860927275 596931533 753322134 821183766 839023555 922422140 802055325 948531706 995790987 146900507 54601121 736999959 875821290 220156907 759875078 183945604 624732490 745667865 758325286 873705927 362223848 801468285 849249246 132540067 777220193 492779453 931684360 947446330 754723910 502559643 780844703 48397336 738187745 591333762 731423162 915036289 863984544 364807222 869840085 83440771 909388982 767039388 300256350 795432623 936144226 622989421 340103290 912446499 629753651 901895209 922433508 461972023 975355962 948058149 571749388 934782280 73473389 942842078 280573697 762784841 164006617 248588552 510844370 248179902 766891076 102696296 22207443 27199161 549032065 812130740 362612400 752462509 832367713 903300298 85096418 952886392 367997899 948828802 888265898 739313843 970490582 767304712 470383847 412752509 145623922 51447806 939419889 179978495 912527309 379916174 799088202 198733572 618356626 96245502 430665197 773304090 845285444 56491466 932184737 189540225 966719299 876529632 872587706 175915105 987849390 604710750 961421553 213388278 964118882 760926593 508066132 925374016 908585531 894412326 508688741 265161220 831193265 50596634 945628734 239414336 884462093 514171228 59148526 983662206 935887974 900291861 780698167 80909562 719464247 123387755 191788901 801522971 393932523 849998893 973192242 709816555 832946226 909961456 752634846 607954187 745443334 854603177 899561294 960558991 808614273 859976566 843152544 49760524 181250810 928190478 840225221 887097371 770142872 335142186 810125995 989169385 851082404 432370461 979495804 626290324 316591380 900852788 785194581 786301468 85742192 494597103 710940991 350887735 180550186 988043986 921265202 606305069 606743377 970197489 15434593 155670931 871525621 742665757 804949572 932481815 589909220 660437972 496301292 741192522 585243949 145567775 172844554 222485786 46772777 277867481 830944626 824152686 186558631 92412556 792907417 972846573 888309359 40000480 825042403 190859474 447352143 6697470 199324010 245137601 33103680 818589875 338577891 294277206 236644134 753835848 566535404 948048823 996665916 674439159 977125954 775827027 297324718 263263455 929040818 972956611 787987341 123493 868780192 790492460 840462866 977204685 351117365 747222446 746094660 795007764 474844816 760570358 891574169 862987385 558074268 515527764 850261907 489984996 927225755 906628656 732347761 253148119 771616349 617861956 679625001 169822723 589819308 238970728 762587708 881915645 998618779 996008336 828664195 130183458 356704361 820956488 108788610 593842230 836779385 786402623 396752542 421369858 504505542 837669900 472775710 772119212 985338341 736721261 516330824 171791308 910070720 512202153 925353625 949425446 696297677 320741107 864492937 748821117 870559743 338896905 822934750 608458032 765875934 577246172 144407037 311697271 464665361 40654390 614038459 814005417 222629256 23935423 944868201 854912625 299077025 770393910 142812923 3163785 340955719 775140231 492256410 744412180 927842814 849117082 799830052 10319725 818161445 235669196 411693131 538794348 347049954 770913558 958211474 897017561 143866078 969513231 847095784 40018448 747083481 936058825 351479052 621438053 811152127 832857791 697085550 181406820 764300582 47711612 30578456 804792154 32893382 500701906 752580123 64936834 278463633 925008117 748597434 453380838 988551424 883566254 51442127 632934591 864085984 892307980 549256636 118233596 271289799 977365088 828583814 873017061 903396227 777817649 161317839 993993570 312993585 408623966 144163640 581122090 835465656 801321700 243565421 443811195 881976677 6056203 41085234 782923268 667910151 895745034 935703243 414613612 442803620 753597331 926410344 558600879 765940042 981680165 836956501 744927237 257927728 720582162 772834782 994753985 821788405 851769477 952483275 854415073 108449515 393737421 681193158 733600996 316497347 991040248 22130465 397541482 960612918 758249498 790602222 820009960 276641332 822658512 138734965 871102644 76436630 563696118 347479338 872812452 252661594 446285456 487535222 684858183 835522172 284947903 760326237 958578548 797834811 771435798 11278446 439001151 81673551 758894458 173749953 890236376 245785030 16928679 831808673 484793545 816366993 623540297 357946854 910994284 78319234 476181089 616474319 135550752 957030889 825667519 743220631 905510606 543311000 517105848 944860356 440705527 492702688 998549381 768666089 968608841 889705399 907049486 21782786 214267365 982026265 262040152 984292465 813024758 861579327 859901414 549196167 916639166 740305392 784125039 416182436 933550967 392706708 995353558 843750438 423973784 873214621 794198457 901067835 177633605 511652056 599938299 870721129 808976690 451302994 27956138 942010478 892892272 162525599 262158988 164199565 751638077 763858128 137025358 895119158 909018865 964382165 842952588 827641596 907183542 910929932 196174638 666213009 952740651 946496582 565214499 809087340 868954537 860855117 224506150 406144523 46302854 827760424 696557724 907563557 724884467 864317671 820287775 893252165 826600172 472946569 981514151 571079740 840989156 886336786 274807152 737399193 704603659 563888881 745690599 366850821 143737246 645986918 334823177 901358043 4872920 94253769 863343314 469842866 715174841 840538600 684852959 639749729 977728652 901650515 959012615 987460926 589181834 947198029 996985834 803564873 859023617 731231785 312737170 786144762 187850262 585697305 726579245 742540708 863604894 840535972 302271366 910076972 23814989 641554717 450699603 350411269 593750339 72524494 831893174 47771154 804978988 349296657 400220127 814851000 979035237 58833652 776152381 726064030 652125646 930337878 763849225 299227523 832035912 700131862 896376847 886700373 88849491 102457169 833433649 240356962 974983733 995769267 515050410 758652920 662571990 325958831 971260245 543517128 350408682 975863733 774932709 851072857 606972688 815664655 60178285 891860155 238673361 869322078 969519580 813467406 760832235 698190099 914817248 393139806 990126620 892328087 340955682 684397904 438746706 151312122 824270309 974350858 44555457 708743277 556122788 301188013 485768462 749254452 653247327 167152738 882451572 920473002 953741577 826719001 879917121 330836396 722302222 413234222 805710363 808904714 139096129 107034442 928688830 746462389 427771614 914807055 810694750 499896674 857229132 847121806 741509934 857062465 829434100 768226220 884828144 900121265 510552275 791612391 320638864 361595684 229742480 989734828 845717277 466651635 824406789 318653035 529421558 74728255 30431885 632511011 152983543 593210223 103408684 384571308 212911573 393453584 739159135 910527030 930986379 33054263 223368872 810075756 990642401 944073816 72646172 929097179 614676905 274430303 908481702 30846353 836471173 422054468 408294947 181156372 153372287 553266956 782571874 273575933 33622795 466169825 744303264 254305708 649393772 474967406 542064167 994367150 615567547 857599638 606168593 751651305 702785125 708343792 550093244 11882965 687911606 139149188 822272131 840735333 619205801 631265696 718526511 544148912 192493089 766114857 541680248 8883862 260081145 888235306 349083341 930752038 194038579 735286909 754356599 48446916 979956424 425679724 825338299 306870520 358123338 874672329 901025859 347306883 862815678 228934905 973083296 5921324 74439477 864813792 702893585 763219736 221984927 809376330 860430634 352070921 791841466 665991922 417432346 639945274 601118840 820161520 606315380 847052928 542418001 939522019 741090977 173791876 694349429 563821675 784736381 352606182 972781832 912468919 715768911 886951886 818819744 961548223 929432868 977884897 28554024 838510369 676724292 821776203 455578395 953814743 77448664 62046638 844728709 886344821 409378582 157168735 913107707 899194611 282258762 36722542 960579907 621916444 686800059 919215903 891789576 978679720 932321285 1799440 691654352 784826674 326356257 319007774 13203581 932565242 296458512 778116970 717711037 795645059 396065334 299926505 855799973 938826886 783336945 927924665 630611295 412035296 992500763 919679043 521022301 80186019 625690978 872573736 151472403 762500910 93672455 732635306 262098087 822943127 957534905 791758331 566365383 925228926 880540432 902619422 312689735 801010136 107437418 556976801 815065736 147020763 854696537 630818332 756192343 188693241 998473015 737020247 191899320 201803756 557178693 899172665 814382732 816497136 311167665 810568677 508672958 625333289 408496995 473187241 954856615 785591956 221051884 933728309 148897836 902625112 394427226 884814940 745706867 271214722 912489972 804566416 26046229 825380128 776872383 12430658 576776423 994776169 829402544 814287559 637975749 454564647 833684481 750101221 930865461 889871683 391633827 930470139 781177749 882456558 866646630 830018071 116260369 695201006 237658403 752164085 177431053 840653236 872467197 986593387 944572568 367283530 728135540 866954938 320595974 414735362 525945515 185423890 214393753 127619563 931172327 749103981 967851544 882307485 882356266 794059299 835327982 157286263 882654571 953309766 98581678 317311645 843916066 870256318 292783022 579958820 55705639 741420963 808453460 937184812 22123745 881140817 325086032 951054389 612621077 251529410 252214241 61378926 193838558 907150138 822871331 793676529 738095447 33362480 154921186 753915634 830221461 890489885 370060253 919012156 910534189 786275115 975502809 669768398 172991111 453480088 777808106 508875843 212692021 919251341 804384919 438994158 547163863 449262138 817930479 794299292 716115732 169190603 957323237 876630137 367481093 397800210 919454284 744731666 957292477 743105543 785410948 742719284 139945149 743412237 988054955 957580367 921003646 995484933 843305532 807610592 537444747 762281168 837547715 623906769 989136897 737110912 239806778 956839909 911447219 790266021 301768235 843962265 804294401 479654504 75566051 756017904 737649636 120066705 514751341 651935218 307482979 895052693 916375700 438811704 669775270 743436939 747150694 292948614 882666918 546975201 641912977 803607432 930570143 883412604 991199612 473562224 890704121 457054830 878512176 347513258 918227897 846720488 577963724 927374947 750828662 995964956 979661172 958221999 414058337 836247805 55547635 176341576 962117549 808282261 561529463 51482785 407470491 962722534 362374513 442070681 44868829 803130246 811380813 785758659 220512803 736900944 785041907 217798806 985391289 991162145 913730303 990660896 861945273 752292741 865758107 12223711 769143249 60508110 821838782 926684481 898510818 895587707 436011344 360307038 876906770 720679920 78893217 770775023 896065966 71940101 117177410 846919953 823029358 630671196 303370454 625391007 889904009 131059167 348480220 645162565 96126845 301846569 503763974 920360524 496133831 887427469 735209794 686807674 325268002 993673093 99234580 992847921 686524201 885104381 236917894 982263505 934036930 522959555 56306520 850788951 301158559 923208711 738557218 887811133 441190277 547946249 737070983 815966562 997366266 933976551 746272395 923260711 803831055 898295814 783061721 673694760 688855637 922173801 958548271 31895482 24321838 326148151 553500204 916062802 425907342 990341819 565913932 145229971 666040370 530460122 352884189 589294180 859738290 856882905 874775945 745054525 621409629 959763473 922858814 159487177 618522026 56730507 982846557 893539946 776746480 992407078 819462789 815604889 833155415 476454385 536862923 952762406 546830424 880256067 941623047 638869415 105553182 955531928 958493176 222920459 93187657 989413943 276085393 822384902 676506453 644729426 607620885 906485682 291055795 256527869 787734255 513154304 478644651 897055268 737768603 550656712 231613356 213866196 513456347 564422050 694945164 974740217 10876297 614866361 671375049 45118613 582531513 137545400 780222865 300987914 987539865 753274444 866464673 892216014 762106289 741269021 834694005 766406549 979128409 432126668 995566419 866018535 333511504 508432867 523962850 844852750 584856082 766128066 869417583 465552259 903249861 769834466 747566398 823473531 215300714 879139097 978600041 75727980 807113841 114152764 446554157 737915461 957221594 785177895 698253933 858087789 478098411 53123207 643747397 233879452 850709921 281377349 785386043 899016641 175719138 471601619 882029783 291612940 50876415 469049055 389506376 161120626 667233505 538218414 916507826 737020247 571880515 946439536 915749076 93565731 748626152 801828867 764425129 577285504 940697558 196759692 479367901 812753042 799024806 927933912 903106115 617584689 172192021 990816594 226899271 320994578 202583696 677485662 223916592 776218430 65370297 325844918 434659425 517077843 681478176 408490347 447911343 181395526 388703565 869527397 744028698 598045780 242598767 422369779 248251535 862066012 766870184 901613020 962459643 910594336 867795146 755424916 602614498 965018308 185491185 107835756 628489415 800076294 898867866 796983436 24720862 868325132 72391896 798131210 659517348 241197631 83971413 824268377 867073561 973779775 924814484 696891038 741389473 227307554 931687077 601175154 998897511 737647448 930036227 888544294 307481730 635358187 215820127 928240151 78886465 268938322 449019414 640284230 416662742 875838297 219509561 960419085 229610862 534746913 736112955 199726436 927659643 653133109 934821567 145170148 941906598 266960508 848821063 644633850 524170589 785510766 945032313 817788757 752002182 822443218 826360751 179293940 593187617 92977160 404517612 983306072 847912865 935803530 723228429 797897181 285904431 52077664 118906711 549894517 188516048 818874736 799259564 854009635 329815815 248726168 910962992 620611941 900612403 774832818 892129325 574183987 824787202 441313515 18350780 417833854 650731211 954878873 286171959 741007248 278393874 673402211 922895998 683958443 930323225 263064840 667383976 994807124 654720014 281477154 141408066 529403108 202503605 988393873 826243089 366145970 145986477 955762689 729037595 884002146 836981430 139116146 205770954 616578491 476774423 930044477 695661302 784626689 746685274 527965740 786626278 797807025 17694745 705482466 199729045 107551845 925552395 736454109 35984011 761938296 179299790 829638734 941877416 253692373 336273982 79373109 836802243 937791000 146222189 527842546 560309823 493337059 603133122 606399334 889314243 807113842 900589350 893634119 572079529 136200911 958759505 454254579 739136976 96859189 122397301 178990427 955049506 899945099 450774474 171440159 774860407 755477288 856315304 199570821 993398850 811355808 840503727 845534081 892988954 289396237 523857937 307062310 994605791 833018947 586124461 590901399 265078007 164090867 875737448 394801079 841146472 115156537 934950562 853939141 439170134 926751081 98643130 845482979 784828810 986252949 965385626 772211341 904584922 757537784 626587742 888765565 2164545 870466019 644669195 790035891 50919350 661459197 346156698 855166237 479674652 878208572 466744898 985845744 380603615 738179242 963371247 497384490 760833931 870250347 295787099 537313611 457615915 623514105 619387319 741657936 199973675 517864953 3759315 946914683 201065902 235925111 774719406 828642780 931304356 760223435 599170592 807151040 35086378 805791026 959935218 973894898 927277528 558037638 853774202 984576939 823407914 776793139 790582918 782707535 861948067 916481098 473078152 11316503 520515637 857446303 254201121 461223403 805307818 946218612 781261990 545994672 344945334 820573139 763984382 741517644 759824101 313604955 167796753 83814745 337774813 273330453 849599881 86999650 590642357 390970335 798077089 887243831 772245105 583058675 396509631 663907812 19186255 683599424 571168784 490308907 855083823 946936296 810010819 665919801 295689192 44916505 345340189 144206326 849663040 178945253 933780061 761467950 753259161 314587949 351527461 913402232 922582760 51165305 381865132 424983464 182856463 825536019 786474981 118307123 502555789 874214260 432901646 537410795 869637483 186845262 233851920 633304101 891730589 351632331 939016876 865321345 440580687 534552967 961928911 864161386 611732402 590295374 827301124 940973730 852238043 760123635 182263107 15826065 9334799 824536362 368039987 932565011 755132639 150256829 887845544 423839559 43504947 638223455 242165199 686914840 916992059 576186689 241724717 739866935 234784537 860749319 651255997 953392472 898714408 472308417 836505493 770637231 300598813 831039487 825383447 466434167 42207787 937686193 355171657 249316258 711085981 46461363 197305107 918728511 140688846 765174396 816814396 374619948 100407465 974010103 358295922 140758231 978229063 798101001 646839016 993306168 871767080 309542479 937976984 726639046 869975735 867578790 745378320 928376512 49820671 727419402 712248406 985721077 285785128 868650494 733742877 738007004 247529821 757670514 11231565 913288996 789099096 850132794 519530594 826492806 171441043 919515433 914211857 692799542 29277347 769138002 976973053 201668138 589219694 821065739 117845032 290809071 970478536 615062138 868441921 734940655 675944412 518574362 808465575 120564877 493391825 77657590 121046267 89500322 865282129 754237951 997657287 809221085 519896380 739091786 679573318 814025500 816187337 838781539 823716237 445275785 197398732 595791854 40343904 973227981 149269333 562158462 914784004 60952779 979722529 921213469 783837087 327649650 726085763 979284897 750059312 504508531 633300266 639423992 355024943 826380430 91684447 149195051 348365596 589544095 778245146 107049319 980428794 136271555 528397445 87369201 449435722 797121501 869270815 749413089 816753521 346104720 428321233 742416280 816681245 414446838 828625142 442199784 615803405 748644245 586320795 202724866 161019849 741937843 462159804 203309457 847574882 973970655 878836220 674233456 831690396 457433997 12742514 974612165 194505490 635972563 36891233 834520709 914598548 181658735 814705722 148220202 357176932 341999509 50888756 792464288 262148815 974045768 171674923 852871245 294685584 772023303 888351664 831703454 733524315 954059083 159653941 897350109 989438043 984250827 987151274 972076565 774776100 812597084 483863646 179708606 949789441 390465967 926345436 792392115 30448891 770435095 582077424 51184046 222668820 54384969 999040202 393043713 107617726 337552703 216003263 866980694 215660791 824379648 886009915 825610940 158397953 749087210 821737146 293105795 953077472 570492715 832744789 816763764 540333332 869847294 82017075 324196194 535122299 888191539 384884809 696757952 365155698 746657325 461929647 960573077 852496649 633563086 438898736 818854345 873469702 823917649 258469194 552581855 606809316 181916341 441404639 282931610 193225089 915307734 723882799 293582683 958375947 766476901 196690937 430197060 459322115 950242137 860304623 951065501 768771833 836704471 712187265 853109145 97359445 877930576 791140003 299061272 910149028 980515318 687933148 169607801 101147453 813165850 856251119 562539305 844491913 736055673 607718135 744394106 558515903 152810896 794349299 491929838 16453333 837026611 859472570 933287201 195250750 207158122 737273669 997845763 740798735 90894937 743166697 294320027 264775554 200408228 323831755 474787438 759797966 615580118 620002274 874374858 954956832 981185759 912324785 997350449 200299257 743202017 466297849 831334435 431444383 880527594 296385872 400065878 698447774 605124170 813814475 293681028 756863212 133604915 329868728 743403086 514144735 992322948 875427642 154823954 923488169 789666126 145888063 167200980 180566475 826811919 945415071 555454295 978326328 857684143 345166463 905245595 376980502 786640224 905863847 975825950 547215394 527326937 730207002 641000590 807823277 852815479 171682228 280764687 158581316 778371175 848929472 960902980 698117812 442724631 47706180 979795457 786281426 821658693 795274802 789842705 818692803 724592524 821302995 943907649 374097218 858025311 278157970 390137536 859738187 405396614 783055249 137107004 468204438 614374812 863676299 823347558 116953824 364653617 789547340 974956959 83326216 575087644 246162420 918444536 842490370 305011778 625004510 960193698 981476476 895863707 953873883 957506334 407511126 112302603 826971928 241645052 792339376 932531447 968499897 343183769 245998991 722443664 201367159 862936220 44795772 519255864 16197605 852123280 590065062 907918128 257792549 959286962 129669167 780698492 287202403 783242367 410950578 986043268 715042747 824657880 638355531 781555071 376503599 643758696 778773931 822065796 471876416 941225461 770254709 949473054 774331332 778773701 616807214 100691410 266381969 521319733 702739771 609061297 215483378 433525846 207517569 701863491 781881627 801915343 987521272 423874688 89138104 961818700 768776805 159724627 813156131 871068496 201260707 339526136 718126299 713816241 782545645 866510512 165478878 777199129 691975455 878335890 519859266 362339032 990628995 763418342 199832557 524981163 741700815 933873810 468424282 212497034 408469342 767650312 729046843 176369095 649953512 386104928 444998045 888727561 80634368 310144144 640704628 666683807 756551959 855474907 750795286 765186262 922556836 906088414 809169067 620099676 187220330 172549898 742418752 355875131 864104416 587944657 404812516 955304016 883867112 974426951 788085721 285418454 634798345 494091092 994871312 191688970 342631726 877661047 67854949 835196205 963343993 261000947 19883070 410216349 231312525 836193876 961176493 527609644 764006661 393997598 805229763 377918775 986879642 381850809 130299645 840446673 808180270 375727774 739442380 747163566 739241893 831128551 997164902 843888038 16202043 716972232 837811196 684631092 444177868 756620615 281627181 610809509 213206040 175314863 177137837 53860116 27695016 979973205 940080546 23593850 914759157 24214167 547827471 679087949 967206482 917706923 806861897 796538597 760028443 608255183 582095309 939857176 610748132 686897547 757915931 760486236 159381564 959089013 816246751 740437370 62134722 633641550 871276720 908321235 422917326 694523152 848865074 527930453 827925807 740212527 171483585 984700808 341014316 81784963 938179815 886036018 753591273 596403855 786412533 512597524 767393853 999566115 154299888 647274041 853685590 744501093 122977060 78001444 489852251 841025018 951793309 788371756 797086872 90536535 899848775 298742498 686299257 136171589 967935365 558878618 225763193 861692321 945137138 605986131 880030130 791146998 579348981 687886875 480341016 940532880 741587316 360353982 809125634 992035743 269786773 342793004 622326507 37114383 907706142 293109492 943097392 536878369 828619645 263598005 110935702 668260432 218374958 269754927 958701702 828134426 887743215 606205767 793767717 544774732 792935663 971107245 346163244 738445119 49053654 59799549 876285406 910207905 151168958 941451506 702012943 492990768 813929622 943249844 754135816 580512435 757857518 30757008 567322399 882621563 800756619 859438970 895074279 294018548 848806653 621431369 145538194 860744915 531612330 109924604 356536908 477926723 958497572 855699167 653100088 829091600 928752472 925474364 849624142 711016070 831328154 709886819 851783492 789637911 483180843 612498905 801883148 186805941 17144768 805405232 995339984 638461522 976405575 376978817 394358282 966542302 378106497 897630029 981645449 796579403 52326281 967461885 735611714 189502804 912976821 762161747 83398874 805437672 604643267 840260430 738133628 678793775 488391652 897227876 867129333 846886698 592971006 662737037 68252209 622596940 60569828 963032423 330947436 523430751 295371841 509188086 737020247 857414062 981454455 746529817 483168964 209567594 396008155 278560234 300090579 69682735 941931262 311004412 565567465 226650953 531772348 89483830 908182137 206710567 357838401 953313663 318398374 85503022 194275394 259071247 721859239 730456816 998598488 956956870 705237369 368985076 991293259 693776374 440283355 912219214 754085307 731043391 925313061 762760943 803213861 975937541 317604672 655046163 782370921 946076456 200164079 920565019 362407252 775987449 401896662 528074864 895999333 517917285 642329143 80122563 896938728 612855358 565078965 911982478 337686384 372906090 194601702 871534624 932652860 739647454 782038345 534783256 96153732 296277918 359040490 171142009 790748558 486958569 619995278 824101587 870525645 203708723 810056036 803065779 955911219 500634103 770920118 849063004 859703222 514030855 915986940 980346215 971960267 707071973 935125663 769106252 234657876 863179499 851409746 711377689 302425349 795932804 926557953 835344105 141919773 225024576 367960224 820911847 421101091 475355188 998576065 369683747 803564631 844840712 190506737 300297520 268955711 570648628 350344654 497361064 38774572 486554879 941092089 756893027 881682365 342908206 302836381 133456209 282721009 95251947 209289861 841032162 503951965 520733760 562353385 682478296 474337311 881388763 946061571 877291689 577681782 160140221 908075751 853510271 194052674 952617842 649450865 201464152 343543345 254736634 749407882 954543316 546237119 941875879 894525617 98317344 932947597 865502322 121999815 115461507 939697433 881960628 737020247 821238274 711798603 277136794 765189499 884040707 229537267 521761 97874439 3092804 14616979 214365584 798558714 156556681 997599253 750311540 999933358 387666069 130514397 920856115 559481411 19561237 360047668 898153330 984349458 931464589 510580255 993371761 922485265 960176860 212307870 804559979 524260039 467956586 520009801 705600378 951423339 949667318 529441380 914463255 809633432 852000718 629183978 807455904 822574389 737020247 18329061 961383599 415577356 801513616 947853593 348240663 747455575 427142892 577501624 745039184 957226538 495802975 833815195 882463883 391342554 816666614 340257966 926858738 813621462 502230368 536979796 971814219 476239314 805357026 803282696 979720238 910406188 873951443 187980057 889547590 903336072 315273357 78139754 938085642 839690802 932155132 635652582 40477472 805589926 916882237 653171828 393706984 677018687 758492643 595586658 839433213 722196981 799300876 869421960 413682791 204368291 693642344 226716264 746863302 802561088 937437418 820712262 630814062 996067589 504956279 938581053 449815724 245782461 187945366 781717881 182778799 869824966 984287875 259801290 957017332 741314175 571950266 847415132 898152751 164430175 90648746 784859906 643127522 878134433 810830967 881317114 227331385 720375398 956789941 951868447 823006411 659235170 466792869 658588316 282926128 280555506 917943541 581750447 590593674 180810075 196617890 738912418 871400348 286644148 741635282 824326703 961266446 984093527 882122001 560718429 670164901 224535491 699060477 711826545 818588108 925208320 724592850 903815270 933153526 998209854 873609949 774749270 126016742 192055954 849799401 860473185 504861567 915480254 794218888 811051190 673686116 338292945 377514176 577911011 499172392 372549692 59498187 704923804 43936328 745943918 952698666 724117453 425923434 48930071 762870548 113047726 206974131 962073039 914644379 924808538 564680984 273957387 98619632 838595000 940606069 831778662 704498659 218736107 527726027 866521256 819699659 304683068 536963625 791650784 276825026 167336385 785993589 813384115 883877775 870252742 387027778 963431478 907357448 536533405 210747727 915007591 351514124 368938333 426247385 784239070 596442027 151473431 307136839 88988924 754493490 198211579 512807656 895377936 468328688 912321871 785037543 602045158 437925277 51146388 735106571 29871892 896389450 133161178 302644050 944386548 965221347 365337785 857917184 375020787 633883276 770622079 899587088 973698501 934924613 738715793 110588436 130864835 525790957 318541662 872127010 218397120 289836137 593435444 865901022 410273040 939182655 454839811 137835353 893857232 178474855 259238125 655724736 573949755 195485621 811530156 8723724 877743619 743183020 785308162 847838972 272978199 270888688 608149168 913567583 958775 612914268 631268123 949411144 901069156 978301318 795193954 939070266 701601420 943714248 825438472 761563476 900255176 865465731 31451940 990809849 564519802 542570665 502954313 885734001 229549407 797041371 817540647 768753340 885277500 250098226 863970642 356047735 858960707 253441823 978043700 342075386 805182809 455206350 48041295 894866879 537470616 762682996 742258080 259075381 345099769 46296732 984937467 900480788 831356481 931453658 835044038 914648504 381964406 63617353 883985703 185593964 477916162 798996494 749177696 85435301 822608616 92879161 899308460 842895991 143435891 338810468 590682635 279640202 916990462 958862436 585722508 428066875 486199823 334706910 277241481 865644311 984488366 947440206 291011989 762994248 857853110 593033370 919183592 958484214 903381108 270161525 585029903 985264748 915939784 218594686 447176441 265769614 925672565 247386290 820062893 769526008 369096116 511114401 787746343 777795560 178401286 640369405 628561644 179323874 227113089 861686650 859684313 385937875 425714868 836708200 902327111 994920292 988160288 898922137 737020247 479568452 171387209 938517301 951140446 782708407 744295448 427713311 401634984 814984059 444793656 109866389 862794468 711440019 913596508 129785666 871692583 985533771 340677840 931119406 512624559 947067167 800815393 330027503 899807559 226519581 329565160 927104127 149596001 930030384 293195188 400122063 95473708 996065837 783391114 137644744 980048042 972254659 205653864 225577853 659659141 936615087 285318895 501632826 607597811 464052649 340775317 996627393 815710186 964210130 643478557 464643581 855410420 710649385 379656481 779009050 846913853 890914853 649128216 54802544 818877974 642036750 940184829 806616279 14270575 930630453 465561768 50769348 364406796 321446794 878551723 39813346 848864403 209516077 466234803 805618642 980628267 483350424 682821194 321344121 600704675 556079726 802260892 794507446 954342402 882742843 957834893 334011259 158239305 199390128 825612660 404894540 488870374 762868752 385913604 19307253 474595622 977254511 846469533 902901115 272915071 903197472 147079187 680672882 963432819 940223282 10511420 889321478 844750532 973054402 891199588 835949967 855807526 872532177 588217165 997747164 309292619 408903734 960911955 280834333 104493899 990610308 965235148 324650748 800014497 763976214 512693985 757365089 870564995 861974292 184975507 495470715 688693283 993581558 963623165 936195553 42336697 783808407 600152404 610652589 370226768 407431059 263672970 918685798 156012822 675853722 86516207 384929126 392304873 534187633 999373242 565135090 876491943 644097709 979634230 244758090 438846885 879119565 392526844 390721900 8930919 981639611 852795107 811272338 354156519 827236244 888056478 862202152 643836217 939199091 670166551 74828340 583598308 802957195 79769564 479691182 897968793 485004250 958873429 144070014 991022780 808207742 838671252 338545386 994388182 791392767 534289981 786504868 854466221 913000046 764942768 774928142 240961843 171152332 342628938 947422184 137169728 759277479 553773870 833916968 759027482 967785311 663199647 266653684 750551665 660924651 874113067 492716860 243030478 982831800 784871657 775111136 940707434 889014794 896721138 923188283 746554913 775957768 256125937 756003424 436914932 446718453 818608536 750236832 454025094 672993179 934289445 845296485 6823053 321934070 459629960 856842723 879385896 773702358 180812613 77845482 395516615 752211825 260495376 203635260 938616067 272072322 856860780 531543693 59478021 906185140 812397054 919656452 781875983 450687290 896735758 778957322 739955921 924536549 809083395 12892160 362145539 812760787 841873413 968206232 981351911 199605965 708285845 815806940 905695503 905890788 204462901 787613662 762251074 218164794 945995257 952567331 24073378 463710374 92384717 717246181 901607365 329411170 315807853 738951388 981088942 672313669 470686478 114203704 142038638 684220956 873197993 897475641 390137095 986068177 978537659 113388199 907307689 382226220 806966126 987377807 173665771 503783989 14900762 409862271 834989740 265396387 225014227 875174744 747699623 916199240 979589165 747218849 404779439 825740603 848352243 825918845 445276299 839381292 596645412 748000875 924110235 492389551 926908727 897414359 766090509 889208070 921304126 765467470 999689929 277444629 859264564 421403306 775610608 231404413 585246622 850320213 805600564 751918785 562742794 941704777 823880498 959008390 477428390 737248121 402680837 840515000 450222209 789290086 794195629 116634730 932215224 667542383 279423143 402176126 336370774 325944396 274640880 835615295 874012052 970529873 697165565 709830929 785580731 950023408 9932461 237944757 113912660 899356478 489390694 895512491 96494690 890348744 964005574 756777659 371044035 127858153 628298130 490033052 111590282 492355136 933168161 263376966 116263312 435128563 354157865 151986400 44418816 751268147 783668575 51419493 747747819 837595344 192725024 855347938 805321478 874226016 940491477 406638344 38363656 88997017 159813023 653688325 792956800 342128235 400855611 141668409 19297179 875980830 302338771 670925268 979804059 158049256 798182136 298903212 784538112 869926754 601482735 850172280 467946180 829659325 650131731 189701060 603695978 271165393 132926165 923496063 730779640 81786328 957478725 289051644 702629694 88246530 453759563 948537465 748967173 265768294 314383864 593565015 273596654 877122415 83128302 281016374 559224993 685173923 958514223 767481729 117375655 317194405 495143689 836201675 364794960 977699501 789571291 937534531 888663787 133077583 742635475 983876373 721312806 748437614 906790358 779198977 477066874 373552040 540422889 883286332 907488344 479454703 761204375 894535650 986701861 34755970 809287304 936434856 782313652 759419277 750702136 26523488 479658011 933460951 908310416 793954247 735629898 885246471 701200443 619676987 772482697 447083433 325223555 906567541 964938712 210173440 674456736 549816117 512163145 941991647 542305565 967887833 952970669 192627425 208457501 487909012 758114930 168334557 385753033 778688906 285093715 716230663 575311093 595116724 986955538 301927356 457354627 982884340 917225088 903070528 199193705 471206032 336149338 795358827 894998229 959430514 519614105 903952987 487123612 24123431 221886538 809518685 783374751 454085559 798730200 937864993 254159507 832654496 792166970 999237055 898653250 339258749 940352868 759618152 11621184 908151243 754655423 839730234 525938535 449888666 177365513 491321771 916415935 817146814 286434034 202863695 965545644 906044170 138626232 679622810 875031823 988648936 654775891 906986975 74943918 968048718 38750009 715409143 289978383 837661768 972554187 930300346 792842213 859439361 811494255 814164202 720694033 741003897 902091207 488182498 868428252 886879420 904759786 781359468 835975351 894668083 422803130 826117841 996230254 653313193 876775638 39816467 285812290 784382101 949685840 817737383 870431778 277667640 443342709 881650101 699104102 645345725 999053984 998195535 702684985 67103284 92246 449334245 516240923 317281867 803307165 412659087 514643212 421370753 528962940 879636926 375008356 673356994 745901745 303559205 973717378 886411298 552071098 256302391 136276406 973188366 292883405 978822060 626489611 458055092 775801806 37073280 356332714 962581391 812333235 988556498 218484337 351423635 843459347 967698438 712759580 600014141 597066403 970208192 290721944 984623679 656402993 441738390 864184931 161642992 30296644 983043667 856338449 407133394 951253439 902074147 799587866 305942842 784776157 824373314 827646142 615512594 360867262 862941939 663516850 375534712 565020722 16399301 276417418 987848632 956568790 745243747 992182160 806537613 791050694 49059732 813134528 79443655 861755396 262064994 861445264 126840491 619796571 390681551 576741782 889286693 519846164 390302328 951057244 933921016 419953970 928083741 328312356 667478456 853234590 881131085 955433950 481816610 491670705 774730631 684729451 729429129 744212907 389073868 741734480 814638722 783669348 340739043 287771143 791607739 757238340 141702937 939837252 395576421 233881102 270612966 791343746 778574025 749671815 443614095 865035173 361360200 785624740 833131323 607709324 206305220 833179026 329019045 594441515 890342648 848161477 459967892 239848746 854125179 959889459 815462027 410145812 746917553 988664628 724597798 197315885 171860886 882158805 954392071 710763685 859628470 743884387 967868295 988324060 186589767 745060387 390500599 735210895 948566011 681111925 50061665 142275220 812160049 752418909 690095995 509459336 565621430 84443420 352667542 154245656 938437840 176215603 934561401 707867406 616937357 825069017 310544500 398014552 946310416 742514778 778137958 317187134 629865750 993369206 812187329 873616163 666609638 376329251 393999282 105878994 921981280 357072840 368602439 722741712 739711982 695619920 178699640 903469241 147898789 657483316 805132370 742171888 239808648 874950539 38320147 853330947 238872177 345670567 908852954 380420482 716436839 915666056 430235662 847407247 344073256 750906666 903115791 812369727 938942430 997677811 945541282 749018202 989840278 893032806 948835817 842540534 901775546 808183202 884398433 287634418 999947850 815506131 930290260 811414771 204952494 530726731 600386276 323960670 496700085 795957673 905975749 757273553 841949498 836525281 870243311 306279951 849192444 526153247 582658312 751434266 295379619 116147372 288139325 812859205 100151228 981174192 56636496 364224094 2061827 930582591 755235359 782155664 572522752 910585111 908108524 992238630 36102077 334438252 748042470 990214048 805288984 472476285 897136025 808554135 969916609 474475111 134557900 698956204 321813725 931228748 553164122 719407585 706381389 51031742 891457927 848354006 2516287 925004666 811233187 884850925 870473824 689312435 219494842 127171394 746244649 842265802 947244770 383336427 802088307 215273887 816737492 820232596 400293737 796236857 749646915 477994037 281206377 6810495 935097594 640014307 857248101 875455528 733254225 727912622 800246329 762554905 78481379 932557868 360642760 453120794 968758575 803861783 894230045 777095194 951741415 670741762 740724740 799944987 724210278 539536826 147662581 210555212 817256776 716912403 928413593 916151156 939168458 751921152 831214603 986519959 817668238 963682720 117670549 834970806 419234487 472159025 97332696 776385756 945754336 801112722 721444385 490316498 958628320 71549859 644240611 96654919 580371378 977662165 914614464 374840170 441040714 809589799 867987642 953715372 454305872 645696427 86581369 869266917 590337653 507296499 76484718 675810097 796320984 903750506 233868578 991182783 630421506 915970741 862893164 802287204 76836452 981306256 854242932 24956535 691198174 206127872 766528265 181173499 253583475 36831214 208086854 843692373 648294855 804618565 970253344 151803240 863738395 814068402 85206070 829936175 413122001 875483748 15470068 287681785 991575079 253475014 994543699 704473290 950329796 966090197 100966325 908267962 212815512 773021739 739278378 725981790 971117582 210607255 816091190 878524668 298216666 812431164 192706432 737020247 751229829 928036851 778169954 901106386 933410879 889655614 529188366 604077875 100524809 928123427 538333419 820255883 853403206 302845212 185213770 291694302 360243806 909429517 815161106 800015854 219347953 728035574 870320414 934085192 709501407 696266696 13780603 684158015 278151482 390322365 857967307 927870361 532743828 201199068 820294265 963611445 535177422 981514133 555118327 600585472 225003063 45769784 451235463 779454263 997793310 748841336 106210199 926056402 941528107 738377168 209081016 898338292 303016657 751893932 517926840 652903571 746032433 770115130 823396123 324327555 848011208 735431327 784809566 322777219 978969528 559236678 945628574 999644972 385883108 883325864 428149677 503537561 508542141 646578843 610004631 867554377 97337128 836051889 328166506 765200105 966706762 979093690 832886362 391547367 913135736 657524420 497364044 940650952 225945982 299200374 825302889 950647589 35144393 756804714 993997650 988260169 73068961 912468538 809657943 560941190 363597545 307466310 959928741 913350592 938412252 734716253 547428644 5382825 802606879 730768171 835643299 200513699 862544440 101900717 977465810 542541811 146127204 939093174 972389484 68456173 283379108 519269105 371053231 96057220 326426692 201483502 205933928 139484149 603567651 616827155 815715617 764568830 983598259 649728499 370997609 824822170 910453451 779829559 302706756 85418642 272312846 633860581 246351967 859935862 316559271 59185511 434979485 847918658 759612585 238934984 362086116 910405651 302289209 136375681 178864153 30154748 869896117 227067804 893456139 975314426 972473263 816379763 890927796 818827207 925322465 714233895 296220388 268152307 997853532 432379143 934165910 835669954 852555767 845945696 95469867 806323104 334686863 275892084 808276033 985642059 96552221 560295422 620876387 774035960 994656081 950816184 385239949 140768533 783900943 924371368 617065793 806291073 741236590 48954671 450126257 980626251 994548729 785495381 996888971 44136178 514426464 272315252 761850445 835687478 111776533 845051864 440233263 966093356 215651376 750090782 932043960 774267408 257980400 826288687 125476175 450396134 938656390 740016489 214662333 864939101 789187878 761538348 756503535 429475890 172003353 745458048 926465127 430076103 890635341 262763393 424800490 745512513 613354876 977994690 586033868 989757634 832797641 992259545 775406065 996995772 919835822 882272075 999592392 350610710 399700735 238286326 903211671 211589102 676606291 252686219 24785426 545488417 618250134 964061490 781130800 764591341 317080609 776714355 953533437 906906378 513949860 474568605 878623822 460750233 801429383 566928082 846281831 643523625 732114712 995970882 282132970 868874005 470472034 834037238 854040203 725575912 183745511 781606899 371196133 496192491 816134381 888051540 776479735 279649989 521851101 362349156 602833399 449968016 360019492 34033926 996077855 466639099 349002338 820452017 708535319 826520968 92375220 528305231 810187951 686947466 773135785 790723895 810263938 779682546 699361037 203845165 965990382 643223488 647421946 299618594 12165941 380627895 871746482 455401127 709248152 888521776 143101020 401717224 791194229 107371926 701518418 737802143 204941628 412503097 923258292 238898736 924544562 330133013 108250127 677142685 974298876 297706947 438055283 49223760 982665367 867789414 850693203 986435205 245079813 67260860 864911491 956619852 561319602 601449566 789555829 984062724 389326691 651547917 525287601 936957554 147962442 393628827 649635667 757247175 711179763 507313413 243858782 931850380 810631486 777512451 326901021 881336978 985947444 892356156 129757747 925914985 764114702 390396056 158004558 881687817 901526758 845577224 429697237 431038035 333995163 132104591 840147081 712456325 901945471 865979549 135637555 295749378 860277515 971838461 817164463 653348427 973730806 610384838 740175436 674572699 902382840 626941564 573819304 904746268 31844499 883300758 843552440 959068001 731412243 809780956 385173680 984388084 504601100 633552332 777235844 847817076 253487148 804875576 794149760 47542582 38747006 739582074 997214819 271160415 795532618 287794603 854629032 414923840 564954894 927558642 172480166 843736216 779642629 987959415 790565706 334776585 940464917 915675188 797152939 274990693 864050422 992914531 407515757 722778469 122242766 572651674 831039460 888713076 717414495 784358587 433801348 869052954 874266639 846890951 250167771 46111572 943240472 100421282 990734220 783811129 347353783 810367488 834217213 583405605 324405125 286086537 815961233 797274370 884663499 650563610 519494994 488601642 939051161 552160616 108059280 776361572 183152783 111407769 892753666 51953353 527443884 669680647 722543693 562306755 823743907 626931498 972366847 763428632 859669186 284457415 79711478 601834870 740417304 771411833 750652411 978487712 590837368 992430258 649809596 493011134 610580161 508504844 784844394 606992983 987904257 433071541 780114278 820254519 847164563 195998358 336115256 485438344 64002207 956682077 288932083 84255061 356130760 134696262 397559414 680835352 400680555 390825305 941048999 436841266 945570245 199939820 982788391 752718518 737020247 348959638 186051425 880477304 814921350 265823893 240525103 108196292 365439918 891970001 849533480 332312438 982406801 274791842 598939810 567266896 814460896 475674582 523952138 791644600 329438820 70929407 840320354 462616899 156126518 766812725 690014496 949405212 377418967 850112414 896360546 726659510 776190522 788084961 510081395 805067389 977598246 776214291 975292258 704969116 493794630 981874024 488322289 877294546 786788568 883356250 78280234 986208285 463262692 784877072 316838195 451649940 539226307 919390715 823279723 791175876 836936103 851222787 818924954 598124345 42844811 91670629 813061298 964814806 738448753 86886753 989016042 256181571 423858552 895289982 701703357 918920692 869054868 937978021 856641443 130977176 660903406 874083376 844877439 737239525 792533568 375576790 628568175 606691844 833810560 526633203 815703268 883055993 426057208 972595575 744753508 598245697 959367901 657158241 921782795 281172575 64962704 872069540 507236269 251311870 18517105 119334526 35314617 123480257 338977159 808243596 889104783 993106870 467962351 864561737 788180158 947398148 986768312 879324490 915139022 912995484 464023013 241268320 717930376 1879848 288123392 911804795 868179525 835685259 960933230 928890188 266456304 528769070 822036664 952699242 104313435 947284448 479796101 264149915 42451142 382919496 570536069 833932821 170325867 955198025 974792169 216472645 721741667 924434860 88247917 739095718 967097539 101309130 999089023 581762091 836887837 735384318 841919622 845033772 72434704 625618141 857874095 962072179 416429782 195749641 211740278 29428018 832134923 436353682 746471929 20040007 833617630 985751476 551194711 77933694 807806555 978264031 826704500 964121574 575242086 561987917 945001971 36298995 261890923 150202525 830886622 2800421 99942562 178722634 87925914 930571647 603733268 803483245 154926994 21829409 463562158 293781253 751141718 932827362 53546982 826931636 372019483 273579564 613316019 617573992 656944714 199352454 733454189 138451457 846506796 850756288 653105487 988278229 758399886 299491945 190207017 748458361 860699763 556258016 632194525 984557737 816090781 943950777 771134756 865190388 874239700 44993923 780988938 983741271 38767386 750247451 434125696 898699849 988583294 957842307 907070885 941482651 982034475 843676961 191786939 227002287 964859848 845821010 861515952 923636667 358624963 994742287 840002266 433303054 413906195 476163534 984396969 982561079 626032217 232918632 395834426 761768520 932287672 699767287 592357715 373328158 479268629 818632841 809285167 885025382 795512989 347452580 971502759 704287571 5471311 873140026 827627189 303177361 562645326 693136213 516724982 757274319 571764974 861292336 163183400 627863994 827681490 870020878 229770556 240593315 948131230 110385543 118020546 863528703 931379779 76275989 737020247 984198524 929755766 507419472 301703904 73820203 867488822 929429019 796166538 971938018 737020247 994140813 171605148 800108048 903725948 874549298 948962587 95258777 962573160 673967203 744777462 973919112 651540562 842242530 331680664 794181948 349790517 27862063 521122303 338198334 19223520 876541439 44799889 976265373 968515700 276946554 301529203 932577367 736553169 970368261 902688386 176517148 302900811 223284336 401786811 133715345 849697217 835818701 438773429 588102032 870728581 865117764 996092171 363341585 697145394 773369800 59266960 889187494 752662711 681029790 495127701 982213207 968265205 465345549 828400052 750848922 173692039 955358102 967977873 371124891 796569943 158956136 878634890 819211887 415549869 783535116 571678477 135143731 568224833 163593166 690283312 646980817 943328074 27156565 556103886 876445145 204488094 874573229 727021694 246089079 981635631 776794011 709380931 200615178 276495297 468595022 818866339 825769766 277077109 672085071 520721345 833720066 662578596 38787932 203189728 965974541 418547418 89263730 479844206 744567076 802778530 425161626 991050923 872985611 969182636 199104503 802013283 846329932 143100179 794781519 927862957 194914516 352055013 872821863 184637321 317605824 866201911 775522419 426180064 274639048 683320387 781669234 425689970 783657644 362006201 82391972 746769722 802893388 470311037 622812575 983223451 882852585 735663475 802694892 983121789 968524719 359397992 10397738 828901600 965497351 125001537 823659862 859941427 754666057 880745361 913670982 518852214 487784877 406470938 534964110 381684662 612081754 619556856 985950075 190898456 961394161 850916946 829014273 988197977 845943806 967425143 205937950 363729955 798421625 902413892 440483383 688863691 688878208 573312373 733998609 267949337 820266863 819458463 820861089 219343558 713355884 959829812 367648512 942504072 15068636 839678502 926143060 63768284 930571627 665425563 876980932 766601551 937800131 693125019 412179925 535625377 956320477 915806155 968961989 797393700 994578756 771626751 988018830 61672820 783692334 817389365 398978266 942312547 830498382 838110125 584898624 197079193 993829831 931382192 594350353 903010504 846637314 636452485 430969780 911650736 972436776 860617250 745565901 798621985 128947043 46862437 814115258 422108520 784753546 330640113 820000132 871251132 442144130 496660224 821684403 943275072 811083506 835565917 231438515 955647285 962322737 535904454 971599597 495010359 871163556 961957636 906868495 577489488 81026364 750880512 493355287 988515889 932156775 834882034 13566753 861257385 665883535 308098495 158352261 433747896 794426695 725184858 217460718 202136236 470738644 900383123 522017975 969699664 538585495 101304069 903629289 926656868 23271415 632106547 276697528 848321338 961762214 227119897 491354843 978944797 737020247 578721339 772464651 984964726 903931184 961024120 462410735 208118719 936017686 939202809 31856847 805530328 261564629 765401748 920168582 737020247 971307167 948687827 185572173 911685719 641234089 992837062 984504041 774591009 305382320 251769232 978663470 397613306 971279298 817918550 631891476 746562155 914326164 573652555 846649683 833837891 828135058 836872683 762004158 733715437 973772808 895432957 805478087 440921953 996233210 204562434 503033206 626172896 680564415 207620844 813419983 808560153 842011142 876934934 890009991 493675232 873335565 556717885 804275745 250406540 23367707 126529330 206152731 900139720 775912615 848092383 848089683 260155563 855160252 630092136 329113824 818969035 861975637 759649712 515983395 911333307 901907618 778192223 610964248 859925575 356783946 584837455 775936904 511982254 775632314 747717806 878792614 605377162 783070726 83273792 867171066 742176301 470467161 562243654 78631298 825116039 956245529 805321269 36272876 992497318 803496172 877475692 921244183 869331267 866331065 526442484 498729305 838304208 797712896 280817809 846479404 594316607 959152486 699517819 880324803 969216675 721138720 519491764 329158751 298124223 781849476 458768068 875492547 332599466 695543389 848470114 703438732 351722469 285301339 640240426 832420483 791500609 776736712 845986176 818179376 569088783 887093874 805981311 808152404 982942918 964269209 608106322 889582996 433776703 822442837 900240312 799325663 927117116 44627468 256755308 795626504 671368413 329090078 395093413 505520848 630299301 240957726 938466511 998733044 850250222 40033354 495711716 142192213 751712289 392762415 854781522 774591389 923741543 225537861 792043762 894524805 372556277 528207854 347831815 928390954 733885212 83444868 983933349 136476172 956907671 992215652 196052257 96832274 831024103 927105253 908064319 235029963 776506165 517865851 996303161 742414125 910864918 575794211 515686716 531788686 151710662 882978762 861022940 516950719 783464556 841719418 24795697 111307128 849381096 445767351 963237930 18520906 961513511 944964554 846550051 987985802 272091406 908117606 843384952 289829654 990513841 998239129 164910783 814592256 440729416 273167165 197971141 662177645 831638521 177232898 932905362 198266877 839846371 106354161 438136570 975990507 251776974 817298726 758132904 281276939 555526255 738091649 53053290 955763126 869806184 478582735 877492843 721497041 73932092 530393409 981920685 446173747 758328684 800813144 294376874 409342889 179370837 331181340 907775246 568927324 704020743 921903164 419044351 925500106 286494605 877460803 915296838 49245095 336128889 737020247 788539240 659284263 294288341 914989836 309478937 343448693 999844382 385486699 172955135 858221468 339102101 557218554 622091754 629456869 195634011 503600021 930466520 811791158 210770774 729944229 894919083 842261015 903792785 841954048 361935468 108101473 745869157 485580599 454164191 286779478 3881751 982074668 906683220 232772918 366654227 844372103 963560129 815671738 878304867 476524790 266614957 362530464 577572853 851287881 440751273 679138622 949041117 30009466 848135462 382924283 361801068 755133903 193282916 808142250 67402836 870797610 161210195 863625634 373466734 747744841 920833667 610170782 949006945 943915767 740604152 995603913 479904929 193214798 365482429 517662162 402492667 467465884 791866944 955733857 640211329 815016397 775623249 492980597 274507752 446475083 516037563 743238486 820887543 802565339 851910489 385460964 897764248 302312347 948561546 724861217 206549762 272986227 540576315 133852727 374663244 170894830 562451255 372590740 965070247 119406718 870136326 840098551 902419714 171961433 448522222 118294551 200008958 332363837 256895344 952703854 933545525 770489484 672876604 749654386 789578129 309582545 769614772 844443858 723685298 71978091 487200308 887374197 231128653 753905839 440560684 801099210 348858354 432410424 178398978 58374641 751434265 755725420 395931144 575876850 906351127 815371400 921177663 423408166 285323333 809409268 241151704 74535591 146973271 23647654 956224612 868002798 708821637 790089097 844265058 844238464 809675034 301018287 913180095 855269628 142310154 885168936 385645270 338943712 470815173 743065663 267403489 376242121 608385231 937553560 736593734 903345535 386016373 21772584 928726492 13108889 991056564 853524362 937849980 318759112 583983358 645421229 863713918 951454328 827017728 789936264 776406516 265168747 933145524 258268429 196275814 784942048 117721663 772482606 841875502 404878261 922532172 501106659 76155431 549298719 934021747 71493720 965888940 934905485 952937067 849063699 307138394 804561753 1121758 689111956 938612913 861570786 993881231 949469294 254534960 868547269 887099079 818793628 794088185 84641083 394834392 744504126 538661437 935949623 632742127 463761998 789012561 786769333 534139460 902958181 886406787 624429277 978098866 963871976 270221146 980241763 958824366 807444763 104091826 795965136 621456310 165846511 860453756 973145546 815293000 834185536 902527369 941816760 956402092 18609843 879435921 605276857 843284303 372566042 964901051 994422452 898773834 983835543 847827294 175006683 3667722 806363664 87207220 869030254 933068328 994532320 954902308 544656112 953787942 574587354 933257390 763500182 543206505 860428449 858623192 672303190 739956797 785039844 934146049 177671215 442200064 892170408 254976825 281862615 272937816 142301146 716760991 845577978 744927076 166687374 461525244 677155511 965814876 39758064 207877960 85926661 640615401 373758239 927516091 453403692 177117023 318781792 498234482 189390496 793767111 122829463 602886599 124270174 823400154 190680531 932368528 875749746 964037314 490657839 463350710 848333832 497147464 238724711 277386501 587888200 65209514 903205591 695887496 51439587 656490635 699392946 640526131 765471168 809081240 938362663 763075308 873742395 646630082 137770155 719532472 854060131 939757131 698638325 807392664 231620116 483746133 746510080 882642721 968357059 847673647 308007051 928512522 967489910 607287711 808765268 497367714 372013003 938375986 775169717 789288616 111675576 938380008 997351367 293422726 828082880 772616856 889350262 160079516 905175785 956339181 386516334 952059405 961986655 948124062 484550415 762211036 385157891 202962578 974368595 837566102 491183379 744283132 760338110 321137013 829802730 789032946 608943294 383286439 977997625 813478307 252323330 813053003 761795477 596344975 882800857 416890677 866627940 238715616 405865000 462697360 829839842 821294512 190999093 850885226 873689703 296532092 902479739 803839787 339904881 457684239 944348988 915488830 115718205 956380989 871199301 305587910 914788920 925687056 161534631 213213648 623219793 652870728 992252438 852440057 936842967 70363082 90905756 9903690 275084660 347601456 885843431 997906628 788841050 153751379 983858847 899584227 848880962 473237551 117362173 958158082 824349610 735213025 848686468 855797443 779568932 296581852 758892521 905883346 749631466 904581516 376209995 797236140 998652147 995328502 779870784 838196632 865404704 740827813 922950057 932529005 836226280 835006971 399855677 955336012 669800264 234575067 871461325 667117250 752295637 589684310 827968849 958276690 759430442 963514179 417526394 662762515 931674708 7982158 789469357 87974904 992244114 810844135 673160763 916850062 854131694 402627522 259339498 739029971 836515762 980293258 696507602 477741470 937487879 775219587 952991264 361949034 811177771 519657606 592622430 872236192 895544973 170414875 359799663 257285064 774584764 185603708 947416644 720878469 964963731 925264870 839690793 914543174 827632187 628552446 789031897 854083226 801848376 781574944 85056058 12215529 460708528 33483631 94855017 432113749 738979776 811377947 431153065 282857262 786736859 707605003 802956479 820067697 743583682 486665067 235129342 226496169 656944396 782247687 63141672 868894687 973012797 872485092 659780040 986116664 860077142 850255151 930252251 714358266 613261454 940708370 815398201 950534894 835778430 767121833 918150341 914028602 869963510 599536963 557409107 958032632 808226194 448229886 593659897 91672921 983222931 5412989 879743837 852657741 972632765 709256081 451150806 985716875 172188194 200858060 117488105 898914749 162323043 964696038 171114502 703799690 484749962 774470264 463471692 469948788 203088904 982991243 22009687 953109298 89994272 341392024 234934667 247318518 297315706 516372021 335440249 910400329 433149954 975845727 245092239 513199450 480368671 509598277 883671847 758161188 50154089 790333529 46646113 852721032 960195188 896653415 745644618 770463482 557069711 966947321 239946930 878774445 436191144 788018082 979859827 824280328 985322768 843281135 807051003 332355458 890046502 854006934 417953167 843349480 633146253 765325947 874089878 156341161 795820649 910745156 494949867 817574431 510917734 349551645 94012075 806522496 119648538 696818273 297324109 756801312 926339762 994005734 413642456 103900074 898326892 772244937 795628918 839023340 898722616 805540170 249232842 923669572 872598527 745336767 953343509 852475327 842612048 396391721 81873242 979367837 862948611 935389927 916012338 824905793 818730935 736472180 961479783 449162642 902668726 866051813 591205424 298430883 961080312 957305143 775357025 401009963 277308052 755038212 305400548 744376907 740106351 935325645 348935703 907441811 731405689 899757129 170801970 452989451 79781858 918847386 200233906 829175723 839790900 914959252 600217007 280558681 168066858 989247254 806555715 691133560 3787726 797560116 903232904 875173540 744673741 821615601 981970774 754599947 43107531 750974347 869609963 691666711 116174389 494261112 432288141 938843696 787443373 893122513 243620934 758192490 769245550 760285772 801751144 862529269 768964415 753170732 953701441 630816489 816502760 110881753 92329555 366903999 416661771 315042642 247341784 891871679 822245662 152557670 254945458 871032039 696584648 956906783 114370916 39419335 76439515 783955111 527370795 490905157 911613011 427399488 782831937 754011899 871655774 72009287 720727106 527088064 867691123 54110408 491727859 989705922 130029439 952570890 567252661 821193383 803949313 17859241 443053730 22073381 136064534 350551958 159408779 45777867 472693835 477055147 881013430 46617462 296988772 557881141 782811634 617211955 978247057 312654712 578216968 225888353 161419143 914580641 239040319 720599980 737403839 820108457 759563359 986599124 474050484 729464699 794293586 444985414 429648081 395277254 108720441 335525550 759443059 769596064 737299755 480880758 878095712 221983630 577676020 780886855 235203605 774933447 939621006 71115332 270285977 134560411 659967847 766806245 825090379 398322367 226867862 430738929 931683177 3624599 954821635 159245513 946670818 632346515 614497123 939437147 132027108 223845262 845120858 476477606 962120986 373195747 976792197 806707172 861669516 802181744 415030973 820182006 816014551 875415144 870528555 371434252 878629665 968557118 805641422 863517211 93113376 974793204 220853173 478452271 877596290 923310184 117907962 979373017 617943239 942841215 835833431 901788340 388173270 537925158 23724854 934851308 882752335 839589792 988269641 950920906 873268620 523586869 848343759 743786949 403834766 775034879 729487086 960508310 634149260 565778025 756188378 854279066 874695400 204643776 756441766 133036541 764478379 348640026 141777981 589851943 970225664 992272659 934910392 142856678 81244913 122103178 997956352 546036684 956262194 50153018 896789097 426370232 880739002 589436569 920762906 933520466 769044870 957052230 718720725 929695127 361206083 664278337 852981728 535926835 762854022 221460627 973182824 64344533 111711268 745289410 314032140 838427470 871032120 834883638 681684710 679182387 874814444 333934245 107261047 999508015 996727975 744959723 749467735 590785899 867536894 818615386 994515510 943636750 773230614 823480594 820937422 372425431 12217022 743311116 891611703 911568748 970287074 56578344 827987221 813544315 299526452 633052091 745953813 555769556 906000156 237307612 913949497 808751495 927182545 31238107 44100396 832915769 92975349 991281736 982912698 869700049 186630427 424289919 725854009 77790948 846210655 773099374 169289498 85698978 830640086 224995606 573950135 520109082 731160198 985334859 921118600 139659417 895428456 160295233 760622755 290453550 137224256 997001938 100971872 914202931 799000873 63166537 457398540 655620162 525146168 887459645 930731887 745387820 850902721 36618469 694412037 737516316 420139960 970645579 281205979 95213889 725924567 95362758 982310182 368208750 923797315 104583389 826829938 869393154 984681764 978506950 542330997 795785162 312291847 631770727 898904428 898733324 591798091 627594674 474498096 622970100 957918179 127571339 523376021 916108179 212514765 515212071 336677064 705996237 786914464 529522787 512615260 964186227 763049114 30349147 138465432 279451275 908612484 815519960 632508056 363316599 269354801 976926939 661883566 935382894 786767658 832444236 60478070 487468179 862989979 786330116 230473310 427814019 1815894 602963334 951780304 49716249 328604544 894249887 912848738 740004702 809066201 395245473 840458591 975732970 328186079 714848546 189848072 113452254 765574676 47525032 660579520 791784029 769794054 753144110 930099151 669847866 832048995 567321340 911299299 950067271 384491725 899419231 68891806 870957864 54707046 957718996 860327209 750174169 554815490 903635442 763798816 831846537 532874638 641589689 199041281 828740748 801586407 24420417 166914505 574709720 471100101 244903360 910722471 754796227 870365150 593861962 707727941 135883140 716286028 534508146 795866858 368893674 815753865 519173867 818120118 298894894 620731935 210382624 226796769 891226175 842152591 967384476 747029594 891251870 957360870 698133583 273402511 449687318 208775878 929559944 921973657 809567904 555223667 77326092 117066286 951818394 150776011 779076184 881400816 809484278 476007156 281365504 671576328 967635742 895555721 811039998 84258628 907699595 579039817 109054756 920550961 790443718 966713140 993691843 978126398 495794286 838950415 912944058 481269249 896462758 437610601 501795835 761537805 54982274 894704384 355948705 590123173 294649745 801100575 51301365 918356520 740669166 886429966 922244950 408403364 987500541 591296148 670158561 944026944 86861152 63184204 904583557 728591285 728826191 629356259 261819001 897762287 300965292 836988815 941595856 707774582 810021218 564466281 172746342 478551793 76685301 845775757 885352405 590080661 741818909 91708237 891712708 569892573 235603492 726552714 859240726 399285258 651894079 271392651 855822009 987446462 584688927 921274595 539606964 389986325 694064082 875488722 868282401 735215042 927815796 170948598 269372359 535791029 821437542 976652148 425807830 858550494 461227288 779958045 903674838 737020247 719538399 941172281 719090880 75005733 920725749 941240856 927700080 754628153 932492954 782703385 31208432 383457000 751443853 820789517 997141125 997617521 873619359 119321217 911254766 58433842 72178346 788935505 279855239 967259607 702916108 55834451 90920664 875495382 21342921 988116491 200814093 769605762 994636435 696382150 140321923 993575469 785373605 79215144 323970731 156233653 827087559 105703545 597551486 787533852 274725869 773290685 931700877 759499007 915098073 926559952 150052223 458321663 750125856 284673504 843694159 966647559 979689674 401770452 962481159 452489915 6713875 911361085 166720655 841792204 928345682 863368966 915987228 782715216 960717821 852645957 120378707 754890092 930018812 742151888 953072629 992593539 857494551 968080431 576463510 993010160 40798532 103963969 972741960 15866187 658244155 66947671 924057817 916029321 965059766 886409412 365087526 310259026 813107437 134013827 902073145 992874032 171713360 905504304 426902867 68932091 816865826 950788609 518284592 835408009 829553772 738012178 780406261 877512196 49215956 558725076 509201443 778176395 48903946 975489854 495136755 798469580 18981018 48334042 668564234 744713710 869036705 958998093 914023292 314234809 202224416 180892649 838224017 790257290 469920296 724687542 887486265 764313667 763204132 769646818 374538405 718866353 422532869 603791234 850038804 486821904 150003665 552330032 209335749 36176449 654993061 865833480 204501903 259594359 129803789 391133434 28471683 50788040 821314957 436845272 780078661 266064001 846741501 825135558 352008423 706960181 446228555 248139605 835921425 68990246 871606882 932163207 30373998 355313206 446356062 903074205 36759441 140931981 936178496 414056895 52488282 178023489 855914583 868080388 510936244 123451416 332175601 924318480 397046613 259109632 835203762 32870735 966779966 737115536 609714307 35110167 358866678 957956455 294426127 189228483 923902152 885808904 529552751 1702241 764948378 800262638 617502252 212329229 185618101 757067820 793967706 336161502 882809889 796977722 994846643 816532500 440713352 83165865 191291106 122597456 928081205 890438202 186043854 806485239 321615050 799076918 262428474 593546096 943158316 980835950 248088928 882603737 836870488 454164155 67616003 978965668 80008149 833947748 740270345 648289255 357525661 58324182 550871160 932417415 984202628 416645145 521549698 640148119 238046816 752263865 869603557 302883662 912149951 50579896 920179896 923203858 820561941 974695912 964769606 639639547 952930093 205855301 805000924 877353657 140724527 522181829 228100191 789978691 846745495 240046012 621466751 992593305 990976589 906371327 772312525 568612347 661836587 971402469 907143790 807892298 489059499 904706721 228479725 837626462 227896326 337960776 878803682 830911651 292317120 593030341 510456694 826724239 410571763 894830646 151397255 305430183 247081099 725307189 546999068 127418297 750561883 931365043 278669830 897940896 913983338 609124581 768009685 751067642 945455201 385006974 487157213 862048476 490972164 865155497 801519195 883330581 907494246 206717827 262737122 262207712 806797280 968754090 493339424 136348958 771143004 996642583 805349155 845542215 152925577 875267684 308911284 74472490 234592545 830745871 907760996 382345015 917364402 738192443 575329528 984813123 976224419 875707706 564298160 29735534 235580949 552232272 899537604 889156309 143406607 668479048 939917356 342859425 763281117 369046320 899347306 446153008 327961301 738657521 795584089 366020360 893981591 381934973 971327484 307753589 850988099 607664117 787038694 802883768 824000204 868299983 846252349 905545276 17826808 898293898 921165079 741732537 881220667 503239402 801566981 143425116 860708292 702311428 361890392 979959310 766609414 333783461 956693930 346890477 18665234 326745401 787340674 913919416 502530363 902964762 859920517 887271965 592235588 724682817 510478818 739039042 54325303 935976321 563238153 1216208 732518964 379109527 853974605 750450356 943989906 811713779 514054818 747044291 808806882 873778656 967139917 601694468 120564646 596551261 738052571 977536194 737353071 755509694 986659163 172122408 858390269 889501470 753808778 849995747 769892520 923463616 911216455 743289523 536956000 703141898 740144244 854380960 133470669 961733670 671391199 932081306 878020755 213344315 774372394 572718170 199270322 64732840 932977797 972368747 375065007 832489962 526509253 780437761 108103521 873640503 998585829 968197907 858756817 594681398 551218580 989429193 921616313 893251096 442422875 185439762 666594031 956649572 891910169 910406353 604848897 468043763 360394900 795261004 532367882 724643651 460603042 851500080 857852972 252456235 821056376 828273842 825841963 551969240 536366750 947993080 172784715 262155819 695047700 931959293 741155192 408553682 390712308 661236108 960433504 893799778 932381192 537890927 791549512 301864394 961592586 934453497 809688441 845197290 931186351 966678741 980087400 255821365 446177527 609992682 540134413 891909932 162194893 798690386 987084514 224980994 891321563 182017280 376575911 257717488 398108398 721524553 697805415 721840203 903243241 892168253 589241185 508953007 789430396 817866861 649166769 995732540 106158131 84683978 304615233 276100562 569429645 41390043 154836493 325217998 219046210 237308815 264370855 982594904 958049598 703731672 594790918 700461764 406860236 911953345 200184244 746182640 833910551 966122734 919507473 358055323 740476737 435352592 473200005 721373506 884170412 787834312 818114897 394521554 380737059 964526872 890347244 225822351 682424166 966783664 991640981 991604546 369730096 829058017 458754862 795509805 369111202 970881288 812690480 770296448 957508997 861460616 965306504 990999289 228275367 651444087 563746872 752757492 990552286 988756236 644298029 221444691 57228738 230802351 767124765 612165073 857903173 911902203 513932851 188250364 471606033 673457999 217769505 724174453 964807263 643388280 864268856 759094825 611994151 111954140 778302127 840887941 412084900 936139868 600402843 709481138 459747402 853844685 669813868 787664827 24162077 807488016 283952199 278074548 881013340 915316055 803825249 791356778 657744382 848784406 893900509 8478733 465356945 847188950 721115328 221181661 763827998 410454910 740811990 401781210 149327518 611463503 737020247 507136954 811777576 986159415 391301094 902287838 331205055 961920247 877568608 688162403 169817520 881332852 670174639 928442793 798854085 670935852 867916673 928675818 794495825 745488658 625939272 763195535 215447870 661809100 897340135 437595427 737564114 743102282 794711976 168824102 877258307 967132350 935891348 763678833 77794577 359807712 921397356 861933083 737020247 938564793 980117040 349814131 749041949 644434497 721245813 795891943 248244457 726145059 903854592 875262484 576583643 549735026 905469413 990555029 847258540 949091015 830188899 851687334 910219701 886832154 9787606 505395537 803602726 338305985 371519181 501196011 901312485 900069773 240952347 690519444 940426665 850684832 245693747 920614449 579745050 977922654 931898250 787423194 837917237 12977770 274839476 982661276 729133790 712536081 451703670 812871819 516373257 783941954 205728773 844030788 942884359 952660616 792986117 14912727 887294066 686314670 633846982 703367957 879564362 876869828 345633435 345371555 772037695 929127700 905385910 57226923 139571138 222548245 969702666 927057567 387334948 830161705 684562409 105845160 926359478 904875660 800371490 913125521 493369550 893212825 984754505 388737696 868119268 773146464 959048373 308723614 986280058 955025636 190803858 933937921 816827422 927044873 678812051 268492388 983102943 921427591 550651806 784355587 674798210 747213248 932865204 975204328 303059919 885995870 15280704 836864679 593216210 685279592 969568531 374792606 128124626 900097534 978836335 780750643 915568801 104653801 949905709 911857408 673950088 825999946 773778374 839249606 970591698 859637897 10493658 351109178 197600473 477565622 466507670 392862410 159057679 389845246 960676460 794061550 919108088 969608163 857806768 999889295 279286790 647864548 851786431 144567448 386172584 865466331 642974616 886354551 331099777 810252339 277004780 823545663 813953481 224151953 163140596 757016025 870548331 841301182 571815452 987107454 701979981 948609249 740953247 538923757 127866777 377899751 493004313 188649238 232567969 736155459 925982701 853130673 460335361 916914252 953297788 905754998 851660989 102136790 42165138 908563545 915961935 118023129 791279976 392157562 802516456 777083182 753390928 911049355 991603134 887727464 976635170 960149077 978321963 985214913 41501571 984374058 857774883 778442080 988234009 914293586 970768063 453862882 136856861 409785591 857184930 961747140 406367494 362903323 369742851 4461179 986854239 795173763 909360795 905375631 252806972 720587690 990517645 291203233 497283844 661886377 635902540 444343238 773922977 550031039 20805360 788319347 959336879 905869100 925686848 758828535 210662823 125189333 814739421 75589611 362094209 739129528 813670960 948921679 804167099 401824313 950757383 933633452 865059030 966837795 452916665 86404040 814200301 291973530 147346038 187705878 964575169 749815138 879624188 879230953 906664043 771260588 773332615 913549466 943309271 473668419 904830756 327044658 513512912 961551395 793396471 490194341 829570766 934377706 913270746 347370334 748042663 426450601 124979113 689021570 840931038 465271300 507950241 231522572 489466822 878780870 150715723 780682347 921130488 514806065 882691247 280886837 845886337 93413101 443510839 661272235 302837855 715685605 763356875 746476222 715082575 882224763 912563014 629843614 755173772 933591161 899763865 793610022 385197896 777625350 481768446 101572742 988320453 206641890 924334668 993667372 799946679 852728474 812415043 34333623 18936044 774110397 966728324 624390956 254963090 806098921 619247113 410840829 889540158 860469399 946933766 28144415 854996503 609529183 821248709 760259829 216664707 943086382 77035299 321700494 630539759 874544706 980153976 585207924 904656944 379563234 483321870 391516640 826050915 791806042 439316579 28743967 281712242 17986072 935483653 831467467 607316172 182714809 643362515 576410263 748153256 842218153 775016544 842300430 913703440 671034296 779178084 954183436 991008173 27727022 194217463 680568425 421372015 358472511 724981061 630169767 638248502 781141254 41200023 282793467 244041497 32851256 353191730 832464449 659930997 611954317 886522294 407797200 864852962 911510559 902330544 44525797 780722538 990717597 798229668 781847097 990781818 971960943 130347028 119272213 440508955 860136948 776768061 159662701 352160876 184756504 92852329 740076916 144393157 807985641 814001623 261831460 195701524 869115921 895133552 824688882 814767511 142864172 903144784 981029658 490133774 836333584 706202489 225372228 39264642 605975050 44266126 971063966 753259878 504836801 905633452 971148755 856368417 715420911 944901938 520743338 413533690 772374268 479039220 800084836 895446830 272807244 801062663 785495364 557569359 363710193 948252925 41722048 794510694 947655501 239251251 997239689 937484322 204463519 438310981 779207488 564429110 920108220 593192061 17529919 577331203 998477483 668734667 577264911 184260301 757502042 849439024 168896900 757469045 748994287 438841475 682732653 319308246 94849490 874250849 458309163 61112523 780048296 655097993 219447642 265197028 897715439 109311508 874178786 98411138 922829910 589045048 771419815 654047778 837214232 97288824 767058895 764119417 596781693 840280465 835042867 970866320 212605860 914595316 421815159 955435716 521229047 175100918 358267056 345410603 809448846 831945487 880181412 572388993 822588415 685967939 933584721 74622041 813577724 843506908 966386916 804018693 319193804 595472950 437752835 746238403 320332833 891965214 950439409 763106712 727007304 792166734 861909910 41772607 759927734 706658893 782168113 999057138 657164921 766240868 116484176 772861633 272933634 676184331 445753944 500143962 948234301 272806178 746053513 940361794 897952729 702992781 839315509 582755062 963297184 602101228 475697465 549237531 115826810 827422682 680766863 740950757 78540085 30817219 559095097 109322682 264804612 130999332 211305389 120749886 349670020 925867024 405122170 594373716 192522525 901110559 961113246 867458441 257165482 987038008 340692685 757143795 367812761 311559704 782455471 854782910 787458831 977653152 975271503 730529187 255530491 838361883 692368807 148680552 816501221 713306737 86816745 738149433 805251890 621366099 390452162 837484415 115118673 363402147 794033940 442085607 184717738 716285986 311603732 931489554 19464157 449281486 782745243 944955488 322306106 850347542 525990860 898760438 796235748 778699617 489148695 765727439 1471003 464869622 459945918 64921090 818908676 621025247 487570962 442283146 806064235 632436886 875436849 222394746 19735077 752759243 519327732 294323024 160436355 658667668 859075420 668645494 304953849 726941443 798780606 773520791 49260366 758134744 823282231 915475132 943598583 792552933 220480275 859741363 366553913 665475370 557574904 624430135 976585915 714989768 606125738 867024633 998563502 148273831 961935757 899173442 929815754 81640145 680226863 445073638 981873545 901007091 260626949 755412598 590266469 393197099 269521102 320782523 56987156 761778583 866608987 129356783 682278160 796874203 899699202 890360416 936537097 120135632 319038506 754520494 957367872 316671780 873742062 794739292 207737704 294826773 759556930 833965338 797955279 976176910 236306666 940825547 108887696 392506870 239562922 320972669 957518453 469718661 248735428 434779524 660824132 134841667 3892918 903470710 748746924 959885576 119017471 605448842 254400301 623444321 871552277 927082452 839202344 851037157 796789118 872790554 710563556 803925592 43388761 903513213 18544859 977779313 957999197 845757886 878623464 809276435 801405264 786045335 878962581 921030471 340236249 844930812 166012534 98607694 896231259 973743369 916425919 290757049 413490178 759614448 223348135 983260424 945683486 811191598 231889979 882776929 370457674 464712432 132150564 832807516 796980578 30168494 923826265 846192948 835047797 630024904 793101490 763829232 397677753 789299653 373729776 469849766 841524747 8279811 999373946 936196824 926484043 80420891 885345242 491166684 626540741 195657610 575488114 635992655 942632384 294123921 548688466 737020247 930825148 594980179 56597479 482266242 462748310 873735457 784299354 463062325 7563314 795465519 939654272 912415609 580468855 908009627 571092553 750672147 643458689 676116450 775309257 588652641 894216699 12359706 919053676 370361759 785407412 923892221 137461710 656995890 953774364 890827059 686932073 358341383 961251697 56977840 832036567 720176011 425517445 652954364 26311416 156026235 346806061 916339408 820221799 880877154 244855053 519861770 99344995 871711203 858205871 287312160 304805565 155132226 38591212 813473263 819341811 406920860 950985988 460215646 944042016 848969795 288361844 371594798 260167587 882843762 881392548 785578373 327445040 234944129 724160487 10841140 898045961 528300314 901786245 742938120 309101587 739794519 970471104 815955465 831731714 254676437 805331649 127159804 745003786 148104803 306443830 99525623 980065956 266395632 398825489 721766673 215108891 524405706 353846123 30353379 308973674 901567292 868039599 322582994 553658047 583720875 903892894 757340997 671596547 747291629 991354250 460193271 864818302 755892248 355249456 740291680 414482415 664036998 39085239 88698909 935259400 48018083 96535722 566953618 354326117 712924893 975650205 623401991 214964942 364852816 682255446 812671310 436839124 685755439 274477445 194317762 234714094 871140861 726284041 789831548 251029633 108379309 310120552 40676112 897195452 666024513 861505884 449554357 740640421 869323631 967744388 737020247 463047041 151783933 252950180 743297568 395258682 144924193 952261235 72993803 945087338 581358448 496879239 930961974 846366818 255081006 957146106 179190884 265199308 772402281 798178546 404140258 930113435 715504988 833703749 467048237 530313662 981899173 717490499 466960508 975179395 847102257 500696321 596888722 768176141 340261838 867523472 150651035 771073568 775910489 231806004 748731059 757254401 856504335 950549643 795640723 126446291 536671070 800853103 768411411 910906493 800566237 438701275 687627828 776262895 441412711 867889202 710376660 428857579 385223614 675114674 965808759 795028890 774570127 163917106 418060683 791309139 967487800 295788389 952626537 798753430 31405181 729528081 857372165 876657979 977644057 188900226 768428610 867446271 809403478 137581323 83076894 953228752 661082254 833950405 12173652 549459487 933193165 289206616 354787850 810646249 327041830 782869733 640853251 834433906 811891874 773254992 620231220 763708402 813037413 912208113 900647753 710289603 154984920 350357399 930393554 797798918 995323114 371129035 672335362 435803389 863618577 566885201 216264950 978412678 77570284 743426472 189835604 737020247 662554891 743757819 983390571 759146558 584378034 826529471 786511780 818482970 798574067 652304857 924977193 98330865 779735929 113682214 572223582 775921946 27840190 985497859 926754532 776013923 893916996 417560729 998651195 730353552 823996976 272459688 964197936 947601263 362783 932779207 956084286 722539811 443801026 678565854 785194086 117523433 662281472 468108846 923489479 240463374 973873061 204325314 534478977 580238148 995322277 911140925 717841913 754830036 899434788 502833432 202664981 988155727 339703667 981196914 172004370 705910795 772999394 837090076 871182134 976925330 632260229 624898441 907811043 501660492 915568815 777414808 995763723 282443018 927554325 539418317 304800886 899948934 908033983 56246746 889152261 220316756 618777268 766071519 941958022 231215635 904123542 909591354 818165784 341822405 964423653 918455539 3096941 361172583 638905033 784090169 49095832 717960103 951720200 394528920 70123333 944891187 960346606 911622483 528897903 951227200 989198608 311877568 36788382 899560772 878536746 925670105 902398872 856278936 716311765 888679630 265395841 201527330 956767100 925679181 241384797 863722178 503211372 604816571 883864223 468084336 950309902 530788632 789188776 34514188 215106573 868063228 615763612 465906456 737347651 687343350 160961612 518108779 791458112 34211368 935453565 423881165 758668340 762034484 493661373 955469771 937778338 165964134 186871377 373378332 669585926 918519935 767803353 168160790 240969422 751854215 817530113 34410172 1692924 355973044 977300782 890476972 768655391 7852850 860292043 902610083 622264452 841268697 870474688 944087053 834813255 885401705 846712743 811357296 643418269 730548462 917423539 562475287 484491557 380399765 48436891 635300156 357784770 139807381 353448602 914580529 792710930 673885988 332163052 722870011 812608064 835031179 209345747 495462524 617184034 330104557 378784859 327312710 739989734 828870693 70435618 876098146 594754817 753761873 914235968 891500627 87084033 792994343 859792410 414847650 874244996 51510935 815466467 922522809 540609308 72913140 830571533 877163259 321846382 879141778 677505834 22334522 853626335 970135357 782512202 786063477 747800422 898347911 958210991 790704131 395723653 744137267 616247907 813543339 889042183 487684321 954675412 536797292 630646030 915901383 753193710 790649395 780369392 870688215 917693285 260655496 437111997 765194433 420370482 777066114 616465197 918460946 395398005 355536758 890984929 984733979 286097181 405048218 471139997 942632657 930709609 375426236 570891590 791426802 824407593 129088880 834186205 861237607 478930464 994569792 764749816 291625486 664287011 830903909 988896826 811797592 182736456 831874788 714709872 801150378 743762434 838599561 246881069 186026842 683633448 951773797 922586786 429004114 606057087 694367448 528015401 953723846 825811090 800945799 628385668 826618809 128638477 932136976 960663481 29853786 445568149 21538657 13782978 770171416 752607461 552859420 791776862 984111124 710905454 916887713 107704444 441723486 939197701 128044378 853568875 204448368 661150057 947970765 629540047 24246156 877167846 884410681 985582420 936430492 848865943 262356398 767738525 92316990 821934656 237070764 40050025 82251910 134829709 330109717 646766910 945726268 668202222 642420831 775170873 823079633 655145162 941563023 971558742 809806686 816764669 332627326 837428598 939994795 569194990 884114994 744778928 413201203 861749296 538499985 784246008 839619423 114406241 466256821 31469328 452997940 106070151 876450889 719600882 11386704 616553105 557467565 737020247 626275020 24958641 810554621 922437776 835532887 863506398 762479806 765354628 12013385 763194877 16454814 827089434 629629094 131140102 435112111 868900900 959678929 238409020 512716908 769669683 873602622 481600217 741356155 769346555 376540097 685228614 113905332 346768424 386740224 247029145 789288567 842048251 766451783 700854275 604658667 845820782 200149623 904519071 757415322 159258439 959624979 464278600 797885267 774759292 156084308 785554734 886587974 611033183 568513433 259350466 899600426 712851818 252293290 830626962 807696971 441361757 439203458 764904523 361409376 865182268 823591298 751239673 717051566 564890815 44722535 675933909 151901180 362456365 336997582 592310140 984795473 868253151 427378166 148530685 509239822 885021548 850834822 441512606 941121545 801085413 593751794 775367912 530544040 573049229 274342574 920681870 981329556 639442116 5556816 29370393 57116986 305766786 460239037 916669097 659305089 174921513 469963158 801135397 999072674 320389564 5619264 597232341 772277202 159673692 466687605 149692974 362849221 111034143 342929996 953531330 908361541 951776724 570313153 704341061 750297184 741632723 849073827 777113591 816078699 552776001 875026334 715478684 738167411 762570747 894682262 281962049 798730869 773522409 306390290 755653168 968769174 880176079 402616130 327372187 850303263 310406537 980930102 875404292 973535834 84436437 779811758 978252691 366850467 170029859 950804281 893249673 303978619 853361983 132953981 774021099 850684668 524517853 330972242 604483693 527862899 833556450 781539886 255385482 853198621 935543895 425712312 968721426 917921243 57208045 564238992 425513826 855984117 980786220 615720628 288090709 630352068 493969938 857466386 748973186 857390508 137992793 857478403 764738911 987752620 431391701 908102363 774347868 878789397 219212513 158016379 740922259 418156892 274055670 21890792 149717910 862107229 912280895 815570943 336296533 661432683 876317709 292970741 75303048 810439928 595520926 758534051 320095406 756350051 459196264 886139014 621619391 417669098 978646961 804719017 537619343 739554668 197122840 799716950 909470171 836997400 833501088 349540044 917325885 891242207 278180563 501995512 973837499 59920234 732159882 260484963 701638635 298388607 323153286 904099569 819802132 894488387 783831629 943779034 57305567 762891424 941890866 465325267 826170224 419743577 175068759 935459955 144174114 928483197 891344432 931834049 967977739 764837860 718439533 916302379 829661472 737020247 903362463 567293854 739685909 745339492 453441418 694553531 179248771 18365020 126398357 238341380 822177877 247281294 925680227 893854673 754817739 478882252 125168166 88210464 929210844 551977922 807839355 859695536 561398818 192978073 665626110 97589947 626009483 842809381 481939896 500466206 923522187 934466089 868996772 130737075 291798669 230833306 901712687 774808743 519705840 89651100 851561891 873541936 751328563 439981004 965298700 790993463 413599454 184977837 528936614 325033153 694930851 812507568 627352329 566484820 761701052 650427246 829688885 132255236 889130207 355012208 830462335 647455056 568273124 171116255 825897986 59363857 817845383 931781539 679538726 884176586 303185155 874093313 960896718 855978266 922111746 845645619 693764127 612706211 476073701 234919650 449649786 881312877 839652568 674230427 7144416 514941810 245348525 924929376 619828357 248802766 119659391 794834309 640155918 885513810 310713 178603043 991812835 857200954 934261491 844703422 759159463 868721136 869466374 759949341 815303450 579408629 337246027 2169833 463833351 610035706 586443906 770534007 819412658 710018260 768581310 682527092 911999232 936786181 857956171 967203716 390655458 184296400 994728746 371728739 849759303 973909172 591531154 271786038 599473345 109172741 923858417 842526802 943281888 936574959 164488796 412384726 810245842 200440693 800864723 874523149 979974980 199214185 867765998 825002914 673437235 262660481 999479232 599927113 294816759 798152656 982917942 467070652 937170391 769513450 815009888 982485022 846871346 917785641 525765472 970860957 966348723 97306761 119667872 959837960 795340583 716391797 807655630 488440042 215163237 861231024 953142210 702456341 186009152 986121353 844186938 864371546 509036559 916483607 407623282 389363732 966141560 171839761 461141361 931552507 747284656 886336809 262421151 905168594 367494355 858637772 220956223 960606212 563940799 555575262 826993315 725889607 969315105 771731626 810255497 325324774 781375608 952890251 7118467 775649180 319155304 89372213 596144333 41769336 369896580 945463181 462650280 951947667 938249649 23777450 915296771 729918677 370296712 872872390 377636756 43493474 965371644 771870740 934549902 296522358 786869657 537846457 859694111 789688809 884908114 107482541 361716197 22300602 424593130 25788096 942028159 944809687 953090206 952450284 26936599 753368578 991988744 517207698 882661884 152507339 846356891 263272707 539084623 699313893 47800988 392255726 579687959 992858813 946568238 941809764 465756513 993676365 287369492 878919903 467162328 850972792 841340482 828086973 408211163 940505742 716268062 507426940 22062698 924806648 39538745 936482515 319989198 907785164 746748785 900909811 993522031 172572915 884764064 858011196 599178817 142059368 605257431 818912182 403896062 814671084 997749184 846397648 825664818 969195204 833571554 774703129 276220390 66021906 579795500 811216017 72199415 887942128 665321708 507873230 133274015 317264288 883871917 596625806 418181916 817656442 344148989 396806399 70963463 240584020 859283122 689850935 278052804 821625632 916065309 786680200 493535348 797275593 934465076 893082104 694727185 253621953 93816788 799747823 964762360 746645902 859119780 789024763 57252900 808464251 903351754 946940984 793336450 37579245 660965164 987391721 756953803 188851961 308678411 380916438 31540750 921437712 645362295 104913356 765353994 900001514 760679321 773904759 175241919 345467256 915590535 749031155 862551959 932579402 131285288 841283337 616770859 791776364 252877453 145978711 531619202 849280848 257438708 406097792 91520035 220911738 968518112 598609032 233314776 776304559 870596004 896463582 975729464 520970305 77797483 937203284 389251832 949908532 953262860 743460148 192613110 922602912 155494658 108803940 260182448 306018388 938523639 283811269 184261633 65523507 137820100 64141397 878295903 685805755 65361194 747815385 886596655 802917064 883208615 30142172 752385051 810069420 582502916 737642527 763633523 774675974 520343383 977464555 318039905 736492416 892003221 461486168 825245954 195772517 451806255 944289350 239177133 738331404 849826919 71966015 430489192 987124285 697632928 842086409 823502121 278886015 408893847 34022953 864996871 818418892 906263571 610740548 736596995 958888814 993346186 473873243 17760610 815603357 590410128 999614739 981824262 82466585 156572124 779296462 640595552 837604759 245039864 325067025 447857003 980862032 911080736 465239461 383340415 842199151 801078355 194684225 995748685 582921687 802002652 972767413 936687234 199786223 107745525 856976636 340296573 373839746 606701322 233718263 265345538 941071982 881579258 179596391 339922894 797646924 218756004 116570362 50585579 268392782 737938509 178815850 278679063 800873781 57334596 893268032 950979479 366209581 400956295 748860948 147683338 265526322 181826323 739157058 57550336 988555013 916378028 8070390 993453797 287303619 864358751 966161065 206440479 982263885 934747615 511587684 648489245 766738022 773289621 956565736 869322194 791672462 454407566 143735911 193634717 774525900 772080239 463013215 979109849 87303688 102673809 383667184 535896951 148998042 919519624 7859805 721567103 110416196 405775717 821619681 732669728 115727092 395830733 938017701 895784840 835025578 743717923 341692652 123913980 995764926 660588746 523650677 919051647 900272591 854007005 806416895 782067787 731809950 984078647 196178415 844383469 953255474 574067186 355935442 749376013 815054928 324249598 795738633 152700617 416822764 290115329 605164047 921120818 809382866 848724802 886231027 272107490 949714083 822756918 392442995 891839165 795241420 963230473 166467731 925959900 354189420 759903992 914436036 894560879 968287078 960105039 16341598 775593665 964805453 338878767 859106510 120715406 276274684 757680309 996190476 94089234 946217833 896536427 572208516 872300766 764391168 323825849 880271493 671392658 973105887 866333122 676602304 788114780 719842507 514663316 738815320 542468963 985377696 398176684 456559755 457575885 651895759 766601530 811059216 940749845 32566019 680661321 796170619 24922346 864504376 876019250 370556561 723038523 13543812 609360471 120363720 161874375 599625151 873027420 897836320 777278758 910412722 802688617 791807538 747490137 379038972 672334797 815377233 64958579 125597409 762559264 454984132 367699436 864123485 869743298 264547603 737638256 852589085 296307170 422500297 552389253 948113049 487377256 930864855 567433081 625154767 644173906 983630193 927045914 938224114 946790135 307788540 563971833 138780836 354905456 408305496 427165255 918370920 535189818 763068570 314413129 711744009 974933953 947931767 817920737 283815398 751582534 412582034 125646846 864054076 294834821 934764804 546242609 963785591 883703831 853911579 625045911 478192354 952269790 408067164 842449925 891376315 923119437 927942555 51916262 67079398 647252355 381945174 793813816 748778222 392522628 324902186 860629669 871864468 753331224 765575226 390691164 763043684 852973315 811821012 629006105 874388055 332337336 639309632 635465843 943605768 949176927 203674845 984072133 883922507 966263248 911329784 758581914 947258746 644348284 203460228 786108735 987809866 893516962 917389746 916518536 826149092 805409031 845082049 838823460 759883426 475870090 757357029 844080180 757373745 868380605 227379716 965653533 456804636 114114057 596791982 888652949 715796885 940923451 868105301 666325961 987745602 398446118 764720418 391078979 887606476 458118153 782020563 954923704 907236602 151508198 67494313 570720603 938282499 969074647 336391630 656942880 780851260 605796389 903343336 650231677 467064038 397263004 154547999 801208665 787199892 909346288 584035460 778350547 340049521 602574747 818710882 891041887 328565418 948302633 258169833 689030894 956422321 81289027 681010158 897968941 359487485 957527976 340020796 813998693 420536250 227266144 975389780 736084660 325437819 665478670 128084810 925623939 969445713 103125521 951774688 843288390 545639022 615374117 949872676 226777284 855022212 178238316 922514314 730849362 414537600 989396742 861828375 809325661 555117859 571353861 239134310 594098300 750813168 329536374 797144975 885873707 981473401 763645848 832409318 170649306 675096878 847245834 756935266 765003248 776074410 221758453 972599671 965436438 874495826 224609530 814254463 68929204 633682209 509373613 784601281 288143355 286972079 799136251 178997679 762319114 512407555 995536249 15477162 536323553 304133857 980995134 800683810 913454007 917983400 676763614 861106590 962918976 852684290 842379507 670613219 999179410 905220337 300051650 19443197 889425623 679726802 184007725 962820542 6906167 437890007 935366491 888853870 676568781 806321594 890265320 346246234 425494160 910120776 896031868 113713041 774400521 562629956 857876305 156507227 797094760 662554081 741502121 218757764 998155057 493346982 880517112 925437827 794828658 579305377 549830771 824373498 765364246 894564034 272780105 901710078 223549579 841096583 632150233 883193290 557362581 977538346 837673312 950624483 775197927 385305248 953590732 311984839 871238226 748338867 740957369 729116476 361361449 778855860 970196382 808763361 929008693 742095267 859007953 375219588 644614038 962351481 819381728 375525767 814488332 883693889 888781129 96469374 809881982 122598133 919394660 452142495 518417660 838634059 186039827 852719585 859417871 830862565 852512813 993115637 731824559 52967092 523452277 978908957 128005137 528185834 55183767 886353604 556932865 251456695 624829455 1392698 383897750 955928103 435631211 863897086 97717992 969741949 223725743 769991314 33040002 166275967 769847082 436059127 945592229 458975306 331973438 863620580 748248483 92365062 298849972 175616013 781109313 989752414 883087080 299887429 95504336 311964274 238805080 603039575 563132110 746609548 47451374 650756143 14282684 883107874 790851841 737853032 888631127 956619768 602976125 561033827 753270486 122400419 738227509 315801669 225066480 720672788 785220588 327198730 256734866 402192521 92067042 265636184 433593825 264466794 107462642 167392821 753648189 901034314 677357708 321995289 927059885 202799141 172931497 215484196 883990036 291188741 705420380 474217861 56655982 326199876 271276012 638057841 797144237 793949649 739578851 981876942 931421707 801852349 167708464 437516734 863876950 961831668 612561341 784896099 944719176 527273616 567419474 167353821 860092030 806220422 866931253 796323758 485368953 999137063 537715120 865994841 800959446 871328261 992270772 948650981 5499177 916654111 806081149 893953717 95827841 384730786 190961153 794061082 865974978 161270377 831892413 770901106 548333811 149450532 847757399 744092177 790088821 309677605 432911103 640870689 194385487 778979951 813508028 768699527 845946518 99364963 569452815 751171590 689062788 787141077 830660071 749339644 834516958 654194913 737785922 417938821 958689532 384221413 933460362 285311415 488139551 413714275 786308495 488333582 25692195 867491797 431775483 577056641 4343727 179585529 742610907 161545366 642296383 851036194 262639837 140490802 742171673 352332314 806856911 777520781 964060813 952371319 985131530 677576836 867266583 171929240 612774806 296417319 799659599 932926510 745828830 419009574 873565876 713371191 955361715 883967526 767997817 854828012 174734522 801624131 911615625 64595560 370081360 699051675 889964829 19826351 790888395 967674795 983003309 753791900 837137772 397442042 200576303 658046835 869880385 65110205 664078682 854031827 803194354 184304634 853467406 84213888 760961570 916129797 823907562 876638487 630380169 950846494 952040701 291179796 140244396 950223234 989898654 892102111 609994355 788131050 910824497 998771085 559399983 885587721 591614190 327251291 224233163 638537565 955098103 120179225 740916334 590025850 333584120 581346940 181632039 451011892 25462196 145572022 697070432 830874473 727016516 998024939 914954025 988082025 901477806 268788927 964897473 688533626 737020247 134097328 127301359 938382909 983907061 209476758 245312003 698344042 795960874 379218728 643467714 345495746 466841281 506687165 892955817 282119911 848677027 989285630 242111586 951849299 93033097 787361839 938325627 827880081 524334984 823132381 521263687 692538126 914982639 520240586 754757854 376693268 802828030 789761279 238108988 751458027 403979487 269467860 743213031 978222757 144804675 751354133 312496603 23560727 757055794 878233517 865921721 112080850 50773267 59184618 488359119 858694269 477322447 951232991 985359537 744693819 962571787 978586995 784702749 168916645 912031674 760535144 93868983 417062647 160968018 548184934 658240471 835769922 895889421 821327961 224927905 843172942 830474382 70450544 994236318 771985613 950229923 8498105 688875390 149621560 799431178 346927437 769842747 485902958 407443117 775214294 973957195 662715415 836032915 866050291 535001848 356634380 209760158 159193431 791640003 902332469 55232126 234875489 887226633 984971296 918833429 401515589 184552504 792481402 428619361 300405080 26566835 396279880 169476543 742826746 749288366 975080917 756343626 486415524 631748523 881526375 956518616 893085306 684889580 368773943 888513279 987568360 774799829 719459631 382587355 915556399 805315993 631230076 833338286 126321406 96992425 39398871 661158745 770504951 998671852 304075862 844018704 433045603 748454221 122405451 630944822 894259430 855679073 456247910 423511613 391172407 930134356 375705817 427939055 766479280 128594842 546304990 950226218 408753642 722507489 981887667 862290509 140211285 777907719 977991720 853720300 685652250 975828482 784296134 371634359 797065451 828248473 326511730 388516284 882045712 206283369 424644794 710374944 154335465 362442367 994181823 887976285 530275908 868072395 977011780 389155662 954931344 544575503 19455669 764171444 917808448 998129087 993015043 287884035 793149757 898700949 824207843 939075310 629840604 438889948 96386086 900822412 141375126 701484336 910353429 657514691 721291009 389769710 741581744 759155863 409938114 766286183 896966265 149880982 973321139 840846412 847324131 955365904 525836748 253271278 810743817 462865465 652512968 482924276 250634100 938441723 901739544 756632938 963735366 953073944 889012119 777957777 751230554 610538369 893487621 928419283 868928865 239521994 413327270 773204088 174563222 729157696 445184655 230150441 389882128 677879995 962197412 864231747 865611731 861723499 341216147 765995808 974195487 283127605 45067971 642596221 836903678 650523307 715982547 956491088 475530550 783522390 986325292 769699587 976002629 130588949 827693595 119045958 660026679 771445390 849777252 982593614 948168962 97113921 716810591 906700218 779467188 369348180 985384544 295670644 706137599 961017493 807114831 827535151 575041918 464341451 779343190 130367427 944024279 288162307 298936059 977596696 687308847 87317391 654973183 513171250 94574276 943054890 647879239 314203938 94231128 978555540 909309858 640990564 182976284 984798983 808508048 904035774 501588718 16166625 277486839 739098547 882306702 824404925 854799206 469953479 805567241 690205437 692359509 852451897 480857189 310248420 917646476 859145242 588397577 245640927 280792913 983031599 890457097 497298150 768446135 939155311 474256844 875716810 185007560 949771081 750733326 283205309 959381893 57630012 328061955 649858141 475247046 656948890 903425891 605163026 444462583 785019364 914711365 878300195 396273629 799752366 353070479 14602088 92429431 268288180 404571164 917988502 406559563 682168511 388202875 826955007 47757791 379741704 795352620 583698343 491740828 924991749 949736848 737020247 425051666 919430914 627659450 988726654 633698902 425998895 86343556 885070152 900585836 597938480 564147655 437122239 809407879 877641893 728557522 917939156 129259735 756790596 416020161 965356732 253953054 308532866 978038504 386048147 757230610 486439038 839814504 796888706 972585722 458822418 765741831 930348176 841766958 216920759 771282934 797406291 45824198 221989247 842062966 842404664 164254749 180120640 317330738 763673611 212489683 755045706 570289988 403730777 414253783 127374935 47638260 940553990 797091050 738309172 610848272 600953491 819777266 821799190 535051991 588193332 806585484 971370983 901731964 952062760 424504542 714196100 853336697 892400647 950996321 843448439 635372595 363420008 515543520 8513890 806511102 816511961 896546925 836663641 270823796 914222321 857778394 885332525 659586438 247209888 746459323 878009177 699752376 773580761 251000513 902972675 763172079 944535221 873286076 259295929 783119590 945213238 266163416 790010056 72586139 915072599 765328993 118706200 594389729 521951007 889834889 954395808 437156289 233748726 786851885 821751182 670142839 388838011 957823748 290066822 742960726 958204219 468054294 791935340 752036991 984537686 930272858 317109901 923391823 201711209 767445123 603120114 660291050 98295738 814151233 915353810 392907881 723880805 923500096 745535010 545153187 805240382 746218536 102619910 745937713 664779995 785536440 819003975 864698244 351853784 889202076 494083773 236002642 997489243 604403796 364162787 743172080 929701130 867871497 546532905 91787088 737020247 754676610 411603776 173305369 959870294 888649366 765361741 138148476 276054659 699295597 901860070 779552460 967073301 442556235 296084807 562715842 849614219 105905443 790232955 763846406 791712342 904090695 882138426 311986794 318805548 490342746 290181869 762028276 313380147 133609893 619967584 667189371 678999873 763346462 538146540 1147282 191980482 752268787 444089955 757746171 381505737 10175015 825976125 737020247 476587505 786329881 953991070 224493117 208057668 764266508 798490336 764434586 773525085 659311512 737603927 826621817 732470515 924657574 91634922 510416545 760042418 848457434 365073113 587778660 954040425 163699529 288456731 111861520 259476670 969439188 434251447 33948567 831392050 920785492 361554242 484126214 619503487 738785393 946273000 598514139 78858554 36250619 918067731 680326859 940577306 787916624 281691930 211069514 869062896 956358816 913810190 230561837 777064017 642394112 904660803 871415682 834470086 106142026 899838614 924499582 669750510 795457530 777755450 926541019 862160159 12617899 287007543 599120271 933031591 991843599 146067581 47004086 899842875 223830089 988240657 874902106 4769900 114038719 720553329 355546751 765161711 427841696 919361764 206606994 11167935 42420712 832060408 774132208 799460393 891330400 134244081 587289670 517450214 167667242 449582480 258801816 831624211 441602481 902969165 925220633 963348497 524413858 860668816 64870647 625078023 606021570 963967310 977046602 81047302 684618101 984535263 143280458 44548146 759694671 429201640 246956887 873541913 874404840 196111963 892442832 111728973 270302105 918776644 353242662 36387907 833794446 754465568 742470537 934012422 886390433 901508574 847557600 332087146 954505601 295984395 765954341 269767794 975388263 123034972 454868014 227167687 116409296 707434284 990997951 934357695 796258077 737020247 843639922 290978042 761178945 551040321 343061831 979260205 482399574 319285665 606827305 754563021 183263931 10030909 194270038 961046920 406521265 421260364 615821987 977650784 768100562 424023821 295588037 714530876 243227096 265559050 140394921 115062746 843659615 587956156 811640890 905332093 539278010 868451269 890687653 685899289 804814069 145469450 830425346 793731561 911921230 717562718 323254886 66030326 314634747 760722201 987944516 983573987 969416803 644631442 694812790 302134417 671115385 847786484 929907247 978565011 743785790 961175545 906232787 775356712 418410142 750963465 412802973 669984068 616873637 869597860 776120020 765940706 414350313 523760647 848471180 792443922 885705025 504920017 205756121 97008872 796250795 369458925 982042459 479991702 101546762 493123823 788636639 891350806 454361957 201287633 222489100 805439330 480532834 874008183 916311810 897429409 826611186 693550896 459130903 268477082 708446243 810114279 189325550 207539138 122172450 324213418 805773267 450329819 509311369 868056790 794820100 699665211 406791871 83039009 834099779 200064747 353428092 809578548 949843888 819700931 282533413 210632724 861192293 569082016 285662080 817572756 455816232 783319703 741207540 765153550 837565827 828635794 692263436 837548435 740218936 60712366 97260243 851744026 400529011 613653920 168681927 454923291 621373364 623920396 769770000 904167346 861999549 197517656 217648779 979615179 527827420 750848465 53486856 419417431 989505494 558183730 345872002 756402628 891532249 907925793 886123927 904162049 563025130 329255252 947345775 706530099 891054419 389684105 640266999 231560707 890685528 838002484 703422214 432443727 743905585 454837760 631214652 503928081 959418332 969755853 984573279 289174490 563371621 810795601 987929694 804485084 737020247 920599204 793109259 796378893 759117884 417838216 160332098 806538574 103803051 778851351 128787849 791287245 786955612 744778883 832071877 672618222 548130116 784104900 513970695 962697419 809379121 903475385 435838043 985250407 443354031 488883600 904398191 793915577 874997511 300361135 542964011 839952309 251125653 947182230 199438395 935313074 120674311 773031288 490042834 345556484 25773465 480488005 71940260 803359290 441766767 32862958 903276047 119450226 891635458 937650331 900772000 406114842 744913089 597583442 974788033 362625959 394662936 787086661 958572345 250471269 753045925 731163251 899817880 276737807 770204505 386497135 370106092 76520546 904150813 826192322 58823863 915403320 809296035 673616874 576510247 834106692 708906848 893817841 551191652 525727947 786819898 564196232 292143412 56614436 873597792 841511465 809858235 870908790 171726823 736599458 851026493 807912321 897397464 899123673 141626564 533543646 123065443 767089975 146486529 817135063 365755396 944085160 33848363 285987292 196435422 474140104 278588274 814268996 301838906 983591681 827076083 798867536 809761606 285249086 136309364 940845808 256612388 268456481 767456834 966773292 710218745 555993710 555893065 757124281 464504452 666721096 951277634 964220484 300587241 9498924 687334007 984903276 402277518 916781296 2253574 977564403 705770904 896501002 80565282 928453420 854524209 940023514 706379758 773972731 947025119 891881924 122686975 663303160 277357795 1504801 136878687 783286321 374189848 631786576 385751440 468507800 823196094 845557243 531044802 709582721 802863930 205365508 826391006 767670172 781885497 31740843 782278105 916941930 811012202 921231394 840225221 846147432 129806327 443867984 990492530 990937556 572785060 895853851 997837042 414122057 152235126 511408562 808755200 794486969 169317569 471220545 460958462 103907390 845627556 221714295 766303542 225523462 585520183 232882483 817965888 232039090 789620814 761681126 526504056 934469052 439536648 796695617 537704751 719434416 961786337 147165933 762683566 522676792 979065447 258714751 246882543 958465994 777933940 812866494 524070339 311711466 837667125 874454965 369061548 687783009 664699598 9951807 877950021 243973134 118725918 456461729 876986665 240377642 233102593 976157905 700655057 879620789 525398284 674135485 391441685 818577331 323806945 492894633 924702663 516396495 665155003 585381386 884887747 828347744 864255511 888952953 109208780 802936147 453998387 826337169 754869850 246291658 997158079 41094070 687603970 843600479 743785928 677064442 62818230 609047731 653729405 857745566 899130694 828498363 877813056 44000795 887025792 890595621 393732135 147454416 975950629 200175553 247065678 134197496 404133085 562815031 788450353 885266681 731178683 988887440 504661994 832513520 746542905 749260793 820674722 848573114 90310710 38515687 799747207 321565184 923921765 682371676 683902632 405478882 923998083 983231179 628644485 934343474 35735172 970684581 533699913 559426056 737020247 849233708 667802878 847011564 993845800 630223281 496918302 852171924 84813502 927016061 657441195 66957122 993238192 678413555 581103600 634589636 411439480 766733407 946286835 857400449 931800837 637429870 868764819 820864463 737119503 938904835 311139646 861581927 12730211 948333180 13962366 249063475 758597383 846260342 636380920 996955620 62425281 332144163 826901479 851900106 442204923 323284287 790894949 864156182 38531621 952028623 183696691 889800511 771280579 834649044 766872338 896421560 919953554 574411705 812476037 652938685 768412449 835230556 39155149 799704336 936890301 742812159 986327038 338891968 951866726 349489448 668116966 957579634 738653804 999259611 833079506 553397940 884423197 948835608 951788924 20329364 940171825 325315765 255796310 800671983 656960744 748623136 753241900 373606253 838873028 631542688 530452411 22655782 151356974 291607745 876050664 42676694 832524649 144142876 73902846 761448323 995528068 472531742 855922293 601113294 523740807 262578777 405729603 929314046 787922067 871898969 23369352 938730295 960403135 973825452 197890044 271963026 573688100 25254073 745537736 400461140 872277443 671952980 94466946 950329247 922369940 922747916 754783175 258603416 806897516 99953376 391164082 760515244 133164772 85613516 174315112 807033411 712353309 58811501 798690893 748975904 785489988 79105672 741465535 977052566 749670497 394291890 558326880 523397510 532187182 924492190 7163283 974268403 117210314 743122126 669997541 831321286 627022476 954014450 660894230 299834290 339400972 762276431 2434805 860830588 558499646 384350343 12123026 345144533 878546254 813745392 150558494 326532721 944829024 819954637 912639179 819899085 617910125 791656044 973901375 905699308 15223453 37689564 578976708 574119487 756911696 766234549 887965833 351416707 716917299 282011216 793105400 655388957 460321926 953939657 346910516 828003008 926161578 930131125 814126274 540326060 937504974 646168319 856261314 87374038 825284026 899350855 331618044 973400714 429596548 804573470 612246982 264411047 670186742 473960885 828836143 186689683 758730239 982281896 783159199 958170262 995533118 855999101 828871958 738766589 868705157 872528386 444822690 221308185 141849981 788843860 800327877 813449027 147748791 267113916 471895870 324703693 91935897 735132115 38272540 737170091 382251738 921211275 968103069 787889913 44012335 321582002 872059491 919614249 625269413 915083104 644376320 621679423 880703931 519599504 381154764 612737556 313901057 807688060 821436316 914294632 318982676 725858142 377629814 680267492 947921904 948504199 829398039 303100261 883964282 672182777 312007280 912113999 904211038 893618775 943803058 515835847 605114206 13800089 865509127 540131362 614513759 792645428 781562881 909304972 369342793 753362616 682622436 897165593 843256928 851048766 146064877 285779844 874965986 737689042 933691452 670429969 428122315 671553785 931222804 885509181 982125970 28680269 522721696 827700299 913953158 988070271 528707479 842659536 768079494 791943402 231406698 967546107 220069271 926526353 924758156 600876342 890811089 427905425 817755937 343631918 839921668 681746959 745406943 506630657 557458994 918402813 388186958 269670004 669953261 795170909 922617973 304207277 408792622 974813640 898721352 599462196 955706184 948809633 470981105 970063008 971000349 850753142 987772977 663807804 791485544 939397828 993761340 319542376 226204746 501655806 451708940 979151217 993653226 853911221 984042161 930747968 852580672 790552404 434498327 628999833 767225441 790262002 804901367 522306062 642299831 737020247 74961952 768264940 896037720 840133876 21946937 349654676 48432125 927791885 916983948 772340006 950845806 532120020 789593953 26624645 610921666 837076528 463148428 745728803 996926352 332578261 776613186 865937164 146284375 639396850 508204754 831729757 868364690 57432311 719830437 924240218 797096729 692356437 669100380 948912495 276215491 457113074 223543236 829294310 981211707 753470930 413365084 865664226 748222674 737771012 934233008 134718140 406944977 978147860 247354397 864092070 331527220 535990997 248429909 913160915 548793315 776557308 997434806 737516212 993703071 365666070 103720929 820171972 760610320 386073520 201576901 831799408 757040167 768918794 493074378 991424046 300108556 638600267 860300300 677068954 145368455 46079241 758924748 908472183 80637119 434347565 399681569 742115936 495750260 35374071 326196226 351899899 797659972 85855529 967579481 610102923 937106064 803656573 744859731 171332713 699963980 71209676 936463924 940672915 410762058 18400432 916820387 911820035 142094925 480033458 668046559 140104931 856050351 745969684 860509852 545181235 134869813 981589194 756555373 613820770 194361083 896748575 764572967 553727523 518852499 902961273 705581222 734452618 751286172 763689141 820622375 368218395 836973361 729322936 953080083 833515450 103192809 725785490 665075930 361410151 397931789 858070345 492326091 350157065 895094285 262609525 966860461 758868828 759571901 992586563 622581251 138076032 767222903 305476934 979397100 601181499 40374468 786378204 553809783 48327903 595348275 541163682 850940957 357192728 840557218 548316095 189560548 113382855 695117459 697249577 990618747 199284258 912953135 803555740 841957635 709343252 995347939 866416100 57353678 847516969 814726618 124461037 784961672 769637599 43493113 216516653 878666248 787793150 857484588 912374703 999796845 747789210 906803869 591418044 579317059 879639986 745790144 861230743 773798529 743983748 803699425 757639334 919544814 274015268 423674940 803406546 25346771 674271492 353814015 769603763 4113446 24222610 356229107 810542073 799093213 354597912 627274869 113587695 908510584 649511196 147150335 583726956 794996732 349229945 816726804 767003266 260030251 787048607 917578627 97087867 571742519 447219389 830614697 402162461 965995644 833199497 951858881 751320535 883972727 858449325 505108017 996715662 946956549 947105037 359438390 271573854 344265959 891438911 597734130 220754055 756607587 965549271 957227009 936829605 428005274 959060640 608995999 935056422 778869081 255862135 826514980 898921967 913587223 948137591 929978219 467422748 871490146 299850251 958828984 90142938 997238662 959824807 635261433 913237749 659744171 750605235 941974508 926698976 991379094 820559940 140842422 757107411 998437180 969000032 392546194 356854951 806700894 888780473 855365677 279295967 837299576 185841320 621529512 969232526 972811779 924946621 773390767 821566824 421186165 813694692 873863338 144893089 250362708 479649786 197266932 328766981 738834094 412424512 751183892 968704725 936917006 805535900 937768053 966390900 300524583 371867139 523058252 324846834 944668234 730073577 751724215 346411716 114676053 929236913 783849847 752174968 979078428 810298537 814360455 183283200 916521474 568269465 867745915 466667140 220349411 896022652 702634334 815384500 950028386 285306516 644213371 326498265 208073645 64015109 890214658 742069198 762061514 884100222 50824494 912096623 870222166 542989260 941217241 149183759 813239146 530279000 933200420 39692522 155041923 192663522 257890158 749555957 820254543 863183866 30430636 991177624 866193765 882749283 414063553 181731848 784745521 803406335 976746786 315761348 614052166 832732770 930933220 49633759 719631091 983108710 638997103 629637563 412086183 953503516 103503888 594819134 539047295 57318650 531098861 913320050 448527516 829685229 754477640 977712068 768694382 269027971 4734089 478688835 798089211 867800705 92072844 416011186 366889701 740212696 155386955 52067641 560783710 113292012 659934301 899665567 648728673 772387619 483101117 653796114 784531885 535591652 102264160 811089413 195904139 510760847 361268460 955120487 44298583 721445859 399462775 950034027 739637671 918330837 426692352 344606850 856145038 598686856 905614779 418524089 362353970 751324446 768701179 851009092 409215582 901250304 513529873 880943152 282116639 426351425 912553609 207921383 427167964 931752262 643197635 846766460 45910831 946311512 224214528 768250265 893587820 681442522 173822082 904263726 986147567 66569249 468830442 54101261 748595057 818134869 86122510 754445240 215950871 765277125 872057691 911848059 105304769 588438847 841481238 930228432 803475449 720888191 271682200 997785543 696474628 961464796 383545257 302716503 838461783 956045986 848797154 944372153 979305926 405708584 905644028 893989126 432123910 994582914 876113486 618143136 412807285 747233448 829770909 729664115 874451234 823255606 845254147 259395509 535548507 444086007 22639634 569158170 218108160 761810288 616430827 693745844 54834651 857583620 979715963 540726042 804952327 814700932 954112420 620631689 97610159 97462930 747883848 804251292 406292256 468321423 754366568 865411340 843099756 381723934 656046141 682324351 722784418 970935385 805452219 129222237 992581394 663570481 111185741 328394841 33605225 857007754 760524230 328219185 805680423 697278052 645927976 878470354 954366157 516262770 940710993 143665579 560877354 34371595 575653619 876448909 358669669 239467422 857720928 494534959 199420731 170310692 899779217 709688687 643973744 885598274 232104766 786678567 253390829 817521064 822997126 470919727 853812519 386190685 539500508 943636362 789433500 616593188 141669831 969712017 329997728 781469727 52620473 909468476 45946687 193265062 237037966 176960333 756792016 680052188 287474271 84622975 972348866 415543417 300979751 978915389 966335554 875304358 411597659 947709401 691567945 325278355 784562298 944376612 193345725 793689995 477112049 233271745 795109365 14790171 594182419 892985405 459327685 891922673 281152839 749849092 853617425 878507796 844944185 412069884 140714403 584247073 942405197 885563666 689091926 199500881 624562164 812537112 934234383 201558368 884025559 345246293 320531990 753454236 821755057 880748886 944271968 299986433 792402724 548179165 868970232 754836106 825369782 811396373 581633638 708763438 744257485 767435914 724954057 574752371 789390671 650355720 786480946 853170909 73594350 345857511 973881352 876749753 790026578 130419607 197616776 344885341 456956555 720624321 987412765 854555041 992790242 923996631 865124220 826969499 425900257 850961432 558224874 731951321 140344412 809175214 863716100 369980765 913162932 841014632 804110386 28783037 975534494 827669262 653519219 943289872 756954744 147906109 946575541 940447122 756939590 211662542 342636732 755610606 752584685 938431918 482213192 831680139 249661023 962561854 226714041 32196408 217324663 64830533 755466164 925074884 873571240 956778779 872844274 762830625 946863555 751833436 375074937 223696354 842928683 984292369 8602470 109929098 910200114 67301616 737020247 959986224 947122886 669142463 125905749 156657842 456818736 85321455 692047409 959895451 949398808 866030025 662287196 782642937 366736016 119449652 297067900 828023326 395518880 896492571 948953745 916121190 247193766 127317542 926673355 491034121 429584646 528547243 888812840 495577265 469174471 643525203 825306720 795022736 586642894 875243873 368923278 871900081 475924009 548490597 212121686 758815581 893234933 84892514 266953114 867138372 375366731 65691346 421917914 844266607 702244519 282212282 927366595 780147791 596850605 946041606 885545039 700593911 945686862 53130746 681030899 778748081 942725604 839211543 771693183 440314267 740598522 800117175 95321203 65643268 930705722 794289397 337200574 457385744 442857374 470680427 934768638 722355380 938454857 463687881 869626286 859806181 862721969 825929490 838751201 826814631 835908952 503549595 124868582 144609959 470665946 959570744 247380876 256746837 994603478 740663634 467792000 738948696 823577206 932136481 947832722 257458979 873302660 955048226 986439246 872695187 32188168 886475234 738444675 930685416 888195321 753526997 366618256 916973998 908596021 231195277 759490940 161781487 323563971 26019642 893219597 8989860 836234326 212815459 61979171 284186712 614544968 260730820 546698710 630547088 938976399 712617059 696959039 746812882 452942370 918500178 830099066 172491986 753732457 786550233 745622004 869395494 279260508 257621234 638970818 105788860 908729852 206938921 281443050 170884357 930683145 769956351 928578424 809898516 837130746 834752361 951929676 855931785 855921832 893338711 805603133 134365730 604246294 993565766 635698404 991032896 21598820 440987766 588423784 85037765 725809357 520986760 346267859 697377695 108840301 889128051 479965454 633021378 907472019 428156265 570238653 515695326 803955302 13504399 739064468 751426855 49972968 536461710 764247891 776987094 846273240 921442314 913180985 814286976 743001563 947416227 892679222 96017961 805495422 789144849 748687471 823404310 250578305 826970882 234724955 747777934 964862022 789019083 775421862 940350480 643024118 115094955 223851277 208251487 919105530 729365403 967661703 556786072 944254180 24447459 851259361 906043478 839392456 613347982 575889533 795145588 731662765 752562979 992483262 677100142 620536432 873391146 11404599 900869159 921288587 396166634 949053083 777453189 480401946 775094174 989393849 945410810 918531301 964634699 34348690 819892904 621670172 850999528 471110826 342583946 330467742 415146221 119201559 737020247 427740263 373524412 955999565 821374148 644297200 747599536 423924763 755653725 780239220 752460610 79139022 800577964 815308202 912043636 834681152 681956066 559411055 808490147 997964363 464936477 981497555 876013467 102813885 518154125 515188903 97534778 50000379 995800969 523282709 162398140 207787235 831575658 808252269 301590959 672234008 790574002 936876971 262816018 737696475 816499295 318687879 361368597 876230151 433990813 949467168 956187512 790352742 403531612 375271129 586605321 892118726 911731201 125752591 560489012 799218886 940816294 374125596 875156454 147908853 465112607 254766541 793798021 823865070 745496118 772773324 695726003 866181253 643625726 841979452 712908900 204514642 853013668 897518179 156545806 112236890 294537374 799011125 942699625 766356379 887792028 910488449 911841351 748878970 136296158 846212671 785526883 176160970 617372332 966285319 688688714 594032691 711583052 607226771 873232956 747498181 892885788 457892831 930369076 472788208 914564942 448143266 795687221 179163566 643213014 166179743 194318706 503420036 395133992 286887891 969300119 458403991 819166221 789062278 386371943 400566109 841073094 265690784 294776180 785964779 852102410 908811492 190628918 215490365 859404386 255338432 542566101 944301508 891239480 827448163 914739184 912695319 617691327 672884930 150793585 531266557 807996992 195966830 166818157 951524274 480961588 900944943 819467101 843405072 507041024 835824021 57353311 443702707 500142688 219682588 983862444 820287904 772622770 760078366 242215245 451090322 6156160 771259275 754028100 841008777 348333892 863609370 829989201 579382767 503048884 30086267 274744203 798238974 826860831 811631193 129079632 726129796 942264705 890577050 839004284 111875956 998954958 803756636 974211848 981017900 859424691 799593234 66896614 903710218 791539965 135257333 510842431 276414021 851604158 884993754 876336960 963933970 894460908 95650443 698658975 155243497 96543207 6539537 150295393 958239779 527202855 466657786 958815492 633263808 767195286 709065424 757825627 835906854 710838629 898696353 260595024 299330783 743217957 472964697 742940940 499631921 750499499 308964916 587940008 917445099 234404812 806438175 996675906 953875509 308305124 739112678 529254511 414734825 500465869 906021943 16352655 379867181 290399299 87580170 73141120 904758051 904918827 865593196 966301195 327923488 49895090 357288585 55065 264466064 266350450 380135236 864653575 837781272 488536876 714122459 126475951 163917438 197057265 768148762 818889147 444543245 687895811 891937533 542349225 934466284 556471202 711047866 725136527 186507358 208010178 541869927 972997192 963624872 905812754 364156408 298681809 323631483 479032892 554956801 698848775 963427413 858419461 947853572 866681368 988920361 119708537 209530204 775842609 649749745 705419122 899189889 216671480 350362478 888895878 894791682 972084637 685880019 998594691 48391317 201003358 691058018 847337640 747911565 595669299 995732741 923223348 930917642 54600073 917374815 48769870 523466422 927725655 847150607 325018854 97681165 786602245 1948998 802500790 728766746 371421802 490087349 36748056 845174070 737020247 822550692 584781304 967356343 932693337 944756091 380648231 901742671 827936461 807683313 926584793 838177906 785469950 898620821 964529833 253414601 349516399 321695991 793587799 777256639 483120269 804569165 772268921 388179255 743411756 775701286 612671788 419428027 242995092 855532791 155674303 708322605 763714945 846339975 423025626 396769513 925181351 294002889 370788525 923804882 455201661 318234236 646935274 659112963 867042513 397431959 229691619 838350494 958844762 223978547 928872991 402632811 782178660 811371521 862887052 746339200 584128875 933429856 108945508 618273887 982180926 750237477 935242949 229630397 151238946 931263713 149815944 904863968 175219352 758016325 113344931 139048502 833723301 956696340 232890018 845539373 379444715 997633157 287370728 993039184 945083044 155784724 69039542 307156030 814895950 981979034 949000791 222937956 180929056 533907585 904016366 266351300 899412152 633724393 776825201 780604752 818176524 559202620 28970314 819147861 32111340 782814263 143656121 808523345 973102748 757418414 282806208 86145386 321757611 409913306 865524789 796389621 988786192 917483499 893438036 913851860 732417016 323879445 786220702 909962481 170826320 106800095 966936764 694798141 299005681 532149381 619270545 973990242 737934644 772915037 606898403 609519551 207519200 887387266 544501722 21706452 604599523 758615230 267000506 396006406 342137985 823836872 357231682 158606748 305909788 917512955 846579657 841269317 737020247 73275225 889655194 999561281 954869830 221162462 805897908 885348709 758672132 782022934 489107362 989487111 742927090 781498784 33791130 649910551 764259999 938390549 990393914 761376786 951127496 151122372 383264804 893716810 544440309 674663607 859875046 828830052 379372793 844520115 280513346 891764026 939697149 876370585 801155893 327963410 122349070 554298575 990780293 448964151 986514550 828004321 375111342 991051770 209507453 291546938 777171635 805073792 824054631 27315154 121722210 757701335 818751085 294545841 809283723 30370633 125389322 913676558 915868378 837975203 740750815 815389688 801237529 75020817 426942179 461709157 562679120 29815707 832016567 871220297 823806220 3470649 2137566 829672341 472414736 831273912 181242235 919116119 444677539 881844675 801048495 478253344 981465809 840930192 966835589 548213092 330898289 242261145 880716754 838330005 435348443 853276456 905478514 163325237 154048153 859579926 936739950 795241583 877503851 276895369 990205085 312917739 853888198 850041678 351682767 538285035 760726077 959760840 248395347 817185001 475691637 946678290 598568420 946109734 246642988 219538370 320680462 759460513 364264373 411194096 768741255 535552053 834263578 870978234 883352389 746752305 71933994 982345198 826161920 488867996 881232848 878016986 976405144 850107184 229341662 641848867 541608803 677954620 983376345 971237909 639523650 810892733 160028219 305199196 604941078 932798205 917681509 774153181 814410505 900625676 934188039 6003943 919582992 578569608 138781604 738700106 786598854 969227382 316030230 615383994 182501656 460131132 304717858 972785304 493280334 199086246 628306903 854969523 786973918 961596692 913977973 140557202 929107716 861589392 822796826 445614429 706075462 752291565 527181688 787856979 797270096 933082420 607373364 570738755 624276001 738565697 497498591 872569467 522570648 902434281 634153764 844876810 920393113 765371682 312306949 938416222 357169239 925748237 218767120 841768310 247080906 687342080 455519544 783158252 907956300 184068309 627477660 870338056 123223587 683572008 50804776 246621189 375772480 660836383 634937100 764343675 106614630 138715997 649532148 913842566 749899228 696266489 406738802 66934902 912072041 37423847 894439822 451908603 719053159 77881269 786578589 757086380 943078223 169332377 912393543 513032575 835488114 903658292 940573140 759047278 292271689 763931613 984357749 986419018 392214743 576048454 132293698 444360072 996429767 175880641 776591047 136959532 210940150 924880878 401242679 841420231 942222259 766606844 491192646 406401848 518485205 64207958 794983411 244614561 909749895 756806557 985938349 996686566 935441053 756572690 186329568 938865916 470009096 453117807 945489023 960688751 968490418 291398077 100482275 810698677 821944525 648295526 683489794 794895696 676024463 756340716 859650490 819516135 413351692 751271680 420946249 510098067 671404793 465981411 918972869 255545286 959834914 256899264 840452697 991345177 465082050 286841113 175311886 243856924 979304146 219019465 627266444 335002177 201865052 742764926 736845423 974321375 985394640 984814474 737020247 129106585 601812856 940296622 817862431 776912751 812997948 862627182 590567828 628528611 856607231 26773286 853994198 387466904 543137927 952654623 884113991 880853142 901384844 229737750 250724626 259032069 987430947 787495055 11415458 987283153 377489325 318178536 520145820 323087043 496657740 778412660 947184917 317914771 281117975 470168739 442095648 337611052 975226747 737938704 208483157 87432970 96986531 838131296 860598290 761002491 588213517 911945742 753382303 413488519 812805544 135626188 151637132 995567076 792729014 789534463 910050580 737020247 818889342 501532630 152879588 998556959 983540843 202159780 938394122 272012068 781977949 954996060 570338574 785416709 13218485 79162737 760026879 51947964 15539636 569366133 751815030 355668503 414850100 30524779 858733258 998688031 470797364 899236861 760660168 623745963 875500832 744174881 306736093 835868346 977194481 865283829 838133772 460599531 853592617 122822650 185262221 822768078 894965049 985334884 540528217 815437625 798389910 54508927 822825364 806467504 551573954 199358193 286360005 382398350 323993130 857289130 700761996 945073950 983083456 997369347 770785902 968143631 914789409 794598174 363864261 503019238 92783106 618941966 383643903 785214338 857061146 781141555 798319844 675459702 869735404 70354624 997742876 443271752 754773316 335719724 834160688 474573673 565253219 190751212 377317162 217096036 761443986 524556578 161050097 635216069 877616672 759235589 377165897 910295884 974605068 917752386 416950463 138300609 759554046 879863603 885968728 798765658 163008604 835571157 786073275 589012363 990647196 114088521 736192362 858066693 496499739 318859368 788578109 801753143 259198422 123906238 946021696 184022910 129985239 989674104 915687633 352724635 917162548 942821678 788300617 744809268 688386535 843914173 713450088 640151202 118788226 889137076 401541912 775657838 784868250 792677765 954233271 972604148 593334004 846405379 703718143 231525490 754898400 855267138 620114136 884569177 709048022 918129622 181609403 461749159 756135505 495900609 821582853 174885123 843038698 837380913 859763974 399808310 852406133 262834072 76677790 951819447 462830272 808190750 224502152 354094168 803152763 751321732 856308507 740248979 281578919 843803715 308687893 154556371 381776322 229891088 856208363 14506478 844036839 551879076 522114983 28478722 67696992 786430943 180474573 422947721 457922694 787867909 879795363 877118558 165142829 904367122 372702601 860012759 824051102 925611993 429723020 977635732 864454356 855952147 2139542 593260739 481564735 882187525 788507902 725772067 889165117 15192822 565203140 7823626 924479889 109349444 179393190 112646424 320389009 919384992 387390080 836743236 339568707 500385726 791440637 786785930 371713726 929070901 366571708 792062978 841271427 604808395 389980134 932431746 949985155 494198003 878867103 113970785 795558353 351015067 883319640 945930064 167851089 884864105 95359373 913615775 855933646 583917073 783984499 301127773 578905748 340716068 938621334 470640887 856308135 784942299 962123672 879834650 835202963 611033308 715151731 386533483 980102579 826907950 474687891 975141199 996141463 4642654 135707328 961822443 819524032 203081696 858556692 911729228 668439368 901831799 830808873 820304122 54187668 874879178 130726686 283930297 793773820 736422185 976550479 685799710 304004690 991660892 115131207 436153825 759571619 829475601 942314502 864109296 745859102 839159697 606376698 915321586 251106482 753933272 794920070 778249464 987788313 120378810 806597520 92244264 866852566 717118568 77540504 169174768 909247775 917961273 947851555 897674972 371307798 933202476 137936374 855121939 7299251 871452743 126934930 942416758 899534084 855101767 92064823 303868086 297462105 967773614 709164152 896067988 886319895 202972444 862212234 754064882 954251102 968506477 906293965 938323892 913886970 792046178 610418316 940262839 346319701 267708482 531407762 913526243 963894101 777859328 372571476 937129431 786256829 928606810 721521563 973401296 852171428 590754786 707181859 537591399 969055743 770468778 803517481 75627494 771984116 913996642 767979372 200464028 793474735 946590253 769985529 536060582 201531239 277325542 672950818 110239284 255135963 733269291 34571366 409283660 888066873 856404768 907747083 551102818 726956679 583533957 410783757 295448066 411705586 83069292 444254585 856426328 859962797 554111010 165730036 993220100 858869099 552801047 684441003 878325692 263413001 843961190 547392457 272207983 337612922 971292687 763554731 579468953 889234529 604922992 951741145 980358654 164641746 283690575 954928546 854783392 308146500 889925927 928560879 505119597 76622305 190218286 874075507 898503131 775732161 864341631 255265098 894052609 911471562 753746092 697167657 417055244 963231900 848388512 344733868 939283068 937609262 840392333 819321481 763189385 922448468 554670565 301859460 297871294 785806505 960444747 101849187 951938028 817061420 961711512 964677628 826744992 998754692 913357427 703728450 242782033 793416560 947791421 886220419 982651131 739840149 823396746 590594276 586242841 838008550 927021950 851962819 315811400 726523038 964636300 721304192 384575576 953769994 198513437 537581202 532867275 989199289 970519372 776278010 188365531 986898403 917973922 760511194 879172753 557381063 513073627 604867885 850136248 806146417 730022075 835866059 833349273 934013757 947151351 356466711 763372203 557081852 374261345 397359491 773410131 815398295 9080175 975928670 897286311 453987332 270507197 26435366 49901354 948594829 497970865 716440254 755232966 1451363 618492115 109550729 634568631 972622206 551604857 488434055 885817500 868519841 71065856 44261647 998664834 748299703 846790881 750605881 866171231 667046092 929324379 370229928 706422663 494930218 299655924 937213765 797639201 636775028 908513765 845115602 997521022 643536739 899378485 436099432 309599917 888279315 877591636 791862285 767495685 893369713 815967164 977547012 898313415 640012921 731232048 877912311 903622665 984127156 349922377 820978435 992347990 999465969 590362956 993620544 677653592 467260694 756876224 827769406 588921036 250611237 886385915 846021488 718637447 316502891 145100288 523866521 767131598 305871410 656425219 13451270 870004762 70009293 787684124 975722127 856105133 440972166 720956067 852142314 127524784 832563650 748240893 544936702 411515412 820138073 874541876 535677963 476209605 931508199 225706643 999939758 858299689 386166101 255704822 892417364 442562738 664280314 297059290 891530983 962616814 178393892 955332261 848753401 289967656 148508742 427788186 834814529 132182664 981086423 674403457 669381269 459816346 5438047 552494534 510084163 189834321 109445260 43129396 873956490 855265658 275536412 986182468 994986641 193504736 851318410 261832211 979225870 924972918 452145321 312791169 828016797 893775636 647227161 894948975 253624913 579524523 910686465 6006450 893006330 849032514 471816806 920056076 520504528 6728161 318590445 780829211 296193776 241356898 483210244 97318420 878661918 775938532 653062496 755942376 15636147 143834881 968640218 813652372 787294328 895318475 661716981 792228039 317582104 988496817 463447437 789069317 177083485 825820471 663697932 484370321 131477222 496435091 469506584 753938466 321251721 750711030 916982419 675982492 269277925 733229583 828548794 279453661 777931987 453181969 612568302 900657340 852473039 853309169 942376998 329172743 297504441 451798723 158279966 838637585 945057032 728026566 969451368 572070296 328239186 307877147 845311011 949084438 206412829 815150475 864464984 774247316 262881811 713335566 919535214 751352071 561991468 635666518 766980933 723911741 801793122 904370560 668149280 162583923 847782839 998324607 754869090 117928811 760607724 518876069 669293197 532793853 31040126 737513232 816025872 320538508 391636047 196450547 808807410 880622118 844447181 234871677 770244605 830426748 256277619 208513727 330599786 412928886 589602799 396539344 138427996 988085377 666609914 883955686 204379710 885189030 814533448 34021789 898380716 748721601 209738840 782554406 909091670 830714132 991333659 985138894 551319196 327895950 900600385 484781180 761399403 342197888 347113049 576849810 469318372 504503927 896365142 286941890 54104721 433426569 984939796 836788921 138280481 535484983 286030496 773442521 576084957 989195000 147215316 275838950 898642062 353531656 195360675 645375819 969115855 318313447 833629890 941096406 355894603 255215120 712118744 886750172 417934316 492010963 749944487 868621855 74674398 164450417 777030877 997508190 835098412 819002083 808706349 591114358 686669782 109820283 259005465 402410597 150672892 752115349 949755430 868536861 530818153 808323675 923903783 876211071 463213675 889588694 750361290 741528629 510334455 445064439 793320522 139056536 995765704 243074632 135622949 974233166 500506795 200780917 831424004 933988929 791447634 980030037 194222209 520433701 883872789 263097621 632467202 585361653 953182154 784233597 515034054 590481973 746047708 883076101 932157518 597387798 824836712 938984442 852618905 951202437 848485855 77478776 763550271 987545662 764771440 915631374 902249739 932543977 695294532 311631911 937080147 352809580 95077117 783907134 108128318 337133166 891927219 933127081 110647729 934212266 226831775 808646032 888761829 482889352 636571036 55532828 98526354 985237391 971666532 806337495 974567832 668342619 949607980 133993716 875888569 266470109 147842622 783271723 430259882 591159124 396534004 343878843 963139984 578138182 266505659 750704051 553684528 745365254 337152380 331700690 912259941 123776269 867332903 964847573 799462015 231638760 954140048 720593488 598796647 220545896 877232227 214570230 237146105 273508021 148819077 755533626 222490747 986762626 793197825 894336514 831585185 996526065 341143479 993668273 796835299 135155679 459004417 236681223 629822722 170831661 662157480 424949991 510851125 936362164 101024201 423517570 631614839 863680065 357734397 409806681 811377723 359569407 849478569 926853123 793197949 834299963 427735801 166438206 987828249 903683135 306240243 839992009 935000451 837390148 275971431 376913387 139428063 272915687 631615087 951900533 122390971 804872140 669085560 848972290 944149512 846834815 672417534 741576405 794460244 957378469 939644169 962644812 886990438 696255784 892974119 208731575 605089426 445622934 976941687 503826412 781690623 788998416 135733755 327278343 928243381 754768107 437737183 964596014 813758075 951506001 931401877 968727695 251671753 4973294 296299115 826916917 160962600 989742987 782796983 762787852 162150360 866567296 57822371 108495479 73585123 800434155 469437028 900825275 963696964 488901846 802076991 776378681 149206817 947736668 48946211 928403673 810243918 916021582 296296342 163656022 938949568 895253988 794044739 666174321 40335467 687540109 409887822 778973347 895205775 840757111 296744857 660113794 793455435 92693861 794032553 812826454 855580861 847176139 700158400 875413213 816349276 225273504 973915267 832810243 643960265 948513853 57128925 945329115 801930605 691123781 76164896 865931082 876630766 866906261 846940982 49278525 256789012 637002885 804740423 255887671 514277214 869748093 805397556 947172644 964075455 242552684 828695765 991199183 878925498 793187232 809128161 672086093 305103295 603224317 805455827 130329410 887859605 810801206 432717340 220389931 442046395 762503422 956003364 942567971 945884748 409535834 912671493 114411928 871336960 312997318 765569811 752841125 322979484 797683011 392456126 912034375 557280276 776548853 158078459 27754644 752005794 737873310 224310947 918028653 967529399 16150061 142487898 911351163 881674951 333643787 752845838 212963046 969731760 27769468 915577854 805123791 652824836 822083959 934070959 968670939 848310400 676048009 737113645 769950724 712968930 782466763 899168681 828228293 920160913 924486449 666704856 871611254 796065568 795042211 397139187 787229456 970235354 824955587 226369069 107225745 549888353 959599140 13674353 786099535 901231471 543784095 844814015 837335892 608323634 823776659 882478463 76224515 238816880 737020247 210977182 866589332 996502695 22022910 798121577 797631124 931267524 851498770 763159024 783549434 904275348 739717040 978085429 609052081 169116322 911047436 858157550 926374772 871564328 309340584 934126461 83782929 901878543 979381205 463575526 691438986 823700388 944048984 402788629 699552200 684311702 10344512 226201365 13488388 882049883 925295125 67564403 693671288 934276470 504325054 13050765 862567108 946100554 218314758 851398051 366528554 771896580 693499542 298560156 218775153 113894821 796765160 170434984 515975590 797227202 751032077 390245856 941748465 839147840 81418371 77170291 4683713 932933186 105391964 900410735 475863190 741079096 943078563 872820413 841748363 484965322 498846059 844271480 140539016 365202817 124223995 828293023 763609719 937491046 245794702 924380130 435502630 908469826 924977563 872895594 986266922 995262237 963156593 697313 914089426 9981210 778285234 909926520 356245951 629495934 317203374 912609782 792946392 768572044 598350397 893138173 447058922 958229693 712667033 971698812 367725682 764567010 964542755 298396227 305867242 627898391 123442191 995083279 913767112 153318066 855575966 825555909 834435519 787140337 844587858 395407985 893496537 771410687 392462003 935840780 563778331 933344847 225193250 756180397 849569597 6198166 998799309 530218610 591073536 905242556 905976189 788693492 772639239 335980066 115280578 430773934 250941189 867936873 986633827 882507069 963347680 705654840 948970451 520413506 96504666 70827293 749717861 503343350 459972783 804274483 384568040 749784251 901259959 805193879 503445876 991278775 915177461 904847334 148057050 596759826 885070611 169516386 983954144 875042274 969240652 104537468 889972811 205659354 817048092 982844282 740492799 845917566 969848821 995873478 863423379 370592028 113729036 811723385 980414455 51304063 845877987 871193071 211523927 753370470 786310630 799986722 980623682 273944833 761977384 239018284 912833922 949869570 433802328 924222041 102785351 839716518 262012654 475963847 212101529 894665820 114527586 836930188 145154162 748551430 469698759 850213912 598397919 748530846 963573029 950235173 836257143 760061731 601090934 830514393 19403364 215854651 859549320 246448577 790499376 862986492 991561299 931541870 5060275 17703199 97729519 779157057 948350433 232230596 274919674 672370589 953685218 444704241 994589228 857723870 65986814 718066868 723633861 134352382 436538532 210077773 784699297 723388494 917859800 889272044 49882575 277826830 831576074 990875570 430505354 554236946 708777299 457937342 838023947 53598480 102865879 822433797 687040929 774078497 908270595 826654147 968135491 824801575 411837955 782890667 973551731 894154189 913413530 930046712 782897626 344220494 924136004 946724991 828994842 751868352 692575631 604149572 492666231 295412485 69210873 997338560 844326359 515448817 762121686 786122280 638587392 916205143 42140089 777041915 245153751 836946934 740012976 962082627 830137666 136009782 181602100 969364486 126995295 823645647 804887717 260734073 504219813 592289551 708176806 358120823 849012486 737020247 843845005 919255103 841524433 79800072 980307213 872067675 871503414 925682128 704987408 724217656 91274805 954002761 540917050 48131240 949191008 87088196 830241747 375102889 890886431 747826538 864854636 790158509 840925501 811791738 921152082 925642858 186167530 561096028 529980471 931722437 841899040 377099563 413212346 420907316 195602065 906556390 1783420 814816776 949390824 336501515 126206761 181977088 738034132 504991317 943280173 285235165 156152666 656835436 322556201 554684777 268627989 760236135 807632540 301135376 399524115 893321211 345038846 961802472 952877245 410753585 843784480 559316090 812401748 853729697 471258785 5353355 900227973 954926459 958083342 19110690 518651647 640529479 754854222 519828433 321344600 410660572 413578343 734726914 811861660 775018437 278320858 857690889 938376931 949531106 246520709 51551069 283551441 920325301 504353689 861258472 643139537 820330111 944330122 961807406 888037709 819687376 422001920 844079991 790924969 845043945 390363315 750782520 782552655 265028918 129382457 499435537 678200445 924968786 864953075 938998083 469278645 353628196 232959984 808678586 955315272 774448294 665527996 494577102 853893669 58070508 517209857 550099057 204366366 709782627 992754118 935344250 515767170 103161785 737020247 711429478 150719124 754001149 897849721 983079777 92547924 893232969 328270298 142212434 462677865 963761400 480931338 831307959 440308201 811056614 963414611 917325759 818882464 50456576 418453382 665633114 270382747 884205519 540000452 558251686 721449043 837303152 858696298 927245239 895843035 989857472 455359336 793063551 228254711 870484280 193216277 722744982 676536410 324082842 740674424 401696672 463270705 57646832 241826675 393118068 740773424 898993540 619661035 418236719 807175757 568917450 994135686 876314437 443263516 842164937 742457266 964368005 900794077 802684521 781985875 882244980 874638147 868986773 192668568 808759639 498859332 899416516 619036073 925630041 899180542 160176801 62973286 872756705 795292467 205461841 555525314 833238317 222524588 826246811 969636786 382596139 819419135 753496682 776267095 934835511 546188863 862636676 871375892 53908276 846538659 127952846 968972685 462248009 800423598 52679945 148953543 814755561 258235304 128011707 746185215 777998909 184772060 890574521 416703588 944978447 985220723 596643215 214639606 974452754 230506580 744013484 774159960 211306360 629650607 78543063 503846171 930643115 439913971 795610153 927164219 911961778 840739645 623575852 813658900 482178042 686388390 928521603 276926557 846965705 907774722 145819255 84704623 185859955 311726684 813885234 382669417 554139028 543706462 88193609 437579845 792261659 278002165 913296021 728362361 25820386 789592790 782923757 845201606 744649115 897174545 812590541 39529752 763710371 135706783 836990764 757436313 257437372 705278428 871396904 938937626 502980400 846823302 388805564 374454995 81663625 945959169 507308757 574817789 641900113 14612756 677971716 14109120 850387987 810045773 300363232 286369060 307745390 969038820 789954665 849107198 918829444 975640699 64746179 769211774 929844768 860411248 803099991 936492108 584047229 64445934 714994318 806840059 962498844 918131143 837194694 645720256 880642436 19516584 980672530 368131599 737453646 904448481 382421056 826268569 770134179 815728658 112780360 474894999 949438124 103452002 138728779 694465409 940091848 529895805 797615257 983867412 937531812 548338668 783370919 221769589 123553515 965853396 875152509 558790529 904650697 926635256 960932547 536540376 640439685 780942981 750035792 8417299 994862501 790068448 796943124 147994105 822705599 60494060 251257844 580875012 980538123 761822553 773158961 555364873 666839102 878420787 860258494 755846341 983627660 975361606 502786088 989757627 723092292 187512309 961338911 972965695 228720821 462997597 698346464 649048504 541952161 762019303 774962811 854326270 810266100 897481189 654717013 222688778 361256837 729579934 353408219 387202362 652674509 808319931 907814130 281178012 312047515 960367157 640597418 744107825 904898929 347413740 745297155 725500011 771638010 761214080 601538258 868711075 518771448 850164299 400508449 801695489 737378396 583067567 403309795 894337470 947228777 866661852 193981060 604880826 165488645 288446315 22795040 843636984 108800269 248298950 820174740 548083401 804807884 802299161 264123733 146822289 453846684 890107296 833418797 873432928 272791238 812105403 975384397 749992968 268113371 534905983 973087536 680672248 862678824 236388289 442306167 830279526 956457798 183479947 925486778 865342380 752516398 201411931 598146887 810265292 657940334 549988796 902967540 618573631 967106914 13388794 845742082 790221580 753589622 934243445 898435510 897184665 639276881 591392657 67066279 254627329 622345022 834888771 812321212 737383280 991148763 691973052 791769062 803627210 903705499 605758909 516248819 992568828 278362314 637111269 940590523 383595421 507555307 783405374 949503830 886387857 946503892 14639254 786744225 923557848 760904624 981994093 910195451 166532461 385760689 733002045 637470342 653321851 784575082 883154513 792956190 632242151 303081317 101172116 193075131 977768100 820090213 781552500 702144430 79483428 958635908 949876341 810431986 753767045 997606041 487077713 744168682 951649147 731599693 745358354 794351249 676092626 780946003 351615038 755364781 898204010 770713435 364589467 764369225 40594702 770280344 490852947 490903929 494580333 865195579 383924902 922739284 876561988 364978115 28355190 40007598 823619081 349891218 690964726 319399261 406649209 946225951 966957217 773595119 956980737 951339300 988205920 476118459 395950816 834473563 396960491 828009704 883626549 813638335 892082997 843467001 406958908 975570025 765847178 93589368 762411924 183777619 241623313 936102711 456414671 234405961 801482589 738395770 768752425 765145201 25995717 896505452 235084311 867765463 751413188 674982266 913460495 842158659 967975101 466985198 352177836 897812973 365152964 45295851 510089385 848125494 930073312 884025347 737020247 266246639 791080499 453623972 410043438 799160930 755744808 856750757 444431913 755370200 320354980 389028340 631815216 932172619 36050976 955185634 535577938 758698373 291205038 236240516 116306638 953338081 421887892 56581138 544890100 736167199 952314391 862851231 188748771 853146293 546879383 825974712 48898269 972337366 413579223 297203122 258153488 812621478 182524107 617304958 646450056 448938464 899434582 905782990 916811184 91262795 823067664 766977467 322957712 714835894 274049520 202853579 794466098 550852674 321633282 791251682 684801819 170083034 775630150 339989676 620874620 970798954 508595191 934585512 822249638 992642256 652755362 69596795 927536478 339151796 16347888 929824870 963897896 911230949 917300631 514048770 283509477 893893288 764344692 390454833 920695357 745647199 637940489 145749447 737966894 901388643 458109239 181572495 855396419 980640425 871707590 863125876 4399532 27199368 912039968 992963937 139800778 791484191 206365199 787442692 397910438 907961653 692703702 844209085 883765672 459812223 962167466 885274438 690587166 955694245 802645584 928359434 824871350 974563893 644806674 925924228 197131428 985387170 682808488 842323882 764347990 880880272 643513281 720350122 356956848 784863966 726269725 422594706 823890253 476011615 802850904 983527923 343692842 981655630 969451298 629137449 761064020 887622394 493954637 911990136 922379350 501980814 602105814 753437075 595223443 415022248 81697041 778448915 23106323 127430286 508266066 728023018 809263119 846157631 426825048 922895378 351349613 604675568 759216053 998539300 897158499 652752224 493874724 992954207 262743027 798371108 790142236 911159746 967613021 405571397 802339964 937158252 233933036 844723496 979204058 743629824 867640774 774684954 789739995 956578314 776873106 761292650 965219163 747519893 585265736 950541532 387291251 992703851 637295304 182959229 282732628 907919355 243722989 15369484 537479901 756671058 928062458 113419993 698868752 975624879 860525684 870008629 155084101 937488676 641056284 840238746 980232190 763859427 968710697 744770640 33973417 336158317 599287057 617312218 909061293 443959177 353749058 187483963 28182918 943853328 750762441 65947803 273240406 780561399 812777118 843155475 934904446 11533797 297249626 881316929 609913720 875069224 561888639 444115069 352134616 678738603 204422683 560300723 825078010 226036113 935026017 853124838 781604596 451266627 968966919 888459524 451005873 343016646 642921144 890612269 636866718 899027915 623418603 166158576 79890901 198854005 297203175 997889189 788812199 748303719 593790026 896052568 958038655 951463846 955521858 88058338 637851635 326962359 244186145 903195062 274402774 141716784 237500352 960593054 396289846 815640591 785448098 150985675 311193846 861265532 483046990 478648841 897985277 738197658 869525126 717895981 698810517 88967455 884744370 749147928 389382757 735924901 704470252 777355842 269116981 135443699 974592779 740560311 965545976 129398685 730796779 430806827 922620172 398173756 833682024 832183766 805139867 988752730 819099131 987811543 876931564 284957830 992736349 479091096 792441142 378474759 613222372 540197147 851713562 879160867 636892448 480757446 905301240 406158867 101655903 25922156 338374106 900246225 631395143 408613621 770231479 873122459 974323769 902136592 356122357 555206204 806245096 303037157 109382624 805070856 955558755 751869532 924764441 842349857 893938133 476079833 945768358 947496786 757453815 533356754 185283784 287966603 449995705 600077747 782118390 263047301 956044907 995145246 855195258 367211812 546701719 838787163 645304575 81358145 993940114 326190501 15114776 286777915 800354924 767243659 148070794 753452798 947220571 328616703 635625226 54611220 820049649 819160083 810234979 950004430 775295018 53480852 850405243 559669821 20370049 699975495 250005137 971313848 291820396 187301232 838105370 830433893 465957634 927657471 277251382 154371689 529081241 620038715 264038253 780152710 672384940 843003785 491974626 826741341 869749956 193987067 648670967 82531631 299408114 52022225 187243371 585647309 246271458 858990979 717992899 774727552 431721825 11222066 867850422 909273585 820594110 812070330 848571377 819433320 885325021 492584484 761952926 767024321 228576179 373023811 951811679 314354400 3782542 928868100 639189949 226204634 235682997 79391532 455835843 725910940 816527259 531112466 533985110 951927814 827589134 674006589 39933306 437007604 377933220 631118240 901387647 991699431 751094299 740652288 455658249 981484469 859299350 464380430 298035908 451014685 49151094 649439050 356925423 784939687 177500391 764570508 889814320 592057014 898784138 954834329 48051764 470991361 6106260 723773693 886346018 548276803 35139357 977532086 393179014 216189301 940519694 177766933 925033327 990663142 508259945 744479477 542573679 737020247 925730103 798008496 253587852 864087576 276103478 840874081 413073398 966547501 919759588 76573933 254722872 419954503 39717865 589057904 644774177 797405373 763964498 169664915 900430460 945835976 521854125 825023438 516111503 894771160 894254779 14285172 866163674 936415485 316828657 402132537 939020767 910620531 828400830 899484638 561588140 747216380 508491985 628746047 712792167 740784438 420235719 943642227 841518712 419848604 433155823 165360285 228580356 414920506 294858505 738484678 184509623 810875194 154799785 985577098 14597846 202350174 900892224 982978753 918768285 770572920 247625060 860647338 983138603 16250514 834991644 341455797 19996671 975409436 716538129 888463557 634711979 160440586 977605791 138792661 885070959 459773477 445905746 302671281 517446849 767358182 121721697 658877123 790351426 269810417 419543553 34247487 916471140 31952986 703805423 23950055 708861190 713844833 181592549 974649055 982493028 683151319 39096177 968394001 981190802 940460648 993150320 787269504 622499448 841631694 774253532 513440832 925835419 776936631 524889652 347797560 587496755 839805412 857372843 746556523 134012780 857978688 975898894 850655593 323159296 663245683 279532837 967611818 273955849 726514795 971404284 883931381 68498119 610806450 449349260 930639798 992086182 232563192 541082340 932299397 310139813 909463967 320383086 253629998 872366100 459904119 969085953 941372335 859123184 847816340 12334060 794678754 990056584 723007664 685958542 840581698 69131894 762696493 687866962 662174656 234494595 841588807 391270953 560723490 905483729 978868147 939636358 873242821 408517238 222471043 675518308 227563960 371206441 912903834 301118261 797589071 433396338 18622522 378480834 684567440 840141766 891917235 755080241 677740353 783176476 171544584 499135443 562468701 946482636 591332195 757737422 846885843 323618850 135924479 948520236 698745206 757942095 147615860 940152621 43414149 960681069 794679523 696913480 259258583 845859421 918756692 933628959 344748182 140733036 293524214 826947169 698518276 48732225 527365828 750299495 180217657 930407966 596117500 836202111 818298080 980890655 658634152 111017932 605310219 624318561 988590818 955050035 773389516 904094581 394572411 17796653 348083055 808369685 236539791 101677976 901640029 300703901 870068778 545029369 352382800 224727517 435500960 464382308 905006928 127363774 900320646 45944822 87885531 412274024 406711578 723450793 905866398 945849223 176953754 608385428 777876481 742337474 924187367 353092716 564383721 872973455 154000580 605530448 119633909 811385536 133658098 520176826 90710701 730297153 337869951 462594269 841447000 677387416 159488107 259873427 346476587 123577228 789188242 262159896 521894391 750646854 331201772 159960242 154522422 776687281 319639297 760073255 738669593 797573134 971777589 386750360 719864338 956298582 968946850 895310472 35335212 765630863 571205178 901162430 394370630 64204988 111927271 808059762 967853314 842899315 568134275 883611596 957825953 599593472 825287621 698540411 469005438 766718520 221972895 850647042 923102479 616902365 643813232 798288775 525600928 958387627 138385425 851004498 83727040 834932313 445052544 318972276 65822144 663875162 823695897 255503110 136698762 367278608 610800248 886818985 893816157 5805986 744558979 770348713 527589736 442719294 801410612 963055562 853305834 807904813 809278516 981091184 766093615 419909776 636984986 325756171 783729848 863931650 967529189 580443965 595279583 877714348 382718580 791729703 292244171 602467040 353867975 936918394 819246377 537826933 905252773 537790534 774165418 122772971 855967715 765612486 534540769 704382040 865559725 148544191 809131651 389789932 787664475 636280020 270802467 770774888 541235020 634114970 779784786 563877545 388416572 256278713 769290672 502794535 516207780 10141557 95037205 533099247 994356968 334724872 948814468 790658328 902403476 481825509 770937530 757110414 278364160 787916356 740255786 243703034 197360818 668680992 288670390 201773385 747498843 547762359 698162285 829054239 169543812 816344311 823921297 83748341 991603667 798893505 396463015 145615835 873789414 509614349 712583426 991356257 911621451 835440806 679622983 665191655 962168374 994256900 899034000 154557163 790110003 728597703 843590374 913828571 894697063 970775250 897498305 651962049 641401938 961000081 887290432 832040024 58281264 488762983 455860224 242287341 527002831 310472728 879232908 743433874 501551159 277862537 907232327 870573451 359482752 672796123 58131233 826113104 316564893 720301410 608939834 440160583 811220088 988076051 165576788 778833029 821732216 949252312 892449043 307699786 91135119 839527475 757489522 844470143 854380242 778988286 797262557 350434343 25762503 763874686 660364713 549392434 150513297 828131172 373682628 877850955 664169512 753482967 787404336 39698814 138794537 538867807 981918818 543053733 742363186 396566606 994422562 834815320 805119494 963464591 871593242 134144917 995646921 733398668 813951313 345777509 772026708 410747839 829123286 745836638 919732802 957531097 157851278 872755495 347877315 995607645 120419316 545181836 753309650 908473221 270429361 903186901 944727768 932851544 721216288 824011653 912182530 13914926 941392998 582149687 298043540 649422771 952359133 880767580 2884000 13899762 861812495 751842074 911161230 732469215 846389504 733623046 131670095 995940520 773566261 534661886 215152104 206710196 691050859 294372160 219085435 778193405 985206940 945250312 891747758 58230137 852761531 865757376 544432603 283959112 881948655 593030256 869396185 762559515 73018263 779683426 947620646 381018224 575350499 981887847 656829184 893032119 902278698 846678022 798187648 879496983 466310755 930496232 3440183 869288573 804278672 993143809 748214030 180472020 303127060 554136284 183103445 787548374 379961395 754483687 885619001 314478942 115987846 908466241 328953003 397551142 965892067 845256825 994604165 977981008 944028354 524263026 966079751 638267418 365180095 923502204 868578312 127060194 447572829 887059776 641266858 487938107 642425210 470240247 63225428 827915235 19225182 580570909 318418289 483122560 286256737 184427094 53584053 912265354 833899539 183442928 949992440 956327829 82560843 867832908 963440990 929531933 667988118 299851280 804588383 498673802 731907434 751053920 574722606 432789662 844172340 436858306 925702352 152984520 773732651 624867876 645210545 51189703 501485153 792653963 175519718 279957125 968010372 107289862 806651034 425590795 877866086 840354630 903762228 601175055 60437184 994106407 412144492 974367000 231670093 159737920 288693418 893814535 934900710 893245077 833519697 346260572 606747077 54508224 736616022 658625746 481501759 879409308 745497779 711034715 243696289 147579377 574500463 438165866 265379564 551268556 817334872 475726961 868363643 327873069 292121912 596157310 46820706 456400777 180002848 691871385 284111474 928130687 104689580 815955220 794640635 933740475 597658321 497002657 821831158 901065807 172510425 349113754 994980166 929612536 543942462 643161074 412621884 938715104 933775874 878033462 693509002 856378087 913935620 741849866 995906528 882728316 979385649 787066828 679100178 727146338 772319038 204526463 944876966 834635500 660895148 98959378 935158429 758647892 800566286 997292621 738687213 343744939 950350493 862840958 926113133 953014466 774747609 807241405 618492301 314179655 973019948 116366302 314878879 662381089 839541277 31285969 985810372 576805791 747782526 741565202 758418032 194974656 289216576 287650197 378378649 159965584 402689482 566511505 153115215 317254560 271367365 650765824 848421371 927350084 345551311 915963687 451059032 973173221 607152469 978844488 905514644 304744787 175566175 147250068 853768602 699762573 358699597 790660023 835935460 950891004 855673000 618988270 953611701 361349824 259258644 580464355 222751361 958023844 842398308 499937299 847209360 855561557 931712761 329560162 804064584 882589936 728100345 418780269 615161513 578423608 992127271 247501865 806964949 983218296 352417847 950527635 370159872 523892536 366728798 450954414 808544634 986890152 372096237 821909957 981808064 451317553 973038776 764565983 665314116 450819278 968859761 472646401 611033168 997913465 761435468 817065287 346094401 851924820 414473597 826949966 739475978 763260659 857038327 874193734 999424117 926405271 751631861 997099390 892670228 399875037 888500321 213654283 778399506 543476638 637206287 898224890 599184808 571368218 777973555 641296799 865700870 29757025 957083427 200222020 697078247 384779893 401413684 637524141 907646602 12584909 872455682 837694614 979302782 506716440 634684711 912739920 769234307 960445560 333208448 814462623 973813760 945337964 764566064 213143173 982950785 827377716 789702516 518327620 865697078 255944742 761447406 160835354 894093920 872107754 31467662 497755405 796277591 772244355 828449361 833965684 856900848 449181675 782026690 167800692 904537818 542653089 530953728 767315960 368007868 67936268 256578861 797633063 811116572 800573004 966204630 945689796 849261730 248491318 48183362 918529179 577574754 195211347 757401244 999575949 230532143 869088341 478725794 881789660 58662721 831101824 547325999 876116260 970903822 653098337 772003358 553648920 849216821 275788654 875084945 287873405 542508831 564858556 883092145 916105165 396930958 30918989 833421988 418779554 844497228 762441191 326008596 774754938 914054663 396342325 991901078 833531879 999812701 729835582 271084194 594982070 324501382 965921914 36559116 998862316 991593073 409964831 882714963 763232386 802294094 649170482 871043326 234321532 818146211 333034443 470077735 930520279 779670523 814590299 173094122 94030322 107471004 752049188 340797741 861734491 728650861 740792229 803473924 383188748 789663702 853276848 998536264 709202667 472746610 320972403 820823624 606832617 611203334 980185655 939532354 367911436 446009854 565285113 792846424 885188450 489070039 552295817 782892699 611801512 94605547 495751859 310787250 546343291 961140861 373467204 959667108 560885056 161413893 894438928 513580546 847625514 922887142 651375139 767630049 524303810 798787622 226871280 261285080 10702596 810302639 112762052 878550865 951261331 428693044 520165560 716439717 217116952 920810281 570098438 334726101 804555751 676230183 852507040 827703729 886057066 551798450 760684854 901045809 758829970 476353121 644918228 923086889 970666267 909536310 187664301 175357923 638587136 285418096 635726101 763593754 996845159 398412140 467650180 291318036 20712032 762883576 705695482 187716634 168196397 967482138 830216184 498229406 495827187 504648824 857406473 964039669 845542527 920414641 225770594 44643824 948287018 815719325 420566745 876887333 954803139 969554807 942176010 461887748 975859049 775700050 4555361 814848622 763165155 928327281 585785326 677212700 496539186 248459487 487708345 333446372 555466676 887180239 808444620 863927764 749432950 744485975 810180940 924032596 61141291 800078421 336493931 811728588 925279959 852829972 45567162 763510144 67707827 363803144 459267129 295504680 854218640 324219446 382286598 711362034 291429429 452840692 1609586 927938841 644002443 13418865 738314344 959152380 614518414 590538221 992233025 787449240 825303572 841811541 348218383 614431102 906081664 594163587 951607132 168697174 214667876 204224229 858503041 296059295 287382403 849682038 358298803 296998238 97160212 26927157 141733773 934723065 548870968 758202611 404444790 136377153 312559886 890428781 83566846 849566171 301571632 737621589 29772951 766511311 857054380 585347227 858494953 35836380 931751355 642331517 756590454 463651663 429503719 102255108 853431678 829223474 301446258 329239242 772055493 708127537 980087206 341349636 814637908 494541513 174339988 803869929 43542517 939663255 766949067 455170712 409597668 638014154 958502095 148016920 228584193 3621001 904941977 116182260 147687790 872240662 910520122 43814613 734883474 293557565 585063881 40433475 789497502 800087442 834420473 805512417 861287567 6093136 270428096 452918644 758119158 455643228 356722558 455392555 635854567 935977367 586139042 741145857 978762728 782876210 467635811 765724456 304589938 745907788 108148962 852530909 989767436 103369809 838396674 827137706 387141292 254190407 412790487 786184611 951584212 752522540 12250860 71276344 993455387 901689862 821441140 887324068 760368300 265836701 597043587 554777152 882444339 903335290 849726120 813118938 820348998 666193500 278277741 778745811 279452414 774306376 178922631 397892843 840635855 856921106 861881014 941093303 336224232 166303960 841119890 534430362 919525620 846991344 915526460 992132999 546244406 391649715 889830916 796750204 532448792 839512469 971978089 410971590 816832513 851043684 809541619 628050887 429971550 825681627 667198088 389657818 765455561 370842468 682181412 741200677 603056713 671804066 951990741 186961935 404878897 880567546 905378107 74660603 863156227 867291425 891970909 456276516 770499240 607717687 359027610 701441622 756129397 839284356 588379088 531912731 551160573 295741689 153155177 945422052 722262017 146977843 890220108 593886176 134122319 596920932 642747846 847567859 196571910 22507844 774296508 662215242 630377058 816400614 854958767 841265714 948986044 908475948 974994178 710820163 464238374 794449851 954059817 767091926 778987777 875664176 804328680 184601803 368642836 760204366 428108448 879587641 215235184 889517078 569767534 717093842 966913361 390758565 583852530 768616439 789169991 994190295 96542494 811208150 340206831 869428127 834347395 595124319 281937691 391723542 129202003 303410018 928544865 906439383 908000372 246595804 261542390 781797958 801390837 14558631 232059273 806240695 707838219 296134114 534162494 967995161 493926328 784952028 37912786 780913038 623900940 118708327 839310672 576609268 774117373 191729278 687809846 845263506 975651243 740787825 718470263 710427019 916909431 795368527 945385660 340229281 116852054 800687967 249172111 785131769 813501399 752100177 260931368 618234761 613197372 12839190 442013087 968849599 886205335 907061133 155224855 897184110 817852853 795638551 835684651 139135537 748079142 414250756 74174668 840317165 728693162 974346167 978632507 867420608 928014119 671510054 798673349 947484841 845733852 253229761 678633772 593902475 284598198 962599046 873845291 498003495 817242149 860709774 580532912 841076629 840960376 570558449 849985178 978365553 301596085 118621351 795885052 702088311 968304529 981748880 746591599 891230600 416803372 911540819 282669445 856177994 285339563 838131832 960230315 850165769 941035901 383990426 920047250 118688076 994478633 98639213 624252001 211454370 938404259 936482116 30380586 329997511 679009322 739510018 532087330 406272721 815119901 838205972 969039376 147756275 761143961 827953967 991354556 982366851 399345840 599086885 855360273 411357415 714898754 806923767 129231371 946075684 125030899 794836226 155866195 394305250 299141068 184692007 392977714 716235174 452081191 869482945 305610514 943523919 734082777 859557986 857817680 670753752 930105337 51681678 759146818 5836608 979249712 941076947 667489802 548267003 238060297 689620518 887509589 683086554 233817843 700397664 236710305 123653350 156419433 708654299 741807442 514238346 741552751 972205613 773155012 564458318 892639054 413479846 830515744 305863665 756574086 864918675 354742847 203323549 982591204 84870717 734478572 159632771 582195298 88725732 838070274 878587341 973311343 987580821 884760443 453368452 581581552 435208490 862681804 368291053 769018027 921044189 246143079 879240486 148655696 939620647 994107030 582167489 847237262 171058099 459861323 745916063 661653729 716453652 237825665 360886759 901886304 213425944 618800562 556654236 608302372 150813818 925340829 445405618 904300324 283188991 389204272 843199390 867662393 918739342 560408206 140897011 841649076 967391550 152890946 734574629 679349632 741878197 909441799 882530607 895135116 191207935 880177803 980358034 219476764 878462886 941489482 178923123 542399042 62040687 928369839 934252280 257181174 875958992 161563464 867042501 93895378 552120253 64881174 988161698 414964955 933559803 708839887 207335691 669394856 785714047 769788336 523281786 815096633 755638991 84856729 351095556 784572326 176894245 592241865 997620870 915903788 946776088 57443756 879582853 787450982 822670014 951936964 125318376 882125979 39167606 760687618 7928803 964448638 622301451 835513552 140751047 448451352 38475999 741173745 619808194 895372966 973442074 756593463 575453708 737020247 66767696 960057866 923946696 868482938 419508165 974939853 775565864 561310165 126758492 521974898 828666376 759623945 129878758 61736235 338494862 881546762 172828282 754744362 413328507 811962530 655425930 977551580 447200213 148651111 773014167 984074007 361211358 968788158 394999661 60537661 759011873 221080811 786319021 846727945 597167364 675985826 798693931 61841300 671313780 449058976 815530584 757167654 784313990 256771783 696185052 668291581 874526730 921710291 308871579 947441264 231389492 87173982 910125279 992814681 141753381 958332068 511621110 767364194 236197411 278860474 980229150 989990403 782151644 831097136 872194547 953879295 465603923 868309735 883451661 996233840 961340463 759701620 246185881 200024611 898392565 182275206 170817201 984357192 783711120 369614844 861486512 895683731 737694808 616375922 505947645 390714483 559826681 440249470 896332065 86416760 232284044 416250824 842702814 562842759 490974711 740287665 822017243 737020247 850248357 609656291 962964403 826841131 311682132 757074057 863865620 952561813 460901587 671738759 626780203 62910697 766493464 874910922 319251713 22600356 432661983 781697846 730465111 689851514 909587148 656895375 839534609 744789085 535859811 369700133 662605666 139693480 775689732 834282199 866553035 985608097 805881387 927540278 214623809 996504865 825177505 859532146 621804970 449718434 654078283 786429293 461436398 844527832 816950016 967435844 279457409 426343866 984305793 745343899 194566061 322431199 339074463 999598083 748268148 809970467 37637084 948880232 785548864 833007548 203645291 362419396 961363548 869384694 863784798 500894178 585690916 481522703 332650555 817525583 872088817 758479746 778467656 687756575 922817859 41243080 597554289 473430675 392879442 553851026 902580860 231201297 191735543 259262787 308497183 562182770 979560819 324990010 420004497 997209957 835486150 852341830 889822007 761074072 387050131 572614915 606631530 302476098 891194511 924829485 620796452 707713225 819812425 975066623 339018930 453858339 759693364 946613317 219218276 980792938 531249003 237907102 118124672 394972136 895803480 864817935 865184890 903228736 959841483 46009212 816128209 803140670 890901403 789183619 870434997 775780015 592083165 461545102 360952836 489059044 988520494 420421759 875472323 89043149 565267079 497724520 77182113 222155777 941902716 849492132 865656697 579366806 539499589 904146625 996161598 862790166 736429489 793468126 420765942 301216375 990388382 876371016 854406151 168403885 587751309 833342952 87216278 650838487 745962380 779226490 810845032 822096026 203093426 979558327 237717684 306533642 780115300 106176326 480273426 945874007 366071739 953204955 17146444 761676147 38661637 748023021 982933380 927360229 937191515 949037106 314640268 96837328 547063881 831305471 662759731 944909149 317058047 195621836 550687895 861845688 278123296 118247620 159653252 511399620 397361190 150874571 414470200 974762388 558388653 289283769 485012700 943497531 379869148 385042348 463765060 812964289 957865937 759269969 321481472 825839807 297688676 726447167 792183589 4018792 301362173 802190302 851895785 772984104 255601067 639784101 306305632 940895400 303577856 152483129 619475918 514991048 32610706 386946037 847411502 384284463 485839977 14340988 729990231 565397141 944196682 694033732 692649392 928490379 906350628 203014269 966810292 197019821 509823444 712105811 840759578 553625377 384778396 956560015 376135550 972962783 858668575 804162684 304839261 796753889 767888568 942225117 980252189 863661322 490009233 935133952 649780723 500750350 752758546 501312058 637633758 373580759 819291397 979919865 782203458 638691159 954280160 415493169 503248501 819911105 717048076 588957848 871355447 204294213 799569419 610782029 296445762 607608424 965817600 475856695 573468248 779803968 478424386 499055594 258000835 960443596 993105966 47414120 109574080 979425263 349934603 102138316 536174694 109840121 1557928 435939046 832083462 110869697 774356290 822153041 756294672 26465939 365931867 840238292 211925814 438615904 342157541 856682319 809239107 904588054 932560815 105294997 882845682 532036111 63718088 350428160 785139008 716012703 670232863 781000806 860515027 784495353 611957181 265563159 119378933 344800574 916244837 579188214 578453967 270201458 351125837 331571494 905012658 749096127 335733585 117041104 811278177 701888029 215984757 753014311 199814871 812834520 862669028 844051607 903529200 883707405 747573284 870143196 716669848 663218851 319781607 440685618 883075982 875052629 161299979 291783082 89661779 931015602 242087641 942063383 949770627 156634053 477183858 481168836 445438425 171862472 531189184 583992482 371966165 342018811 894740944 884986898 799096711 969192522 905297827 758086861 962160027 990993729 847080351 983371602 321704614 734896322 101808330 972126888 246904295 270655675 85628062 838815174 654204742 307203759 508665709 905386935 538545560 750224749 789978153 921363758 356956402 963611393 848917425 747143566 304127767 770391574 659254099 246872939 899105573 917296630 455662635 617513231 928041945 879623719 912353256 35012858 445637360 449839104 266021502 545862006 884357086 132318286 495038495 977109301 253569577 997536669 910664783 618318205 306340888 961298755 772587368 600495585 927421590 784363064 771639621 679514796 990238831 409756571 944213843 346997191 346442983 892913942 761410261 762166624 184005925 996307678 918761359 723733117 240589562 971989979 791208947 886715376 370890104 945550057 982506234 155064027 968675431 943723450 279444215 833400506 234528395 934279990 190485411 542165142 866201216 811105578 30746733 914688946 592616974 781906664 765353372 184260200 416816998 794511871 102702102 96166470 643286955 149381834 855308124 52971357 726202945 929670937 443364102 257999183 704961239 809652712 950537611 145757338 957387056 471134647 973217072 443736067 283669973 712646038 885395420 872126599 463902703 986511300 982650756 748888390 906272246 952535456 511546500 560952061 520665723 753093601 609416030 819248251 849700359 872046967 139689589 978833760 567881694 739653865 899619235 912634201 236359891 899447956 897468236 904349419 528241338 721413343 413820433 980242337 891618743 395307009 754715485 849980453 776230911 862520367 848576827 210248380 259478484 35385477 301622481 482524608 895201950 905779413 926110642 352954992 163280021 795167987 739603299 353863135 929108225 969827806 144676639 137176276 256532302 460541151 463272137 347301553 968837032 36875284 916038173 374020111 450278205 819615712 148553656 905830084 612200006 612834047 778191408 406724243 809451981 140980016 959199283 600371079 235499690 872824279 388786560 209656000 386707054 249610184 914916594 898287734 824187367 533083140 716854340 997332552 361651833 610581405 895689626 586077269 413508892 752813804 466633731 158490137 505839232 620603105 262416281 599766985 971185314 377067172 468241805 220747662 615567003 711642641 40854223 51533439 970822278 354894813 900615804 53636965 218581833 122445230 785717424 994846216 1078154 753523158 768577437 887148580 618759039 292458636 808393431 686903236 997340700 251161659 894788626 486283697 603279355 884307382 596713613 19047474 595393527 854461452 244647116 830518708 805478680 970725589 135923714 384917237 852820094 865869566 643890547 531984461 230681698 112857974 575275008 508169245 868065403 657921090 460931278 516673884 769896676 753895857 945235208 779387713 762048578 967026223 798218334 134245607 958214739 960107146 838045803 633272957 333553087 23989575 751597289 718040710 432166440 725418348 898037260 397836701 751094577 219612237 866771900 597436464 739633864 867285078 794048704 825470837 788510475 511028698 473560370 884576161 83211237 386918456 646069693 288327380 233666299 997488422 985385778 215300111 833700740 525492192 429245926 887932476 970160387 253286649 30233137 135304447 706301148 927274582 901258176 101371256 784643001 684333812 828329909 218807852 838908442 505979912 882080233 618456794 835423589 987648509 432061507 832191269 314027856 641277458 471512884 538387307 478061850 505989824 494567408 420134293 935134266 886644257 88210445 892578087 770896898 702352393 660645345 913158834 770751601 151935316 768774535 554096741 108031934 519894046 847209251 288196418 362514728 680565578 388271112 126605119 200497117 862027618 300917645 881138259 542344979 860728427 505731619 801558713 845996525 321263917 347610474 990383981 13896097 791365300 945777545 494009353 645047558 47523479 279344928 898337646 89334366 780616163 301191627 832691167 506553097 234420087 302879481 148311242 53728078 928214135 892149988 834786013 992029565 244429607 797564168 536313731 872848874 85653023 306824644 577617216 841617504 619494159 989997049 861374759 485947557 81036543 751983051 103918579 518857632 491648999 750444110 537129659 942081406 462653028 875060804 998750073 947698644 569077567 988015716 966343878 107222891 957440826 916655092 554924911 799822857 16003587 836187468 612059488 127504335 649209315 216566792 996192027 898474044 29563866 688817273 655592981 802303638 205675104 844836976 559687900 220393276 566786722 253844403 745376544 687926337 895115144 898800679 635226467 844400321 890839415 116601524 353177609 813805592 972663280 356267155 989425192 604030930 954085896 326216375 907207590 41872113 994758937 370001504 267401359 613235700 174195115 784330620 769389521 742315656 803213007 602794321 25229697 33813103 924575631 915126728 748367695 879492688 958787598 25052157 478434447 748822803 951930942 378324385 997268457 984842405 362238511 765816960 865274799 461060518 675803014 145813031 270530991 908781190 474708122 460557687 892212687 459426116 12733662 365448429 67294568 572247402 932769234 627463242 668465359 315762312 765440983 591527284 660779587 456154072 838306140 613096245 110873651 715986393 732607221 836692420 844831190 912994433 955719772 897264550 87332522 533592951 927781463 94705011 855190685 805965843 938285589 372536646 18542430 845990904 541548272 845819578 136980882 411921903 614486606 42602302 801328738 778608019 298874516 312404210 978384400 212108299 994295336 142978926 236834225 889152288 938608960 468419755 389853464 926551620 895477135 553177587 811341157 591538374 859644753 412269673 69554287 965404198 85242334 462045373 477523725 452536745 882820857 606333562 745037594 821781668 885825188 888513727 782021923 754260898 967274278 21219988 702677602 741946603 737020247 846812240 938584198 122270005 203417433 557389499 6900325 459791206 622334990 523908356 898943666 346316744 910307713 557112132 106796660 38123696 791630927 54734841 739257316 684919463 817065716 626042973 879768081 994123583 745724358 712353120 128773868 781270428 511533014 100423105 816120545 910294107 913171600 314640262 893940812 56337188 649015808 833676050 407656173 774035935 357425327 541206374 127727335 959930060 879774916 391377672 681442886 865415484 882931519 341132171 795991018 772266253 123809984 348805530 92166641 889364680 664446041 3971052 829062147 20169120 888935395 681767423 869047598 607970862 193188872 327251479 543089466 857065488 925086054 634637348 704994878 348049998 390583503 984680134 726484618 631942253 968119929 955167271 895845313 962394994 856822975 896063756 809863117 577759714 954765426 997907110 438705278 980835241 991802751 910375053 446746539 48276320 954680404 944419568 594036911 996494058 844400377 141853328 628288174 727289229 929477296 865182718 615393526 901540524 763769688 797612210 900564286 100179167 278105532 737873060 820403447 183375065 189522585 159623902 805686414 913649399 224119774 894483635 781385152 898859017 390121270 253984963 568299884 553189886 879684764 711314231 829231320 825719907 775193636 395149994 73110319 684557481 406061236 460995856 892057684 867651885 738763002 754483694 758770488 23554448 635553330 981064767 782816630 920604184 973185316 596754711 562252129 41033343 898013646 759395857 943717219 327872006 127429917 819469919 756952105 550405558 722081074 262746475 310247482 866811120 967116669 501007860 483057430 661004666 762557122 983744610 222175823 836400549 789516623 838103366 952990930 349084529 207390024 456884178 746143266 985625908 114537070 660212929 904818158 191427822 292193328 869729002 994780380 102761448 990542069 835731731 314359799 377841182 754810584 927921916 116094215 283920977 86189967 527889204 760570618 659279294 749905675 845344048 593297770 745287632 11149106 951691080 801246344 92710116 205890838 799337864 648781141 749002787 47942733 859766380 665572025 756240908 899614450 898330152 461974038 636025501 817962827 743321099 813158189 689149986 884628231 366520129 881121291 590421038 42813354 198791046 438481823 123065510 405479832 341139164 406694983 984010475 522131984 840850111 108132140 893280972 447264163 785846960 372287529 748041721 451924594 741456069 997903580 514801872 915755999 233362994 795064867 383868057 888360957 201779972 235451871 950759280 703254439 515037056 118965551 975063390 167474874 991248011 406377753 937539362 324379785 351273892 932488659 968651276 833763954 795979708 36594015 981987270 265292613 675223925 975947284 929207065 947920548 534837732 648277677 929404798 878452928 296632269 981995780 828793735 330038498 805069743 522077142 857020042 104354734 775348174 693656425 818532248 216904895 769068473 956125687 842393108 700961223 527494723 975806459 975975019 268354519 462999611 982433597 889136301 960699069 795231925 22487567 201299278 811806861 667825811 838797875 848583398 820477271 620693335 874222863 782555545 347369242 123979162 277811389 844553833 941942773 293076556 469952609 883475842 609178238 869127096 249411402 878682238 667333892 95223276 296219577 821677330 911720556 805012172 163506153 196522112 802802888 620406102 804393255 741584165 843101743 924241002 32408447 194256699 602662282 376452714 971812623 989974440 794033970 408070333 949218036 368861253 128690773 996289395 358662528 628416908 941945361 326369844 780906358 162874986 964367057 545056875 61030522 349011879 756556170 299751533 931709304 371833011 444701347 933039619 764327792 144494550 569836448 849062939 135361509 220039083 579696304 854455824 810456332 887116135 446492777 984626832 221980458 978045119 103827676 846619371 980847648 805348774 578151915 563045800 799187391 93161833 851820870 139289154 540364644 562954080 913454547 615340382 665314614 832721038 658960406 351720561 886097023 755674101 877666948 969337760 865597752 182972429 798648705 267954402 563890690 604287225 563002239 168608445 567783804 769776790 964513997 418957830 501742391 640790538 122047771 846121643 803576687 121094094 306107859 345700417 25061969 327433236 887722115 854766443 559584397 916641410 934716231 943252593 621398756 989563532 948538542 634662929 436589338 371475508 922900957 788220078 788799892 956542713 681955874 984391620 227447611 821760847 777668999 774658559 952753577 111699554 754480435 947368071 847463546 765020821 826259656 466404631 865312179 444722755 422952218 787241234 422166704 835281083 832257032 37509233 813793265 946523853 743978439 826415416 185761950 461538580 953623420 356509763 530355301 857116320 447930947 960754261 943337139 824262436 564295608 814405105 823248576 397104724 776877148 824235674 699854022 780314178 797472957 800226009 870280040 85853236 999790570 847314943 610314107 510584488 759287485 201536188 994151128 175867487 407494394 845414110 731807737 729592081 188047360 785803959 944180288 934515420 962963251 583124977 791393629 787286180 264983164 422729949 750166145 799665658 918444332 978887035 811059836 907748589 546794034 736911577 749403823 795985837 73860630 966668672 770680178 267008054 390810892 998065297 960207288 28865503 797295443 153209984 759686082 881149327 480801656 219603600 814222162 939194307 765491877 35197241 984086183 925996229 560224993 591226734 88783083 148328198 176516897 908695892 833727235 346172918 737697558 386707520 916611549 794275056 838425589 259822898 467056188 547789624 224322877 175907508 710943906 149836257 979843510 607819441 944523684 802844582 179694783 394914131 929104769 748386098 828867119 150355337 131240157 826136034 834573127 671468827 776049385 994552094 149860391 883150026 854745832 997128230 94015191 868176962 371027937 353115327 509016904 751176365 87211193 876929197 354339829 541755742 652644071 850441257 12224043 875870179 952999254 322596424 906253005 809513021 853284069 942191473 794029852 915024755 852063688 347718228 356553834 518131633 990160211 679484013 889174953 561112766 778146575 193397853 431263929 746530716 104130463 73628747 890690449 468163433 292420145 748604528 650997719 799905872 527377910 64408418 843859620 217453221 589969661 73421326 916970583 435657301 418187231 775917296 512587117 923513392 129045891 389694380 985636214 622379566 992561433 547697091 914028813 909584391 367071634 336165456 90244025 975799386 478926926 676412223 867547317 534524149 907794998 895755257 544531035 908934436 778508123 522078460 890735703 71256500 213123131 371563458 811010510 991213004 241525199 437336486 388567493 830930321 790647928 710881416 886214335 750608024 778333751 795188256 706223727 955715115 238440724 751173311 893435956 47150822 961890490 975067094 990325556 590008575 739555919 958467564 961890066 940614252 775018652 937575266 337222441 412398090 962020627 912465026 360286408 145289291 156565648 871687607 505814143 866252411 119616626 456834125 696052462 47321695 597212416 264104928 799477394 360850513 576159089 963803624 266425221 554495816 29029680 228807052 541305109 812774860 866205739 758421903 851548754 747430047 715704116 880798472 986717178 769439418 628819482 197641245 326610551 463880631 825443167 138609657 944075002 806645178 755109239 759181174 943212506 390436624 113976033 840749131 33721717 656007319 941499005 822183186 570518877 312501988 872166211 417257253 653718369 709025710 213029387 409531859 903112053 821565902 410858358 773807096 711953930 24422847 874854875 754527907 650101029 20300806 977096181 52577127 73866145 731540251 711554325 450759691 118537038 47972363 995202165 923282849 524102174 587610321 775926311 641463169 36810801 899090670 94052638 406285374 804003527 883084509 959968827 745969699 968604295 785989711 449566081 913626104 514192338 868315195 359945732 833599567 962269442 420545736 281471332 378324142 874310563 903530833 768081543 731666806 168266849 759861891 242901047 454631428 913729616 763749010 898019744 756092595 813456997 829876045 474702654 995360504 766192463 298385905 128365018 805756642 929014351 748114113 480686818 868267221 747915538 209770222 172798120 697123369 836210260 920874450 701199879 963852757 881579054 63793137 894523264 934254132 338830328 239269726 981122895 951189889 955112019 864972954 982227180 911650386 636538215 964867171 894740644 513407682 796605505 924670821 868252781 737390441 57534859 755816689 222602386 381508652 945230334 373236509 836483948 364188069 839958186 495229145 888531957 72653813 438586365 310879561 741774174 194487548 751791133 992686163 735085302 946900962 397143110 764616046 434790464 831740193 379689412 644018794 984296428 185909431 743638642 604964406 921541123 851429986 755269010 23222214 898504417 178964847 901386477 670693178 819974038 793180344 50890059 278249469 273882970 787075757 108045131 155302750 957322777 766231192 931094324 591187307 750143184 974577228 772706305 950377065 208817144 785140627 60659974 741302607 881846490 36699995 748808243 876922034 951416548 123254982 598293135 842732137 965856964 262651501 977026898 264801601 821491401 28756136 494075529 794257385 812382759 882597049 873722462 991455681 432109779 366961762 921144372 313014225 50996996 825694288 857217171 228888242 982790495 360370168 457602884 256461693 904230377 552603376 851951928 188435361 206181501 864996581 890835865 753383011 402626451 60302380 362111544 914005048 584552516 904218251 959778322 999888517 710010371 370114982 61851612 852819376 741234692 402524314 998197415 482652207 986146813 934034845 905839871 622788881 976244910 990623335 80769867 504373611 439020813 644619003 717364781 938577032 931024826 747196335 200978817 145613083 900124199 150851779 911285804 827969801 255341499 953061395 220539383 971698695 283932467 584715454 808588887 227832071 822938959 798840775 141812326 77684798 89222561 334503222 634276422 472849241 25286239 199533201 262215912 34163907 839485593 429718078 767461612 740831204 752988580 244178547 808785930 784041068 744281876 233592409 603048528 830990949 937005238 994578220 744087949 181725925 954539656 724768578 984130946 741571933 943101618 449746269 855624986 810587333 238354454 536038151 573876475 508029231 808194725 930101802 406229931 168730379 954412069 31774281 643104730 262668479 802989924 959070980 187092106 862688718 549226032 655994995 919397602 803119130 286728248 998988670 766399841 357288537 734261580 745359722 949348793 762286839 823071592 888059080 669854717 573376331 829254174 930579057 362216735 996046000 500794597 399436522 816213815 684783343 489238908 987660263 871711138 772167379 301138278 2472140 921479795 936184796 882234542 971177209 852251078 178272653 968195803 38449570 840426084 142252058 230907681 971693412 829936279 179643978 482209023 686014068 798625891 859382191 229420742 346865369 913404932 810666771 518479244 673044180 632565133 260427272 858743953 689599294 811091079 809123159 989882715 936521386 127255993 234529453 786688030 521656408 419972754 639663266 920775205 562747250 983308791 849553795 811023789 582460902 552089674 699028349 76298357 25664871 900072304 943738332 868494314 477667184 930088934 382289851 908126879 660121499 714795812 969048087 886823059 463344349 408805578 805192101 152767202 397092345 736532366 889190678 669689637 785986419 859005592 358052425 654483717 111881506 252783512 764324283 809539345 803573842 659367463 161606333 385709337 998229193 453130329 438165113 871509475 425409073 838678605 191017549 898476909 232777668 558103526 777598802 43782104 997874812 856054576 57754227 861817868 241296181 541326322 885144215 116227549 957585824 967102615 241672949 804882686 998016763 871227745 720164249 988054096 304350213 977503047 793311968 293205532 930864098 756470223 507915518 921624942 321765963 951010457 275225467 799152761 863109941 83064190 814964987 491679296 1254691 300823363 943711531 825866978 994850725 871243825 916733195 856002659 494445992 839237503 272977221 904671328 832746381 877752289 41926836 872006401 941953396 832721445 619508450 539199385 652683740 186633916 810191966 789999584 789689572 388644673 420251277 981596661 441056032 635086932 479020696 994431796 210383820 913689020 520212570 737430565 102912065 764555371 442327698 247244368 621212986 752262345 244716011 281039474 651071056 410092536 990634279 305402424 375782096 805934685 770253314 3261863 368075551 647352100 493683088 455842778 137559531 755920055 662417285 771050965 181390133 321381305 889769769 268245980 972017671 744416620 623124007 528324262 861198576 572532785 993293904 301210227 377293533 207174228 19393803 268876449 373124066 125953755 572128951 858165488 883009250 279350742 378833529 747951028 519797210 968517114 665053977 415972460 507431193 499840126 256040663 33319557 787908252 439702131 562319983 487534864 160669768 31383020 149221836 700408456 95555727 600656997 831543507 736785913 303429997 573688416 374283671 357526761 692685141 773457297 855825582 952580641 983266117 835361055 774748900 106095679 610959710 438288764 894947403 7724763 920731760 828921580 802849022 387004403 118780984 9122493 561803538 20493953 463465361 408381662 230176600 219219679 964513225 914245883 654563154 17191626 887115184 991164789 184657643 780366740 304526685 492443722 728308580 928743425 524826855 189896815 294987206 950883465 957331640 439460714 206473635 957604544 746369654 169635926 224738354 199398398 825712649 716556753 255252373 648689104 914431381 593334721 839708336 330115447 764022600 764312521 612596294 479234360 644690209 823562684 755114099 906874284 641631844 545216245 528019754 738115445 793431711 957470931 754819268 943544510 361272235 220379183 945129996 871338785 740475935 820851961 958881379 859435872 646270147 800390512 166157607 688639 318047434 488289577 996896938 809081222 422897644 909579926 303768921 626867277 738021078 868195519 881731687 801698914 128864660 391829664 72393568 585441630 812003957 899575605 457477489 640591511 963006291 971559390 297261457 577250254 250716160 496751405 460955279 770835173 594087153 33098414 141775729 304269321 419036183 87825911 685234900 998748979 944273418 100593960 74060947 349363435 945475441 777183842 203003773 519532982 510019114 537887509 880319258 774757039 929500656 425694280 748185062 627595434 599788654 829216662 514962845 333922655 79502917 863276874 756946888 275256689 667056264 952476964 887186596 965710214 851112510 951935818 878073538 852352024 544643324 448684595 892366974 275242413 470303490 795435427 6781414 546368241 480574537 458394230 509383962 772964935 880516353 584558845 926891497 316063522 420814889 888188955 155513086 535166346 868828294 808576247 904435914 951719521 789169666 513391877 1245182 797759259 940128594 433384819 136274481 820909541 915727372 406378257 100247533 182679504 331702389 861103968 336131157 385973449 244008675 563302409 6160433 896774467 737020247 891163870 564433644 941498843 885863197 168050302 712276569 983002595 176193341 589417572 991917521 504984888 160463228 180546210 421592325 862542507 966163024 273909907 109547915 155636145 795241270 768296388 469305338 863944858 642134158 948342802 803222376 751230246 840170937 907368859 98593336 897484227 680309471 25941567 625380718 975900645 443882296 441694878 762626774 144969800 795758834 213096787 453843718 48901317 926301432 782482077 130874265 911804089 359597558 561846419 206329718 694870610 975185779 684795074 428256747 940138545 225733106 262135764 458843048 880323141 783367937 825941065 551158308 859235625 980122395 906329629 672946586 231037827 864028027 853698932 752783318 987991922 630316708 343068107 38584523 786403554 13035355 996268792 565885431 857955338 243741302 903809383 222146732 362213481 357077058 904414123 450608491 811955594 136874802 780307381 851413904 406387648 764731948 137048178 765778220 155570561 778779493 794056363 890309858 803503135 158329145 336617554 876242157 990367575 770412701 807879194 950261840 779253249 553192875 798645126 245901201 640959031 107974635 304626871 766168555 854458445 895671755 789388442 101714698 564278801 223252581 792597870 757929541 753909122 570905698 910774986 951914461 893773353 928563677 783211043 473626672 512783060 157567810 888943853 773812335 430108975 122046990 397122510 278946483 182901048 953487110 401679860 990712983 174918923 996511686 790217636 342857761 7690729 730878243 126657821 856348337 221434014 70870932 801273175 973070309 805521486 453052882 488889038 990895644 136197389 526492273 434649092 800343550 326466927 684522110 241906530 752353454 877634522 934800496 790871039 26245480 607246361 460678287 671774442 114316515 957187462 315059980 532587030 381362089 668809844 968339917 113587818 701708925 391785543 388788243 188708763 605084784 760976924 845351545 925541227 894704911 833477648 124154192 22614739 694018412 427994643 948816600 921222462 930705406 958323543 343976352 281337312 999700081 754640697 18286922 488828913 509073063 883079439 210688382 993046017 814957136 965029387 820092760 877505883 995546359 81819493 829129806 738287970 891365551 929544586 911864025 220025555 913323275 834583807 810854267 854571922 144548491 19803347 622849096 963324950 967725654 808870402 192656032 750236642 896584031 349448503 266318726 936010674 944220918 844788827 858775790 77299846 13718027 611305116 891704207 284970667 328852765 924118424 812495923 857401095 213344432 441680685 957220619 983545300 11212277 654508414 570005655 301037172 827429597 21901642 471341196 220963067 310812413 460718273 146323177 801352715 378416160 239215752 928064100 828744161 828803644 770551844 118275659 969412173 916002699 179841288 599494641 165268277 788753140 59271613 788639422 413442083 58353515 770277813 774558709 365612082 400296863 25493900 952776487 790190232 936174237 887760665 295280606 855926163 205932174 902113395 805936613 703523102 813935359 356671211 306915758 129473124 107713602 754555352 895263317 983186522 803377503 79172635 91398475 997319378 38526236 890559314 517825765 735288072 894173202 636861862 592761832 296974404 758354623 27925864 404964848 810388481 704897157 926871733 793164799 723382221 230991699 591690202 100859304 37026358 10748397 723032918 301348682 206504131 209229683 686017658 757005516 837751764 677718132 822325518 333815536 928067585 959452169 92749791 837173799 972384023 671632914 901453825 808085091 807712890 62044000 451408497 820808832 473673738 569583610 648127437 295187360 727929022 913266460 857121133 796464142 239409398 361242269 181448425 741687111 864636539 832134766 744966869 740289339 325880898 85755502 787629345 769155269 979560308 924125690 194671591 860797449 965927497 833588180 921642095 930138617 457355653 142630086 911517951 407729343 691862914 174850806 821454345 926116162 39894716 763026079 829092200 848819567 779776504 83086392 663884358 805617634 25750268 360531470 479845112 333207947 778531093 737920345 844612684 97562542 793299902 653254433 754164341 925726775 810612991 418619726 967200490 963508245 315984296 813561071 982993656 56860949 946556070 428097010 810432655 326192874 835138563 797416521 536721448 52723319 769764448 335592072 913971520 898176564 373332373 989656704 989410175 742539104 231151198 372866204 986755074 716572593 982214100 761011654 641883810 712601269 401794363 5125327 616531360 761933433 337921966 842917396 207489694 329422339 664625767 809024193 230935791 652725211 129581873 759657457 929050696 88944799 951886655 866986432 896351400 976837330 961367413 778285156 213947342 743320883 480932230 548491944 469886118 270097289 912031989 221559039 489855018 903942697 700777707 675033515 947310737 914612319 840481417 126508596 173971652 910836107 807759242 979274110 343401239 438112537 566910846 516002521 573767845 903579106 581251981 400078019 810025085 33707844 933839566 180921000 459742107 744902803 923293115 188329334 720860356 850943825 142817142 974885408 989709254 607918326 862225406 368645192 362800801 948362424 998992343 932077214 843190336 943240223 475701772 390370514 990665410 711459198 927355941 861113321 733307120 116556212 132810898 755354566 382918788 608066177 829458534 801914951 529176449 169392172 405904383 408018373 23155582 776884201 337143505 807588883 807241523 424750959 997080876 206845972 378747354 593067569 442084128 858155788 980346346 685980174 840720172 897652077 929817307 773113924 891837016 948646062 786635604 914529266 883099904 350898551 944348118 858382166 12314425 726389894 919685964 526432234 288132253 816033690 821375092 786718093 806435386 873118603 854477506 966020353 869465027 787374551 750046987 742990915 946369411 214826577 567003452 83201742 887676390 125757239 774076381 974294521 130105087 603720623 729809627 943962198 621652877 888870382 906165803 418331094 320162798 406190456 48678493 942961188 437262880 808709369 231102785 721049325 296741371 508999034 88683839 392919228 41368234 778044631 259998255 193203112 229956430 907822119 129032206 697127797 525057557 807333322 466134398 988053149 891642858 107692895 911645383 532317584 354761247 999802043 201000428 777773833 384942543 197405381 997465855 772597167 745339802 580916413 263536204 597572769 740011305 298061964 380528711 343060526 855109792 607220894 595146699 983555683 966852290 514845550 846479246 928024720 878836279 688927144 41300915 231230636 757132882 605596746 473640925 996348236 9717901 580683911 932209330 312025360 517420375 294216653 392785488 67624402 271147435 948343946 954277142 760301880 849883875 863347166 78902079 933720915 616417737 176084022 213088149 303808994 827492191 138301802 943037192 955671754 267121660 740502168 962783517 774964544 66497246 7640360 799570202 599963984 669841227 842721897 553013019 629005846 10651043 4099089 812653934 882419789 663557084 333432537 111354302 276545752 45981333 788745134 361897946 911624035 937961494 947193002 627381389 203592075 790330146 914870431 703855090 135805600 838714128 854688771 815783030 197868328 851059226 910126966 406038756 881980515 904493055 152133052 999404920 737609931 4978344 923805755 715319474 650942650 963720828 928073685 818063555 26993217 998810929 770756012 828050996 967340024 796742834 940033839 624447203 358479220 87544156 297910900 135531541 972061222 666759886 870110933 63006746 804915010 667206098 45341855 608508437 299413882 946272928 716025633 728774162 310782832 842040034 123708697 364836715 708077456 901476097 807415692 380819938 958837109 386866189 759543935 879026410 737020247 674061960 909940701 589840175 210267418 20470313 622167169 756290254 212809477 205553544 67760550 933561478 729313145 884030454 807173358 760176382 316533412 767045097 67255472 857999391 818550250 992249958 803332691 884399089 937312429 167903918 931718384 23453369 816061493 307355363 802842460 818177872 765458398 957339992 790589702 644102826 853668337 970553478 794289799 364565647 520113788 783716348 569537624 993606778 663535149 554194685 758979346 773311875 852564985 187376507 738973987 747630237 943967881 87610087 630212652 862658952 481664094 994335172 29995712 62616085 176450127 500497240 292757771 814482676 194358115 785096102 567613058 597712329 914524976 849151606 470979550 419874060 946191269 781376985 752137583 976553639 386579378 375868735 270765162 779629305 906902228 164626464 775676836 715235845 936150202 262237021 262324545 187795681 781546152 388184517 139114368 14832140 467023979 774417733 989611614 887647740 338032557 485097026 750827591 867065065 635117873 347568591 917826567 200365266 829101855 767329728 827845356 430069517 680532249 863694964 840998963 837013208 782967363 958152823 287881689 779078476 600430832 760571899 737020247 963255494 189659937 413491947 757944121 658063762 347804735 221083548 797480447 243136424 682234215 519359684 142968021 901867842 702052734 240542788 892389986 534217938 894342003 757685893 428915890 940911992 255602114 467437853 825142069 957529697 199361141 948375098 57897192 281103663 837551933 843148801 788494311 173773252 961410220 27174158 678408219 18052331 379510436 220624328 331266352 710150523 961774418 458980360 859571852 433985679 781427324 272328581 664710510 866927701 210144745 187465853 962115189 911482726 818386119 937488165 176004924 271656115 859149036 542625042 847811724 914961074 995066789 969179186 724854073 440310583 769661182 926584615 877993175 397114515 322509212 918615560 687006835 816448870 799070014 367196537 125101726 847793943 830005141 45233312 491017261 935641473 882367867 651627011 771565516 189656352 990992739 38368876 101856994 25521552 861549536 724206806 92785559 789695681 813410068 939825457 524641682 467322029 819378863 407959355 278108711 404197387 851402302 541713484 751749374 890256486 16188077 814916843 991047468 724936114 457910255 902870809 799493943 786834517 930306193 352022425 611140876 502848099 359778474 104130386 129360127 566081915 183005895 955993515 561953953 120139821 890851843 221510651 5678763 472549629 940205703 528946107 291881792 175283814 774184886 809531635 4289535 58868274 972598861 944938726 920223569 985142550 106296164 389573555 942683185 847607864 907557203 150198614 217181642 515405613 16234684 999616613 903045417 730633261 854571603 792522783 634163464 768594898 399853542 497871679 756879938 837072581 31792398 975596999 953009270 227692551 62270397 521769194 803516926 591822404 707582298 772684774 486722548 529770643 256147471 331216244 465285007 468988105 965964716 768238197 854565062 548532559 96418128 812066010 815182154 763064846 825656818 827622204 564991821 642523254 974001609 423592450 753386974 962733305 2526443 101255024 394812606 726686869 88642825 916993964 782573084 943925638 455454435 462829092 943569860 725222793 486125130 152088509 238079277 989744434 584637005 575787381 449714087 986417034 643685565 600967223 104256923 899628620 864178354 865613690 154933090 949534724 53700410 844103540 250929046 8083530 49398130 894658607 922465982 796751716 114860614 934046491 742186333 857195955 782696360 190537022 131095554 650239012 218326477 600201814 678084269 779023414 998575632 983428522 813079095 827398461 221881401 965146667 799793605 65170147 541630336 977712397 167234649 930906047 139294061 618064549 908501042 946004594 604635382 335479226 371241254 993257138 763688372 800874811 861360189 510768715 986099825 910812290 586126498 52717027 997566027 655415459 941844920 854759609 914386109 870562432 540134771 124045592 630903179 345722973 942705961 647764291 828847103 865181756 784996192 331175519 715459069 839007626 277796682 954759764 972095309 522584634 8000876 196754408 828774944 309317400 348777091 367649798 771293974 881316744 760298815 962417999 937579162 967953865 330447858 376742671 737020247 749883560 922479906 118425107 948682574 859726533 410296814 910131015 714533701 813280761 864035604 52335108 54540278 839324977 569108219 252881710 981477981 466664089 820361134 370638093 342065732 295781450 380383160 840489990 842093225 830336647 421973197 713268941 786593193 928750640 966575670 726721307 404611173 740502179 932892697 787429399 921530695 247349182 847591205 733717312 948560914 803505976 561418697 980325829 669441390 688418809 527065204 837137353 885087113 783588968 987720782 909473265 914965053 282443172 545185464 885571260 399208439 178689132 756574645 886855465 973438207 334346142 846157161 794421761 829125175 821915258 830818068 5833909 943901723 309158766 818005989 274474014 797741848 412393207 429882666 220257304 880359673 759460031 741010701 807414631 808292052 806016160 135037560 21151705 817593736 934620374 395727139 885051692 259491842 872975425 665675246 22808097 279728735 777709438 887456721 221081805 998881522 667664061 953487562 796909250 376023031 339261565 467114716 781847512 399981100 981087265 450442232 979462673 919115588 792439169 788284883 806671368 588242119 900748415 523497653 871463422 311867734 860792970 584373723 466185293 877325581 833767123 820518848 162506992 903410994 541145097 744290551 753467750 674077397 856414551 77892513 904360073 396970247 856907017 485593234 698478719 889040322 401858550 813914917 997848547 678598495 909379756 999680691 783452108 933567288 869807849 311863505 775552627 766560084 303543573 88911760 902780205 677286674 842189746 932916783 752536275 918139869 973539402 118517673 879412190 111491103 203583929 560698860 809700741 858232442 775016345 820465502 943070764 773008019 106002621 561275094 850385350 969437389 351870862 585174456 85605277 835895370 983778631 863443852 894758732 342978798 980872788 596255418 746217459 691960580 782029827 847509614 516860045 833304250 451362028 844912987 787167825 613362816 347218662 942068607 785221421 71488621 382525265 849718203 747419536 768286129 196921057 456374719 432143686 109409617 837022636 40788795 771774018 391216697 339752646 83399746 918332123 829921860 696755880 957417542 114996779 610778388 658973440 195899548 116540989 894149177 351568980 997643795 801108061 773681889 812891834 338919910 906899154 186956734 513671852 294347605 753730037 367979216 668644063 832338069 844958664 180863424 396073664 939450689 765775361 860492870 766031234 753510234 37065724 824981811 91696309 311785434 661165331 636068413 957035178 865017155 421097994 753056488 943269961 855394999 246560752 748008628 106422675 182732989 719293397 757718703 723414403 67822082 66203020 159683902 786095902 447969871 492013051 800388211 215354680 830215729 958404439 752607151 845742346 765052776 937500173 751366250 499188678 565600533 764301203 246490435 134687492 785360746 625172136 839284329 243825304 931815204 764037516 893503931 854035321 346978912 589707967 489230983 698499741 333413259 34793486 468329476 867852015 909869100 521855122 87475912 755735960 569462501 556524029 262164550 903684037 672732941 569391732 924495159 924011828 499290277 804383054 168793703 803120660 912983794 816129826 967712616 812963232 792780076 911982497 815091408 434857459 899474274 553248667 738612035 433671733 494849187 690668633 983587002 989896342 221681500 271979003 964757693 94455250 123578268 983037005 637100163 52358747 166224114 412213884 790355238 130492115 965903630 242779813 938751358 386590052 835579271 791824693 912814779 895484108 958727426 189742948 10132191 573585784 886884056 910993266 800421663 355820015 983790644 661189326 661923707 745431746 980414249 793489195 737020247 704891418 536670831 875291997 908289395 934762490 603650513 397276313 208179264 275330567 345125684 172572976 911957123 818769055 825561137 599828581 816118576 972954044 2530044 359598194 895685199 914672019 886124532 984224270 950425668 777167437 827904008 814874075 412093945 874650260 320841925 115491864 179795268 949932432 410360910 896010028 319736883 20060302 781488888 189265450 626084034 408369750 737161439 386652150 179248618 311633126 489665933 59628812 754977470 957124611 509536037 262439520 78965460 875306417 49751254 530820132 704868684 845329198 101756751 486913562 618692035 976938830 386970300 774609428 936766459 765996143 598729371 942195356 895306570 464135451 950306324 583140014 970683073 864644040 862328205 731718091 626573222 159109523 820989527 131957024 846034812 771953376 808162375 912749486 750127620 855613122 824174606 785474907 969019393 130494651 228411142 73058933 244203663 239683030 925973211 938051227 23705184 870972246 824194259 621408096 285138215 93610722 894413327 687322011 230486378 155372315 960954171 982219989 414844968 684717638 105676851 990067120 273546693 456077559 491813609 197855230 794353238 337997424 58754328 910588678 757885336 555414077 849544754 311856413 20809320 393461452 979284124 931856111 623121689 166268197 838414969 951612145 513616290 515897207 747190105 995811017 683529799 185517089 365065930 120570426 899955494 30204458 596983552 247845957 864267977 943183305 521900671 140588854 237056514 290033352 873318937 777795577 981609759 984889688 992071229 240710608 930734112 880413072 965303939 938070114 950170946 612339531 784888370 40566835 156289107 302487520 300062175 60558947 494324766 334735105 66019809 922238015 31646978 396153437 395544282 616662501 317378366 509539843 897466776 909612314 357907114 621976083 713053871 37648978 897905641 542515809 39960843 965162363 794982042 374942261 318460037 543663592 612239430 617354579 775292020 298456684 827981265 821133555 558310143 295127962 420223840 199344466 198521824 468417804 71667021 916176945 220502091 840446153 780005297 722331439 812061616 790770124 559306727 811977809 747557094 846038553 682986326 542449466 377763808 266138839 332997588 576809460 762199447 644962417 645156305 806913779 606971157 797424827 636989357 597881120 273943705 728078747 894560641 917938813 961497170 700837339 737020247 682631549 891515259 928907249 403389051 162636619 14855716 143643189 295745762 983768587 400650646 752417720 754074675 943988580 775785464 742014262 989627149 612564456 973605589 910248246 629946575 168392177 261757205 279321353 796637381 124345344 966327076 237535674 484313921 829838442 218467473 979381311 859204643 506473560 110366874 938620762 379345578 85318370 291424145 332930400 78744502 722421773 957306257 956489840 963830859 749436229 695751263 824569822 960180393 829763418 475665845 322958396 849643975 147870633 58615524 174856441 347200328 478561381 546428761 798261721 773579149 132966280 958133240 387699703 477606215 563836926 827473292 801219084 915982941 362762293 354928283 845798305 234138346 447634700 414064476 942943800 944454429 868223470 646063082 364345418 329054242 887421223 836292242 63177708 849934056 476777424 444748334 145938723 999865920 548753804 228446912 350608106 767794773 870501696 382683557 967160907 504006479 358570413 896195170 242455132 23035654 928187806 830278529 420256587 805931213 754866596 822421710 751877114 680072877 767546531 544156898 70441787 938879946 931773217 877102450 625280046 906369928 927457514 43873808 182592221 897090411 340138232 117148778 879847681 968347734 22552867 794628073 903369514 626805448 832946146 907521771 599396960 929223482 1993345 612508617 853070928 768992346 737020247 70207931 244471570 17432226 994378555 537033619 831077980 64499448 840220014 772851487 957659901 226975739 840721682 224461807 25500468 548370706 939317356 254675669 885425594 925100684 621279890 836186183 923829377 826704515 277851448 847977667 522646419 770248907 623761500 197391421 843711389 636528034 444548656 270606427 540472014 319233622 772708738 627671871 802515179 521444404 914213900 850915501 971396771 789319785 773939121 948680835 892170393 757834792 34933022 879187628 954808843 946323215 617129265 743425354 552448339 488708405 442596347 968090966 861588101 852329470 32250637 636433504 469420811 834712627 805783669 613136218 996821135 803412958 996055078 130237093 533623284 699433672 49529182 901867728 841982905 805457962 110499401 980526653 829983907 919449512 787771072 818016706 766288325 761717338 849949620 990408412 808427478 586117058 921001340 329524908 285307922 898618195 456527391 852919471 826939337 829513157 634124632 121366106 896741576 46640100 526646716 744446294 763915520 949547936 634169069 965943166 885310803 629248936 220411665 599361425 932114023 977728195 904571235 740718576 165690547 941485622 942881116 131160634 755181174 400915218 419542931 48607137 36097169 124871466 849482166 535043145 503230509 277060327 878004036 426034908 885196673 243777129 951872466 604211294 66569904 248478391 883514248 987898174 875791150 904080440 871406894 571427265 768646986 173066433 864121800 624444734 897986774 41726453 924137254 782018722 967482978 954891266 981445848 897476745 448932829 176237364 648586579 846548091 945310148 162423134 957469037 483819388 789882177 150977553 9993392 543109348 138384754 917738796 141743988 21065694 679402927 467243096 686501928 648078901 775895371 152132514 683981350 859610672 830143754 546633867 522533255 264632554 833024972 493259179 605323144 221446799 834045901 160468206 849109338 758415139 832402178 19762419 924390581 76527677 563544322 737595310 580706350 742827648 510537559 809353618 790160820 57705804 881754799 249307528 903479315 579063869 415729612 358326729 737020247 798191045 661374435 564957621 368672803 165157672 905723962 632506679 479250547 702652162 958326382 846836171 244947634 771842518 990016286 578169276 821834448 916425195 870015761 936765157 419164569 746712403 212689836 891744525 411968592 805872636 961359307 994559909 201968516 62944017 758422158 76244426 992080467 676010749 829040510 878460263 899258528 202788688 550077202 482376443 533496475 961447121 875593927 368486704 287797323 983674925 824233744 898670194 100780762 786714009 553436748 435140889 754599872 205092410 280089068 992530256 999465233 503589071 822213878 41305738 999838297 435152255 632857603 978499366 893109625 911444552 737662497 858808182 787043570 904994657 994101616 832411421 984638119 446631175 926169224 271894981 518919472 754296814 843326381 821909660 806662233 161054789 226870303 849019062 461626844 80421616 81585770 773318883 153907336 814271670 428860058 543270599 272300406 299607949 949589561 870331639 271508523 924590296 595733796 79850376 695578891 869831996 387935101 317575074 543729184 889300084 574365777 389549933 351384849 809216350 781424660 412306379 113768492 419639329 737020247 944894216 779943232 741812143 290115759 895895865 586164207 994025249 755471883 976647286 890842779 993034657 881007676 484108959 875354978 261312938 968354568 887722772 80508137 348024956 544396715 362191416 178780722 180500624 780825121 684213785 830330946 470337756 647502368 791986102 355114357 680621007 155998068 939099704 717503753 782553498 975767477 305648978 658882912 213786866 371007272 750280131 554411925 784850990 812130270 394883592 923902155 724020870 868099608 408711166 440957718 650711917 807922000 980118433 969178878 4925192 415207273 386644676 292420092 254013760 551369933 878928417 900576918 996247813 742743271 557698243 579564976 582677140 695965783 647837892 270789691 551301644 275724850 931706390 152204386 494041364 279819668 882344907 909973059 777836371 241109270 348127207 915503066 904175808 991838598 995567861 788111956 967523718 820077302 751712643 940962678 409065027 560192037 40892079 686401470 514850899 925589190 962590569 557413856 609831932 698045223 876748501 463920843 933485044 168279989 176139910 454418679 38337033 818431320 405964792 286471804 947951890 942494261 658398064 448336889 503633022 708006463 191967802 25311616 637107482 828252772 776689727 855374403 835957304 872039499 140315727 37035893 738116329 979385814 837448094 558318200 203168078 678724765 807356771 837775790 962099085 154645061 645092283 803440718 692904183 692235944 584573854 737133924 848058585 494882108 786787770 88308484 837960179 897002790 824663775 949948013 159021185 763500201 848700702 901662091 859673121 978796718 434555103 727858550 943110538 40742850 437370138 783463908 455749426 985865156 717799101 741382786 12259971 58034751 2414969 746463406 577421150 760729849 619653345 649936181 847997215 844759633 854315027 520154192 353801390 283031319 777184508 909312578 227159632 79028167 850767715 534624711 737289916 309545410 763297240 758330005 908937411 146273553 577149979 139100893 740538099 945168545 622659482 320420716 744107096 219912904 838674533 919750137 793277350 643616636 745222911 827214531 61964732 149593350 525012351 39870257 787341372 920372748 872743700 779483778 597465472 523151576 814801840 581245142 749081512 933530808 395696127 551577124 866932476 571465789 100173432 216367693 161503755 124686185 195596614 334898113 885938959 936618055 983480337 376802428 854811646 919216544 67914774 763106399 21021989 611607114 947296801 855627071 784031765 891041245 892475480 527761978 380260657 437739737 286983868 291605353 6475669 783748936 126303711 235740653 994755249 866254928 938129999 696973208 770685665 807627567 877561369 910873998 934407467 436810063 740540820 869094322 979901827 27998070 41743126 51624652 808139084 787416476 931484532 747983284 383324289 345517261 974999192 486760439 657540360 437240134 3042612 785499520 981880073 240784067 87756303 986770035 420988352 853942586 525678176 959135735 398010588 375579603 547955397 447523747 863823780 217786723 333863449 933558691 817862400 800083990 452871863 291297888 782662702 107586913 742474766 796609850 305770544 727448114 739053010 635399879 343887304 857330662 423239133 772094627 301050698 656879660 719888203 990782142 203486740 248288203 782202651 493278337 904776290 764694464 540092640 85013951 919555423 70949753 851268920 335983848 128160210 571436768 226557007 552390762 762515083 144920289 639937332 341338492 463945137 529887066 949424849 730442014 119153346 805639470 844933299 792221029 944129386 379044008 866164108 496382052 875078763 641927143 911136288 989010119 978171258 400838396 955293895 821434993 999543479 998858447 77291982 755184658 289697714 716681884 912723209 941088085 109245043 378073849 181315845 927103085 562932763 569993140 809589043 106580703 783352343 824127830 375502410 975523813 174051833 886185469 233851060 503576746 85796618 787529256 601641501 537730706 670583503 574935501 880320518 837568225 852727097 532584066 979083402 173682734 153637291 811265970 310674102 708270534 53268699 331805904 742944946 931460318 838227620 706593227 964169344 965891289 736539103 598047440 214497150 821296659 35014072 831220355 248008581 386163825 532476733 934708104 663570119 512064443 951975217 945928159 857690776 501445354 470696753 454447057 545918005 535554384 769324263 408645040 779171796 378586978 351207465 538273536 432533163 391356316 991336216 913177458 342826656 384115989 832133344 902973357 774151643 912283429 846518907 144484284 829688937 61759241 456645020 988773898 891896482 984489044 943157100 745957817 59077970 645524459 991735990 834645008 553527940 443765466 774960983 118628450 998730527 227110140 925261890 19368379 539408993 337414414 907900587 706687839 508886587 61964804 535075519 592782571 791603870 653204250 972844345 606200428 142240431 161967993 35506552 954001748 829727940 396214947 836066941 795261615 990123857 814620483 698841829 810838216 971084793 312548715 763336179 890730437 810457757 516605357 960809241 933212079 135232488 325047274 57082685 581084019 876834144 878977464 295846824 785756139 187300554 693026615 383555142 786035809 443931753 632488030 975295604 746107927 45139712 452957207 239640035 299258597 739052130 901489978 990593886 451464897 150854229 939504886 165235650 705257627 68602393 327595984 213099754 945409313 737020247 825394480 83273184 891352373 731392430 381929772 228309591 459515894 326322818 304401749 791350509 504567479 261146638 793096375 937642778 969158429 26835343 954503769 992265641 802123269 937810482 859692146 427423533 822103943 913729171 887450853 658896985 955635024 805870461 976905649 414831550 409668536 972901781 75527065 881157915 839682669 717074709 812637528 863990571 725605758 908886866 782334708 592052933 824224900 320856898 589731166 943522256 48788655 474798775 939039147 806721688 139152782 474076411 916446022 956034242 495307284 995935395 16532732 926515775 434269887 612575254 763537647 815240858 762037209 750233634 919455765 519182399 790473256 888227351 937541952 820205340 691814673 960217102 495770651 972636119 988906735 921455756 359833176 640030957 737020247 896281640 792063539 820841931 844460329 760963129 776314144 800047079 810589645 709243190 701281862 454803836 853871296 772331966 632495120 25241573 997770482 213038055 503978038 62845452 585194310 745230633 971672236 71434491 127684179 84365736 767210806 967256571 745768464 849564600 963812915 908083178 268708633 27611811 921603567 294124074 150132567 969252433 432354103 608879254 271451431 868642329 323539029 803149089 992838703 972326757 835504788 860668223 308643165 349444811 644333166 988799578 731064491 756101467 787516114 924509034 863049520 521997576 575614913 650238115 931341961 481872647 435650194 790007732 950558663 769878959 82180510 843648003 649862079 794893363 888691510 928896561 625009290 349330189 819560105 922870407 845294911 329329371 903506874 474455134 759022626 737425398 141011245 814758448 157834482 928921106 171592488 572501529 880394240 995770319 439553218 770987508 809238381 17262038 882802058 897257344 823904178 348775212 951807381 145540639 812619706 222726202 805524549 518443039 779875175 807236658 837818976 175866638 554607182 774088092 850825957 474284188 203500354 746496472 612488884 112491280 337462542 914113970 290913226 690216619 810925385 775767881 64265020 961077322 915789745 724077830 247916933 33015514 994506492 938289738 220068045 756931787 827299764 86660681 853957535 793187169 885254638 423596033 28556451 826073637 678270164 65677404 800043750 769855384 133672041 671142136 167356288 288468737 340311509 778081524 805258553 19056161 845931990 857159317 588876947 794760517 855810929 996460943 682821627 904143301 325341565 742843479 864030799 759544678 973982205 754517553 255170273 793229236 166383831 503519303 40287152 623419999 987215016 179476153 748264424 567218659 863012375 755657106 798085282 980915286 47788259 439915386 482742253 144752129 851396777 468221224 98850779 80008079 317110329 921131248 679026995 18444921 597259874 759102783 517092895 733531871 681228552 802485386 661099230 946721535 42701112 926394108 205755187 688259104 990326917 616830533 768003988 853124886 90413383 35566000 878943898 293945328 184005931 370769356 795559826 367893061 309306604 836567465 702920531 844634586 719944149 101878792 65207174 962006293 921682752 473413551 424173638 938564507 668681775 523532018 909997010 742022687 151733393 575247919 923106862 381977770 206911694 871510654 688881142 757230830 706574323 267957742 91110635 985311267 332547248 975753439 911997028 287225846 812565857 903124488 661343137 980630636 656098632 951754500 867692177 944499314 855468905 826031501 780906147 748289312 516288463 649672325 788645139 967454328 853247364 211325314 704715391 981911423 898442261 254304820 39601222 405181479 792141386 792752871 956031810 859888387 814927641 22164537 941391063 606158760 835643137 365061561 813006078 873106310 507249092 451259675 515950046 797514919 720079693 854035018 856206852 118010041 742501580 420104148 787881025 72206023 572929517 899548355 117459382 542179371 5842557 860211993 950890065 137837886 794315590 286512088 852422436 314924946 967993145 845784317 290389588 585003470 207136294 662232477 968382325 882820072 935169471 59942880 206942389 347259333 661639166 952076341 835211191 956388624 524096549 507927472 301037656 202047621 891435299 897074940 556219329 857711587 827261011 999591984 543601039 754644285 404852245 976718537 100949530 927100945 269956171 989665642 919964313 542137840 817579769 604767584 407217087 874649680 955584031 386545316 383272518 959645144 155252103 992962334 793510889 633879626 909839679 758702028 249329458 239067151 318060911 771129980 795582315 21088756 935039783 767078566 236654768 768536960 5659813 732101765 472187043 462596121 586217588 883637865 375967879 118860299 252099271 136082159 933673496 918533104 931070384 811560318 807955891 1503024 252797475 208782081 916260411 767575282 841263516 71166444 988930519 954833797 496557586 826010033 833085186 921805674 458294186 296074852 572924422 773543022 832087862 123573494 477827201 753992931 775436385 942164819 801635792 712912258 708412535 800749850 187339488 113316513 849458936 168927260 843172171 918677185 749192547 361034212 888561907 827622133 619566504 206033685 929537248 434226120 413224195 889072391 745838155 302022232 270963407 773679646 129095093 177764708 791239858 931412758 837506996 298466959 865959422 992520687 989729633 984510519 514938691 845683930 582688289 906299930 886958193 568361373 788408111 792772401 976321924 726941237 745971039 100569273 913152972 944247113 381359611 698195600 757548045 668469821 696068609 31076558 377958775 947245502 435555072 881069249 968676584 682693907 760463342 719118730 410925732 922876090 944807337 847825882 544410803 952031135 67166750 776133976 221006620 173651927 704329642 229584787 844625928 139530332 538332834 204285914 958865185 21524946 448574697 41031719 65044803 818203554 966169381 226734232 139064578 620692994 358152716 747004687 987851731 758773844 910789605 19345488 757180893 876112863 288769895 886252249 667320130 903533834 103711679 947183261 757544500 803054522 818639708 786363717 748473206 778039527 954549418 822234560 871112630 851218915 777713532 325836500 832523316 308991530 281669609 870582749 952594397 543834622 905801838 941277764 748071610 589008618 518697622 846922682 559200162 772601717 805961089 923642179 278546297 267583095 187954692 542741616 828654600 365436541 891621728 824157991 681893090 954187527 952528055 997516661 959695192 836673006 909122682 992049755 852987071 264425683 953192296 482777529 858162782 823252618 977318422 634578133 778815873 99913918 27110077 772556118 534499712 814920748 962973187 308757284 829905911 856758578 848339878 118466062 569270961 556860306 979030964 960024295 317012381 800437161 639375740 926437031 604784905 403104270 39456334 813710462 359055402 944930232 967649252 397710820 609679062 398155032 10845457 941104633 574788628 575707266 853450345 737092613 82144600 162166254 635646878 395214287 755068009 22710153 928165847 756025465 790269013 903974117 866783491 781829151 694753968 645798318 864003410 911201005 892713567 962959609 490518669 765378520 981665375 923482569 795878405 780503707 931346660 341557054 795248964 855340513 394111644 35348215 855620864 633966565 763894193 376989676 939289008 87945328 857014969 867554588 804686496 152498587 125902442 816561379 910871276 350118175 10482245 48935095 841230237 823608072 38469769 521152231 67214660 936845680 69638046 558949625 866078858 220974820 320172336 353654161 809764525 384535024 74276844 976059224 516200041 759320901 846061630 821169720 489047183 365940207 774331235 915483726 829082307 947108905 766092675 582618851 805060659 971629126 72829700 793312241 995578694 416512866 860265840 796641075 762491035 478668366 838796654 167379609 983512982 974193558 626437339 754458182 757820084 298371088 873451122 145987508 991170307 981729578 803799412 959786206 914598623 213927110 411808337 709060511 838561401 835638361 744456627 356971994 667974634 802151804 279531315 972690378 737020247 737822156 831058885 680992936 995026686 700353787 597676370 474907678 390824830 41110093 820969728 910815718 864778817 211176087 296957672 998134877 775436609 998207965 8723337 282678402 42306369 446762806 943582170 361445714 114403849 47293573 754594756 852898428 142798366 255063845 864911359 364900445 772910862 954829698 817045006 560398060 447529405 445032372 32238590 807586398 852755380 889763146 910656016 433324100 319754336 543608195 758948725 822484904 610529132 971962680 848449814 813274465 844619164 918968573 565566623 845153551 543603730 269950181 293999080 780113090 964368521 558576400 786931774 997858463 854688548 258831526 995910141 737240762 780984643 528082540 231141605 884664913 772861831 757808534 607689176 550558874 200786332 718069166 925114965 896494383 856529882 773895500 446160768 841390967 785099677 871241255 926906239 954990221 115104005 166553271 67081162 737020247 942331067 832681659 413180617 180068273 937758933 483371929 950347039 159236909 487213033 792305616 51039793 20099743 900521881 254301430 799864993 211796051 715460280 497016419 840250093 851242019 887841698 976349288 905900108 763004886 861527094 832333876 840959756 745642307 852549736 972456824 745394533 821609349 796836363 113386714 965899855 255312183 219355301 363277343 795258312 64059717 484151279 301269210 745422904 90021554 963493907 938663964 753558486 341776209 58590190 716531934 270877783 995680609 980931381 182641191 973846494 458594403 44356468 761449620 1168391 756914795 631399991 955575413 867194561 857183518 917376428 858836771 666622649 829040548 906990428 660456194 140060961 942030603 775882895 382715420 844461514 541269726 987496102 255089215 110104894 991201267 21706245 728904507 961815873 629843983 420589538 372573688 323138307 831253825 887596500 894553447 328577819 916605360 969074065 964979535 838227097 173340044 667026026 157984135 487397366 806995436 406860271 616145450 883970933 619020509 903313557 750469575 878016404 941196387 994764171 780048484 820641035 145211947 737020247 837509797 872749319 646306929 826476502 896819214 878885917 356476804 506983776 853833127 305417875 195677869 818584126 234871344 785350373 752376293 334318939 960558557 821986914 839016800 806496290 944398684 862660835 466502176 445951155 855778104 739111731 732132767 363278121 279069617 515083060 855588396 287531291 868565000 839080799 846395684 628055004 969297657 838495213 266326400 276812648 813127244 307152299 811913198 281081900 952109232 468192586 650788177 948102072 766254067 992573870 941031868 51151561 632305948 990073164 847337113 752417053 395111892 761457010 775391789 760240283 421068329 299347844 863159597 474291996 958919710 608454409 760863277 914466955 838993235 131726846 834138395 154613082 426825359 50233784 784704526 566801562 271599273 828758839 112859952 879462440 365443643 813592337 702443331 515474036 972699468 466125838 859181451 737020247 965074908 836507169 429967681 564914299 999592798 742926623 39505130 834302535 639791517 867512982 755039609 935115789 246118805 668985306 974691041 786690598 352261546 901062312 465590516 666244565 174448349 950107180 663373276 894876347 804284846 666994588 72233181 522252887 952535665 137117983 984175009 472717468 955428361 394914241 708171118 664176007 361334590 989131732 394745565 115468352 205062501 552910321 761211494 680908909 587824050 924142743 348262006 917686116 401736191 176187733 244806660 853061404 404948934 654163916 982585114 430142590 811663839 428338439 971534697 838425517 761510927 761527053 594508277 168726761 797196580 34948143 850005470 804798082 569269497 462740012 802516964 854158564 852331373 987765154 879083035 737183583 784793019 392394583 860112673 556783629 470369188 961052751 777627579 833286204 852324748 128983524 933751253 637252667 895917670 641870033 905451966 882697543 687973959 792799070 866157805 288434839 561445616 705589053 613036111 306327487 471723485 67973247 186255117 834666291 760169032 978386648 232722614 880809660 557223103 746805654 710774597 937953241 290015315 756284564 926373452 522815927 958840956 803942018 204731285 956989452 912070668 700411603 833757469 811451034 700530878 743819626 932550757 542322532 946176070 305839749 904550386 76365044 383106765 948728501 56077619 812759119 993440590 947456693 272521626 815713232 158326264 530960425 121752831 764946120 17450641 655344756 410066642 84658937 972789828 789163109 227923187 922186764 959347861 406150825 932224961 864678229 843395745 836951111 373523099 420366929 576459671 490521134 61322019 89264231 320030792 955032307 241983380 744119439 109946549 781023377 275353786 301282795 980570592 23481153 898133979 238935015 990489596 968646517 591937922 465482490 151294395 202714663 760291135 767163592 253709056 78821731 540834918 10395362 969294072 858829458 255339834 288873197 880553510 775977621 260248146 870704526 644605379 617819609 872895864 943015213 952909336 370192785 874045611 925670617 935905640 851116808 671586803 390109120 897021321 892030361 985337326 876596289 416007673 912403057 877539420 262647090 734401021 571898367 686312976 727925531 643619706 8377984 985657076 980045925 777142569 535742317 917221257 317589538 908935712 151161132 408170196 946800259 193624669 884116418 906279676 962590058 327620062 337216532 542715305 974919929 88407078 90451268 974095978 488770224 562457182 392316711 88474897 435828516 139312986 299983935 744267061 194513263 816754605 795029749 785111585 307608755 681968827 173705237 185858091 878070020 989288980 748476187 980512302 78817180 878926965 809483261 992339374 724619541 328916177 591795081 569553481 492997919 906048632 649946353 252261858 898188380 380049984 989579620 866008264 745366073 815052663 689453500 504450375 959875507 933657655 269135271 970038456 427855305 753577942 745167591 917074119 950902902 408390482 752420443 798766391 862001521 999856039 279171908 901563272 860415058 290711295 662929377 803496839 851116770 428434643 977007570 914216009 768555226 949865155 508656099 788030245 779818536 411487206 529501179 134081685 368534986 651382131 108307693 696074071 245979844 285638842 166481692 61407281 502960595 894151988 850850072 968023296 924603889 882766817 859980254 766725936 172462403 540524426 951466045 217068688 975807562 115028205 996489799 974465336 986387911 121008507 898864974 749999268 945358834 863774004 828064353 919868137 810138802 149373836 540703036 812452576 425628660 847691963 827761906 308199755 739874105 526152042 296806106 262505678 836684840 989141056 945345312 638503330 100929952 987897967 972842159 372857723 317623285 575621960 737020247 33943081 726699917 227448320 918991685 639775965 986246565 914729130 587310956 834904338 319695804 243034175 760930155 48273787 275605309 574003587 835019407 76460908 603920483 911323871 506744946 443882710 942772687 222630665 112430543 987631906 798813644 775230015 828453385 46887117 771653240 495803703 99708684 631513653 743397618 270903428 802685508 96053437 729381281 791731069 927662365 348133434 832852722 510760627 106751446 277244698 812750719 760518611 141113820 592067619 323856357 179184074 139566760 18935768 749305645 420764929 97343930 849759243 809847477 484520168 163207161 892370405 915005862 354927472 487404894 173668698 995271166 801544140 328834766 830482865 20622815 90865978 998623760 505136134 959154887 843032764 867310240 1481412 575248438 632716751 914150604 99921901 132554141 819944603 977962984 909244832 970812001 725940502 741292069 82224045 954618762 799300497 70505440 751551341 541782267 939192714 780766438 12058728 271209219 341220561 777572605 511104437 779020976 729950189 782974170 994704991 933912348 588906726 393130043 59769136 887696787 703694697 391340388 914149803 939489596 464986743 780503092 804901188 798402021 656988087 804174572 809289065 630383253 477833762 813541905 872174968 973551917 984355707 617170438 624995664 710276588 107322001 745899500 459026118 727184495 196276774 425358412 889143543 216033661 719010347 924200389 14220964 927335653 720437803 801664828 370809220 911181499 471996220 557994363 863110257 75996314 512917275 760724923 950513078 871048534 116785780 531478961 702861055 507737567 855278612 304718882 977678692 536553932 455607025 30294482 261994942 845781476 532481042 658693448 790549287 520420577 726973755 234259794 699560321 657855556 12720855 954584725 825034608 639661889 308870796 266243431 797715059 968221321 582549368 252288355 952237351 433748905 916745179 997988684 890779802 793800306 424324761 792088406 253433338 612875425 139016397 578005448 735835046 652848865 151268306 822814064 793851109 771439796 83240818 744252870 948478660 985228412 384332270 717376806 783045336 349472870 531963590 790351484 176832632 790760348 807109827 900154464 345462672 551666509 779447300 698906142 799252143 632800552 100552736 432343495 362141194 976189800 808276037 876584615 912449727 777681009 743077850 548023547 614484798 775255860 754456395 200933538 675745986 257815497 992420943 987722495 673112268 37625400 421856021 267696982 760043726 86905830 494963921 300112827 50122709 647848054 189045920 456113738 70762542 898577893 639366175 818819559 845297932 484443903 952721643 320378681 636873259 607534343 481474910 978683843 940209392 334733785 717239523 745213120 326498793 393265364 946511714 848619612 901547878 882563164 966037061 749474743 818527735 857865094 68751097 895307809 940822967 458588361 897936160 130042241 598984019 735034261 907568615 774928235 928192557 965468441 853892571 479812623 914342548 197670432 622018339 729199523 316977366 923107928 525699391 826204232 691907148 714877927 416284526 849332171 147332067 513470193 74786939 901157302 187947793 851185353 764851643 798889931 969852313 512936101 911569782 12285777 394750984 534111492 19552552 824043928 431929541 749542787 900801939 357446228 148105767 793997550 935123964 910012224 741537772 329422746 906237467 207602213 838633748 896066933 888747526 178496009 251628745 162902509 294481708 508482673 918710619 243227678 714913686 5150081 842123772 781892829 957939366 748638465 512699431 18749252 496700650 79479128 596734825 842434945 799546057 901769778 42459069 18067189 782520749 18817709 11247265 7018106 380202320 31404006 499198329 354140712 643173717 801293054 328225589 737020247 637883321 426341223 265376602 877380589 10103227 736928909 400356559 986406228 121244335 585790465 912034139 200849146 609686541 210161515 604069847 368156147 835584474 972168391 951231502 869888491 869815916 958766873 864358875 298770255 370230392 857771065 768935547 125419262 461530497 781072374 951646663 235050274 40829082 52132170 938553909 866617728 877842615 850832056 56548610 972427086 165255575 963332436 983160939 971018083 877558265 888332025 497792261 982812030 810437575 161104681 659811185 844566325 170007725 291377478 568352018 178296502 363401973 781428521 404370516 789270741 860533311 974607819 887676742 291709163 103879557 929144313 732452788 985816738 962102143 379232363 980738687 942479508 413166611 976293818 969424612 184882283 949874226 887117459 50138819 839066272 681129114 76684516 836011650 875315527 935040518 790563142 461483250 942507664 994200475 917246562 818156783 846643047 800270104 925672593 522704536 580684596 574758249 848450184 947744410 969315089 856449544 318434167 727919391 967079052 845568907 286746488 992246017 936720908 59591680 177447733 168071955 301222858 757812512 781277562 379618049 514678581 504595306 405260556 661260043 859066817 752004563 831530863 389802055 785016000 882307991 515461513 917631282 935413004 967627727 751595140 802925041 251908741 503998092 24739419 787848007 874803026 925355891 659286834 879797408 785929426 743938220 274234032 791329849 806268960 663462470 87746958 627571064 857793519 885733836 34982405 85037952 950671329 956063801 798831246 641560881 272367358 250373358 994325675 177369871 275764209 96129984 897781229 502989083 896430065 206160684 681710757 472534683 595796443 313487874 17292886 764887633 571616646 426830448 493463673 282889123 647366072 439458339 937858739 649856862 221675167 876774264 857270156 776424708 163973845 998451819 685992304 793505313 852190273 606601171 3407179 758773659 270237507 954370938 282105028 984319555 734284259 906198626 941768338 802572479 466299454 966037590 982140969 778702729 728914131 877334039 537929347 994723029 131036402 42267814 45319294 793686243 410667542 971901553 879833338 995528375 423310002 957293357 714006082 547246259 948091066 894321657 944640057 615179523 747731429 895432734 157471648 168548436 915700516 308113259 914550551 742958018 144912762 588571919 358230996 810382509 777063204 919140600 449101335 213056577 661221032 826895937 971728160 195307413 989562987 376784167 933056730 894191499 869524734 139215387 439077569 275640901 575651409 982929973 389370882 855532073 996995396 302849614 8818363 308727949 813678441 749435553 802552777 687212820 867814778 472867505 8658796 422687257 444517333 978291063 437990607 114233519 991856954 882745800 1615574 974034520 861406894 219627218 287356867 295986827 883968206 805545802 162684491 512305327 10490374 29701370 895803264 739536211 611200223 568936886 488572115 624731249 448600851 739813806 477372415 232264807 567540055 80584419 65786612 668714612 791026507 852306907 784273356 770015156 881069675 895183389 33081514 981458812 188953547 765921550 255986650 974665436 946700748 917495062 932127583 614584661 534366160 776240810 591079350 248429612 538303542 324896870 6666810 778281413 190021795 964750299 854851123 356031443 400897141 394133898 741667135 856385703 935765116 396511242 190916816 620065897 874759120 630698030 977902595 731718563 511514158 202321854 521713626 975524202 51939824 558703005 796803978 163373684 328799258 611341613 858830623 495976023 593405085 600563270 231645067 190526871 966897255 750908455 815981686 775203634 730437 475860302 442504264 744555516 594691017 774207749 782838068 518407931 823838511 658459360 522199438 844595851 260141707 39902433 174885837 232344648 141840853 896650985 399703701 877941314 906648604 65107146 259908545 734542466 992509611 958945480 825988142 908222471 774593487 604007922 486211028 473823642 933915457 89608778 597477216 746046830 543842817 932734148 597703520 888723954 422326495 760049456 778858122 850778524 296605813 866393575 213499411 963650038 207278012 737595933 266178018 838432291 870496046 893011705 322079226 784802312 953320566 16582520 622142656 620214213 958064191 306678129 140810994 97759102 47223734 834772068 4968666 649498919 398777585 872161784 580761627 863514058 221175982 829536380 967214020 877422568 429839193 749316893 806291328 801277358 628312638 459182464 946999822 538103250 454311755 948784814 142378612 838698057 798328197 158524169 737795067 158731736 975740084 821920980 714575798 792814700 802398342 923279014 840455810 571051028 957871148 682746089 758775185 923989696 845849580 685360732 354934338 278163278 947714835 650787058 830139731 46180174 718067208 943021856 465634525 862916542 180676919 983525732 857140474 652699889 640408554 791413757 365407442 990232235 403922399 987581360 332630602 802533451 917597751 786910753 769330729 409976729 90283015 905654205 779205861 991706750 221144306 327438800 900281046 664824857 781223088 928615985 827647680 793728567 730765229 321725656 634325775 753995126 272414212 882591225 774965883 817883350 754973620 780620693 753324825 563158439 356875945 476464024 939526173 266639510 922015836 397862906 548975526 905806865 961797680 742811225 740460926 847979859 310466212 449868936 885099251 5288125 806188224 47487599 550522417 105022621 965424955 447167261 850999912 606679650 237203227 624220107 938502821 990791544 272368483 819571 879238304 688402118 833529575 28575755 689799409 961838342 148350403 537066459 824325867 974672888 739013140 882841330 676671361 643702701 150523764 880284891 789728200 881892188 110399324 989365995 312931586 231472208 441225996 794141626 511092872 229542626 14928615 896956002 791741963 963694621 159079573 749780263 757652803 810960316 802313109 763933965 793353112 68991519 66340442 770308447 333688542 842092808 771322338 799211781 209350583 773484725 551656523 776727922 850247588 670320782 654248270 991077821 727611331 169999582 572758267 156315658 713459567 663154153 382818608 405258000 427698890 434157514 858067854 937341417 980084679 10916931 613953587 585984615 904183715 378383731 936921560 976932105 49573088 626173904 805034288 968271714 814757085 777415943 993991491 376965373 360057632 821210459 418854798 157003217 775520787 663877187 890843189 458050664 862342426 894543307 747333228 840537284 753366744 960658191 948858886 774690494 2460551 450383563 866931501 839576297 570666028 993944892 467856767 845172014 749156805 987360248 975401679 369053873 819691210 709751697 937081006 504867152 389903158 128450747 877915532 807026129 913479648 400347556 885756870 203593654 785691841 768474406 945314734 938500245 986607370 940955955 564796883 757719364 547657291 80145922 788219909 891211225 227552594 950974169 887493769 248035034 519425525 817547706 752532772 231484637 460924156 463183985 12480532 594549335 822324764 801874800 209592695 862922807 793543806 843616943 683654306 23448055 181606605 667005953 767554080 552148486 96918970 776609746 801492290 923608233 458941787 746513386 513918513 992894165 970493073 19004380 829665567 4085223 869793921 816399323 16764575 994239419 792627212 187560853 782917289 505882535 751253064 785178364 696981212 964874896 524639069 374955732 980973597 471326560 957005330 881599161 910420327 242326645 913400021 565705184 6806329 465482419 334458751 852286107 697138001 287510522 326510877 163922886 981476745 749062676 791801314 850188005 465627226 756100391 119260718 760519079 400727540 551158252 568554781 152754311 14231336 124045161 558379208 523685138 785500642 372347158 62159959 753527477 149149501 5561406 909906082 873197234 70128744 33149497 422504765 243940239 418261895 795805181 497601466 860456740 995096594 912792654 316183514 792574069 739062516 970056738 335135400 462994199 425403148 502635196 782175742 81556015 747081925 232163592 994809087 687575337 793145434 447562603 933050566 928705232 711419376 895740167 901409305 577996816 615527868 813709877 749314219 216574454 143448531 769266592 283549972 300962086 249573353 775917924 920990698 313005336 380468206 894544184 339149209 785567847 359353946 65549241 671386267 768952997 921316977 591175494 915806828 972313783 666466933 812950851 477705630 220478080 98488155 440218696 269346203 665546318 386084835 832953462 724998903 881521389 629170947 333999735 813701700 841574682 557581276 425763839 982673643 392708621 300408372 744836751 974696574 771837911 221628896 612893595 855007244 316958895 708808887 741627648 288739934 690152218 935484310 925616265 134462512 968071367 709108116 615833850 828940966 794956635 851805557 978496318 777870723 751716792 333610650 835426668 503300158 944787592 702622433 17975407 578432137 275510909 995682149 849791275 973145757 571134484 945879848 650677316 863864614 384699796 978610973 414322255 500466722 576576302 963825354 826962533 748367669 976156320 881226833 792305898 763355287 961703992 262590479 581229782 905005480 622237762 178167425 929056717 908495716 125705233 479678177 346688929 277063405 281409323 606476467 889825875 983059496 152229334 899556319 430863594 809278224 305749039 798709447 957097607 141109605 360429640 52611076 828792515 212251915 774315969 631549884 724135147 864219853 9041968 517073646 69782480 454078973 783768633 888332638 757893486 650089693 906565013 945958398 888302459 246472281 794144061 791540237 969490854 473429687 426153023 762405938 806207063 994014439 714508024 921690354 938413629 202175790 413892082 552421166 375625370 340497331 625965241 738527578 814255693 984364866 904245145 327813912 875736692 781004860 983696832 223634111 764125442 777997522 731250913 855561248 536480704 963363191 271269229 868549293 780318491 583604505 781322841 885416175 814285913 644681398 510826596 901370408 928004569 967867850 956297893 236635877 48713233 323585553 342070262 932694877 217023012 18662464 858284465 763066346 894215939 6335315 741251334 876574648 305445815 988364598 791879625 442790657 964107071 909192885 17250602 691125770 336493200 754579600 805619158 309885186 825111548 625307679 828993334 454274057 953612095 885077088 989527927 23821034 915144459 479569406 767115455 600568347 441788915 536047119 836999694 195007668 695927219 919790903 918565626 880168244 328854781 808663080 619279128 568678830 504864140 957513381 956697046 505341046 158033048 924480069 875807992 985483825 876452604 344456313 838843691 153218148 831501334 881433652 310335708 667008717 167612384 155091513 658977147 416245656 717002342 120407805 96827823 887977344 824648229 327929144 419685751 516454444 840501680 230668997 952948505 124747769 627574474 976000844 248242890 951011032 712785702 969397778 933733733 979945644 842400360 628681214 901340695 636257101 362570582 862446011 869829820 685303626 665883185 616130224 225486029 979303737 972167969 748792458 316465897 816461674 859871455 945917915 739919835 817371838 936203972 942196610 392782127 720279807 811486419 986395120 935845867 405100034 4907921 603175380 596223048 954988661 114331753 922592575 451382412 735863068 651957837 32639252 338014097 820035529 807736965 109789914 421335893 701407204 717489500 989905811 460730411 981559751 97940861 835652712 148571245 762925001 233061639 599616592 871991624 399553749 220040002 26427934 755859974 987918402 302706777 565298349 473947559 967088164 784804999 778757076 814008592 758683056 846410857 563737598 879005795 274998589 751428851 254199796 906968659 970010752 693869409 908956725 794332119 922406301 779175425 766105556 433859277 799334527 389174538 299000088 504889269 942830295 919892018 989848529 862815060 811871690 374394667 395785198 873376717 224994304 744772862 428176244 938235162 762561057 279233701 760820389 847466441 22569092 686767728 879170477 896311068 302951030 85915485 893523189 832058630 951953356 989966578 776055928 782713477 398351806 803643827 152569253 824693175 820338100 602650209 792940887 4333276 998195065 281472611 903065229 727110319 517599864 904788002 263690773 739185521 836583180 673356379 748987153 763949883 419384438 629155752 376594312 876907374 486884570 143765453 819576225 866312342 769891063 113576696 139763542 981459979 580367138 165782655 395929991 814882676 834078653 241078009 1938400 871956660 103326348 392956433 909559816 855715435 505556241 361467763 936867626 64929432 335061005 681329747 992077567 959287890 742457341 174160390 850281973 109174643 126604353 961325399 787890206 776570991 490215892 67417220 388380440 747253373 824990287 916428669 975448971 854420940 859478622 260585985 393543619 667741539 813222180 863177418 848851727 52756003 586347334 828060757 914136716 238813730 704334782 816847664 479513450 697113062 900014108 809940301 967706023 867992667 177481934 586006931 714968728 829653385 30692178 6924372 779973816 464404336 284429774 642159295 581972245 112977518 396557314 848924112 153714900 435886634 568791653 988516517 765477569 14204346 811365282 510098918 438012036 6233131 737914871 621909295 978424725 148538438 456195771 744320509 353194243 28773581 777295404 620881775 943018372 57234802 970923802 124453084 187504724 954918906 221800739 140501545 69877637 455895400 622735747 765845440 26451408 876563652 6744879 217827128 840664106 934396191 968609332 558862307 471993675 669028624 445983277 187625772 966261737 409972281 780441089 441450646 931718887 413339648 990050612 322125259 964032108 816028411 727187833 534166883 137450462 145018867 956622419 997508699 254523472 972654692 843995973 631457018 461197097 891243816 531398685 778191266 195400411 237993882 441873498 842001123 851524683 841956479 751781936 959053880 925198084 956022490 637675145 246013087 887850757 989461857 850285462 329135600 129915480 739931193 402835806 12117673 828882009 999828428 869940762 772701013 873690860 800778192 957885721 897767191 602874043 973298254 864231935 746969626 358240111 855406897 479029078 727208810 822974005 873768473 284625517 840431393 755486566 846191352 980410178 738403273 820515930 41988928 422544571 742600436 240102500 785842602 890163264 758246357 274165207 409104590 250043105 760370784 128740515 366607482 857566988 482243178 220163467 963930921 311157712 85090884 992417891 10234753 788881834 801152824 740445921 95584021 693276668 953734917 894006693 450480687 933410947 916000411 827141916 120351566 119888541 233696278 743750193 600757421 962709676 526639965 984354789 949314961 60611296 956006388 668181036 822064648 798927607 94361680 789048960 962669960 937074140 34393415 772981717 893842839 206569830 493682213 893417910 975976029 786106820 948396058 759477292 939156456 705567739 969443569 305820970 373839595 800686067 805209115 910673249 977003558 366145860 860457371 682700024 793424082 761359379 263708303 437446514 308024218 171287801 935491325 222475728 429099756 369491577 912736843 861385944 305160321 674272938 545504173 924706937 376600916 769507975 548324340 173034402 195689932 263803913 471471043 863891899 347610876 328277037 946692148 442296252 542279853 417242921 358744312 805414044 544465160 738245601 621285325 799839735 219184828 905126208 832857961 936690313 759858753 756579703 251351566 984225210 315953045 20782169 32141091 892889594 835362006 142042634 930002750 948707770 849936914 852808929 847637897 862041024 923505375 766573151 809483753 769304093 839213588 459847277 107533118 818017322 806511194 943029613 795208439 196185482 790016775 853649331 471877486 825136057 181095680 109332360 974738537 896278434 504947780 17601153 782471845 994800847 832203488 655275070 922188846 889731559 761205860 942717023 761551905 979396014 861353535 827654050 909310293 937077953 910647146 779280016 294641800 310789741 962172932 183536715 963522357 219246272 946046588 973092576 141972230 745356808 127743179 994039917 71910185 833628490 942630069 750743642 931339792 911480917 77971911 308292942 871722900 105097624 280040800 83198426 761205836 313074417 261038789 158911290 2407061 676566643 750438300 30019149 773756852 3904344 223544163 972353522 469680268 743818426 833772557 978204952 912627703 65772374 875086525 825479165 506413766 224024364 668115405 638203483 416561903 807681360 272268000 325672234 922895693 797778319 892071707 110075294 740319586 46767802 807490742 510749199 158576083 970037524 966930732 266701239 893159059 294315612 668917539 790168403 308761390 885886357 707045401 876303257 839597554 986722720 323076712 876266736 319770933 562823037 894805298 306351682 213587166 725513616 928145949 835838710 788834082 632951264 776949063 831196102 89217214 872809355 856970372 718507787 631580202 809786265 928601656 817767365 31578169 3212505 901868072 48623276 126190723 843336558 85553777 411607935 27213579 926462501 788286010 9060945 902609287 245892833 686776288 957979897 773633640 791342353 811780720 763145737 928129752 824087111 118397590 878516127 998581239 877372422 714991894 187581421 909515311 763057856 453170644 11722220 180442548 737601424 992672945 620247889 774376188 971477191 209808944 823535691 924726180 100903616 766387946 944259616 228732404 976720730 950475801 560716585 97692403 845172199 610662558 622185679 984879870 64731660 583201189 634367991 533601855 416441614 292608398 869173624 3930669 563561621 915543515 886796137 300277695 554127165 564780204 910605806 771696264 521428840 983795928 341615605 559287175 940706455 889430288 962325018 737020247 590342769 126676272 750359952 967347263 848505413 165663619 539072088 719408627 903667767 382224446 483133583 305606567 638538300 768099959 986625920 909802367 851247688 756069891 774843977 784593678 537054812 863034001 9355104 914865280 465919604 515667934 92971187 956957900 587066884 348101371 966406250 838160412 188131515 988235232 826873557 130658035 394573314 764021125 602887322 966322365 789074856 759326013 810599251 742737830 969373123 927738201 658713761 800113558 916078087 982119914 821319350 159813832 756452512 114294451 608820895 798587634 374756187 106337335 823688928 211901037 347362936 219366076 490430580 184594435 705027298 548717484 496094169 306991001 681577663 307400547 197738386 396146389 911734883 933945771 804242168 834527830 876475808 911413923 862833542 819810239 440191059 936836865 352677356 344154523 957938756 70178772 661630568 904290382 910004392 950087750 813061641 833679070 752193263 322208662 981011980 927874511 866839305 239854642 934563415 707332594 737020247 148084252 145293305 741760265 690085912 722009633 883016571 874258723 156904208 879724595 141339686 26589971 811981575 170400520 311037722 453635850 125646729 261632715 836284524 847695979 778062864 573015919 459613258 675348096 597880677 416523858 71412632 804900285 429763548 857205877 756857863 973914943 271315394 949356159 542436497 660189999 868576767 910033709 915236130 928565363 799210299 404739216 900626579 314431501 893970775 433361446 585975800 405055639 359663887 410923886 119375702 929688021 965038538 565027435 579929105 227212480 737688257 877235031 876164071 957558644 243895895 10766385 483752495 982666649 150487343 755036906 357271102 882537335 899923127 579656963 739608544 487096796 42849636 433750855 973809511 111133368 862525663 452062117 117393147 68321082 63227833 846274753 243873569 444929746 824486736 759225665 369809922 727903119 732451361 398510084 198369116 887641423 529781513 404026127 864743247 970015366 601499993 915884213 859669446 36604456 919106135 331262461 269510224 868008357 183321086 913403776 689658729 804244700 880604412 33027531 885158710 198834334 197446742 263085917 645149382 745822851 179171934 25642458 824218354 771389762 727161026 453129549 690373418 265302975 264708969 935442073 697899969 120235119 716316543 550674836 436211311 996984333 780434603 859111567 778513385 579796040 400868390 799315975 786555152 689461142 886684378 911247191 54256122 745225500 530713737 759574935 619628723 844852933 888804463 817975795 680662947 1134011 888796071 986577044 749866790 199067288 254002369 147219373 861789812 848667808 726760193 574407470 34102510 326735115 787964693 660365227 204759754 954351000 846453237 580275709 897635495 677770263 853329873 942653648 955065438 218708483 883174969 727330780 737020247 495270597 867998084 906424173 328923532 443436859 738268009 920701126 630194265 33563601 778504362 896211899 201169644 985591713 819198368 492143872 235830733 767630000 703108115 794800878 634604997 661780802 809048686 313689350 413692976 916324928 752854549 896915672 888055976 841216877 533677930 971803866 262971004 872185252 310980414 155167162 763264292 740451251 841096832 46618893 803591570 388444292 797755580 863015336 706404111 821506690 254850590 765182846 374442955 796045810 995465461 2841931 225927229 756631105 685432423 633886325 420178280 772467454 703298903 974446896 227010389 976682796 803038425 369372632 33691107 877143717 910564706 476043057 334881810 805615222 855388266 266939500 788101319 869594484 991412415 748814112 448933205 201892411 991490624 904172763 825341503 174972636 716038322 186555472 977832773 17512468 975796678 978992739 925792685 78185189 897275554 213752969 714800321 307548165 347115780 456971976 429052431 690792354 298497627 807108938 779703655 194465994 53092851 741467938 760268562 791159281 112423406 902882176 110809408 877645323 994825657 59745844 193206079 999479020 27101214 528175002 785627362 339932127 993600864 305651469 449308719 269296104 821145878 286448289 638090747 818338522 946840761 669584840 10700633 743000917 911897215 885904857 115627046 303025543 764259097 35301864 906042229 794941648 296327997 882285321 762059107 541743863 936218683 750840244 432187065 664528089 161892098 613640609 785808045 772401845 765609074 969533372 512180236 869534723 916465578 81994069 176810444 855949960 164777876 584335812 939266008 972482163 45863758 796554060 68786549 472318989 914421830 833097411 732232395 396637670 680418664 951466307 920670045 904955210 442495181 835801541 953173272 438211927 759214215 851611474 336486015 809482837 972304732 395012935 667562660 988079559 726037139 14406312 772939152 694465380 893520011 864461617 823667700 567338041 759285471 963308129 854798441 803035318 385605506 947243057 456736983 849780125 847768146 685377614 571874004 103163939 903633394 658975635 683377868 798088127 571706832 932047687 625975557 863998060 282863360 995171001 969780530 758208094 923996567 931659358 775504414 769617820 902698347 762887666 865656851 959322641 306115474 414843580 701962061 562392174 837615377 357817402 799976216 502869582 835095912 974255536 333674777 771002670 907536526 942678398 214315698 807990865 370336703 929894166 957989364 950633556 342827581 121051201 824259710 994659350 996749266 836438007 515853493 944026765 754801572 894784963 785736592 598592302 375514617 859298708 847434410 993627373 689856235 593398619 128349189 54086855 820247449 628409431 621248254 972355498 547860517 12497378 458628553 722656202 891694777 473305690 221852753 812161638 834551637 842750472 260365521 335552158 438392334 324032069 766865928 364627734 821824811 80036081 443501245 144552874 156389532 955691978 403349087 42759774 757637823 110147600 140125675 165714611 578496876 869800268 948363544 152154653 422278594 674715773 816446196 300989482 971803258 757060187 49498547 850575625 986108854 10826792 889514533 377842421 587309164 863800058 879009861 517298173 964190809 844453316 203341929 898443431 986463035 217500860 232167690 798252968 903725751 4681937 61737181 952322137 147820896 513381135 859981152 292347010 827900735 840222092 831465749 813029564 768520335 37141174 321973279 620321374 589699443 799476664 365740866 878874738 981381700 629759344 306262236 319856761 802434184 840316399 804121925 380869187 270496441 7853505 453135999 807927811 717297936 549676956 418478251 829632578 888948295 856666349 781432833 823180286 232989156 737020247 248732645 844773612 248008816 501756744 948391768 296791409 626578081 540850462 793012369 149826533 474874713 228342186 691208061 97131002 752200238 797689448 846310970 845511969 970466399 636301214 812866926 526300810 626593707 740866459 629290701 861830630 849477450 695388147 965598086 519668630 655494754 748471557 877318848 996850486 331866534 758245026 737020247 428383754 900630192 836842676 895003373 805951083 684977803 326068108 829484488 128950822 737418370 820531588 829157967 799544174 968577509 929863827 832124886 70963647 54394213 737020247 943762752 912459982 388225168 224870493 138858642 470290697 49182602 187177613 957890935 818719828 792904975 895849952 459661690 534580297 970591287 994108564 3331699 914135779 813252393 968085517 930195642 759002626 131500720 712955068 862402188 886766323 938199079 166658772 958253232 846202436 972872381 765704058 148785541 419120054 795700308 91594420 773385826 928711678 293117248 878921417 964644350 812832030 908821437 192859924 971626965 987487089 197319322 395019863 785944649 859126161 52384359 656621736 943326282 230532577 867839902 915090838 566322161 147074680 27885624 849757460 882482231 701908090 961260299 116792263 739154135 984302761 125980070 843579892 353008150 612568188 43095679 168188587 847137713 133815040 822615081 305532928 981267173 910591183 879966649 866481109 976589640 120398523 900652138 755889438 322839173 39687862 561318948 959210117 281581087 217763829 637589179 255334675 900969479 742672997 501357896 944659666 746686811 410681745 9766953 770003045 897619630 865319783 482654818 403129323 841712481 34155933 574382438 88010758 348605498 556766311 274388021 389168581 359187820 798648061 416327604 839008153 969291984 994222068 895780195 946165663 905922785 996241912 820309253 996819837 576765520 768612816 756955101 777773896 834379780 834368965 888877958 896246215 224705187 164299393 817508816 75517561 967815713 786944754 547211528 567250500 839552535 738293964 841073575 51992754 183613952 663620076 790549520 749578496 979983507 691883235 747758094 788172033 898965678 886333692 666030708 936079915 971918531 96031026 175138510 844648923 880423398 619240935 797525681 973656048 869919231 176644299 940488354 867224485 856862032 926261002 821980734 587249140 265286236 465745729 289794528 217323098 886888912 803615662 876587004 954615194 753657328 926380324 695945336 563072594 604654135 639704912 927828257 354866783 926113567 277142916 949083986 609838558 779285920 95551098 440550826 949584359 244001038 489712134 912366850 755154482 990403745 811684413 284951954 333313936 789319889 897687832 686198739 797286700 817962490 940808441 836475161 412221221 838468787 993722714 530546584 840971744 883994597 800713877 242633442 816029680 826439277 30259122 324646706 256305260 784088301 134859060 831563252 865276577 596644229 846434955 475164029 291032196 287189414 391997122 709799197 371582487 790305665 363443039 457141747 107703369 879947740 905141503 763220843 297947199 892692133 850471329 677558994 276623792 900888007 450405534 761638249 786688953 321395221 942027390 219568258 601937992 525059734 648680500 177486453 236855016 770161035 640504747 299002953 501180690 797629146 598317616 398896055 189207379 812652980 801121089 725944071 980389820 871132786 941507030 348993930 920310198 872609386 870978216 218071441 5610936 29615288 681673718 848773163 854618945 782528375 228195814 463946334 888909141 820102837 224870714 766957757 574937725 808529001 903521284 422226953 342529334 849640159 276064588 173513666 872608364 898158589 452390640 943836586 572742498 485091101 229570497 190493167 738019545 788669152 494120154 998272052 539210519 683146068 828335353 267684897 701448971 952835554 150191295 737779863 913037546 154221205 968387386 616668227 581589027 53298394 776258742 484767156 967587459 405350539 772125243 33632813 319776188 188235372 517269832 147856204 873631347 891983843 164744858 808542818 623390058 940972658 942090048 546474028 893923775 182892238 380527117 895972557 722588585 830413401 159990926 769951559 671571994 909079799 958727499 751694904 697096833 817193281 152529211 865478607 331726265 970203529 825061440 945537746 697564060 69989990 796206701 937642569 838381532 447938745 947983706 784433087 619394583 872112833 873405926 909375467 837706348 49020850 898222560 899129636 786021343 865507516 430946909 998396989 63482605 500121809 971981909 583511118 307122532 70940720 707528038 256624180 396199757 792637912 714224667 428037307 201905401 183088780 901932842 568387743 881922817 950825865 18083089 427749769 855733368 863299281 36115661 901555533 844282543 171223583 535373873 311659988 56288487 50515788 283969045 41845534 520104337 833537461 493075177 43101203 380607589 40088604 842232357 248021012 900861534 299708236 952836630 815599614 675753711 388870666 864458873 714787967 808993357 877708362 304669083 656631634 36763978 57628058 694910443 788120095 903157222 846127231 67299215 883633864 815735951 862462280 843472340 953811357 883712120 993403771 805161127 923220774 256863684 617265668 715188230 952201486 583946926 993383234 585334192 668305803 444152015 988957427 750669260 516736522 949230213 995158550 326540415 628334543 766466950 672375127 780692460 321719638 979345156 187484462 602898805 866874820 956308055 408001432 883707154 944776552 990347746 773619948 835462055 469216401 241689227 437689868 741643466 154798928 896051380 931083594 671012138 753657451 646008810 894818688 798896166 803289122 870012239 279613086 887668168 277804839 2923760 34111116 879546995 926644781 766247890 984079434 948312559 61267546 220808577 585829419 987080255 647570259 862663538 779134533 638356289 32097258 909707848 971505652 225988766 984970623 744654096 556155683 388567226 919787279 960252799 904608749 468553025 356411412 652338488 348397637 993299554 628522294 962654864 27914224 908187596 390030495 912024223 737967976 773984244 922087115 749101078 962833855 404753364 372257520 794853218 688893360 70683812 549990076 782677541 565776594 866242502 56009618 127568081 852031975 286200768 542622000 616251212 997905400 820979325 803609650 867445683 820080152 54897341 418450626 275943240 676475915 35184354 823279113 422489467 994461808 689731670 932597198 895540402 208400413 754703078 27505961 820464775 651800996 755511232 313413788 340682050 740249280 984414349 845932312 618393130 854299924 71702627 269900079 458269194 777916109 748827404 857510730 898519733 924537001 832633348 917537191 851863051 952510252 974568122 165984928 497934480 938930700 322696625 95094816 117140835 484395050 847392197 904730234 923327861 823327671 840796177 561773435 109789057 547236657 874491990 443236901 749081704 127991744 133596336 978532589 738962263 867674631 957721042 438255715 843463258 741780429 195628063 669552717 54369889 767024822 23815329 908668414 928941594 935796962 893940902 639905969 615501388 880985962 452132475 986318887 521383109 985630393 796914899 366417279 783142068 61486502 753986134 227572458 168717411 927263718 894849475 774142984 362602723 394460585 704588557 864273695 983029793 31967380 266152531 929241190 753639261 15695546 892473563 779798447 660545996 26059181 93956625 272038480 225733512 426908394 754907095 316402875 230725372 750614445 914477968 869223625 117947872 850483299 766320209 593469247 484560978 303535882 954553415 971687591 433861691 766551447 857321875 769766242 356938096 636497485 571116343 909768501 334601525 985212770 887594863 957289589 144347813 786666538 633166386 862742 210986007 360640901 884435478 741946279 493603150 973711349 954588932 752562234 714372977 739790930 557506128 775627593 926205129 180157534 510446545 919374403 989737725 442942089 673162331 951783275 821566133 928259263 344128465 800507014 758095521 984434124 39367133 756581034 370117743 808615482 880497005 866117065 243403447 870458735 116063733 906638001 979924876 958731366 220767796 978269075 575023761 941686695 918058665 767676499 744664723 971108563 606311423 903219174 745185287 715072491 871338915 362788484 351859612 384993755 995452556 737020247 33169548 920351942 264710222 227574152 272393710 714355201 972645974 690797901 65506759 838593780 44920186 616663906 826727663 610399143 919509962 32602378 304703985 102935206 339456714 838782165 420990112 830748831 439411357 960137591 468339541 969962281 264068932 673450985 807313866 869652969 11851812 970183079 896203751 829457538 759472025 309908679 847519335 253878800 118246498 835003627 787060376 581551088 969530690 884552864 950600478 958770864 40398548 947179576 896898247 74077377 359491627 865450444 907007290 605602294 360813357 738325850 102891508 45305472 919303771 149657404 541376654 136171569 967901894 664630469 444969042 73386695 501349594 205677631 95527885 739283681 969141528 446407951 560370796 538182452 803667607 804839531 886765748 942913584 868462019 971452185 417278947 213284032 789556090 726072056 698218749 659261480 888554883 492321620 852203145 95199393 903238014 883521477 87237382 535152247 893976834 104383054 865956809 884259262 641084521 306468103 592505295 166105205 347053530 601003097 895524295 962040779 497567743 508595196 368331259 962617466 356194624 955145797 111152977 983084822 798627486 935665272 771801238 406156316 773958266 217802194 383604901 858837844 222230232 741948214 630919009 872859968 538268061 748378576 795015309 449482993 265466479 798174607 196354445 934043844 887894224 239429700 464231589 88793698 922775282 488452778 823439489 391712220 976688391 132318113 774167621 37726714 776582817 283353097 771289641 903710008 900343276 348313068 749780932 3683754 780485176 549514793 808710709 180885765 907762198 61582760 26068980 504797778 944490438 949903390 441963994 768145436 52769282 579416682 969998221 571102173 442579718 149910551 912009005 312675414 542597229 281342618 473604686 801276772 832582631 334676606 440235827 916955337 473168810 595725220 748522432 968541308 315722975 779458882 468918480 656358385 444886519 373230916 596570886 835724677 9459717 240221537 320670332 882882774 60349532 855687776 786728855 749321017 457177726 2772499 441286311 902737956 783709274 893544165 777557966 954821766 956375754 752671923 959727024 742112830 778046735 873842059 645542415 810818999 880439442 818209006 209072397 96279345 583394669 841771056 965389091 71795634 877868806 604745138 189876171 306008060 829909686 209072804 874197678 595772750 934004321 475994215 208706169 348524497 335976139 895318078 58410331 681830364 428049034 933315204 463338720 221782904 909157388 626025267 360163179 396515249 856820399 124276260 975517085 236225429 901539843 556226790 637873608 856929714 864299580 593836877 861580355 861156183 789114488 429573223 236234454 737020247 970085629 456877073 325674215 803304149 756684948 897296045 901672558 928780856 685417682 841173294 535586681 768976981 777848238 896791659 281458549 795203198 942269123 142049207 422575642 840927157 945825610 864974128 870751160 223273471 584522173 908682507 754392653 135666092 427133264 914228837 751305521 286917174 972191980 866213898 815792752 591424702 972353267 507820377 301195187 15216581 296868155 992871801 124851229 863982346 724747002 895876977 228760264 899167774 811568674 924318748 429849 850768961 711589102 416250336 556313594 902501220 978957240 756299297 837990158 387395092 922308916 896643091 767356684 784845148 787713581 747354418 515723098 585952693 901317718 669239128 531121756 795785854 347411900 383927413 399742684 986070195 802834022 126168892 432447333 260951320 643706145 645146029 395629763 968374402 217376074 928483643 757892441 583970971 750633391 942742200 85641601 474000526 944627218 902290553 903817920 525488307 294330418 759191867 474549734 985525462 793050941 836279456 378516446 803291649 34897712 982507598 183790347 234377030 895942222 387848239 944011941 940173102 679722891 743532559 458467328 823809923 277498151 584563257 446321450 928522339 829790255 365685728 819673276 781246183 708013536 791066168 801296841 230420361 584512770 696123896 598610983 6833962 425960886 38355004 256488719 524469964 828394022 962995980 275818627 876467049 986564208 722150675 232712543 838402792 453076830 159786095 264498599 744219098 861498359 811898610 793093915 945117435 833383405 88903050 847496361 380655847 149544341 562326886 939450566 360868862 658325305 256668217 870593101 901032439 779368635 90377225 123741794 798055544 226703159 971992804 912695300 339181634 184942328 816715100 511885803 759042148 209414409 891764812 978222560 242331355 800378389 71212570 822319406 267603655 357144591 503484292 830081107 802763062 902617285 747030181 746068774 889421837 175496664 989258186 923405888 544743754 648109812 38901463 967134120 855615329 839890113 717711024 836710134 778874957 460702103 792436054 906997887 413812862 185289068 959777732 568895304 234071587 562648640 743439075 831008636 224796171 892577878 113570065 256907420 380515831 769652752 870502981 389983411 932923519 724521430 882072029 811300931 746552313 102555438 901983484 854270431 276330318 934849057 85868600 519040440 634300699 689876172 164409745 96963780 376390614 516641343 792799684 900398589 804456905 956382509 558281171 718980281 449300706 792702496 158034703 389513559 920790394 269753993 932345120 885775417 212283004 839121365 25383952 922898498 766534423 887955517 774835260 642158170 545644233 276963813 820485701 968190332 631722260 900346294 332761332 177880751 148064290 501096495 464940672 349957714 957339556 840933733 944795851 439348694 884082862 993725242 89432080 283126453 139492659 71148430 147512247 887520556 771095998 767749647 830380316 790503917 727318711 872070531 529850741 748484518 819968720 214539804 683789091 718502536 928162372 216805716 852309816 645200441 784208851 932045184 337824365 83093817 958827632 950380273 52008679 877874281 919033094 788587454 842015940 585247536 689922596 82294398 974791107 563756940 358174978 939961296 797016970 815017823 847679720 848775937 863046060 366755954 403249928 364852838 647009676 881699934 479684657 689422907 979279172 901819077 364342014 976004371 474800826 395129315 27578879 884889116 483014757 582122120 892051606 444897176 798481028 547521603 964407922 849092923 623934610 830992020 208996776 344540837 540037671 364817640 563542687 751001838 752277697 743673508 663067984 820710277 811099242 860068578 88005306 727031085 591038476 486516951 963911730 801828617 777731681 991601218 928508969 998679837 786336904 812590943 900323438 911758963 935872937 554450967 888009275 788311186 865812718 933781056 241886270 398308326 786841138 986990773 348428759 668255998 354078601 915016483 21465404 126928032 64286796 847718221 525256137 78642283 810488587 505864340 874053200 875663584 567054102 741225113 769520233 560422663 791742203 985852616 427942585 304345410 886158499 901970587 40425807 398099968 866994165 208441979 946418059 966276887 131909956 934150422 832621082 761702608 707108992 515791345 769542603 506086849 784366995 116213984 640366608 830338532 230999126 574735835 567235321 868007260 869260462 372601963 785065947 782768543 150868397 376988752 319951154 491561203 220410092 338535841 552367251 326847732 887111513 949191973 43090968 351873628 344211755 132652591 22510036 239300154 752539809 91630222 393421359 790088437 776691809 467408241 908606991 92569433 956530576 907477182 990634696 968743113 807941030 216348154 908538653 636896292 892228901 806056013 758063683 302053459 787739916 70063532 746526687 82287168 628902086 815859211 774902502 351585267 288294056 947306783 574265523 809194167 855488893 985400359 308833663 307331910 822004739 948055843 818009590 201971857 795651235 209714390 688081040 942387470 719291919 67909592 965358961 216909757 373961992 854800119 456568446 558118160 851725539 246622577 303852949 841727926 825465344 955146954 479696426 3737392 968080403 681549476 647349282 186831547 809682880 854838513 22446470 189218019 502707161 433831155 935868460 746211560 645065949 822741216 845614009 330633825 501951867 983140727 356728916 902598963 995699313 486684519 387015105 959761430 692230439 287235346 123409486 980100319 236496027 312660645 40982710 565628363 624558718 958919115 507918269 891009928 962573513 461305243 657205501 380511526 916508250 818486172 738383894 669913517 674458150 791667211 512870674 898463204 597271033 693959730 958382431 880857890 216130550 793776876 795084669 670536927 501678026 857248193 909914984 330674954 256333403 930429432 743734002 322252863 171887234 971896512 871088096 704081667 614734660 962622286 293503432 257289230 771445479 301076184 463479745 8223636 643581599 398232049 970200559 997432825 884280916 492740821 679879273 778873379 182205465 623237525 669331792 811774830 664310703 918522184 797323110 989656644 383461992 852653422 721841223 93439736 698851959 771455897 935431901 139989774 887016251 283229677 313632960 660914339 954695262 191985526 781411316 868822089 387739689 776939953 904588536 514486114 53728045 812403305 888082410 404403658 334289508 821857437 854847745 617883558 818996295 910513601 612422665 287458615 762772443 382136374 513903122 942397187 888413891 968458211 562451875 275605372 449911002 803912893 237434582 918014884 3026912 819904553 898891237 551564377 980025458 794730405 871230638 872990598 987010885 829341007 614362482 913893003 10482502 714447682 837751904 489528416 835621324 789006284 408476257 767875398 799672848 808616595 73979802 901760581 907691261 217694393 954525014 847895240 152784292 760428448 585410797 167498891 231596650 31745753 804114856 545224852 984164674 576445992 385503190 507259524 896131566 813420998 972748441 314120922 956310768 920162111 900642822 550147603 759969952 154328073 810326506 462316352 469361375 182280420 711736411 108811357 502332696 206061029 82475234 438238247 942864942 420941569 398293942 366970313 945053974 738593844 759335658 302343895 184563479 731528141 72099496 712126850 884575172 590350092 276355606 871969907 932415018 971644196 864152336 212940308 504474654 857761333 755609658 420824881 484559564 405876800 407199509 372963054 130203177 675580825 973292675 818428247 539463494 975047149 247823987 535266940 853562837 263927489 659983497 186123060 938783769 803693821 317231210 851294628 18414521 700867741 970457423 340729338 803112728 850603689 743130817 247934508 981841150 759966569 571199798 758881144 99476737 444592268 876660228 217691498 292427208 932001945 474673329 727078684 840255222 594315857 891559693 317261380 250643004 476886213 471341671 499968383 795124277 956773405 218163494 299217327 247592277 995896804 135666902 867084157 511846177 910069876 847239622 752620404 566589914 918914546 877029023 372062959 906304933 48173981 636631909 827587435 748689959 745702202 968467015 554447738 10301252 742405926 171113653 827068654 977323252 267107972 453518537 830236426 581611341 280743499 305670737 406444361 952589807 158850259 371746106 770019223 241411251 742389170 749577055 920206473 988408200 952167344 231340595 951862202 75831612 792160674 662097319 209975412 952531604 801312808 409601051 26316816 425079120 650513252 892030000 766719598 700469117 385201293 341927348 804469957 926520833 159922821 908550970 737921323 937014852 238413160 786335770 52935360 168963737 767918860 983728717 923483335 857315905 15822871 807586712 965372230 387650580 428289803 45693752 955649157 629933813 854737069 51855029 103278669 996381793 935428779 572174185 807825611 157412718 913923108 898828456 15131500 406576615 633932613 973317693 786048971 708230786 829246129 550038450 431321983 234123140 469781000 325069289 521120054 333307520 920444962 782159629 919644135 437037757 677951394 995916985 616061873 403068235 712279516 915631321 59805635 486521145 807651318 957425663 289289067 102998698 342606800 836272487 871268893 420272667 232993158 422668612 691951033 233370620 144160894 745490506 614818333 946506408 776818258 566967426 800514865 329700723 643170923 708648051 456845842 875777738 930703231 846375477 926689510 788941303 740098701 842880245 701676946 364943952 743546494 543960169 677445987 774936094 758360986 763463015 825370014 678855280 113669243 573686963 287637687 929548894 913488534 936198428 544943681 331338743 360433 889272389 99099440 381644784 991974185 454999848 342842557 812841632 855981415 112048269 517939705 827508386 836369753 951655042 702109568 910016267 354978172 615447485 17445815 557224741 837735890 983083213 277327988 802528312 172477106 395797727 664443630 696008649 825724615 215970239 540643957 22550390 86063119 133617460 911052971 791552579 227717551 309070805 950298604 763493506 81242777 834634617 144469143 133172033 665762962 247900840 950286079 786472116 430138263 757039298 750403141 473844481 686781396 613822118 371088729 562453148 4982955 814760325 333581225 652926470 649288878 690271090 145467045 130545503 441770531 888987855 904000272 746412359 933779276 495602998 750359391 953944482 732064497 863667134 828076062 438260292 897798030 556319369 914368347 203948519 949259960 572742071 360761666 122069102 475976983 836412224 695482213 350724747 211023729 763025389 979451511 822325639 790906554 818087966 932858587 211223562 934558736 828427640 870636144 887389924 167832945 929578871 178170003 894556029 877969858 43474549 797405465 466809201 207677190 598797999 882366031 926914254 868942325 451932845 468183355 928177586 510045484 476724781 587930087 474672296 797637389 964335857 811173052 687955260 339473718 484187285 282469236 888137023 802551670 780075316 13172763 541088478 199426113 793731653 344267758 936135086 745231754 445240958 915675347 738044129 915148032 777474527 388711390 164172108 368995452 483833480 994359073 203021742 353371832 875265445 271092369 801517997 126431001 763789390 770534192 942190988 914067624 907394941 981427836 109272698 741010280 66798394 505881486 962420718 123265741 466229124 409813426 999573316 940524192 479598696 773187252 999938537 931876932 965894608 310711793 222141123 374650606 824226492 757494782 305982851 556857322 298789885 314344884 940759839 309042567 579144870 959063636 534821987 909676830 337363040 782425320 836907650 658910930 933170886 547629085 635684528 880912372 496264322 220797470 957770934 226025799 457626116 669351969 792818430 644508720 816806078 41182646 306539655 886178242 539260581 762499609 326991448 896896598 651601080 645659249 940524383 949008104 798240166 999717410 938014717 280630557 984753366 755895251 748697983 850220564 770935040 979725198 368927966 3314942 483102178 812039466 887989303 743762505 132825797 482287777 655655452 273413857 756705010 823994165 315310428 727789656 793376945 240293678 884741095 746139385 16505249 442853042 879740045 890650671 931287918 581586922 116694763 929871232 951161314 991019487 867716428 731233881 763665825 854322720 892387643 715180662 790033626 848418497 935304689 851655855 797711110 879333568 686290002 825482086 826497004 178304732 251625551 418203264 973397583 965828591 239400518 528912767 957726085 472895796 23762562 945760434 961974595 653693554 988354610 897157398 531747645 906185674 699192691 261714639 764082129 930010066 275677220 995670384 985726056 400988351 796072460 319146419 993562629 323849599 659514112 858196151 798706051 581613636 336453199 936205632 358005699 291888050 790042445 971059940 324452742 424229018 731010451 724945653 248559586 998283384 714857757 410747671 612802589 992580023 881546024 242496362 456368916 962909074 885913241 824980943 219410688 70893066 870124154 795172674 784433091 786350425 931182322 733663973 686065985 933521256 803028291 500386249 481466035 163573441 849525340 843453771 79066435 311812011 912780914 811971710 767825989 89895121 75984443 149295078 849739897 50729485 834506336 983805408 264176449 541752140 91899412 604388370 642132866 23095384 473976394 853570042 305502592 756567887 856330532 803765234 799208642 470301111 3796748 759876890 517591973 966468888 960708994 481666254 382526982 917993218 726049206 359456720 129668369 983035537 367763670 845316454 687802677 805950769 230783079 845589645 955887464 829113135 528816126 747041938 926088467 144696523 968442111 773543294 597406157 459850856 977326301 894020607 906375496 968984638 960123376 980577202 979557672 739794111 326555740 279795774 837775988 14130393 826179786 877868558 389777747 785851188 219180098 459802857 926757821 866000017 945584067 766315910 882549990 373362463 815580715 151456427 875174452 611960413 771489948 996068327 75415056 219585138 709315698 316930897 952802601 938121378 62907164 960514652 467956625 632209390 229472671 233361102 882297926 955418267 995871439 267320492 186931347 4323683 968077693 94649170 963184123 826306305 863214475 667377316 480040305 194620982 497238486 825450345 858467028 878433332 743769296 251528069 753873346 948496415 843530457 874489567 651490804 953767227 428351798 218124993 923976715 874251216 434250193 753757868 332097638 77072458 855340229 873356973 761550174 769410461 598302256 104608241 88423960 495012503 640546749 458553690 855095623 993763588 927890985 669538150 596954282 712764274 34765166 788677834 5357268 798976958 930972082 528373089 782559756 965647387 393911631 813609112 180395875 866145769 271144887 261627937 858675681 453813994 967698210 747936287 829637346 822024773 963199269 979203504 127768850 195382462 556675671 987940735 773879205 308489410 868224379 626754891 964173908 790206676 915032616 118880303 450307496 753608303 131625051 939267017 547045810 629236132 847229470 316926746 98749501 825541498 491366273 814300780 860757322 344045805 694155012 77233526 422312555 903675932 499978300 427689125 971099873 481776269 921624792 855069136 396055355 992449805 331808363 440922399 226332037 912967226 973698311 747050011 245630298 255114375 394331121 997379095 798116749 202840417 60587398 762772870 799559442 462980634 680016906 825986050 730438084 144682606 449690993 246239149 567567988 987277641 650526797 957409043 995154045 337638738 249704673 920240045 80208016 550372227 628513395 921825996 573889890 819540980 887045427 890394632 904826199 792086339 419179525 890318978 883294411 746650103 938176612 307253964 600123329 794865134 889119641 424959358 210111142 294509143 133480196 804273309 511131839 6734453 386330627 798749961 966629508 138534349 868284675 5145849 540857392 977076558 799533366 938505158 71281278 763013245 908060364 777420403 327193950 193173468 585124923 842511877 645643728 521908915 785328187 108395446 840067491 923933021 792053450 423979690 535467949 420309154 999509135 14655933 187134816 807834624 844253640 350800343 931094459 93418932 957691064 320725924 977848019 267945324 698882634 979091256 178108516 384140979 530888903 843566130 995596969 865272638 938423273 929815280 853334492 5190777 340201272 613426344 201718220 560645926 239231905 948888402 839931750 685086954 347103279 9476228 817582006 987907705 811907979 744673592 629759857 970381461 489560108 378107459 877502708 631434915 420640338 433972959 112311043 497955599 834791953 33534819 40754445 869760433 983346498 367582665 898157546 447361346 15249242 782468625 484254337 701300095 771159518 891712206 872658714 571913035 682242853 642937935 895416687 951910142 928103960 717174385 588805111 1468481 865873574 541818891 916296588 937421954 862055790 933964276 853315029 861658471 121614029 959112379 984986943 912957774 486247592 875877485 497167853 871035996 806833314 952251672 910656851 823923788 584871266 685209355 960592485 762046705 699297522 552714676 974171118 880588033 517171538 552474689 143510567 174931799 164673847 350654674 931746282 398113973 289632016 384052204 164043635 416045279 984328336 772906398 712265749 471644313 971713268 570889919 919959383 873361252 698200503 682215263 479236885 479056475 774002494 234798478 681092624 316051152 968360951 754418125 697477891 940098558 841054190 466867613 568292559 108993303 943248988 724692151 987520917 826805522 968236527 854228344 862090718 951267142 954599478 796766273 20232899 58272892 914349805 687260101 974912773 534904283 854725513 793884786 997948462 766925436 913068159 863273849 582470799 676820540 804635173 573180222 71611469 131647177 201159184 506852352 929473438 513458799 424604460 1624282 734437634 237247692 401406569 501375545 713735336 947579541 996611167 345989982 44232564 701694414 845954211 811574696 583026519 927652915 757718830 845726684 170450170 924984237 805541312 804814237 871834910 865205423 826474441 929154090 796762079 982003813 776713774 909869917 223130414 675412294 901715540 969848947 912324379 838133075 184513382 157856002 824707271 844870411 858936283 858703058 612629715 29688044 224631349 294052940 898901659 421053561 784304019 865564299 803229096 775133265 411869909 802886916 293358504 892991993 380165064 506880581 444417340 909342882 256225603 619002509 101132192 415968242 780134877 449291417 402160349 104353155 880591604 818819924 148031021 740150970 549121941 293015940 822221304 740967696 889718364 315655443 961498742 369774233 947301026 977591823 227180281 29782576 742543090 999825890 841395591 912434078 743410777 242742035 626986480 152600083 598161058 785251464 717546791 896079066 823407640 755625702 737698162 939593700 951844604 926198093 397722729 246823771 904012618 851046977 250796181 281090776 558011846 642851519 831687942 88052033 978741195 950262941 879841887 606619346 285144444 764433804 839061127 140442078 669282265 934025289 566696338 420575933 627203286 227731525 789287058 973514754 720203125 823890487 977017832 655055887 959517427 907547917 94812629 828484193 967351253 290467328 946159384 958009326 932642268 791141931 804910675 431446847 694858607 574721958 862206778 982682399 593371188 720609809 463361890 770995990 941721944 913446373 88033526 983877894 906267492 953254530 912581323 166090214 362385624 243101207 210595160 875144134 524622200 485467976 205079726 492820496 793084952 938328142 870287248 515722297 63202786 403077957 270911096 833939704 781609999 957209794 926386136 172219621 638915166 917183057 936072340 936664743 772088670 100579156 779172405 638049117 807170649 994355374 948570059 994421182 272765186 579100913 845346679 587177253 104232662 166888155 420775416 198789021 452964295 909975508 925171643 997591039 732482352 507022406 302913848 985597738 910685545 117172583 953993520 790647568 971937385 906391169 777431891 647841924 620311060 865495758 849085557 967317410 817811069 809388112 863476726 28999393 683539873 643562936 735792746 963350434 303211459 523068752 796354273 851808759 870881619 260617919 412179098 430693855 220428724 39125417 354921062 809380133 896481362 945320568 188517723 822864629 907113356 141024923 105686462 971382927 621771189 975321458 914022485 794227517 48068984 896604846 901944377 944848020 933443842 687212205 456763409 581774113 25885825 24481781 194476482 380150346 155678556 243084568 35347261 17553447 541284770 301686436 763645643 228649000 353084097 972348087 487752315 341980780 358726741 883978005 765470956 389340116 937346747 323769996 713776565 977668642 147968363 813436667 724073506 860274323 446654971 96387963 776865987 256563414 922735629 411536966 135921187 865903835 482058774 355731804 853077547 782051953 803664787 932130350 700272251 833377004 239245737 870580812 882661913 914764631 70239905 858017476 394607347 399283975 814876453 844359972 353716698 530022775 294652739 812715023 962961993 917752058 931185652 991927436 7998626 869858780 199122453 878067240 733445143 483824459 779272227 56503920 882748108 977996862 919922307 73118712 806386225 897999841 132468513 709626099 876007247 735570189 244409687 554664066 299920472 912352233 866856382 431908318 758865355 416859972 816696382 898274397 739167829 892027115 855522372 748320773 909743294 809123477 798513426 977569067 807987790 863899457 243858109 900351510 152251156 53787591 5193641 723482605 375766293 132712057 177638875 963656195 38172353 860156000 846903382 942383277 865974328 290374055 148617873 841371278 34012128 979935384 62762246 78244603 408809216 954896188 788456124 905954696 528488611 696760997 946725695 827205718 431521297 884795318 814161755 877017385 38308458 201349421 791814586 4749192 819821010 390345696 330925156 201742317 840246749 502304881 162401925 153344138 233590143 704983517 847673766 968995358 179488211 966791185 811911373 298987165 649545543 187421637 623829416 461987870 617640768 978176275 341176661 782555626 953614141 178804698 987788613 921732344 208908571 263290722 219658159 87249002 826953870 930810440 94732888 159828383 543994978 546081253 222230845 390562691 835393907 454595067 398029930 784257277 987844642 968023901 883731963 44639628 143761186 241366391 448966133 100957660 5547170 409378724 892972486 768361261 748151238 837937883 584302708 355264105 864471267 66951066 617090747 982673516 781204910 817126909 370349826 945915944 997657610 247512242 558268213 324339033 273773417 296278333 510029055 394081686 806728153 966489349 776116897 216561624 928410704 869540661 793623985 692390748 241826425 97231495 353159408 444128425 263778407 939006875 92190952 563866724 920849095 595002953 212699415 204148591 201570285 826261410 979169622 788743483 793256714 432175338 143778432 3896869 534628205 231935126 316347785 945160101 602800070 202206292 861560999 481002993 915207490 672278406 407085019 195775210 582032234 19224984 793761508 802753648 359641144 617770337 498306784 359121685 809151330 232941978 122557144 418530310 256441893 715702132 854514213 132996549 679137298 842098509 341731544 58686554 273370173 745574789 192274735 881188023 964991686 856127866 911338784 226786154 687018822 5139057 798993557 437298965 746357862 945307857 949125008 758266536 751301828 55867085 948050545 882826023 870696675 770996633 799961725 730893365 420147809 299907713 982640699 323010076 762104938 824108379 753427069 767980797 490946621 907482103 805635534 537846218 385419652 370710874 886609354 770325796 988282709 763805067 94984612 701741344 30746030 916306361 62385123 290305875 666711965 880066924 255888268 535592093 888287220 10254895 853830290 365633072 575529783 930729811 767163576 596539610 979039736 815917985 799663776 964671569 859429786 848251023 527122142 851679451 796171004 809203658 757172111 746388507 547421848 904003879 780482344 780361304 423241415 974990406 995835762 965968645 821632825 471001690 363331723 742257283 702148066 798173243 645613591 611968426 941636922 976431340 864826096 727890238 673032629 923617474 662184912 777704092 359224382 121872436 794544599 377031763 546110602 872212676 804997356 486456739 496854655 277871570 882334411 86260577 906207505 303071360 753914895 866081253 910011210 906708024 827473066 476598681 530993624 375468421 191713356 870113463 170499015 907678994 813163492 125020238 628058030 504750077 133636669 776160160 996630962 830468351 905120473 740216434 367098348 296525097 791255879 912025338 736476165 290498215 939875281 546987934 988797507 863077522 26738144 506243517 559444227 728228305 591133838 724515802 965192518 408508785 788789681 952836373 867973874 932235863 174323394 87182988 721571290 336019872 876091636 901740064 463498830 649114227 887134712 294081625 208820646 177391168 745469164 807122259 904443296 750869086 447332128 950694782 909942360 898288818 319222800 749317610 759671778 772156515 855818561 135703104 95671558 843220275 899116898 518905558 942931003 840694090 26044765 288133113 796120677 864133437 751167201 971693715 933904003 934330096 51535059 739892542 558234513 641055579 764542629 876381207 844710111 993890971 743785401 473973236 756521149 910735936 891942421 753743727 132513989 557620208 152143710 791761631 249500326 682883038 947903861 958620465 842604108 199223922 816938577 938530736 377819505 363453980 544770476 900347123 107486235 812652483 811081408 950667491 915746126 244160002 934755764 738782601 269637254 308068017 331700179 255337213 603062243 61972290 991571067 704694840 861968249 463782878 791210727 668975133 825590859 909473316 38123592 390547524 135251702 424598201 485258485 707681972 750510908 159626429 302717018 326476254 889554250 790208910 507509905 233872448 707613244 812868116 553543750 567996504 885553842 830940648 795775039 820372600 403245647 856924451 972772316 800812944 814613100 942455710 769452983 792503266 351093915 57328490 922687161 190843992 754404726 983865820 736186327 696419742 930098854 811511875 761526236 819550304 387970157 360736358 299012060 826064767 780910847 170184000 93708957 245488009 210812439 991549073 418191746 993570505 752348429 998755116 807963045 124219869 231006941 230310302 621418012 786065571 989632675 769168998 233520611 716100195 745783390 439282334 108662553 6565178 904927244 768668299 942802032 121689782 907134509 573950267 823318930 907253001 824285750 816614116 918397959 394832805 379054890 954474438 699424433 181591471 618453711 883937157 644686004 938527883 164002286 381169034 227102112 455130165 415048272 199385314 2089112 475742316 670166637 633273013 855224793 981313603 760924681 465067050 536258483 864198390 755472975 896336195 339669096 416853815 988278032 814971300 768683770 884521399 45804695 799899724 311290154 767125608 770284311 655150623 940459832 864764573 20342667 802936008 708826788 722648469 998184686 459974169 868251795 891495860 943504630 858902738 276607994 753388437 881637109 931772948 738828136 793330542 234979898 127204959 568593630 606974534 502501171 408882024 161829888 190545534 198029419 911900431 383121784 923206070 330783075 24334636 228245832 201843031 978555161 190746107 983170495 983487643 851270242 630456522 995011461 926898373 795568894 63579652 375944028 775038334 170744827 850580897 951777089 829742899 106083310 862980217 371184978 91063139 590170246 772763419 833103113 513182216 942032802 824662115 280360608 903296492 792217604 827889718 239150291 674186354 741303854 463330807 353931853 72263331 463731598 594508131 851708661 820235314 868365808 814539010 387450516 681816643 925128595 663823382 976629700 776007403 56234966 351530369 782357582 897248485 856903990 850504731 966276400 431515455 611422956 741991918 877635562 607338044 997608310 780296393 649065111 760633128 916867286 15996017 350528838 762599590 531687886 10919870 575113517 197314095 926899827 950317291 8922420 862955778 647891408 754571504 35732462 273206858 968320555 998798160 938184599 654174182 415411548 554235396 254579625 991278656 761714244 177029802 48783664 767335160 953700976 879971389 656761740 110200414 540421843 231975276 947084996 867169710 893296456 757908434 910159035 977200696 961125666 770012022 8242553 589418030 313136159 286058116 921010520 731266501 912153827 812883724 294422168 79593800 485440005 759043079 447830826 836149993 485570746 330604261 472158611 769245950 20300704 4665738 877239087 951873090 950314100 883266740 816301305 946119332 5448022 918140499 747180783 830278453 951140309 772406734 92371568 938117234 39429429 23587238 114893096 289992011 75335596 946504122 177697178 788931281 807073391 578476996 797769417 869578164 518971751 844875921 740474057 550689406 780714273 128141848 698738593 785032946 95062392 925148137 573855885 890923165 749400866 773471279 857185874 453608239 547585750 759602726 845803396 12818412 738707179 841168613 673414209 676837306 755141525 353818934 765647481 810059453 728426652 435522594 103005003 876096011 964237728 381040900 949740290 986840595 426731941 825776 315019411 318997481 789098909 340076504 694527407 187294551 892930270 787376635 288014234 929234720 607845300 868424939 673373492 799795731 225096051 407206240 906045503 258388647 571174841 797603634 942334994 426905740 612719024 944087230 873224630 467523741 916377695 369320829 529288377 926606126 523245962 436720527 86977527 973006463 408030544 257868392 122308179 353565151 881092306 771874603 211086529 732369308 730172436 525559436 386418092 923138689 967896386 328759649 509102 915986177 696530026 852374902 916887745 817039252 969882330 122363130 928635481 315656701 572442114 167242590 947737599 758296369 971932722 106774808 198146692 643906982 776072005 889739863 902207750 443302254 453391919 798959986 773633701 847708796 930229411 707913170 908959386 521961296 810627021 871658848 890785199 829959690 937957778 856865309 380487935 994744554 111855239 772972688 207670707 636655231 371264007 670307199 600493981 824043454 926387697 713474115 12630336 737738887 789542388 425365854 221177982 682709511 869547371 372544685 278622654 145440675 824619054 470316663 740472024 552638675 40143 818291059 572194699 706848214 916910861 275357165 302382241 328543890 961085022 780911388 656214632 751015262 955196597 611342658 56411461 545463806 856313779 846704131 163604595 7683697 897919149 669727946 186628885 771665583 909144320 581240504 60302485 417104955 950699475 88808261 438586002 713901139 219778515 143697752 988589258 455585805 417955455 751294027 521169532 57445585 753325947 115630605 90516033 738282637 186158798 438231571 593741998 807010152 789464918 828811928 746999801 977290768 53615673 848884307 935727743 765429402 600924698 405414952 834429552 852244663 779830495 173515262 316656468 292352591 451666415 208996128 826799429 158743532 984557000 996553105 905801457 908565178 540770019 913182338 913222071 786559248 251390120 649473929 972003186 332429859 446717177 198616378 997950842 769306003 753730223 720273175 768785768 655163822 986286535 419636553 102912188 809470541 275020707 858999037 536651760 137191861 429710185 170017978 11734290 23766555 339495206 64232341 796146420 874499048 578223323 694420823 904546671 789293386 796056141 945557266 939321891 628773821 293188406 226111567 897995150 987469458 548286483 393613988 894001610 762723562 737020247 554406832 775196203 63014624 881920155 559792916 215579217 308401246 844517186 764371905 449877628 418250646 997616679 737221585 700900120 121482132 270955837 371031577 513105732 634854382 922228798 318218314 122071584 589815065 834813369 993391344 163993743 928950445 13075027 985724428 790130136 915551896 307878271 743536082 766035251 53671063 880367123 524727900 994006867 930311971 739945043 770753276 910510310 68590368 990993419 697195195 953374103 641606245 260748982 914229473 261661777 941715021 923217947 838577332 848646551 829597262 487963851 852947242 140220100 774426055 145127506 335717015 893204529 4914260 155780986 630260904 531657639 50501124 972661144 144027230 771031176 118325772 576219170 76332170 638315701 243767120 828438071 662004781 930452656 208496111 441235129 998603219 848763057 976996826 268020562 156056257 486529236 788148008 989164053 933522758 755427185 697407962 874181853 661610524 880908790 747468325 309488246 29345550 995762569 696955244 730100997 257170040 780945898 892707313 931663131 208823250 393793474 749415071 42327732 957505258 828980541 326087315 627543657 548768139 763256492 875321706 426535978 321659550 996409030 394700732 754635391 100443402 319873046 254808264 760310500 167033490 249033981 700665617 619159848 47865968 748969881 10843303 791927187 487378227 921493405 897901282 721223885 840520952 993270474 896957349 968569708 113544885 556034560 942112696 447531435 789813858 654200931 54506754 171426170 39345225 419398998 975650967 925047768 846416779 407810884 953882344 540002844 889431925 950663389 642113122 872558325 254438402 623485908 607692911 966057132 652114999 264249578 546122835 974331827 758185853 838658656 24332732 423550853 919207846 441558474 637427047 851370309 843848277 89405596 737422893 815845752 656026265 453116437 350076999 953523482 955203283 879245954 672053260 775419411 798129543 291366376 687827940 947227993 587218407 767344911 307199606 900412217 346989072 894827637 482516167 16806042 700390660 115782998 784281274 791654088 317338014 856617329 409205583 419739262 837133516 123690782 840588862 834695780 657106411 685375884 935826687 286078281 675092333 918459227 595985045 417215965 951351615 72958582 976763628 62809299 448537257 910244629 895643868 283087702 330835360 647873994 535274320 797829607 832428937 599974416 387282376 605306232 235426317 203825706 793495435 44293984 196004960 100593268 276453767 345204393 951917401 63880395 868702896 285152462 892027768 179180980 815836264 969066876 353031124 692468795 767372879 895476492 592003050 524643851 310470038 535895015 980259799 750134409 409783517 537202960 82048424 819604919 55448748 670772945 869200293 832604064 725427900 122754497 477279575 820089861 737020247 265813908 833356151 831404936 851466703 917619090 811487665 678920674 940909337 629264792 994245919 963081956 382305664 746620771 466658685 180672463 857723861 743044802 793562121 252484373 894875512 399525523 434100160 634849654 755089892 714053186 953057952 824234160 838332229 928483802 219257597 848550208 841176511 834266491 862806000 400264101 869272229 348982312 286898622 54443571 113382912 857542514 928902207 844394225 841515674 711912740 859571335 35945450 731014046 813736054 286075802 967605307 276334294 200144656 794109517 930346650 697034670 282554837 112612386 913137650 188180168 220383997 267177935 35806536 594664397 631930477 411960062 845386595 737020247 760502669 773019454 880898669 631191877 715129731 739395830 878663718 270988242 542156285 255163903 958381939 897396332 690880264 7711806 252620679 971082703 809595867 342223626 626642955 782945503 811777965 264668794 514552438 614134442 587711103 866293599 805567765 713016781 893416976 710248566 886291037 245572108 900457072 857878685 300960956 785444924 782331713 758081113 252013805 506712856 622145862 812501191 30512794 684964368 759327743 42456444 371912871 743545635 880069576 963315137 747587944 882463986 848746076 500371798 171916979 345691583 920353966 511502494 842787469 744368643 968126495 420736671 976826775 700444085 968682870 73466127 570147529 983538868 31075415 939830537 293463628 170505287 213991330 930216741 450314713 427387494 230274335 745658225 915440299 427285911 159028547 741711571 597969793 278848836 931591707 158323354 466668219 638667708 10979653 532415980 952398819 448787508 313171168 819542616 526082435 524516673 998453984 465225043 773581071 759403748 844771184 375029232 747970741 748305189 847928656 841019834 443606412 620451954 793418992 946944026 334144751 953293999 788947195 864918128 954139815 720273885 812948701 221712287 919549050 503683181 958534156 782103379 334045836 935582921 326286557 738312030 835627433 882792575 926261842 822058666 544684640 805050098 947733810 448649526 908908431 925100134 715126176 719330319 792417327 585069843 746515474 778596826 603674468 82778401 802127407 811595228 859180961 854280588 955174659 713997819 558252627 932273260 39887335 417332519 911611051 660834255 959929514 754770096 139656936 987290527 656602943 349638417 170624141 458361252 917239751 902884870 883179369 919908451 803621808 483894252 615271377 667557113 37515711 194400689 59630035 12680613 902786721 210735787 828063047 321275338 303628615 867219524 735654260 274797312 780276821 223344138 917464611 289975876 936020049 928608904 300108069 749043210 478052995 935232391 548245222 415852394 609915515 844494354 934005558 622218103 813512694 753825180 893293339 669289960 63063843 515906325 827492403 71473345 821633010 485592566 751365644 875738358 417192806 842387828 213600782 922987335 947876499 940839465 849723309 803102631 98814847 814619148 845441238 804445395 808707224 909400738 512934587 796795492 165989285 2309657 58875923 852221940 156690774 134879147 839766574 944718022 758493471 757651811 816475792 800600370 490089465 974877509 148450885 98819930 783516862 863940170 919053942 669133498 805712961 104523141 909250730 994530329 999564670 938562273 430074758 151074605 247917702 869073572 88672994 632595869 834666010 766586299 337203950 791694272 817398854 949371057 550962614 19135458 127887151 939400951 215670761 194158439 952296565 828019394 976262016 881099547 393977478 590099642 312074215 504854117 265703148 631989427 737974399 912725458 109325256 603695051 961278020 797758531 477138692 79385895 609414319 833879903 685514694 315750190 182440716 498065932 818404868 808790746 851687791 44188086 909028716 831887741 669326579 910813023 479723982 830600795 346309476 854301797 59055434 285166527 636012051 395309000 673130583 913019372 874260346 646861503 315274356 829665652 766067936 512098477 835916143 463506411 882173754 748166256 357604198 797740348 114716037 992012794 578642145 603235468 846904054 811733200 833481130 747744763 843559756 299205606 874561847 271779265 163964278 301417273 754531694 636186123 895399112 982534194 27269203 882050572 422620788 523744946 957101787 482433033 846134713 606421906 348016335 482289713 788893393 774934072 862109068 671564481 660931862 742157542 932084392 886970023 538600092 532374348 885418331 104463087 594589999 758943974 353915583 838687787 907376494 859535603 769272943 932944288 687788603 545151534 568827974 621267352 844315232 761159945 867696187 590312698 851792167 743718576 917640863 744071778 930088939 217122381 741159938 592008579 647649085 838735420 941606415 372642349 877774344 915256638 745115181 273892426 539176815 235501949 997598420 945581949 664418355 767950800 864863983 887418583 941248940 567764907 979195653 97586961 614334239 104638914 237999835 836915251 927614153 185366087 554654967 981377530 694195449 207876740 257723506 757025100 703383803 827461707 45018232 248064546 980927919 263472466 832139078 67101869 61895275 280536405 862920610 228502975 753570400 870126603 110146018 907113093 742941722 924145571 871568178 709441386 930363997 564157490 376278529 783400076 211976310 658639661 743191594 849474496 833881360 995933250 446786936 743925038 891477175 973947414 838094378 865590645 775189568 927510183 197352290 747359769 627987321 665013011 832978229 883463379 922745054 988813159 775025350 551507434 743719433 288040317 784087915 836432816 434420103 622220690 989007953 834060914 966603485 942631044 969196980 35062029 26440371 643914879 973646595 553255391 899220093 835146129 18635705 815575605 258947262 70852823 693276919 722030415 835259187 69242203 68905129 704636334 372373215 737449659 156992890 836256953 607047991 692655327 117871029 985868333 23586601 107396445 867883728 836880471 205373500 801331792 121254985 568287487 759548864 908268043 983853896 417316459 487455406 462388974 768741788 855732996 155588735 512007694 347530905 54500381 824238986 295306133 855995702 427562298 888758970 966582562 834606984 949702106 769426032 841390215 241683606 21244402 948743125 821709570 10191786 991370503 564457095 376540885 162357380 770693210 950269028 947423368 788977321 906362989 135723423 444824769 363424100 967022340 175784029 641816377 262476614 315119430 562844082 797430562 844707183 437010197 817652273 980639055 527554257 189913244 306215016 933083720 891178131 976257060 245742158 281849604 988206268 924792278 257295948 458932532 965690640 757798456 33459111 789009602 516058977 765843288 630781431 813010020 195307120 83115869 781393442 186968976 282422978 996459684 833422632 225779541 938989897 50821799 883633097 737718108 162681043 896167542 594478810 893663705 146711761 505550982 954294577 669848668 232330389 982994823 871980719 71504735 854845141 192228173 872362176 748322863 109890483 449722251 279978129 779105368 7060311 144692141 893998905 973905204 486466073 343173418 931173557 155249189 917080192 954406470 250466505 555995468 889827257 922734626 514789516 935590795 994108878 954337122 338249732 818243441 629591753 361135323 971744917 941287401 4454187 933623408 791937353 851379310 827023184 147788945 842374578 829375146 815849762 774531784 748113441 988294993 355784847 670503445 293220379 795824997 360925761 517098700 2664707 462078050 896142583 967342428 851539924 942682441 954801586 130520370 768975983 999836054 754435396 863655482 33296213 610641356 610279593 860654429 830534076 229661489 769645991 737020247 927715694 126151414 46350702 933462759 862333589 882348049 646362644 739807937 850099328 695375198 12617064 364580828 543241157 986157462 273720375 459973568 753932422 807059419 936098483 219069931 849911260 862910733 907657918 244711319 758785481 234018858 51729102 479747091 711583768 445496343 700175466 140310636 824384147 900370827 372073483 876225981 990334613 277125226 333794428 523862069 856408135 396482411 846108044 990986349 850593121 93818290 750400816 878980201 526780604 57053480 806161476 746972535 885490941 965040386 985046945 380342020 706889642 160196226 20097059 942358303 999193578 545017797 972099011 800639137 169481143 211299836 211569283 525044154 70954485 741072431 845183857 946619450 745520500 951086417 511868297 545097575 447732026 971670713 249171227 353135028 428708258 411914763 535638653 961780741 732613073 497107190 142502773 394769064 610750293 685787391 765522780 308268458 530806131 855415960 700096771 884828795 89947957 456594715 217728990 702945218 814507502 324152499 875483233 221458055 953965795 177216911 233590893 929799345 506491618 202188638 775498923 724737229 975077870 48216082 383320584 438335685 112315983 392078339 139409044 675416997 498488745 978702154 932083133 672474540 440668666 972178879 519701723 878101736 777078344 172521591 883846394 820622199 224789035 981729 770465103 889749563 419542932 541840255 798619387 419266990 820947103 960818359 899612455 665682108 410906568 648354721 841231841 340827050 362074227 885611816 955446388 921773434 366500587 990509849 761879226 233608344 574575127 917566137 662884177 880580834 201278635 957806200 120962189 80951477 976733891 889133115 214189594 546539312 896012811 58166234 787225100 461657162 603181036 989117715 956479125 851194943 45998743 220593032 60355747 165880509 836875355 799140416 352237049 317056219 537445726 475992645 676094310 47990766 831076329 182076015 774415469 45356978 939204264 936038097 860980325 126839685 114979549 742086137 911989591 237245151 325379567 952132798 958982024 777780359 767160817 227824624 768645165 93290597 972584189 570979676 822423635 837776173 362687607 48373073 787958788 349463490 480760340 563261669 406143438 815396287 881577993 551531302 301850370 879960106 741105867 994131803 273332943 508224003 790031846 544486371 678742156 790699383 705750105 74318468 775145224 156089186 945919043 297671354 219839885 956073866 958073500 215991658 772344010 938970185 959779208 977961028 911616932 811024165 737281798 433025953 908207477 942958929 574035045 721778920 850262532 776142709 369952077 968874208 978100674 877843424 842395708 99190215 416114890 374266818 840161676 885496714 803826852 224440027 632144085 797128132 285274339 835569542 876220262 773717534 888463583 949814403 838603848 489058207 177359044 97290059 876232564 350847310 119644261 266723449 647004410 791092327 990586665 812470099 769581870 987923092 897824388 748668302 925773971 775828586 990334677 703522924 843164498 761302968 867778734 773466170 787282273 118177765 737359028 6889820 404937775 120695796 606496560 815598476 574294760 697913439 897051748 344385947 96832595 905778445 93960403 897557915 582289543 359175981 25270467 872569247 777398963 996649131 907293449 494313701 507533332 980925905 328554854 795400336 857413983 270102603 424649656 534156327 655710345 857658449 574774950 353072146 915029639 787379600 806685467 241513769 666970403 835230171 990881250 837393017 461216578 633381784 499229297 699209234 820168822 865478342 227400682 789529555 512519758 553926313 578217691 899262560 17051488 130838311 416481745 347920221 941788756 15462531 915383872 18582377 264540879 938289785 830922788 877564770 640392065 753304447 938336246 939983241 748661336 798331201 686182404 51320136 156455326 253018472 989725868 922288124 729189581 891400748 920278793 747103658 217491787 902704732 282787039 915751488 213670369 93476194 359635258 11781698 962137512 233950889 559957986 234446851 807365815 338192839 982104311 770557565 825117802 401237291 842465217 404174663 559809358 789463313 968841448 469598906 406586010 589540456 208075321 315152704 879639932 249791758 818129480 941120951 874145569 778048517 830615089 105279014 347725845 574098711 731163356 823191733 792332960 950056982 902691531 1272751 832255710 953654528 21641689 758249900 2295007 71503908 642920327 942478196 442379465 517386973 998841444 102872937 934675733 980473840 912880692 831816190 926941487 729974896 184280985 36054192 356166444 703429740 628135467 973789534 690438481 873609018 850426347 794405341 846047883 920264590 899703539 329588314 950854346 881354179 514244828 46083700 792730399 339017047 469137739 937374730 771333439 762017643 179766059 616612579 971064621 794824652 749948949 966179656 813011968 57884287 562159679 823969023 738272816 815824233 995442969 723667392 897866668 784568779 309255290 471588095 969288882 774140205 660224142 673989230 808162341 744160184 498227700 321661901 756175096 214303617 438124464 981728826 520580195 855507762 444214472 905449605 308911658 983739581 843309220 795681265 645438798 892474889 899789957 799594529 373642818 532367445 467725043 440260709 264073657 661009316 992621619 814222914 951953360 991763575 568821680 839007195 784425816 963294984 80159836 694758683 665317474 80828794 913279324 521723507 724295290 315836552 801482185 831392617 834012413 825040813 925158343 871546393 975640244 912846517 594889160 746310250 329031939 871027861 744552386 669424157 432056694 465809081 944877746 609269878 608715203 940807236 745700592 625136442 666772228 460799755 964104398 109217835 292119251 749749885 714149320 549643536 560526928 622805423 319458218 838578455 478026151 742988835 813279715 382547181 840530409 475678977 783044399 85290113 84231503 918866435 703541218 46369032 342362990 817949561 748160732 560744812 839011330 900337803 377693753 6398643 943668012 203337702 390850468 461841957 333351353 629750198 912131766 239907134 752551225 951343329 145545739 821406248 115965196 971221283 638916356 94259235 608511438 807758761 825370294 827782292 398732865 442924885 197257756 337192597 696703509 415854489 801587252 41522077 44084597 817471449 655719016 287583551 664285325 339863882 788328622 799885717 817627682 618519383 399480739 750579272 772269590 857508740 117451118 793051841 542130449 808189835 288113200 602629373 813017699 972764234 313873638 501637073 544308887 687164132 668240041 380231474 962965159 706781112 169646381 953574877 603890012 583608033 110271588 60257887 143157640 248231623 20626933 878618086 987362139 378372122 257435634 558516886 812598157 481324265 935670954 922310404 913287935 763874297 984407293 917686195 743843220 431526759 450411944 840063193 1181234 837278640 409501609 93031842 922097741 797212867 747809384 858305411 788142100 773976394 707548250 573292999 930721771 40011497 921061692 879173626 383805163 441323418 901728999 896267610 741632478 910873344 341124036 757852323 924056940 771242873 350658862 65479270 760998906 962801621 136996120 777098833 875218713 52276427 290176000 113578997 797281509 700473213 123134893 825998608 187577166 962297589 163511394 868369493 296394781 865625591 565882007 334525484 627533195 637549034 806275853 30548816 475717988 547265923 764163354 270150166 467938872 930378702 957545382 766110399 828043649 855839473 980379638 581378 389958353 527727970 346240554 873144636 451865768 834059640 328303200 279608392 818603064 423049340 782014314 918949599 642943421 311346182 382810364 495788678 937125805 690740336 2828791 14078111 472799146 778241599 388891302 842588226 673389065 630150629 358981625 834290781 933169432 276141888 654981795 60172198 955255835 699521977 896090766 787817253 782370317 601676459 829905023 713411876 184220999 41004045 872601969 898589020 832459828 976056059 796976459 910345528 675538893 667877831 942197564 825575989 626748652 219204283 693174465 618471442 924388214 845217670 774436442 306721212 982439971 859759005 827915563 885364758 843682267 498414959 849267875 364254536 921693507 798900021 962844898 110189832 417686926 928185573 838429607 747142302 665176218 737020247 289614742 908036298 498172825 762337733 862263562 607875522 880718223 823391406 78171405 875686593 731295730 583838736 856164679 352536328 176147844 984709924 853781367 295598459 572835748 349214280 952269289 569991628 374296193 924796340 715824667 368518484 551240688 631412189 868659473 370977368 940911431 758226357 491617761 357208779 925319706 370784113 705442237 787775681 328512102 213067957 228621918 141237523 895060882 926240056 878078873 839272361 853191709 954412740 846619600 284648359 943036151 948280870 339630011 514573585 827853587 716897182 885835536 907971284 507415096 812326477 545551369 843755113 252392827 502541892 577128203 367846466 751020943 119385840 845492237 571271686 265112319 272511026 971552488 910471147 65256292 815410891 542443698 430282065 107409461 621666296 973247196 66452558 952356299 14577591 451342249 473037107 833404138 524118676 928290720 25102036 812916721 527480392 367690254 292732377 343931280 928657295 867029660 273462009 862274675 691227451 373834158 126052261 966712458 276818329 150316018 364197197 872779413 79683845 649833309 975619141 795399087 874597303 775859830 285878489 947663103 899537543 109331968 107776139 824010174 943582219 710984342 938153121 798058701 926620952 273069826 843946687 766193326 748235376 491804132 913680920 78715363 620168473 24852696 914392659 568255301 788324505 856826501 892215056 883502430 243542305 965520626 877039293 15588122 718978010 932335583 829591736 410806679 540593037 127596874 46598379 775309272 553682519 783845153 956722404 976175729 900801049 790947131 636549118 244330751 879458126 535948519 968630834 38677872 390497473 945455973 160795534 231144278 824750449 823145651 240022225 863780262 925966375 31539685 109427280 621422842 844846823 522286263 864667527 246605971 462397550 892736587 352652110 168745925 756155888 942016698 425194147 962540696 266798244 984311215 782146071 748209285 876495109 250176657 179720139 878797270 507122040 794221579 764217163 498838760 730250303 125530931 354084554 970950519 579641193 653689127 856512881 623802874 439334935 944584245 136117612 630054812 678952262 802863571 530610547 692466778 579180610 219653345 765851575 238501501 9392906 265453251 853573822 617588097 203785178 979376874 954935692 165984416 306791896 356604709 691397773 964208220 703920773 988481860 248848214 295190179 984579640 911670514 712098277 114596148 868548493 158147478 779607635 893736039 104383454 439308378 864414132 715366335 896067278 871637203 31827105 738418319 757141366 746564238 367800841 118326897 967690832 654687642 912395368 895301958 882720839 78794118 819484432 490212660 590099072 648556843 910469162 94676311 50696484 352936879 762421526 80983416 952757222 362769361 503357506 577263019 203829780 492295092 575583900 831494545 46925910 896313796 220592165 779205710 433307647 828843971 893249499 438334144 783064206 675136989 126721025 804044732 113305369 298369022 801030550 83281063 29060024 96125592 779949507 837036872 121977550 503095566 789264601 854271923 868789781 698877454 804047714 479069457 526916762 244539330 742597973 764846052 57025820 123096018 519559503 552581605 744181463 488651299 976547861 283149124 934380467 767373958 732032751 265221435 527634038 66592234 222516092 759479028 924019388 489478760 971184506 946057193 931599232 861169394 838009365 917824772 654407846 239126626 942219691 430382049 720724378 410993667 647121566 949146221 598000590 817844630 859332358 180061209 365317869 519499942 467985029 916837892 88331108 809552104 828249748 845281791 47006608 819107129 330126640 844721558 142549677 975123390 988876694 639324478 901119135 892905383 892652190 933241623 968396921 868495159 421081843 165171307 760024322 611994370 571235979 845776320 583365211 689013871 796891083 210070685 140849738 866317204 300832553 860951274 744505812 370099602 472994619 361664337 849812325 443556411 261522272 745012335 245561079 855583385 815195097 370822370 119286534 782192315 815853186 368029859 644322782 836626080 905372732 668859900 310685759 117733155 790336522 740541496 854733532 398308386 258688424 760096060 87102966 907500688 988339026 228869025 539865017 284170690 407133670 145714405 876298333 236226137 620708806 479260159 600516998 940117610 572041661 922453764 553698362 579742265 220553168 763176170 777843875 968959588 334124797 53455686 800566020 867292892 327626452 287288648 751563810 718664 357263983 50993878 33048367 27027678 751412409 59354788 923785158 851561126 399035322 978245137 767528081 919776767 721084621 137061078 774288319 964570435 754067473 473206892 153367047 934820932 802651688 843116459 946364749 261621719 702843141 580756783 714771587 410717989 718535189 401195360 808983067 819732801 635129795 462431053 777737577 779779365 855885206 183033244 188777658 691282128 810670080 221793655 629590441 780760629 577668579 891693574 270569733 561834646 402673083 609719905 89852494 573139187 731541224 959842701 105904996 757530149 819283352 923664344 215152809 492569573 907462703 969480684 802764844 175037203 815634805 819196041 963405490 756852927 674549727 917964101 933662008 763492231 982133859 665688969 959040856 244408955 576778683 932299231 78805979 942564729 779725206 457877197 996357861 498916421 172135109 978360174 960786052 867879302 911057678 772993159 879041981 186719516 789465539 544822966 994774470 479463709 236340807 377670112 589471517 554352944 773127459 357389283 475176167 847273738 861973164 851965368 863032428 916999679 641755413 370200697 887553002 816424782 964934211 951706748 739271012 837494976 328769048 716974805 88154545 885965815 867383322 279344494 734072618 625457835 965368802 876218191 717167572 925171861 805562346 841723676 647588531 966568414 636487307 969244117 773703727 595383186 390754445 870184601 281100777 627502991 495104749 467397506 928531416 764103342 955793778 822348428 826657258 733681802 738233134 888697739 199059524 844334195 292405547 815481296 964381553 688463799 153800431 519525101 153444459 69578062 327870292 965731990 797461957 45328818 149450073 466041907 823710223 999310076 204617015 921507182 898703078 574643893 741544596 506590107 889909134 336241521 941353210 831746911 751594500 214811048 808815094 842945950 872727683 341175715 882869534 285035034 821198589 706329881 398513996 741129244 220139205 308611911 862115229 770271754 170554838 876252629 739247831 247872682 323728120 476903083 868749723 805776574 323592689 785098313 596152894 921015829 426523561 843756100 863414609 390670059 794612950 778020855 462226671 658118133 893364746 570392179 15723232 768610518 782112630 450980441 831471380 623747827 780544005 968996733 280266238 398607245 513835281 773116911 832958833 927848205 451041915 607116895 908960853 31142929 184790064 989175193 68501715 934814130 394636986 829803898 61102405 102149061 177751122 918613207 225370105 984208171 963002556 851059989 663393700 957845423 598899675 890033018 37043436 279993373 993601311 651618046 994098456 306473303 143878458 803356126 210767944 979795169 995851793 156125092 431855016 21179632 988534864 369834174 71613665 698535849 894721567 590570428 749106904 453410452 842589161 22314717 811269847 892309656 235351849 218021495 838946683 227934157 399240345 48747184 921173909 138818217 591498875 779023327 765946855 793598382 920679136 753005468 780837980 118927464 683760875 929138727 857075998 724913344 727463715 54945597 179700861 977896632 824963651 926922182 948267111 97987897 937688614 633131014 890857277 787739666 836108326 666588045 931796930 70256435 334863277 872080862 686574397 567232116 930181905 582292805 828106363 868651130 931336605 589318359 818418245 768310314 306702994 936418020 705946374 982594759 360140459 742482614 261817115 708491846 885747210 539811961 631328272 726262632 744856874 59536829 996549205 593895992 21979822 490861325 494682890 765285142 960214633 959353993 513045314 354827753 976880410 898762125 847595716 572614191 205100866 998768060 922753251 827327524 227999517 582033160 857480110 466994105 723799900 812634153 891128213 872820141 180218700 256503955 797332476 977955439 488974250 900239148 197168343 408847627 894953760 345897230 900302228 869589861 486884768 837991191 932986289 969375429 527615639 922978930 418378015 238437152 793718721 917681064 862235042 964391031 807727621 860459266 811396428 727360519 887621244 279476490 301409349 127307433 567994339 773432114 764584533 316327494 760619289 966589442 810299758 244511035 757307496 396070378 332402875 985951520 835061278 36317209 303258073 687025718 867993341 517196374 930257273 656484287 553312341 835556270 892600660 900678333 864429165 680391510 598969678 912182340 725104392 732417852 999753540 612324331 123821530 883640241 178826821 487024494 662698015 915960866 825780644 869925356 366311362 820219387 763116837 954441141 924291219 371662041 638148511 286167795 285304140 748928456 792550449 929422836 988026427 785885282 849498583 823568828 109030112 428204104 12868147 852776942 838880560 601765534 88919281 620467816 190770293 758630717 962489663 22006824 905082193 687703253 158548493 907720361 845130674 32940424 127330388 248583008 137053492 775794329 887241793 966226398 980400394 893336754 547053819 454128419 613196500 741705165 778252673 764238222 215654899 845354462 435313394 795888381 994923620 640647813 996351373 27792530 768198084 296838787 478329827 291760954 740092051 724640145 874548249 445911840 937639416 888746238 467887770 911019700 774452564 645969102 308400758 95158649 186815227 3068434 808754141 906625562 56750017 605078548 492711337 844902133 752295109 942506400 78648253 678736783 967769821 792037095 629568367 774255818 785394623 318374651 327723461 345509191 750070027 911722457 933733196 932155364 75578431 58639638 793760348 671621850 833885895 115827801 572500538 930225931 262033910 820240229 694027861 998232935 676041611 899827164 907530884 635674041 189981774 138483494 327567756 846433272 778232891 853904635 586992098 75863752 939971940 759273239 778566202 568456840 833982513 404398759 183535922 770666417 493406283 832233068 242305657 790068241 789175365 372360380 671291847 789056080 773889259 825105355 767751702 846102939 769751914 213677999 558773281 773128528 814126918 913080556 569303449 612472949 106931244 821596870 863343562 860750334 796185877 28445053 673909072 845782455 839847693 420161202 771821400 767996931 783616441 945756489 883760018 961128497 850294722 750971571 804749775 928168075 573742686 196005596 115723750 923448348 116892135 324769462 558273755 919642615 544978329 756913473 225254685 923138659 321127368 983576940 139540704 890062282 903287089 774727307 293931807 830862832 35800003 947533281 86437232 826365845 483504061 77620985 196728484 581007234 35534429 396036422 196468016 580755600 366090942 925765016 911208148 301154688 960536743 975024384 833161097 964622822 977352869 481444493 503084635 790422490 770526324 752392851 837993497 49988730 562835878 979538937 800172978 195345282 944391271 812460736 820187358 275814472 356054107 169138254 983457233 959260488 822017759 748997017 772132639 711383529 884006631 130483154 963749755 85578238 489060294 221377326 862615487 63001228 937033763 177575274 945350123 31703017 933145727 881106380 776568594 159329466 532122488 563217958 369394771 642644004 571288657 964664802 924761724 583068154 32875463 813466320 949019668 905962268 596062498 298383778 318281700 817919882 849395686 446051810 204482639 949688642 653535586 509252016 744418753 699836943 146041785 782708680 706208909 438702402 820570162 77266140 940061189 759371888 801631104 930276444 896575330 435086402 463243224 779297847 238995289 876065113 751066413 970681830 629390346 270057155 929091344 802592563 838934687 92831145 755503533 836947648 871091322 780871557 879503439 914338039 965560347 381989569 41645505 781053870 390703680 593522493 860684826 962430691 477947576 872544445 80470762 962328546 50039876 830188051 114247480 344177112 441365561 802308993 987432650 696779756 682878114 835012218 872067934 761086081 817315400 859126617 178751312 852562110 900257398 674495382 855952704 798484122 787103021 785122005 978619547 927329684 994071851 921800880 779478187 800279890 786708621 845697345 248509415 686376995 617176699 329311370 901755536 709241361 947035014 759909082 892132679 817263754 916419985 770932951 816616818 636986802 362257820 774534426 323220936 103754500 465522018 763932028 819539323 542943052 908356109 847662776 786621428 778900230 998886542 130583480 43991513 633410505 563738206 856754853 167409284 879650429 916090315 305606312 538722436 57247204 216827407 186918195 905048041 447656757 842036948 734240367 450177688 141516908 893070174 925123576 67401543 413174830 478517169 754958350 814692874 621746055 223702060 379696687 933414482 320830089 184194027 314277796 317071071 196300339 316286118 211669611 859386436 960318669 46420582 71038953 781586753 897901088 911281851 737020247 808084814 255113458 720102640 877486535 961140688 776041332 662043328 793252700 645199766 682776307 513965312 403059295 856289025 242270516 40311992 211157876 699649710 2683702 291817095 958524164 814977788 89808808 643877715 862751354 561971615 916286288 481040972 777377227 986438522 122238631 785422881 261137102 848593529 194716546 981870611 155636299 779940824 206096044 699508979 252173135 936267578 139712328 985022601 903897113 126940471 279787503 910117198 893817693 908358077 981156400 980039498 707507444 411829946 787694479 124058624 807208415 533144115 980840904 412448965 784036117 742661003 979900854 337947390 151200412 953911187 935216178 266577269 690247511 979642716 702643443 860535145 648362840 194357441 456412203 869810491 286584967 185943636 843291385 889893850 994467880 218168195 915345499 340443210 788768249 59840189 994490680 983601545 435913026 769424368 317300232 264104716 981087436 899401777 346948910 648388482 850135566 904241734 821549313 360802562 722715991 745065531 925008859 332566694 994456798 928452879 839275747 350215479 852042258 799058433 602402530 110300074 963351310 750708105 753292434 778823403 951613062 160280494 891520490 638362359 641923955 607259645 18242550 986580720 967443050 717292790 995901159 576136479 369284277 198678473 903140074 326118948 401996770 460006909 22450232 51253389 877376608 946034988 202965033 988047682 849803710 978663383 693223753 857678989 774596786 273263428 314651133 951009917 862565431 658933512 641701243 792727582 497723892 890878412 855538201 300202106 861664010 757694344 439200072 118534993 904309786 401619532 762846933 446732895 363343589 595386156 932002851 559591614 314960682 898318089 520856046 712128942 809789789 249506210 984258891 559339537 997964894 430743346 825111824 898055841 380139351 702753567 648005935 949921676 959216501 540300080 894520231 971165581 872593639 982872962 684143379 894532485 652920345 663576424 78978031 667634909 205561935 763966257 994925659 541529248 780146495 740867511 903140229 806021866 995260441 722435440 346385186 669696723 910946567 851552083 887520574 653420165 811408910 773869108 852926776 359257924 985846176 837703935 603894374 956423579 746997781 964047327 316057010 813824552 702802183 660388966 535820702 112883146 815484542 990413755 523053881 465952059 927886231 768077205 282395998 596237267 544336000 326145125 253475209 913108315 17535935 460842306 765915746 894028698 846657050 794845871 587953098 602101216 432567533 883517501 206711865 918770233 952266025 525532724 887261433 989597608 395449780 328656682 758572187 698388476 997275738 809106914 19039075 908264079 934947248 867841561 35685297 367255739 840442839 584130817 732315507 986722272 971010442 759850202 961912847 591267471 799260934 818072018 664783681 145719972 971077613 82664390 317967109 161000822 249848698 801275972 30537814 965066285 294084290 106395971 724750188 609556496 847854295 120015954 94086465 548998481 380018454 385397965 833923123 811119543 790152203 843236037 548595388 191032078 806790175 911826627 405629841 891408427 306616481 927322982 224161586 896381607 747515727 525143530 102105064 660214177 380305723 504947601 766187206 459948815 877872933 933573046 842552165 962851939 797903105 842561852 905598990 820073841 832018960 901407867 602878420 972612382 920541451 73300514 824308429 44662671 983400321 940559525 642854508 721837978 232561392 785280619 49785406 864369567 352544946 886956093 153127054 824494232 674986982 269202840 337192959 233389662 650890076 792249671 937507106 277383953 329716058 36318123 907335196 812082058 824995606 927220266 926365006 774323258 951798146 238799865 561976638 481869772 755678195 782335831 966142785 237428244 741369410 995894934 858200732 390636060 814825598 987684717 879856588 933901271 624724772 873722194 214071306 97877635 391202981 890832298 750995696 484478076 763842243 577141914 134091993 172523710 87761879 880823203 48232729 430991628 772882075 91300222 764943621 590653808 543210673 720572124 749205745 28981765 194278682 571204838 925930410 848946941 869014819 349948591 804104070 972982673 965740375 916898019 767712595 934206889 358384015 360304774 698116817 227825271 74926178 801599776 829848193 984556936 51869494 925045321 677142233 647688368 872948787 607152452 834806641 919260461 756448207 968202387 398420555 631482562 531627248 609109258 548677696 935594418 659317033 931142690 888134307 700335230 469601033 273111951 785563926 569134566 836300527 720277694 274488588 234021524 535608509 101630380 819724289 277124339 912372894 295815086 151156469 871502547 742463576 570852665 761467320 969514430 772124651 718639787 251623092 971162474 489176561 588255166 521403367 319222520 531014437 303188414 907983091 942862825 487499405 892897342 59460134 680906064 489457705 626903072 654510272 743847388 496739799 921651351 209189250 699109532 747127140 227462572 105709784 120073360 609951082 909452048 32935185 333563782 953155160 253944123 523923997 302351886 185977635 959884672 586129935 870159059 832991166 965851218 789440039 220657596 822558041 789580649 792756947 829166264 994103525 558123274 873886481 944607549 653435510 773516967 994062508 950752116 432760024 901859691 729534005 984276624 580166251 346156163 509615694 533300712 840201286 966072721 850446329 901791246 328301931 330583117 821576670 75047393 793356682 340977619 270830644 431220031 875336049 898412650 908962866 397784796 88158571 728678999 724632394 876707995 250004300 286667798 292176158 958581823 232078923 776942810 398556543 926950722 857768048 665372190 201175823 296891904 406039825 18334939 367741046 982468403 331570393 55568717 213359154 883967724 762623605 247832050 860195347 161892823 825091045 163414474 393365656 254532397 941213976 991194297 786913649 203257919 226969348 841140173 842689028 29529142 826348074 811243211 576881793 820248470 934116193 331789274 885506286 622419497 724034674 308360874 831507325 427588197 673900288 34104970 738323365 746240472 969849926 236847727 294056522 117117737 127865880 551126672 3772119 665183390 992157495 79004271 595722552 805353424 674034594 903494011 806410853 490565905 440133604 364900665 992338136 736079813 863900185 661861898 887700332 279931856 762767391 471746998 880827235 359695928 742588062 396256234 579471853 847289453 516144185 787130220 771265735 60529179 828478536 21231176 879311898 30375995 615702749 996636714 861027684 907223523 881649097 778438102 917036132 768542666 725456200 814209773 277721925 927686453 536491156 98839947 410830996 895803838 997464056 789859053 814772595 300553115 505421000 932954914 977528176 441183883 943871190 858715519 596729081 786845073 416856223 844526369 973046036 794108033 918894407 319819493 904681983 887934466 838187264 883097018 866943791 814248682 605431468 851182144 36142497 908681683 997961103 865136736 457216497 206344666 552198637 517650629 844658071 958638751 852003784 8961619 950274827 335729509 686598127 268269424 721881328 999063287 387030165 810437164 82028145 769335457 748916304 114684913 423559839 122105727 992597832 949559174 55507993 177029846 508762081 826428198 162780781 65793813 846761280 262998924 788087597 957836910 86156103 198334744 819586602 573855315 4399240 924148873 871048920 806011838 15845184 350309780 990250472 907780778 590480124 914065733 416289726 444224800 687173275 78608448 265992062 758048268 552903723 309056449 514169627 772690556 752526693 832207674 449882805 838584649 860755788 74752372 785346566 350717491 868136383 935769354 831659634 868409752 800194300 887241650 586734298 884364414 499322024 173309710 366005998 966617263 440842125 164393852 794136410 77862684 880216239 886333079 776304850 940720516 583307428 990591430 460215495 152411460 796919031 951332944 928764219 648433396 6490548 72251433 19736753 151162887 776453956 165230944 6858134 801302711 810439557 460273856 162125638 918398025 387462412 874887094 26755812 618332079 916736422 785369460 951870971 220966300 594002359 761668143 999092386 456628039 953810985 405530501 600208591 923879974 221515118 429727509 761687938 280252892 961886319 758349571 871626013 335420448 388316117 706843264 906846175 892859442 707587663 201242240 218825983 937396327 795704531 153854668 959943456 771721366 778226092 782603413 796261391 749813057 816694154 754259901 290768753 618518402 67686644 347584092 789226807 876420721 808739789 400110078 217202737 161471072 545956890 947716719 737020247 771514352 997085862 898526678 962937851 814696833 884266588 861557430 952813178 537417057 522551327 296933453 369285584 938029720 33192433 860784344 43825527 741495206 892335577 274256645 398672137 754425207 596938920 52352450 907346887 269851657 941023655 407902135 592053418 780056493 591228121 782571818 830230625 789650592 540248158 828605567 161141134 945044453 930466762 459312061 528612863 100394842 566528542 789513987 897294741 78095685 46818021 841493232 894356304 83381518 473864943 890202518 43465152 589359251 112496431 918167389 545020389 214254789 174471011 148729755 726191309 68717285 847058306 329123250 37392899 812334960 334199859 778076252 792744064 166436501 211988505 385707772 341879337 729366719 636608892 793673871 884321909 732957018 746754666 488054413 516567953 862894464 8071928 959736056 880429513 837075734 172555084 912850580 499549221 839776940 192806344 162764208 376591844 770431518 290125112 132508828 258757092 297483774 657029590 888762861 813005127 279208322 655773645 301101478 239529483 362188944 353529840 796030316 93352195 617400810 66521738 47899486 311462802 633308515 731445892 199510533 909050808 934369645 701371873 941289689 869935181 633101824 117931146 658119490 260601973 977301663 388753945 950175961 665528309 870356846 946235643 763858176 185427010 952592785 627511606 862166657 947995118 872529440 493948004 324931536 841921044 724082008 165205612 234386084 809657681 953470260 392252180 135425031 305372722 210310334 786363210 720003373 778241949 853198502 138911827 785159372 800627126 75505296 121543384 932900065 455781968 939977957 310249096 275508860 860219099 974061908 55790218 638423714 896802266 165637541 84652440 27628900 939776841 385196254 100055444 570671545 806691287 693267193 359825104 915654233 864491151 152489930 896431843 421476744 889795655 727605404 731298243 474245033 913522129 778663873 958091842 741195578 391660225 783999866 577685106 790513479 797353633 608497432 775080552 697063856 458595236 736186193 744162212 81891191 946764222 767876553 815399515 57022307 424851092 957970853 877561294 540547462 880722557 710291573 923654266 944762095 651699417 698964243 976587849 929886240 986976480 706215968 742338323 638300455 475219328 947180187 991139412 762851162 883849213 938751648 987991788 166023141 177591000 796030660 904979909 712573262 667159535 245267227 256621642 754924061 798811821 499565391 844340945 890486675 189012428 158015288 191127760 508750493 596641334 781394761 310000687 734064020 774370422 233585012 252293475 858739990 547906956 593603920 540054139 553800074 879375003 508733330 910648360 131411721 839961681 420936070 259932674 928672392 870466530 828347113 695313176 21013489 758564329 827140431 712662975 988422818 786515735 845663401 332431943 980202337 366992464 861173167 468303168 984950670 611651144 531273618 383946734 827127320 37992362 204730788 259451672 659777145 759216663 952372187 814954225 276522523 618168623 261017275 938817845 597103292 712380813 870709472 761194013 366103317 173445280 586824186 369965694 584103500 588537245 262472577 389134129 664115489 752928040 305968194 944156952 712778065 993207632 906218230 423182799 900452820 938374877 516413205 929583200 774770431 401240304 555374889 170632729 530661034 626740701 453781633 762557151 153007918 26647535 590287579 141734607 556075610 53624472 6329652 899386394 397199132 971538582 789120040 909187961 967411552 802451937 456814572 757734492 878939914 809199875 600189162 491511044 55740637 785015857 346550509 657270359 785798404 547983877 784487837 238685868 975666890 284324277 851453807 252195332 527384820 153469810 261134030 434140259 76632678 946774910 817179383 461543747 880237863 280637906 67194470 196489423 860633260 641721163 846034359 948254774 709479955 988130696 786006744 739848275 636393674 919384913 728224436 999896434 167574200 196410973 795569578 810035343 806465022 961919319 612639949 521642290 103496917 396883579 811347321 692346967 900612432 586055520 967092750 935422134 64866853 440217108 949661917 657920109 913679505 889239498 818334798 424881457 355616172 791656257 983831164 757734971 693653115 762827484 899920709 213525376 863138528 615041698 618103162 894943444 627035555 907332493 990511984 979991128 596314123 999212026 893893487 892717554 597329746 426207158 432180136 349878752 189938180 739666274 626669619 884809588 752199217 878014388 984274879 971703430 971236903 685372176 707700205 971307625 872633168 746477886 803652316 373905462 76659567 848129851 761326176 799359362 589962485 409426293 979259998 706340476 986720219 14449264 367837194 885051288 78633854 430327787 936586077 117141117 908693063 795787853 588994516 921386267 825911731 592325691 920988212 273109394 873664607 750062710 743153101 158564501 73342967 754931779 603494350 701870361 48655029 860457528 857862795 835772306 909970222 821752391 928338897 811744860 782910524 570388813 193539223 784791443 823356140 986348415 566050722 351227753 655639949 202327765 840735957 984561397 872937206 802349754 305848792 628495770 29737199 886717367 804608955 974510701 995281362 214342940 389136812 874520971 994675349 980288121 230117360 199966395 638896987 318636414 301259104 521173879 511409343 940313972 996200663 291636027 844293372 841361586 159998666 846051927 874715540 848408458 862854448 851710141 624930535 583777336 887405090 836731805 768869049 768847492 927803049 964977151 503822479 927104651 807741146 463096692 664287168 901567502 410469900 846334085 503799864 975908939 218179643 450912276 878890451 276749318 664706132 30228260 947116408 933011601 929322541 982061353 860921076 247088075 740771595 598160633 777732157 891017557 653771210 770186502 45507614 636614927 993952296 362987817 562830894 460401197 904732471 313179745 987324381 209170834 880737945 781227084 649066711 827060279 151962818 803965688 677864046 618965277 547512377 555889764 315161088 205754767 312695659 20188975 503348227 299336739 781827771 492338002 922434411 771841626 751481782 698241469 233291517 81726535 769859676 398142119 486329420 830211534 977218363 799768772 553208505 744529969 677838824 47142734 777712200 737825122 736889683 969905306 468088685 771442729 307583259 972029964 649563322 823068061 384267588 270572872 738136160 148729030 846641008 642084938 177005653 864875358 114607739 935700629 209226652 813606947 530703235 407179367 498810310 862225495 356677783 280939532 910807624 396043204 482374613 992316001 504540693 232427894 882399018 195350563 823770995 642960142 886362135 865426057 951296078 471218342 260834075 801417841 272218598 960181056 65545899 806334974 786419905 314392091 591351495 477634212 994843296 720548203 181759257 977018695 308823773 280503462 983578705 626256604 915684012 773801625 790319106 784746644 750796818 961066473 861908479 469288921 983840495 830862313 908404391 827057973 318533300 170113962 735584325 924546555 857529594 157445042 914739423 769132859 147056702 750955132 755296261 721768730 398544125 624956276 156349121 909981103 753585290 399378347 924892653 955157514 79551509 933993242 586551371 771683198 889335070 912311131 755142110 367069624 819946888 234157315 749243438 192266888 348683207 822881396 952794558 28690853 729520365 196318157 859990497 783609263 924615480 999633763 165933957 862459992 265085606 182073584 890593555 406344181 818018040 701236349 837920945 793369509 936212750 744879989 353790148 733232111 236613074 915055988 803249618 527645648 512170516 860064589 26100901 765336328 350777521 564069022 926821646 425739531 813206657 829846847 921019851 332170348 680008791 917464131 896463415 235245682 734039779 86407876 42742415 82075542 903912749 951613588 850350477 986726411 188370589 870125907 563760862 894795196 817739001 78057117 816480773 799370735 170005945 228250028 831118985 882568659 924106632 295440340 872768174 945491907 700396033 968940645 436180601 893353263 596098612 738691516 646828902 361761789 786772733 170635204 945798094 144159912 841378158 936737803 345798213 114501854 538557423 778467976 420271156 891102787 776743555 838454576 258459601 384130698 989196619 908057790 624561247 367250228 402645885 884057656 629828266 883864340 201475192 893340270 744118527 498312894 859332296 447917008 418655095 768064350 749127099 802398547 391920814 996697599 973363842 883244121 988442754 857273980 856786284 159667074 897312770 271960099 986278425 925286664 82041164 586163666 743539896 876005853 738802343 994847816 883470726 813936598 853035059 355917736 883977984 860352915 434092482 389244617 766552960 53613442 743840076 434739081 142573658 835687961 778682798 879375087 62519776 273987549 717016056 861902204 944598279 922630573 746435130 623784688 290595259 458687577 740306684 392734172 839259889 744743882 396148630 987501239 916600766 433963158 277429823 872463609 250039851 265226908 433447590 570845138 718745459 953897811 651173936 434341978 527737706 345928279 816986431 994398712 746739103 400808502 681113231 908882260 959269683 763396951 154178551 902073526 61472751 915889067 737937925 530134109 280499965 343401491 938079923 546528441 149429532 833284082 556838329 240694566 133284717 456299042 960697151 243688473 926415034 767814874 939944262 387199318 620452771 155787639 380888361 466819622 475687929 181917970 82154040 882241802 742050380 576984395 117492273 3777387 2042158 924350007 631694264 223673900 375277951 831993814 506184113 356295872 739225036 640450764 303134041 670111633 932222353 224165044 691625638 17847721 617511753 257273037 864379864 289655464 8284125 963638649 624684919 279209272 52109446 539905873 494597577 735532690 547621926 455764249 26148522 664876110 512587767 984989265 868301473 535794152 853357018 691283814 856735454 426192936 867264939 581324001 738755667 58753566 194503921 987506079 430353342 926487728 703731854 929953972 809884598 274763759 710613133 942993614 814809366 709143165 14469137 712322772 837091087 748686707 699755180 257347876 956455777 999097834 394426500 254055147 607008642 710670121 475298610 414945252 81866917 576752010 874549795 563168644 666401759 762241202 36223354 111265689 111822389 625011856 347619717 94118173 862603453 934373465 860216180 817180686 669036865 78416563 701251420 785246950 961510842 921942449 786840137 916787209 69478649 318608902 793091616 946012961 180385941 883468533 973388696 259022549 830182249 303237616 454652569 484444839 663929366 834975548 903422335 815079072 943572020 200723628 577633670 565975820 319571700 948382523 829472674 775574352 370315792 303093743 320380621 764215514 891986291 751429008 602051359 851809712 274991072 603724601 593112961 650992043 584903172 134403685 772794497 132917726 803780593 913341225 827740740 726823722 784516460 92956955 4380592 829665943 936454383 988306855 417442279 527282252 573825809 932976950 496466774 879619726 222808392 162742358 936733851 222073276 269158391 976159272 745233608 559032595 196690551 818172392 844421690 767322600 922859288 913184891 227745450 883360644 700762656 134086472 779023780 345357552 850688073 599925091 978856904 859616415 871816802 527424308 748709980 852873975 264235748 863654213 344063216 907892576 953239564 963595534 36642758 93104437 554432783 182390603 817131715 463359322 842345498 137418326 585751489 868212389 289312732 574631140 667020793 374663397 223950910 791354306 353758953 296748938 369596018 868925221 819100186 974950330 576671594 934202320 93109172 545951188 804798427 988080212 733475976 301436982 974823791 227444789 788080264 787420350 374577686 209475015 982660546 989905350 833225026 969554264 608472259 339558047 89339036 794693721 562109209 145071123 770374381 996308152 786210451 738824017 760656615 765423227 48490610 739855238 858051348 32680964 983937953 466668293 125663644 475943525 785461792 759866605 161669337 838455514 70506948 992477251 485811982 995075057 992157721 991090783 28525095 988653135 930380328 995551132 765083833 961980254 779794682 222001748 870884661 914607905 322935614 798340767 775575093 295926380 876080339 888450606 23985777 745772315 775696841 776646548 87860355 978806827 494566395 821052257 182926516 707371537 912168680 888695082 906207982 746669423 408033562 826709183 878842340 743995019 948336177 6734808 984408401 832883362 817801824 890801627 208858776 855045255 523276885 161153008 745267712 928372451 947738662 272248729 481085356 920707635 728433074 973929167 792796480 970651946 915823484 947886699 663615078 893757389 833322989 974658042 928393929 739015883 903172293 998165298 750293279 339018904 777471349 977260555 822067739 355482364 465651340 642992601 806275750 335231184 891421635 749472686 987538340 902762452 697186611 45900437 869130577 922667268 924783400 246488722 903683326 133910695 847902696 756792847 143756428 555091135 877410400 734487216 712422320 845293604 351451767 988191078 931462263 268685552 401101114 482503430 737020247 953006087 871243311 603442962 816429041 934942999 320915592 598703647 628685483 741599167 508979139 437751955 107942660 379886482 698693601 925869893 653601638 969208052 772331708 935217480 754304332 153940697 340894613 364977721 3982809 646549850 614879249 607998357 940843618 432079387 273109421 39325996 763853519 429928649 848324505 518853093 544245339 793605018 856448003 889212158 360973814 782390754 646818423 863061620 953285889 606007674 908942071 12097802 826792167 821431180 786215738 804139018 527213506 515151985 746656555 906432650 985420978 365561219 644770586 750459301 458223055 826598149 419505546 946225008 737020247 794525643 788158077 382593988 832228320 206922998 992024230 762011896 890056365 947552805 410665019 51214031 804339160 975990855 169100012 761965444 792450989 739827490 650124904 781053808 150625554 791205178 840426527 931593993 684585059 87885519 771513353 717889105 573869108 63346373 857558808 60385140 949607286 949674841 311443473 149460379 357803183 952357976 871370078 192861961 74614121 933184925 877383895 118887932 749879383 456548421 743005612 956432125 247973143 970246662 901093584 237295446 394341530 240817745 266519952 427995424 634152949 718722333 767003588 924909965 764492241 599841194 988352524 877389461 30706194 19663190 42837770 127222139 595368043 325348850 263214843 863557628 584339642 794802501 416752385 994956353 766702514 911136214 114384275 565649492 283402920 995883434 1058696 970534944 54486715 882507653 934236894 737567782 367704663 845996201 945818365 865695470 885757513 854310618 963287373 900948729 915429505 790172350 945573806 422442307 948945543 799677819 739286634 789553723 963562300 828447259 849956470 959587444 742983724 924496696 867777988 199920542 753735471 960755290 321260261 298637290 11058266 396076492 785279061 496333110 962418476 990829455 921205755 943323579 975322619 268549992 766698000 355535920 47714362 382567029 688350877 4802440 817797262 621243405 692039611 247682163 926623435 877008471 250321603 933978807 634735995 111378386 899016828 39920333 601487262 852925515 120836354 917416699 153830229 356588445 858527732 560792698 807359799 734477619 466743704 900668967 106637110 747045521 927763038 636621250 795698109 937576247 110776898 829557717 555866140 306681616 873257485 892576662 892262116 209775691 857336038 848361498 983499780 36314566 971794729 905268078 454338192 812736296 770894609 939468978 944934091 294855452 681197505 872991664 133213055 194730696 522756822 812509946 919941827 886043115 4515518 715183129 44565564 767468816 440044632 418357565 480978621 812226320 227239813 700298654 266927169 942043931 785506551 934900618 383586043 999023675 131983977 370291771 897085712 932974470 898228761 892252343 531063557 936112713 879308146 186214941 814348112 899957614 915671724 470229590 529704298 231505972 950634476 202971934 606044148 914651986 800125619 165718037 234887646 434762461 940570801 841858776 741231303 145083641 769726049 33476058 798530728 641974675 864741312 203068397 798699726 808553351 558310252 202302714 642999335 983420730 883836570 958610219 340760321 868826988 22875384 304002920 896163261 869459374 927089453 538861965 920865688 986456113 982805553 972492602 944291206 57243202 959013058 800531309 753134159 761841159 813510595 307541968 89110643 911059723 997716237 956212159 601030088 185598333 902581270 793648986 135929551 755438680 997841316 189199898 771242045 834978791 776660713 433774463 942982605 922460603 384757752 529287849 460066660 834613430 43394371 61442322 359454934 541402098 179072639 523004157 293985934 907000787 740780074 386453260 910514416 369978938 988351100 508083813 997055509 990246363 27942487 324969858 924048829 172708624 36320544 937570723 343996584 848555918 899041139 915984290 859927621 646047512 853050282 654904268 138279546 903969989 844759085 686919589 734220118 837103901 659865744 686899106 464889244 852168261 475464733 634643723 952544189 572677313 798337868 829495646 459408651 884099906 908248463 954419172 966137340 361239485 861258350 309805362 819583184 151735256 408490055 887313580 847250789 646658344 749739680 831397066 250456189 746639001 831109977 842092340 188268667 776801543 896089745 877777995 774402838 3390136 900910150 523427934 111875044 469777084 854628511 664023507 410180313 627693748 887889003 620805557 485050282 833972409 237960281 551260342 935991923 203540160 780293917 199540436 733370089 817870289 808060298 980826584 267532412 909009099 791576150 783130537 831198447 924462391 793276326 49735428 479775000 737128379 512455446 207541830 732825885 900828782 954116988 946267007 798741934 686174897 499747696 541637968 761631580 693699512 169417490 277079274 149627060 648165583 755467489 571798888 395797151 746484141 800012569 896210650 886507040 182577053 655886582 45067695 732855248 221397064 929972149 983233733 744587941 767814909 930064053 679205969 322238058 956394546 881915120 789244745 794756308 995649429 376263468 122803370 842488087 280954737 779745012 562045962 211619872 243929854 149445206 589487767 922609786 382692431 889871571 896622748 925008470 860325841 833601052 760708339 651457179 714260145 68292327 869112124 325298387 752125082 10051217 403879105 273599531 934083728 474126530 759071681 726727255 293856855 684625212 805147342 836140370 966220214 353863796 454958439 282041882 875798874 971751218 836412415 798453317 740348335 420631395 792259012 246249695 927501335 902041038 335316334 753369062 32354468 979358352 17043036 250324150 115774943 795976421 250527213 460701617 754627712 620910967 772640531 32058871 619813834 371795524 810580484 806634956 670174180 650789149 60967450 672667185 789055212 361872512 850523756 872576283 779449528 777903292 786382571 866882326 872067430 889728754 153726240 260256588 705298132 980968808 568115726 919571371 220427662 627546263 182431942 202993984 864027095 914142560 779619643 76340123 804801829 921347378 996469686 812603948 80051160 975120456 983528976 235568055 791732153 947703347 255063375 893994919 649106754 983558861 589295480 97064555 897948340 737901049 763330004 72145238 484811563 446650353 965844130 46939641 559532783 781610735 939654240 826260206 910427671 794364172 787004900 853589583 940928752 871709130 368306912 61286924 913640745 70766593 792021847 909872809 765375513 964494169 557180940 924707470 754675016 823779225 968042939 381547247 229101671 815934260 46988160 273700635 647713570 753017519 872661140 228851986 118304721 747682818 825506425 292987028 122399023 873067862 224257688 788234489 101207974 840315086 751033508 652052430 989829102 819115499 863519027 795009119 418547185 346862222 956043500 754461931 899408286 923036310 958256865 755927024 971708568 277748397 468637284 841681366 759189644 883685693 856153272 537392882 922162242 120708638 161127551 958269525 51112833 766754285 768404315 938439246 677464996 969594780 271616638 664453613 971444504 739546913 830372735 856134363 156825591 79262917 947901035 903068223 753668518 374449078 249228304 586005261 788536104 411276363 752066646 45987190 933361757 183772451 945548140 941745089 257047420 915243800 221637287 366561428 77551653 931588395 702089047 574018921 603802382 406034503 507720790 838373562 846791979 754270695 783188586 956866782 579671993 717843041 931571821 944849944 915143595 26937836 767337116 909020456 190345596 349173293 188878570 908833273 259126922 207434914 189432899 812811974 859400294 997234229 513049879 367544309 962320737 137883586 971157013 373467330 796920848 509049398 443301063 777801630 581718672 979481997 326952631 758616776 801883207 328742517 888142716 722660984 908324949 923379690 931257388 794860185 345164722 339730805 706796044 843964693 570387470 680593312 833159300 617407449 852000478 906691955 748158636 893096903 809723218 545948579 848804878 906278610 383636929 776830612 247656334 146467379 978512920 102944480 591996094 279899738 975768835 575452683 147946655 979218543 861861304 999281372 297267716 778421850 817902833 948890628 916034976 964605172 819311776 741299698 642209271 240065139 254915254 820166191 547847374 4006397 919467521 794292403 653767894 410469406 765720989 689281874 379828982 887032443 192834230 763476666 358003119 62322411 696292402 628647347 531611788 752717993 546871840 743645937 859463058 932315829 527633186 875571172 482809855 564706997 723698327 228221064 358295107 275073209 251213910 893878741 701577315 753538181 337353009 169531741 976507709 639832013 513331449 390087141 825800764 48751063 941970405 615573064 375975570 922780938 813000617 555600091 815170241 523640903 917120850 680654767 196626387 929462063 844855429 258817045 375007146 785943509 873039159 773139457 957776814 545823929 142743803 557229870 754756673 200066228 820066329 842633607 808554303 332509825 938746743 828586080 958744323 813303065 702026632 581367346 309351392 837474188 269182208 834997564 278889630 826520187 307998349 588042997 684941347 330164950 845535668 323650886 992391928 165034126 858033382 80243256 860659828 937712075 614870166 942631913 971803194 232189546 895401805 800520877 166539450 721824308 930654272 972692892 120532814 257595556 616132144 756552186 289762683 886747141 249053439 201421908 788339758 538121580 690760554 897314029 786290062 785931255 506035102 879474823 984021859 777038768 395535778 564610788 94886304 881563066 576003174 783189757 952958658 264086228 896315608 989358978 782016257 373634533 965692074 196517779 862915386 780113445 804621076 712786653 770944940 738362155 982119895 476626428 884448584 794583405 284137693 673927661 92318470 751229017 771097135 868613366 756992914 617484590 470801196 991930538 987476286 292742065 810660299 820552359 334615107 420174173 561187 434098108 356127984 282142075 867578002 688950741 391062835 490865963 110975003 628636281 636620041 854664454 376908749 926328699 614349744 776879790 393274850 15907298 768793436 642386572 882404611 4257690 420248338 980523328 772643702 815849302 668504357 619107563 810007534 760191505 885299457 417236199 907016206 892309893 745344132 479277420 483571078 932287377 800245291 881641746 724936768 801149294 599008044 727448495 891323266 260478600 775442803 983625428 917742630 820950107 930035287 983387681 10563408 843259918 754231931 127223941 737020247 222426630 473107404 286343732 793378347 324244069 547628236 637066673 875160497 920767128 522907965 737975494 217398161 846074131 836383468 99311401 550355951 978565144 856914545 996011829 917132437 825141045 258285845 772752295 621829589 667675043 994346588 315985461 909394755 986411567 922946256 614379862 739308219 466133131 891947632 119111436 115471487 466390105 727967714 957518399 898060463 746631809 287508598 906188310 795608474 950216928 420451788 943847637 937300186 845535159 352770498 95909772 792690838 766227923 999341774 965550491 48226003 192723659 975576967 90067810 761369257 641757785 918249443 920601470 908208718 824392031 817427109 973302246 729093204 764974488 187967661 851149146 679222967 861606109 511755779 973236746 496587254 538553701 537522368 904969217 757665240 934188158 821195352 397827028 991543390 953881208 737343690 665705513 692223063 623044303 779888507 84300959 67149280 162347268 814443895 119642474 935241028 480863951 757412978 814108824 213812133 949909545 850026966 997718761 835684872 597104391 925859035 504674667 634925939 203799828 941818915 302898919 836403259 12579206 939905974 866245976 218241393 538738542 612246408 40664241 951609523 981858285 375554133 614686210 766276493 818483037 300535479 467420409 352126042 50053215 530360245 978817803 380611061 250363654 984024300 899129536 566405157 159644130 772615505 307938119 987986990 465454949 168167822 570042720 234559167 966760323 958897974 776775935 140644228 763594907 876126552 847163312 898149449 760983904 966437295 823332843 762509730 974937969 592505504 797362061 824061286 989076483 878632740 923677549 604268088 757387480 872533972 727116228 902839402 998963246 893462644 49535544 220016298 468171822 850724389 795105457 935974669 258767394 774851282 881651597 596613304 894560172 613720876 594475813 989839547 771255560 874947730 583283175 813500217 866366296 308441888 907825446 759591395 766882643 981104361 441186439 985809742 938828043 378317997 988817309 858420969 414291339 886895628 54351208 176881824 757728419 856997231 955822414 230965740 298576509 941989150 797168407 460598500 601505833 785095587 964031894 737020247 956902434 200890875 954588001 954865184 453918813 757181611 917711437 232974640 677884943 479001068 290491367 909386952 258483617 910627770 276205120 832850122 522438900 433180489 790307172 683402132 959951517 915094806 798847992 940105095 862817309 340249738 824514061 370617322 668209421 585354883 211331123 753592191 283348157 918855406 609207501 171174526 575384112 943596059 68566603 241344284 922612288 843443440 772450394 423240369 421551482 797496317 828246600 822742196 778919681 905425474 976132784 582380916 219263879 688527872 933463851 532018873 803738333 942611351 330979379 412144396 473336013 74002304 634538064 968646947 253664824 521372220 648938687 777735293 8125171 824733998 729963458 8247733 342723548 876840917 832799376 866749012 517683094 753020865 756630328 956634863 794067627 148442940 298294434 867207892 993415430 822882052 799475062 756629965 268554745 601716998 839025078 410390550 740258734 955472217 120837096 824677713 55447637 665935771 671965858 371460727 840119002 801538172 184488405 421563295 655422784 755166376 34772670 543009197 267988679 885698222 999612853 574923270 945194055 846992064 670927715 55311344 390253925 873905148 782306233 759156144 727533174 149492608 978441966 885776030 436034690 740945092 727839064 132999099 976447976 350515986 847260 829268084 65970169 935651695 894046139 977537550 562919643 622926987 16381490 964184708 864157116 750389524 779838574 879258331 138123095 75510989 280768564 873879343 57860759 885887312 846135278 949023266 904760891 930510633 870678845 775920188 997345952 933838732 860272682 833811826 800410820 841149557 871812475 743055365 982137904 774464900 368469101 441501015 767141787 851855489 897442881 773217097 340369059 892550358 48932960 26107067 929157047 847687542 846420774 949265940 973225892 561731959 167785769 271323551 224498664 324117575 802520619 844884832 931297597 737020247 964713025 760508988 797950347 644522906 547145657 671548045 403136989 875521484 646528047 787664866 37024529 991335140 823368584 652642895 840165588 895935063 211624206 872261932 867282080 995308728 232444230 280363666 857512648 366883432 873790251 351073065 994567222 263383127 603493941 407524294 642754722 867810609 762980061 890046747 521296354 891733768 867641885 785338087 417737666 749485260 158274221 849939967 909435776 570860253 449290752 804016097 715977426 569529962 843308381 920898845 695167561 566900491 868436271 827245156 345603989 99779039 316115846 419587928 606089686 709368719 876308177 973333017 326588178 346548212 782476245 845350165 905241412 6540049 462271271 24836442 563664168 267842728 649242956 809495574 989567214 376163082 418561524 237240580 466502183 106903771 483950631 805699151 618697597 424777249 258923346 790589860 226570900 400394662 375307899 801420496 216483023 530973230 746082350 779023516 755514663 898212551 922899204 684483188 883089824 636175608 498842005 292031855 389953896 13824764 371653918 65643355 890427797 816394722 799484700 828707024 518019990 14961397 307044712 905548181 840851169 883736856 248561401 787053630 279311316 410263137 358101563 420836414 195334376 616024553 723468191 902925373 896483534 918923847 783072679 740542302 935722624 933721768 643192153 767382390 976304167 599283321 907413824 618154106 759744223 255849711 607260715 263381684 820871004 880779885 986104148 463921134 897394452 772592566 886611515 693100119 409621998 757814047 670215576 843249072 968167687 201560459 141831514 990619087 824471876 870663695 20671999 579708229 287389815 643626718 544661091 273610237 112887438 152087536 831119864 825229397 17130870 799476193 425101969 461969855 498958730 930087100 734103203 991421995 682410671 890212769 123235665 194949707 163273980 783581309 795166159 101035998 832163962 298919800 592002023 796818733 551156531 508304354 848786324 330904553 522023165 848806171 785872461 305598379 969083556 837767725 924519022 650497443 852028404 248355412 787077222 894403825 887493018 842413423 202626262 912510978 439140832 745884612 395629612 964878281 831728676 677794161 719804438 805279000 390262659 972452404 959077775 996247519 344841361 888092307 948374451 521921500 771189160 379521504 608605034 771863869 781298539 841378634 332845210 247198529 877145092 816095290 795316082 576578070 681396531 760147514 743638009 973706303 659831141 137147545 102835079 606605717 724811943 139461391 921398060 343074421 998113603 294330726 916872198 985943335 504366168 604045340 197833426 371505039 830739653 905972153 764930836 411247112 554163443 287756885 756512710 459600769 232766520 807489664 49769710 887977536 861237894 499299163 999921931 712717015 102241003 545150440 938558002 911940190 738650424 176456546 846947931 539633841 311575916 796262034 745053269 692182993 467570987 912449720 988734018 75031981 892075811 718797393 949657856 677292728 777983131 258881615 142459366 801397980 786326393 374723334 866714681 900276635 824383951 884169808 7576128 570076459 986643689 367773989 512438907 571136165 998485036 999252562 867257091 139062076 273504970 771585045 981695338 422250417 68603271 848476112 784642349 818117657 305055878 964912104 478415966 674224589 371339208 230568278 908070030 184850481 795988695 149803076 858722037 477000082 800923917 933652934 697969932 527522487 767931259 839873679 317326255 222421701 802742367 738794235 431869122 824906402 896272301 991835257 52442185 411485526 132800897 908222352 923656887 937208269 743520599 576721572 771674437 882024395 796613832 270788793 775595423 623163692 870410529 836305700 995326668 332460486 722441994 791503299 409565395 393838865 985335868 267629856 967056373 429806244 848932795 637423407 673643149 622114255 541954832 771048191 691237577 580889676 501638732 945397776 187537518 982401374 757464295 582730685 175006832 987044379 617306212 760253930 682354024 43380448 476613892 822893652 861946273 562320243 844164099 946007912 814112584 777520525 911037032 838506619 740245228 388593097 443461855 770046615 206210480 226839218 974552433 313227143 820783474 368726421 923339523 877654522 948846083 912806956 890150924 702356057 995486797 963917139 990290450 998434513 65794471 933202204 160074408 102729444 414912544 919358000 917250488 939378827 746178217 806694957 108430090 7604618 304378770 385924364 844384694 847449478 929162740 50662196 518385130 773552016 611248720 427179221 675976825 769313585 644549897 997570012 382321696 293654451 707250666 109217574 285398741 59861784 944675248 162505423 919685339 380533100 995399413 756822483 668609211 51877817 898526970 972618390 244280576 735566974 775728390 683585546 937213793 474393338 574385818 571067267 371574348 827065657 541796517 687408446 767670042 123313246 315184443 840558409 764184696 398687387 673756477 913211305 933552581 557869354 824089883 393329757 211470530 510445219 55922338 772990772 338083675 542949920 460842440 902886134 333509248 900399595 835754049 789663927 230549526 941888531 203432846 745956914 46140227 471269026 970945642 886564606 255493953 774282283 227234800 787587028 137112047 210010478 102050524 790786311 821866486 135249831 797404196 946598726 738585891 531259411 654963616 325957021 81193639 788562418 996628818 59344159 496224885 539377159 914354264 989654837 662351652 795451628 211966031 268692218 813729829 692229303 34143935 743507951 890737614 652081995 935565077 757349544 726956668 770830762 994245366 865122076 836074675 19669627 387463021 432156573 146185857 921494827 337165702 258194739 879215949 737020247 473783702 921677362 401626027 462523465 84614703 963966982 756906414 218225397 889456351 562796248 226510892 525139595 958812375 228827468 223025730 937183154 803967856 868483849 805978596 918911686 390763482 421928175 249569135 778625473 53965562 552391810 893683317 962759072 246870038 415620689 194782224 993292737 949221641 847321006 842682070 992025112 780509255 919666889 665648689 963527850 793146602 576153669 443411499 561650642 909458043 992094169 340755772 957794655 908180832 947746017 655266211 831829815 981517079 580465492 632281522 400147831 494252653 615687895 974169457 40229111 883424552 822965820 182191039 147762023 961522572 185295443 921710771 738406788 426797593 778008924 707407121 994642343 358000469 774234141 178661532 247455410 77087474 273132478 375170552 898491525 365016784 481249231 745141041 457162113 786138258 774771596 759160580 997593774 948124756 21444365 961757545 574285383 598701592 806345805 638958646 996905103 293965568 832066994 633185007 113438256 805382916 839686783 92434580 741551667 309395650 936459255 173641605 968086064 263143393 226731475 993474440 858929077 812706423 315585736 4508448 951473906 762357217 598348922 893266812 941209072 911666252 987366964 872859566 481417491 754876601 154827335 530461239 981619668 828365850 352593130 954517484 950899400 129635760 731327712 936502272 822678664 834419368 836469102 823473833 795936542 489422439 947051383 752045099 224698301 85853594 762506275 519448795 890584627 218360901 112325623 575259084 829688324 749862571 313508644 364112864 950453146 87216259 570216169 373179441 720292703 769114543 589311918 620393733 440322304 222656812 979876408 134831381 558476505 300758387 914194430 332225981 177004694 119964491 789101614 463115985 948152985 941768504 815060715 431275226 756765968 844371691 379764973 114557345 322373972 755472677 952935967 574086643 790453670 904373541 97299916 958273125 604983504 273743212 791721342 830042019 60023066 89706961 198632902 926494942 803323020 811671757 930559217 993314655 348625117 968839861 950942288 14870022 141914135 826900581 375786400 928383918 77948140 868410239 872408749 353893711 56924812 754942719 805888739 842257717 104032461 786679998 861053766 838271248 286748142 792832331 38417873 987992357 604654149 327727133 145404210 871482965 761215775 149366649 165883992 879718127 727768293 368478813 23970630 385496451 312188330 587969254 935565828 991394250 591136107 21368318 955319201 882405140 957660118 941623335 24247792 954627214 916144550 98913677 884458785 73641080 719483090 747837720 446502300 617796381 872120959 916186312 774805200 789804566 912658450 973119266 854286594 521438525 901978215 6478786 871005327 221611839 409131781 894085686 765603664 39067698 232791594 897745200 744071223 380080969 425121788 765585180 399616275 433452103 792159408 838993615 790662086 403117951 888519823 926754055 213385682 737020247 854660503 764308971 764646393 957544630 888061272 777033903 494811323 85426540 796324619 827688694 904076017 143888275 70333871 4294008 33032050 748765359 223784288 869682794 791316317 923309363 31662074 46750657 123257238 912043000 929480857 707466002 736568375 770380056 263625940 188631285 343969218 952890075 9947997 948967933 433041646 242965378 391866050 589300850 909380437 910050766 783598348 803086037 955202970 886489676 340069048 739372563 775576084 866088311 950641088 953239878 850362660 901023766 556137194 393877795 166184378 295430141 39891540 381401423 239057333 495702743 616544178 646194830 600979288 876824949 712373773 903855537 521383051 579945177 160666452 887372882 421724242 766975087 831476471 77481319 755513138 622680728 812395277 851010806 872301551 245393654 947015961 473142020 495225501 697949553 875929037 885151178 782644838 263391429 575878823 333858788 589488384 675108864 873663405 783677233 702713679 826029240 551346279 849090582 854277745 442255433 260282551 810211724 931957464 937527991 210518345 490832148 619313145 947353886 268927256 98243048 523398730 929862448 416729778 532147324 193869152 772873034 957381723 451598084 292250975 290021244 86586792 984041953 346651222 11106536 913000147 855119354 956725005 982480115 822653585 686653152 766246025 437038240 439294175 968983634 794654411 507194554 773075741 537185478 994060654 978812475 150510802 256768197 263104968 183803661 77620963 941491756 761830785 36078492 690556649 620908915 877178384 507440373 759498541 915571544 343943285 417557874 826023418 817521671 426956033 750481086 834181228 661344816 854081228 971782684 128433030 314622978 819885091 669244552 970689498 957209587 444188127 131696994 785801591 932312909 970197285 903360996 853092597 403911037 514834228 135022706 78251701 40476792 222341113 763077293 766634205 158697028 462355544 758625477 964718911 365417079 288601808 587217025 751513325 686882309 629453938 843610255 792020129 181516245 969467333 562417186 975498623 954382912 43022509 886052955 175436498 869226382 191643633 981910279 384120685 471057410 42669881 846082650 832246205 181349846 518860321 254018611 750382187 872426055 622137297 297949895 26473354 284180513 703045857 522079894 961985016 807694405 639267193 794887002 495461490 342570973 532838409 62714854 387202097 890166193 593148721 515366993 226809066 743026343 18299318 263769285 981642629 793786877 129237101 941090481 403442437 773003047 67903949 302495554 10082675 986394478 27095580 47593302 755928410 859984730 791549541 792144601 988656608 529454943 897619317 858776399 816068306 846829156 763889218 230350515 960431447 872513403 313361763 831571007 891767109 983391924 440969216 612772858 702776605 836484879 611433354 830837096 901523046 179674291 682609692 126347813 588126039 767642235 797408230 965807497 551098812 35375850 456652978 763142897 946550590 592824052 13455800 940369255 666506325 791494817 11333247 811285859 143796221 42547808 150484939 904280053 120359253 851867930 915795500 823426345 174568394 976659537 686451795 952046780 964675681 662693555 879787026 916152333 191123184 809662888 460705235 950834300 708485329 801960383 655327865 984498611 823283915 774060701 799037185 348925543 6076546 849297191 889589701 805838884 986988371 174471567 100034099 86579720 400945646 818751400 539103754 738525966 901012528 158302609 938857115 146512644 919938126 978802310 360575227 143196762 885803872 665594946 572010524 36363785 804214006 690532375 944243124 804551246 805977078 781929198 961381821 403073778 339602858 877999522 847076743 521408748 748081094 578022354 571045408 589846201 995884365 833727128 151326873 538626260 516776221 555226505 506369115 785969991 886738029 630596553 353564903 200478766 877329614 620859443 779959344 521274980 976184072 217620381 851115162 916086008 734104814 901556314 460153567 831252162 372716508 737020247 185080325 857777120 225992658 172489982 888187825 783606156 905757620 480458641 917346601 322004789 869926793 809262746 764678935 992933127 909532113 926892940 780177075 917881046 817650719 799170594 942095927 798408473 93474470 912539630 870971190 809504656 969620737 165004018 113514021 829129306 999456049 963577809 620070369 815446569 140421185 30403317 876523841 548375318 919711188 536189317 50483874 246408172 846657735 840911560 851305316 265393143 445572565 12953816 951782560 915769486 842139849 847874364 771592531 547430203 234567698 41492731 990090786 749067088 878577422 351124623 711923035 663965679 150015176 182132307 929169778 639600975 860386799 815564946 88617714 2465718 202499391 626628599 878394316 633007216 212769533 414967462 548493934 927543784 958800412 850136394 692185332 580506517 435884141 687202211 929568901 923839708 242124614 766557125 957596572 961030998 948227594 572818582 233518347 151917171 696080303 710610461 140416880 975737935 133274354 988191234 777221928 382731632 320389814 425774534 910846577 826352321 91779574 109492524 410721150 20330602 956089613 894630388 913507328 750539573 869555081 961082579 876652159 950408304 806432435 300919057 624857497 766111029 779258697 842539394 808994278 847622018 981698126 310777813 286947047 990799512 970229055 848381290 3596094 461934695 128335298 148679407 882264352 375904103 697613905 769148232 133786417 902212809 834031540 944645565 986306542 704248666 526367099 960692736 106059170 667079493 857660950 470192386 786850687 828661806 617158796 231665427 547397296 533836901 370258940 962086144 799265172 775859257 259677755 636984954 791190384 172373079 753800958 876655703 691619691 302757743 760818879 130761851 941526809 808849006 754218062 805198097 384646199 446815299 998482671 596990257 942556035 788711548 660707678 912033258 82648230 65760835 800014957 277351368 855662010 778049939 374229352 745813281 209655142 910957992 777178112 123507778 185010526 294870066 832681625 798371410 430578022 831411359 761579863 556805998 943144788 808443136 478024331 82895206 280789536 930146066 779323905 837510851 968777097 477890905 310332222 693961354 930767233 916700000 521732010 162842446 294584198 339145470 781077771 870468854 985875929 787771710 86590398 665906875 128540309 134377495 907905949 798512794 990685598 971339111 948615335 623586442 958406885 43705268 358828550 129754793 481539529 797436630 331826980 423548584 54851824 458300334 955410338 366138473 619653372 779411288 873929314 773157583 556854348 887175268 405195684 708146439 807014012 302354032 917039320 183148925 789136005 821304072 483680898 929214939 869925246 789849554 751163070 981416575 957339110 32497195 389295657 954353839 962587337 995672261 622036794 844231416 287738724 622297384 896511938 252125074 726968210 963592870 404011146 394986363 510768428 888411873 849611735 231674182 476442943 976490242 633213678 467779153 975504340 637990526 903823788 477098822 886639369 119954932 636656133 139490683 369583582 958599222 542939729 590113031 853297565 990155878 31354153 932023481 873421640 850587324 899270931 146370378 809743560 769406974 350218755 236059198 368649359 793906292 989482717 82270865 995180057 400153961 870455663 722571363 963161732 769384365 807687000 834399013 302596176 776981282 300537413 265661486 964913011 748466433 356475784 817211937 677950700 75238166 128967930 559786850 530844457 37491468 544530964 962189986 717984149 960573932 147136403 251514240 979220092 842571426 25264742 669896479 964623957 902512207 630391815 351535104 704927960 931551141 29379447 831435248 485460899 276267050 941146660 507611332 978325728 908186438 759169338 742754319 775967587 141275908 458628303 566967441 441545862 616401847 262163530 763261912 675639316 74512387 441204754 902582230 968202535 643968272 866810934 963484089 941659812 288837185 511982739 962156152 598803374 800472342 467179618 968951254 587003672 911670728 687364831 855388963 493404213 854182866 851041742 229580874 872021240 514407325 818022837 991467049 687179250 283590776 704553270 947039389 805281049 69664633 147448651 13660906 572709267 223575606 743123215 41395116 818321304 835187662 307296303 384521210 142089578 957361202 260766502 955194842 322648457 365750374 159791757 484977958 796432550 970961616 292640919 966585435 409532316 761702980 761300069 122816578 921036325 580527138 280602732 315797986 537229720 540385914 885639061 403548012 476777976 304074713 954316851 973667182 74185840 415481828 906276010 815578334 571892081 737020247 732812556 934794362 121857778 827187807 821484063 973923486 35729333 959059934 990897413 932011724 941193735 774531674 50487273 251109737 989155162 833055096 360537416 295260868 893806339 534460802 915654918 817665317 124901601 667429593 173440000 767630701 660227143 879742933 254681950 899387594 912229612 999866593 5958679 169507553 982648399 765849998 65672252 987277744 614144320 728739307 790657013 696352914 103334157 403470943 769589509 451331857 996738854 888846965 60814703 774055837 832756021 758802330 264459603 239819615 74782085 20874723 737020247 757162393 882706093 993796360 849930784 448857670 809459781 852497594 808420690 786799814 4853561 824966402 400876886 628649234 610083864 744635683 221838244 790976712 512808208 400559745 798612657 532533328 997696628 997922027 2496494 404055636 849887483 958037437 397212547 454241446 14842901 825200735 917012300 859102814 802110147 226633987 619569618 148321249 918540656 944792646 323998057 982411686 103348570 714696925 401406931 703413193 887383791 948115870 944403109 826770779 600162977 621395901 883673766 895017419 362478950 498084774 878871484 764230074 423797682 802917311 782256613 482082411 239809203 991168519 367836550 963464696 3335969 130844213 457168049 814128895 82224235 946231537 100474396 914229744 849683521 56411352 953098498 766113779 313029124 371174513 994853635 910541079 66471806 895788422 954963769 237035976 920725856 820028032 341790862 617121183 668093733 807417386 959176459 31822357 861676482 876306086 618416421 454397491 740387267 450639099 354638029 910215100 416258723 912851533 764057976 643123997 65503279 753968634 58701320 14484526 291360781 531533500 951394432 263639167 925248588 749102713 748711450 100000563 523118077 420352696 282073562 799069706 653714179 980526886 576096774 846962556 791868290 298227880 848011164 958360682 650040839 258862339 94250397 981554416 904077070 613160991 404283930 874053012 9703317 792514974 923693670 861481006 674723909 853604428 937059357 473134132 888894265 229949580 828144979 378631387 409345092 620378580 439112413 276930007 772049608 886067031 665696257 687461797 964734261 735938388 81907033 816306738 746132984 880211195 863962997 124893979 544427302 831610996 972551306 445595709 600272777 568258279 757013978 771743658 934743873 906650173 64915093 121050233 959156270 49053856 783941240 136267069 107341951 860438858 94934086 820193182 807486631 782977609 339705749 993756867 986405558 738998055 906230834 207990733 409330549 368103902 627492041 912375549 677023171 750835261 271787573 731695531 815185269 915506543 140915968 721997169 722563987 11124985 920820246 877916959 327315223 794507834 326625996 851459693 210935477 62937060 536702296 428487280 198476710 474116053 748516252 936949124 934250954 814727340 429144868 808948247 746518479 839514656 942096532 17268012 149654870 274998231 277240736 95680640 864210403 753149222 97888006 892992425 749378625 468749038 248837916 732189049 491259495 611280165 729918659 132900689 660355427 937326383 392105826 871339220 160888226 886543104 782877257 821322015 445230289 707737987 873711797 764476902 599133866 289541659 307276875 778031100 851506101 446058412 494183274 394420733 851313186 114239392 978153119 457264567 138314279 313176773 544712382 77324304 833208292 574021326 916440931 781547793 864200811 385613018 779455207 20230232 775523313 413459794 496288593 933746708 383444064 494251689 868987241 977640487 909988405 802829517 994737753 924299027 906122704 287606564 851988698 438311798 822352779 164978739 817139941 933733577 588212716 995564390 138585288 595782201 768069488 778871203 58951969 914763330 474957755 489730974 748190950 881229064 743436896 916484530 904561800 906502046 195618344 577255569 883398689 322998770 821971547 940020823 180387701 983465772 627481041 396939047 748660197 285324091 614812291 948209140 823276066 338149948 483822417 528327907 215705787 846128169 867014456 683236254 580558369 783867824 381817085 962555899 978224806 972992048 273891491 367560089 792189285 100319024 694122454 633870787 788298364 661746506 785099283 827258132 729933793 741420378 802433516 764361565 937014950 129863765 753872791 826590944 911689665 717807652 900553664 633628802 852153095 930489176 185726038 926158605 789954061 708564727 4598314 378537812 741206172 102661315 493322786 973987487 207816149 985723381 435897302 528219851 947218761 12697882 49810266 161789271 331681990 910244714 48217186 81785640 529401810 503330375 491512314 505621504 754920220 30091378 448473216 909431489 967103877 238498626 266353954 210228138 950674900 973341128 777783900 616980997 998324593 5083681 317656701 197268357 424825346 800399765 774767242 665735993 777960150 914602773 812404238 153933180 870767571 385333193 93866781 493221174 805983632 530571967 943382160 974712642 839341709 111956204 222169436 771356841 992589536 647503782 935194231 490246293 642583063 818145655 837814093 331046987 502445417 872816726 395554131 515823591 977555729 317352175 742318700 925625280 806656263 796291704 862097703 715125898 381610363 118822020 836873944 742838578 687333263 855195161 381062632 432811748 695472940 931373001 742253499 973422661 685542243 663334223 970771574 665393685 830201573 901023653 996428704 951382825 181595891 983972355 252483576 597823476 381008444 195083963 955335481 492656726 858005503 849683497 180696539 236733864 301277867 563406635 228155904 684314121 503092562 952894318 991489281 872060771 517761376 938501958 728245441 760520527 496453561 853248617 288289163 761818129 813682145 630373768 759180711 769991705 645245011 453114715 501646604 78676964 992956007 928220227 821654734 501010178 629816071 943717615 477861517 621855878 818386794 671518501 984049407 722895860 969926702 334919954 193404234 468424766 504204934 760789753 341491162 920532202 798139648 394147718 990031912 984343861 698573428 354132833 443689675 549974784 961691771 630192105 622848930 946065006 822230341 996754135 780075789 659835803 541775894 929200849 902599318 321903646 918587845 246261442 206557089 792843442 866864528 495994492 741927195 817083603 408626682 520002199 681127596 760196661 344311303 62205465 27436455 839181662 89809635 246610066 247167652 699042958 788314500 929288494 550008187 430533435 298787108 926204527 267912152 657358975 987410158 935941249 886524932 230665939 422135673 906930181 896078635 845654129 892279708 454178117 86895844 740629045 208277219 952355963 91468467 924487735 969258287 912413575 833368028 988658005 468627738 756731583 811642336 443817272 182445992 665239800 568985087 918927443 310726933 199251803 814529879 876504328 877629833 548714072 524742566 676443288 95039565 176928436 366985945 725098252 149862879 912781751 679455541 867434846 97834324 143339908 222056516 750580380 549677518 655496890 244303034 608641708 157611978 167970244 670201631 305207907 894403987 740838226 661756594 801838700 954560778 913247217 427506916 61994640 867903414 341503333 947671990 816231771 878028535 757029077 789789264 454149953 994019873 101773849 296475029 48626950 745870311 36003882 819080366 762790816 809598149 966943658 354251477 82410458 982938237 883396799 490895676 533874029 264127973 216697935 788249366 834880240 660292477 804761955 855034664 999408255 795970653 761193258 474655277 775273495 796609538 71187247 797608963 875116092 365042641 895622587 909361488 800417763 643180323 666052302 73085482 833191868 65512215 50437688 53733017 168665964 900840127 938438159 971462317 19002919 942907861 883811065 255667108 898454268 748125506 471343372 690695775 997539396 981753682 707749704 181221968 272172771 678709846 713114764 934320224 353831017 580654207 961077676 55104121 828725676 927840273 763255358 346879895 934911669 945978026 349017317 822375981 787851362 964022992 885136596 578906030 958746825 826832718 651252056 734581155 959721847 340610381 713381300 151536811 424643173 854934765 326024073 822657215 827818321 947237520 709719889 754968674 357941008 686228964 260763944 770067910 906296728 197218538 233123608 64689451 97888628 784755485 83765112 114923125 779900386 675463340 994305966 969185581 371944820 966655441 33387781 950604221 936876225 954372759 975243801 622099516 255894700 989102371 233110013 949413856 917981851 655804353 983879472 784460848 246759461 127303798 839995396 825342545 801173875 793113843 965326592 592235928 575788795 276901592 160094850 444464219 838136198 786453966 10046710 870071419 170444351 232222958 991720377 656473453 995859821 705736892 924721666 707758480 516634482 170858284 104125699 880767468 12462026 350877016 530338929 185646525 753782419 690588697 998031772 74015797 218380005 830647388 802882928 499916029 302049163 769828876 134513444 754433592 870269852 404780353 953720156 903696464 537386408 833792470 981076166 963666095 892760182 905307201 812030176 548194875 908420635 940702023 867571256 801119406 147084463 278888155 667123301 790829666 23528923 964144259 910592443 956686632 826117187 289186736 533450803 465551867 597239299 353599192 973086702 941445122 937973396 998839933 796730665 500088378 446091587 241979824 225462898 777267482 972799744 493773578 542462042 404863090 891371330 269492502 451728390 760863126 898551220 688487514 355189090 469840488 811798623 415316387 160408407 909507735 813641737 559148566 775052663 309461010 525290435 391559649 239137759 860632938 300284198 413515337 519132266 178258689 536091282 768494038 533915284 349602845 956302661 233365704 308512939 649068605 976627655 341875697 747451748 823986353 116704742 797691767 961306274 139470742 783279542 797123411 398088962 882538532 927422041 805780129 580029783 135556033 937721053 548322564 927844693 763513127 956463083 250861199 841932514 768882529 487173136 845353062 372479529 96378737 758571273 752983529 394188885 971491025 850536529 918141281 859706713 665699119 301528209 900148532 416081291 424718026 926181031 15069628 703376200 744151754 749529880 791050285 661613722 804966017 840024492 62387089 272563923 878249373 678403174 372945219 516688175 778563448 315904946 48232054 899378338 879074365 144856701 420640995 803283181 514711029 536959935 950406403 825695716 751197016 939682199 864482726 799427192 116451291 577960346 722240229 865601237 64623576 953626770 529090666 396353466 800342571 106749813 268324293 826868453 308721022 418829049 896227455 884106215 966033637 764297705 921692875 761064030 18630392 433266377 840409672 804769225 750055439 356272553 242955352 960484956 378562512 37998011 993046296 841312216 762320280 345958271 844127911 323754239 428250250 932964248 301945431 991963932 779815094 808636953 581575526 824246810 485519404 653644356 171581965 878170406 104218799 974344874 917018144 199658831 812124709 229776337 961099975 981575116 994922801 895916062 714338741 889735619 873892104 889224271 116656650 351084808 712094597 196486075 905526424 429965124 975466619 6337037 962954895 762807307 526735616 790954266 624589200 533877243 465554131 799060229 898257957 813767573 867696048 402236432 576236444 803576869 944975906 795660635 554105810 943841811 262415247 82592283 691560069 915856080 923344603 753049429 357453447 558648884 293073055 926927262 246785159 563513944 528587736 347046235 509408440 953413204 512493727 388493779 970834320 839781278 726768120 523314049 752235489 543460655 807713460 67447456 499741927 709427100 238819533 818606545 968671090 970932898 864666317 777764466 738408952 748054545 660454095 826054553 901442303 321336883 618659068 823226745 768401880 533362170 209006314 421843836 499627901 298209267 518253697 82885843 921873925 562704643 309882983 328765888 410058654 12770808 951960688 552713268 758803398 107793549 34183197 954531319 617590039 879472447 214030036 804339781 640635693 651402577 760921876 332157895 804129746 781026332 249044212 454391519 816973807 838692493 756855276 375896319 332607942 935436044 397406888 253687480 742033616 779733403 495507552 904708554 610668371 287465079 927490874 472296494 827891239 816324089 861927850 366407810 980614612 183019813 824408887 247038491 562794366 632654576 664042987 879762931 49854604 268375780 925064727 821139386 909754130 664136964 751950342 831327398 976909733 626022480 177064734 804875870 579994057 373574 2709891 813638146 740215031 228856873 764817236 901129608 303895256 963685250 568186765 888598678 723656022 967010014 891879847 222051931 580998052 901632494 79249883 990367456 949074727 719269665 449797492 643853022 384304429 819214624 492542792 308568359 725534487 881895304 755673140 914667812 133735208 36722993 599799967 980972406 282628195 621647861 173229480 344107087 423833739 966309050 805543977 927554721 887271484 565249555 376854161 963302334 856262154 758749044 358189197 828347052 588942534 852142487 936286386 947254870 911865113 807969865 491388046 823920906 382856826 550404945 815606202 850268800 326911867 689167941 20360723 823331598 33161825 691184906 829089446 653646865 986000697 389468538 287372177 894605963 887039403 534801862 798116897 462799058 443250415 903983614 744710542 181351325 937895836 959796732 368749176 515389892 790686860 905713522 338160486 902456171 144829639 164735440 991227057 213282067 850486300 912759276 557182427 836390282 949482870 848602314 950779165 896098711 235089175 256901542 833797357 627349617 886924562 828116805 442026585 777710420 859153226 835398160 456584012 904676862 794450717 704075457 648980363 749078857 955126417 227768317 827985348 914379086 113153996 265181324 546621640 936577457 658046030 835277878 790566011 334728349 829067649 660970056 643480158 780107573 662142720 804174101 779058937 820084313 341482987 905189802 746166279 578632272 720583401 969370097 786621336 686222609 774931504 409400473 532151624 523363234 289917771 814497614 868907956 70239299 649154873 24528984 933095535 931302713 661116318 757220323 870500722 999232040 803317013 649087649 159477655 714875139 796510205 751638822 812128298 210777140 756499245 949189106 418068643 692100658 564298282 584912360 377190584 987637962 778255687 831041349 763581065 815352574 775276110 974439713 342946865 579766543 489606544 25054600 21647555 897184101 367861848 799641257 885603 659171364 736160589 262187741 827442082 383656231 12950384 263527095 526745091 751721449 734190818 823106421 199562434 383390500 575152248 587608789 385487859 350737086 774404188 240209566 971661757 432395893 784927357 744848815 325119189 605621586 186178559 824871373 936244690 650191131 764791431 634544485 863094754 850293016 989693747 765770445 544871732 417176441 305485642 438298751 764847803 946272816 639769341 12012221 454892253 985675768 939304121 32663704 977870391 931524446 34061903 439693753 310279605 932307889 751383047 213196752 698328375 638073944 279336491 493207274 3882692 390231734 433779259 768799410 101895071 698309882 818679356 169359680 628214925 179312648 352647787 36430823 824406329 917925035 901560400 706018537 285168690 745199082 803391916 479415227 598258203 855188402 907091056 851196678 987012066 16917202 789221033 927467290 662198745 846787111 501820933 794660080 979258314 734613685 676919573 372103860 40077924 874509484 968069344 538129894 902300840 362749711 63692162 375881858 801891838 971019720 965258051 779507252 839499881 756882820 936766002 953901361 919768434 493518406 275812775 287602669 684750484 322261406 935784564 118771873 908329972 296840096 943000273 375148806 793937415 946600825 624503823 585669213 918631346 530034132 742427995 341242570 701153097 777658102 954153347 672872755 999764223 836715625 874209943 61199006 936066312 773520781 1801382 938211155 827181143 517745438 952275799 478240485 768461538 888411650 733686799 44375813 805494717 931964531 961939040 19189526 620251960 677249103 152956112 402925145 622456522 83510004 379103821 922200653 515937925 977524338 895016418 887034996 995573253 532846010 827055323 822999046 317554227 382401707 598158034 979293389 822353994 158496058 238838432 157520703 977815558 215009441 977834254 752901103 452034875 920183741 868889872 354792951 302009076 944874699 769593868 517467292 730338235 877563000 879301734 809299974 602692351 97974619 514435039 53894705 316017795 628417253 997848485 922578442 827985338 680436471 57076274 894837582 912535921 843082984 834426935 907941964 551756106 473942300 748183937 294336997 60116193 46157029 252388549 891934525 625358725 365788295 727537079 662121381 820565749 861776808 200658359 770619528 568857699 971806863 729480203 190607993 424793978 223314197 743518493 16433443 595241723 179330229 407622124 539080961 426050437 14148362 323166498 624075927 559918365 988731640 119367464 723533482 54064318 736160216 793832716 126167274 199021615 267727530 862376264 300668674 975235875 125887543 325327487 416103212 315428570 981572943 734161687 614588263 575324603 219571402 793542859 956124656 869916160 862676162 774566971 449100735 124349818 906212271 105589927 898845474 362255937 983009677 982102882 842308101 106894826 820730630 805711368 162418684 600733934 759787909 129306347 18365154 155126269 567284514 745252417 528042197 971586706 103772266 531781410 892774354 734986798 897770801 409861333 251278407 803770156 738015360 633261724 149262802 929492536 967249102 438073198 938275674 884436220 875357800 947874903 787496372 797661884 112884178 230082261 932756000 170975503 162922578 955012497 504959187 960298603 946013006 933963562 758797771 406017349 571217741 998378967 657036605 890716024 944303588 160564043 775771318 925509545 855537029 237180576 951073789 953136565 739763730 862400500 907959256 155992005 91122996 864838862 921034999 827215221 683270473 785670756 352940941 939095363 977836138 768872592 5942791 837085483 591115362 775545944 973524004 186531365 429735276 866780841 860410531 854683552 139621537 478566542 968746988 857028124 414272413 773284684 962545362 302060001 149038498 189781040 902035520 566622237 950875027 969648494 952863200 185728467 932392758 384374729 742742259 901488157 271498753 253670931 775460449 877986034 576942912 251922399 923143561 800999862 459738170 472507816 854363430 235536986 928854739 878387328 960439716 449690379 104428920 520631163 375119405 549684831 111961489 441818360 327243138 194458331 980494058 744449373 656231082 884822925 438810910 916333773 844576157 553851404 337703660 795689818 968689051 332249552 674158399 927101855 883929217 499866965 940392472 788875878 998993677 486852990 604934799 192833329 686178451 665365178 464136123 975998357 547909640 153228647 453600788 873077381 705089697 697637138 773100017 154306397 391488238 906941481 764765784 274194157 798422971 962737635 997068399 806434300 824738256 288706138 674238723 816934844 784996671 756709973 498795179 465968251 725139757 855801745 389776951 996918095 87891381 827942030 878905878 21660981 498952507 739721351 929649883 783266301 262885843 494594601 303621482 745069565 826218633 486717704 673819997 313206286 388525829 925670888 936612685 917344095 745311030 118822553 583936482 421228482 98317829 754945342 761519175 427088976 78511941 981385926 855985660 393869951 870449509 901408059 491265656 205941994 217796784 408551004 573979760 857554823 926146312 943671350 761923773 428109093 74963949 985361955 943785093 988512973 452029194 371265004 436588721 103489511 843064208 749157402 990874965 230078420 734149109 774139075 582398553 489944609 513957717 342526244 914602643 185183590 143568841 420539231 223172654 706623969 841019956 205289496 549610272 201769686 601852929 992547919 645001836 784357820 873971463 872533797 90487088 844873212 371806932 894215061 892208049 846240436 184956904 824065374 985369109 763462417 29625097 380322719 915212020 748352735 893358277 907050798 870539734 314624352 900397498 952798744 641665410 823677875 951252095 210126855 837775772 553168913 191345087 960209088 826063362 833618337 236798565 368681406 970669262 637777655 140161094 246804601 918705722 849289166 568917555 95927392 161981865 939844048 845594268 662156313 947199555 701439437 950753175 879141900 885803535 834211950 194921307 641257495 260354430 775632070 736364544 882791979 899495446 561260617 944003531 287425260 702123689 974973100 1506260 810008565 821093739 626706043 825503545 872189958 983091318 764733091 907276329 459521272 846467344 157458702 992527746 707663347 978161534 720167640 294092756 270060419 932286004 809734251 453857158 233974327 869591189 415786150 4489893 643980724 20852003 285688956 504491499 912768702 89978384 161566489 737020247 851765381 142973346 587869086 882964858 274115927 513194028 907899756 808666703 737020247 660761494 832218809 910952316 285425942 856012646 782302840 3237360 688353321 931681476 215934340 846374796 200483434 489985342 823440282 322544360 301211379 484505962 842181477 694439534 902234887 951731319 180289513 826273594 941138036 486930487 885064541 650711741 979538774 453576561 888082282 393784923 310278935 881815507 321025229 357137907 595034206 809245422 362267337 944749294 862330396 617103839 123045250 590032395 895704115 563791424 819805 7889732 924959949 851723282 782665468 363817451 12627962 69305230 742121709 785948565 891169651 993488103 622212595 944075919 98117187 868137586 672365478 131269787 154292527 511790584 620061410 761212957 884323811 651475936 776594510 605879571 625552654 862087044 623706660 956394739 755732758 778305256 334805819 741445455 333341788 856893249 956733011 443268333 675514266 34768764 512144483 119672902 671997236 926394425 182660791 726896943 389509324 642615529 203263575 993462278 95728659 40567518 846177264 473247815 998173318 805404129 331275948 892411830 378281294 412075627 467189088 775036565 374544376 939570829 287415888 447448753 133079601 773717512 123534001 965294828 639343863 309943001 127061272 830536181 963177434 949653841 235174456 288703940 393677937 269552156 814764406 671084489 799525985 963795614 249460603 490077511 423763464 884875269 467467736 789093367 111427658 211475184 755224793 610837096 361294267 925447712 453837469 889845589 82954130 19032856 486409947 348319547 775018077 699206338 459364344 979563756 544203159 811218738 988323799 34366960 632140972 964030160 835261532 992765270 797769836 327694735 948944148 988018640 863952437 993871557 988346048 871926624 962319872 928665514 700941892 969137773 385838544 153793972 865218902 920233955 97954059 809231958 968768544 664936167 530127140 24599263 785914109 998842311 775167927 100872539 536932098 178657477 876530941 808677315 799585003 940937552 950481494 991298297 797517566 929054908 440029833 538866042 45070650 970500853 61344873 927116912 209848338 850686803 855313168 223036592 980901907 750531634 811857849 947778674 955665022 476115197 978493638 867534616 884196207 408200420 93210712 285990261 229576636 998753964 271701999 422220593 84397324 833350903 111948596 284611012 872600067 696414578 962722056 996344820 111468454 535263310 110568770 996927803 286684726 406016849 185274782 922433867 356291104 840039607 316922131 414193584 244654484 342523257 441197588 745348448 788934751 645849881 991613749 838073784 913152257 443044063 348876285 805581719 815695967 718826682 723067988 604871530 52053374 977837869 146253723 171837320 974095465 102973063 998335897 536972173 592103664 235369840 571665915 783181957 846350828 822859150 946264481 85780400 893551826 736482395 498243487 495815363 992907608 547434292 232895427 758294440 632890961 344554982 488023511 893975259 580145207 928991171 104922949 750486469 688328109 452871467 449261167 949727568 128766535 883005976 690873872 765410369 882011959 920330529 974460348 982384803 767983909 716936395 962083617 862436162 869387937 65133348 374311999 569641323 585158719 286749264 413051735 737020247 772713860 823913116 759743703 817475396 808646419 34210645 845041082 256500280 919274491 529580875 862921280 623976354 894273143 468962471 919292205 479876504 276862934 880308911 798095007 147343434 378544342 980255123 869325999 775018643 600599656 663666697 759913062 844668171 485521578 586561249 467990145 416649723 754846658 46755550 185221739 869598840 796145 158475728 63755110 469596368 196601984 924978807 393560942 658908203 783545522 444473481 444759393 746693129 964957881 882619526 484160906 635582725 214964653 824306518 311751093 847660399 811942078 256450107 884464858 544577524 971909663 921731308 394819733 423594140 780702276 955197200 629700800 62463688 330470201 818995793 819997082 850420092 13099644 325341278 339419114 411879922 824519030 762536346 585081020 784139376 989251232 724189438 266681474 664736995 371526413 35219118 739576684 668008763 883340656 318673880 216188537 61483436 822939117 542969193 857131550 61248060 742450894 803242774 783562009 294828752 790886441 167748032 68033505 898261166 137457405 694962416 703063538 471798074 470448032 326409353 772846829 873911033 942636318 857306174 933148855 46486619 473149508 946641400 490885960 315129868 269400550 836712773 59042273 358820663 115513949 985692635 49109018 791370651 372983645 903995158 818565775 786190508 860561734 763309904 879448988 195040818 347850162 965267107 173108547 4075855 748890194 873814264 753195470 954735821 510460895 908797519 594165559 376373417 942623664 735171189 700629597 275657201 956141478 4872673 776842688 395609988 63616044 169004642 365873603 577021522 789305809 797188574 741605551 603077014 225691762 811174244 753109807 81124370 640317821 408152247 636841970 936375892 843055692 947533081 936868533 845880503 891111277 881002786 798110227 967408800 974396578 811763486 170583923 850617869 274420333 402554326 759160537 344329779 838183987 917668450 880638131 801661502 563612359 794803724 769024661 589816699 433199485 936559576 679470917 752525401 78365248 330032545 371061693 219973915 523927567 102371437 948274437 33952195 2450838 874956244 420054483 672044367 807254167 139482456 449366821 684036721 594790108 749147651 34194574 946304824 208579251 416518630 740994511 738594905 238703607 213592966 107636554 445629184 797565018 770548264 825132816 756877245 312567232 156360294 940769140 325082889 792022216 379786963 483330230 488784379 459613317 853215612 237545984 972387566 942055740 780274027 9229982 810534605 602793567 849595570 855008172 995560020 394937862 773194123 941543059 796571498 515454709 963136962 189191157 654708281 884229845 795296974 839537248 905905164 176612165 902429035 973461124 969959640 815945278 636410854 334255354 369578482 410404727 97033233 478478611 216738893 652514153 235826621 577273896 321999764 430561000 311810014 748890092 894076606 206891552 509064510 107298550 950314560 974209457 837971816 123848198 884835698 17262013 303467675 756144107 630533708 990907641 617261231 167653279 119680869 892521004 101597372 878048003 365438413 930404348 782509436 765283155 548999649 576013284 507962616 985991284 775771995 939038384 299541757 520018499 917510321 100990932 351442597 492562703 900476627 640874291 855088931 974550809 517961815 874815295 776389964 862894850 958770315 904571202 493125947 525811690 491365296 385355053 649341574 200132362 904331467 792812919 985743014 627443469 195986715 547395522 794563318 821187455 964617495 180463362 827895094 870328998 948598805 115625088 186786109 992930150 939232967 851999710 175621345 996650271 808409479 662564929 199765537 128082611 118346326 91748260 480061728 183690437 570196897 897978047 412819668 52449534 478540839 525472484 854829126 924747289 866750654 798875754 721480306 852308203 423185726 346916586 772118435 802112968 868693712 188635003 887211405 744572200 812269171 920518337 900982171 168402910 881470718 3107645 177914403 171083687 584929490 593211038 105318529 248608643 962949530 816642316 911862805 311167079 819856586 940839637 782501682 832265493 814218764 974152086 782038429 718785873 51410236 999129147 810413701 679560590 680038476 849931308 788903652 442967889 967684970 528237039 431609586 790539040 856363607 33950668 764769825 376163297 791637413 878135442 549262329 242510490 137675795 939778651 230368521 988341351 64629334 745130786 621520056 833811350 3664294 460444363 963960369 75709220 887598915 340873322 849662556 95953454 765994024 389253621 19734105 292631701 192498132 998771571 941691816 414497582 499959442 459272301 908223951 507626994 919525298 319069045 919469852 744722222 71266916 110871102 968041979 757632593 971152432 881658295 937593073 703266593 924348765 599032902 859752473 422765372 981719913 946202488 762066691 227843185 844267538 944575340 924931120 846921296 750926310 789284356 884434792 207949833 797452710 206917972 576848411 527275182 172549984 579081613 863958916 297374512 874593998 539993230 273518433 846528482 696372293 834770354 204485228 488659099 503579347 565583833 90423445 869031568 921282177 286772929 318152142 364726963 895257038 970270813 711148660 887687444 938664057 581487296 987434642 816513832 798502194 494281012 749748313 4303994 863924591 304666880 820064769 786031409 937841668 185701901 411844142 755191008 741589756 76108852 874203263 986416885 917350301 57161315 982422667 622594826 457298849 803391609 960860432 462790982 937130222 777867012 311794365 872013768 179236042 930314127 54910774 648838491 785230942 473306533 653925807 940683912 421030053 894756858 874247291 532420380 557651512 939485703 589597607 905822827 294786471 36876887 606783651 940005826 20019345 111167381 193405165 716811168 702395939 427793078 896712255 216790600 605418550 476331565 795102960 255987293 141745981 809826525 474302064 641200153 822595004 366731715 989804801 926864529 644822291 401752063 836672379 794562315 892632764 606219776 979594836 601817459 552986743 277788633 418700481 765649846 845720477 852927938 200336575 855575680 526930036 913158536 763359423 677015381 524313000 773746286 738656244 524408917 95823454 875027654 684495711 770762228 26060000 387298644 898222722 990436660 780010556 952732925 921050304 608369792 757787460 327778546 875670997 891039969 643605733 436225982 133951271 774213651 377409504 234602070 855986039 875483889 798922706 219165940 880167820 872861265 771710217 922888609 747763699 768043049 852258828 808127269 824320304 31027635 515939703 765721417 911076232 975396271 298456132 328899877 886342305 179867275 181547859 693562110 875143750 864698219 382339712 353538806 324176672 528663268 986140913 636858674 587071609 467546236 896125053 985661757 947436950 199499043 319758631 553854025 353952939 877028618 932083422 924072566 499852005 774692227 717619852 686950102 75255690 22639771 351140908 468832341 995266022 584914787 948527299 822020624 968013689 450475434 348210027 975804476 880362697 378952510 813396812 562682331 645174250 893496525 970107796 453909503 998582336 749941906 199200187 18176667 842588376 531353507 816373489 790821849 990679053 40578760 182273770 769221845 800853379 945371990 450583734 985881440 882794760 486099357 916729190 943347724 904955376 339900296 995678510 910024832 966648724 27107020 798544632 920688945 934702700 199840381 62127928 915030177 206996812 419122768 898424193 568587699 809561223 816403349 346126688 782926337 820790566 35884088 126724846 470326717 652994104 936271956 861570217 939620096 982896842 430216797 58438295 394313916 373504319 792770020 851406305 651938529 871825234 508601714 351390481 550048493 754642551 819993731 280740392 810570697 920760088 719785781 613626145 829366330 638941057 983005207 562613543 164951100 932948053 936459456 426048690 772522791 551643538 250729449 567988402 817896698 579835782 826972443 710056112 870695016 976539568 286561082 840159847 778454152 805320096 945101470 50669066 400260038 868473091 924020293 619422311 919897016 782693272 536676447 838355462 611181616 981759774 382531656 860499058 907656299 537166615 745668130 161880514 371662129 970177056 103665699 516667830 317819951 95022132 837673394 930796709 480479534 45624562 384285713 824773595 715081582 232648387 839423081 102200143 272589001 617648367 918312919 489930070 851080776 643388336 66347388 300149526 904591609 814604045 635981255 854231165 165323777 875162982 347841323 873654462 88624166 978328416 660896791 945893792 756810212 467166151 669704457 964739071 509176227 978138418 175403656 633471499 982313736 148667370 999175737 860972739 875575240 745798617 865178599 908836529 887474438 101346248 821270281 90556641 473597443 3456912 32962288 910176313 24904482 486605460 874345488 428705529 868190578 5730087 548577546 948934129 987588358 909332985 805924146 953643558 527272983 11105617 30145075 737713739 742651098 182474199 371873717 911792211 515749580 963510073 489129672 987895200 145802146 337011087 759455724 971102693 605502408 769263823 732612343 765737132 964311015 137692055 622372429 623531121 996099518 390513894 659981894 638749579 754994549 100828312 773230323 807508659 512106754 370162252 895797059 470277733 823791500 380974891 929611266 136876624 515133976 937820320 49513974 120206865 887337395 799160596 886711840 938258409 189686560 767859725 103019586 993381834 928645990 999000788 269178405 55699073 14191595 200422693 924171011 628248186 7500897 999134109 776376869 301951817 750726410 322092298 373239983 922735959 647225338 911252554 73833047 346032885 327841857 836725241 178211882 377614650 760703485 903285432 115694738 731620454 65477072 286411427 56820092 744982341 817721885 100080708 794975725 667354147 909400958 405065803 724703793 652396377 807507291 933934346 550425400 95485375 889383171 751677961 196784815 710561493 936594230 422200604 685914706 91351658 372329735 822057003 751586594 805766848 220686232 781350054 801996045 890577928 488021929 557960593 955137330 944308910 968455486 674118553 266425154 830686112 891553838 816792725 243728146 897286933 834364214 788438539 373552271 404388097 185539738 713674936 809652411 778716738 992875597 415204849 927844720 618103554 764827922 803878574 944797903 452793272 55877513 781621720 980035368 922784122 588799970 504843336 855159519 925205306 619807515 898841979 990738196 772212296 720996357 192937277 995293892 932625153 544104473 209004753 6926567 235412592 829434324 843764483 439118541 482241089 637376394 780742899 228319757 222218125 83424060 757357732 588447564 579267900 672713341 926862425 834253882 734399611 189825656 22444994 835735397 164527979 923817130 892189193 909242140 478316134 659381418 628376930 114118655 743818761 671372081 419032325 448919570 885779881 124200118 225920642 111843049 77391306 786983559 936838859 74855821 98612771 493951708 693396795 379183670 795791785 751531501 817220109 886905482 473581085 885303392 933251798 747014641 293328864 873632070 933404639 834797625 340051672 745111628 684297461 886414534 630419227 913150370 903135124 849383350 145331083 28662198 914822843 327027047 865295885 753103526 859290867 773252101 983727581 809437169 890881028 590422243 432778816 762780766 357342244 905694532 991495089 752829004 837924702 606491891 941257636 733188538 432868201 807526473 908321286 882677122 319143817 875405777 359808482 941365321 221455141 514806342 806732168 642417898 649057860 745537856 689095720 726575865 965561681 825832990 129885731 888133348 754649554 198139308 788672192 904163918 790025691 842695592 334758265 418251634 773357971 677637614 41366163 837096073 437536485 873968452 729516245 415503238 743292858 479457585 744943797 644082735 827247663 804458399 945825260 944043955 913468199 855596812 828420990 917146463 653115247 923707309 261300718 808406592 562386263 244059789 986948211 146203666 439047528 245912895 119152605 792406580 232859465 309633896 896051560 761739233 73327243 993679538 852614437 124136524 415640096 867024291 953529594 63606240 787133242 581388860 33912305 158067614 84015891 994597846 927731886 824367658 27322379 705913894 47686476 810550175 473122522 884533182 956722779 987845536 894939721 198117066 754166709 925544337 763758610 959088281 742888120 503617369 676188418 865780471 973866306 269828587 175944304 980232900 906538926 883578869 719745685 895417818 653884430 926162912 212869120 226096993 662246434 854430487 40059901 192036906 879418690 871425217 806916974 993551481 635452094 461525259 43416993 634634595 996535811 734977163 835153721 157699198 802236847 757658825 191261819 108351266 777535762 831730660 891387114 229726099 895849162 402331758 351279331 984523652 933081677 586536255 786300669 802774312 745340138 571282156 943426770 775174441 301764193 828373755 423905112 659948496 197186372 804253380 992332170 611230532 946910620 854555054 360658178 499560362 779336708 826663531 879563345 862320690 186111802 455195418 32042155 428485804 141372145 740138779 415882952 774097456 806702064 174436606 784603814 740326130 950463079 923308019 944535284 903912907 679858190 618452963 534614591 661808931 34763767 707375954 434565465 316346823 941115606 703288588 312829391 873233964 274057274 813348404 870136067 788663315 394294199 741940702 817908714 33650988 128690467 905834448 912569519 228570707 953148718 147820109 325797492 925938573 456771032 829059252 567279602 922646994 970210911 753007813 406749054 54641334 64447224 234327908 316860357 322047306 741268959 412212923 924760753 334639347 520462396 746985320 634573020 873266148 334786367 645951776 766662231 988613259 847138961 745341755 217519477 958335939 79963668 938892687 916593146 804205474 252176844 837040996 779987015 792888800 861398865 17700782 240230399 354705849 990733074 553931911 617379609 986468128 778122422 250306938 592334305 129751832 163180295 195072138 951024223 947418817 148644784 746395544 876214739 812468871 765042702 81250334 772459511 880904222 977596903 677792870 878631533 392370281 869382948 880324740 96603925 873175970 960787051 908338065 230447191 863510576 646192559 90978549 311933040 835966194 612760362 66774062 928710884 384883218 408841058 663837121 465273685 978454882 893667561 856521726 269067404 948277655 418444146 24410552 600348241 406195049 969857240 968530589 785958702 806871428 987204812 862798666 966419534 826137683 277047560 872385198 885592638 421491559 474425022 915550648 987784889 764411837 779089460 936884015 750413478 54881002 536200303 526825189 839072925 788538748 932498852 979343445 104040793 942730624 132513722 875460195 393014965 250435138 376732380 440056929 866073436 166637930 504514861 899164895 585136120 825992756 365134572 975628096 786966043 789987817 444141992 668525558 927623088 970726018 213046460 910660073 734770855 253366624 913879240 822938525 840071703 883895547 306214807 540891262 991666219 821578783 86812231 486748516 259753328 400646766 818530822 28025289 293424956 967464575 601179376 863690475 54791805 325999487 894045467 921956046 859490022 865610181 78186870 444012627 392804066 230552276 112362756 817750214 756605292 891314447 316671968 936315390 632261608 469014907 522981508 793222790 264985001 922622688 481048533 347466449 968897655 921268249 746081719 375890325 216383554 81665030 124756371 962705584 762742756 693723041 529376451 880695423 613277112 771721147 776891754 810812487 909563259 194994189 236093020 609059720 752898489 764277718 549054229 910273653 393798499 151223920 148362804 308890298 945505133 954977113 249453268 535608912 999053144 814254087 626739897 97171843 362837100 813972354 346281476 749015180 12001474 750190584 307856342 216969780 418884875 830483802 300900714 619787901 178400589 730937076 743801511 859452778 13866115 770175611 322911519 958661488 633315498 746256199 265050014 800942794 534749120 652528799 444000333 923181735 946203799 383013768 370796468 626117582 743113090 547526983 46597352 789821511 655301248 866765835 286002770 776209992 211408543 759392305 934939992 834920402 20983849 747762206 853086368 866105757 623169868 766774332 936727753 438954263 826850162 281049598 490965288 20857648 766480872 800350429 605393145 910027333 584619897 622029833 658318755 615803305 604111546 899142327 542135569 970163513 982583945 995807044 898629631 818739812 774911295 550191431 751091329 427624832 534191289 796513473 957120564 697524708 785416986 753161591 407123257 468793051 849400624 1560422 193900146 34669465 817873292 84349431 164200748 247968675 807726648 209474333 953937662 970518699 93234031 825731328 594350065 822585998 819183778 22517271 61521947 35874071 597882555 65470945 820462036 300727728 767764800 803955447 233681843 395395278 802951602 864560118 881419894 226269142 821738385 148418765 676784316 950667200 793451524 756379291 854521442 871140931 387746239 228586859 347383291 785860538 970695953 723385225 836107081 816136993 468842746 737803102 739992837 297901771 891182278 440728174 103257017 785725960 852489269 347147587 780904643 334889645 862202542 874903120 899858664 843251886 509434847 142290795 699300599 64908553 992389473 481179475 899996979 85365139 961575671 78969799 111331941 56876421 770954865 482619172 891647386 616859961 883648402 794335139 358883935 486327145 483747903 20443777 964224263 962421999 217178963 781587269 722703728 824827269 656486478 540708703 925451027 927085788 820897472 34901214 952493903 735283501 131720729 742002147 317508068 455646433 960757528 67034661 920122669 906680926 920709700 858179603 910171131 924799876 885055319 647756885 873908002 998795659 875709464 326938757 776909675 996649135 957400684 293618509 876825134 498874047 900028962 824896507 828247541 170297808 921189761 6333099 678081347 977847149 879283088 756493217 414546447 966339580 936667493 349471169 856356992 285600370 114312294 257089016 979000760 387757698 316703820 558992080 924544316 974340370 787571290 48048255 354877517 805255464 633910010 825869243 478507703 773805636 142066759 740436666 418785194 723974769 358519435 893161088 602183628 63986814 562019993 96191827 856743560 490330192 340187332 983483392 285856409 466061982 796176645 167515063 799977575 352836516 417422331 227648632 975112885 969663941 658001725 840165381 311009395 823575477 394706951 671932300 785951842 892628008 947190223 612745629 836909313 63289397 129222326 168480138 619432520 879647005 399298687 271766408 722522225 353230862 969125790 714537912 216285308 419069221 888765680 348555990 796632945 802906272 769443841 239366147 6811528 986388802 678843582 693033088 630390884 869430294 565253719 894190292 864711727 790031501 125630361 332277804 882859483 33729315 987250176 789481909 845149290 986324762 469403874 741702394 287312148 245170072 902820741 118361645 967483982 982442095 967075147 944453672 30156777 845257425 907310606 88910572 991492093 82917753 758149609 101941730 448233975 322638037 897283219 133159326 489449043 456837773 459572048 768944024 760127010 420353536 362898715 549525598 64225935 892975616 576695736 653496463 757157882 925763955 504220708 597641494 973429069 904595622 964475536 829471024 427539283 755571932 323615883 469466023 278682447 762790485 990112842 914434542 901348369 132790548 994766685 16471739 175433701 666452579 319808364 237641714 57831436 399268433 46389051 263556727 864787460 79313813 497814319 270650488 519761103 975741536 932654576 775224049 943913707 775931278 355994581 867454245 639106967 982125967 918026283 649440370 753838918 922577142 743488774 918061774 914845895 372160567 790855699 31535208 853188327 756542282 210759633 920718132 47216447 46554754 522569565 942929135 202289644 277787140 199856095 83928186 522051458 101500179 738723775 997977578 210751864 847891216 987106903 856693914 310637468 746183043 786950700 444898901 133643011 933089577 990349476 904118860 968320583 869653812 32710629 814958157 802519687 50428918 961250866 926283518 777189344 255676245 895638985 964442058 165893533 87478391 68113228 986198473 781247020 937324827 207345354 761053554 667361870 742281501 768065572 905310659 418061118 831345949 175471291 395039749 855261972 764730347 473714009 149968376 786022597 253258393 122219474 981439222 249208247 227373520 785884970 315184580 199946695 737996507 577562322 825041686 716827550 845414523 850157769 802477232 13965992 757062959 31493719 234931643 929655642 839320123 755784846 267018520 791477352 465327521 800877109 929771104 384227441 767424009 656006954 958573363 943148214 643180095 690409014 941067444 731963326 52770381 516494175 390092744 143957001 39354409 950275318 88756571 972189223 811229865 663325360 889689478 752827980 804873940 751510877 37169794 235035970 771553808 395275785 594300512 76391501 942882688 855343787 883962497 738134431 667967316 58394475 777077216 810324224 504451522 700115165 828177845 814936781 223468492 173894200 246136752 194091008 74491944 474937565 620642015 799479030 722366458 251298843 176932852 588571967 67075448 93701629 522466247 188502640 974608608 822861097 938500134 613006345 805429182 925335661 78971891 996009683 991955313 421827271 872705343 190075349 887583090 933101695 582163072 639378481 139614930 502348302 747324126 966808205 180137893 775684451 305316715 831808405 984277487 738037727 831290624 956975154 234557382 508799124 857742654 978125715 922322218 414331220 802177803 929421493 380351293 701176120 82526164 776174279 905536095 40961303 870939388 944027332 907485566 794491737 205711227 274092695 924721640 53124557 266547909 551990672 795831686 814786223 896778274 851495940 841689077 239151882 615491206 74211162 808795474 509776458 862712810 681825476 452987343 755580589 355922297 763192437 809419819 101615704 350314580 779529900 296774418 510719333 526010663 267170359 802227525 21521738 390340056 256973092 998142366 712890177 942366418 852267571 758766618 389950200 866686040 919546643 956190139 467977383 740314702 431654122 891812190 336778487 681064373 420403766 916638885 959230290 563072042 548150700 947216842 47049928 538333297 676489514 561064102 836301445 631245378 974831705 414977057 485988105 524632743 841990059 231410962 100039452 40291005 174979985 955276464 751756292 953275955 304826029 741816284 743143640 969054579 945076093 932491011 519009770 88509093 670411577 513250233 846650894 785158137 214827955 872976485 233037745 874464395 860618825 748071553 352622876 869162012 196655896 775916384 811671196 93443911 766923496 635531390 957167474 801182056 854135293 468989140 619210528 304801344 862237592 873688962 884911841 813829807 777102462 746455806 578720667 493171328 937701843 808404794 908435954 13826589 326225705 727157840 490141646 741733837 283807800 826562950 964502960 148997764 943142805 111615003 509546079 905889715 927478257 40565791 881937329 761953543 104006987 926947289 854007259 779546082 467901812 181962484 710333439 3649671 748097050 831420074 953120337 245543034 55040518 882034921 228757448 847577577 630386622 767601477 401701390 862973793 462928222 956853500 740175469 932248831 859121421 582187083 41796141 959995283 560257237 904916912 952824364 827685430 117951109 701158771 798192959 497852735 875790741 184005204 739789477 764024061 894651397 247688919 885001688 382929509 852941203 877142797 187510504 906832717 829639618 170828590 683037900 312615011 985426276 715055347 19101812 333520262 432257438 747811099 672197612 410219619 771032375 245491341 538771946 633905036 155252861 713666825 402040082 468586352 534725473 478667581 687656950 125715147 778641185 477149253 738892058 134485429 787485355 585606076 941115837 894337055 206901176 317632272 574455704 178291016 828901890 787730331 920295989 847796491 844268111 610698558 904409064 869866205 362641269 960914041 294330009 982305484 595008954 782740116 135903695 943600430 936785314 993365019 894413871 934803301 895131416 894037566 843783199 228566138 904746115 892223272 750996938 998983774 917718549 264007729 752480173 120258557 945835232 452611530 179051381 133375875 964698758 406117124 190332058 883246478 397074774 398501857 872361497 990719410 945848275 278853485 820931857 721326763 989248187 752619339 896103171 789511027 739368851 237100510 476696577 887887357 116177620 184388982 866050774 922906603 975538016 378320325 954000723 114032320 815544496 753428292 563820612 767734423 911646305 259113690 969076652 643436516 747334837 953471971 134701976 738711135 170883817 669904959 876927090 373582159 951488183 661414283 378007507 137699856 781863192 910421838 669321481 293765349 15327081 138841390 923833203 891009481 782186418 770637784 826647951 380884431 473185113 849625490 769403472 40465100 908044556 920250942 870124470 561915560 935109526 902323763 899998411 303420664 730220745 996576349 622534615 289174665 322264756 159513713 988795788 952641589 190668233 849009971 205743298 524648071 853285808 410025921 990665914 646524774 753530771 210573224 956562713 690070724 262755297 920890933 680539830 866643621 818973039 769280957 527522592 329689051 293621015 969933308 589480830 705751084 777752375 153367957 195580439 346256792 785701341 816024601 494312973 340165807 806717740 596898718 846294928 738894838 226232081 342614638 298894175 555597124 431754467 259860330 109436764 497170728 310408137 206749969 952410882 60014267 407664923 834073463 785206728 784484266 522991534 715797591 835441859 122412760 373649047 143685593 671105263 677461375 90591743 42138931 785485850 847886577 836101653 788724922 797360817 843049617 892911081 172489151 787260174 986704293 384782971 492830164 983402226 889659225 337620289 814209279 765380998 969163362 871745132 240087906 897387705 605852173 195163215 453838635 970843424 609261874 761990745 674833271 805533716 871340097 918429474 946323474 871598371 610823361 662276443 949031791 423747051 976775935 839290537 797225406 828478716 795414574 824833945 879265395 824779067 256239801 778370269 786851870 783889400 523047956 522122977 677500437 935998933 786270586 321632728 536740299 840214657 30401603 489403188 779420575 692973250 126598673 20031495 896826301 68515517 165265387 827185482 205972887 832650438 238806834 170595916 821567898 322953895 784713609 233261950 840582552 452522371 546897745 689409209 383714365 932534816 885428052 782081094 854445936 919261864 904224633 230131725 415842201 357542007 943598431 523180176 582762862 944617981 917336374 984253128 62267111 423622337 600583016 452862251 826270554 399872635 742292157 202620610 843344007 506857790 316436391 586613033 994235054 565875033 494589930 897433398 974705538 741577923 873768626 508764945 664050884 427757452 6789898 893290228 723349456 474942324 47348003 807970908 15667867 26598472 256857266 89467148 779600230 303618219 900070351 22313 623026674 854966822 950539044 934907045 970230970 331040509 332040568 72900826 816758887 772832464 656050842 776517505 346111688 487954702 142288988 710040517 770298225 393212553 793734253 564213830 883438887 941554988 37614563 953317603 776029647 831862624 888672240 884444588 748360550 961500950 389251226 927970339 996003797 653973474 999489750 41957835 798205435 666900374 736302456 225729780 230833929 903769612 794121262 331405423 521179978 804887775 988066269 892137466 988207259 279184288 995224367 736343055 296010980 677968712 716339633 904783375 386422965 805957910 850278611 657432631 682295737 742462924 920915422 904592138 976109923 182497827 954633350 433570669 93828479 681102987 181045710 583539031 774869232 245609321 750680664 273054883 506706425 942749208 795135799 842172848 998860323 798055599 988712142 200308420 398110869 933555463 420244153 680864061 11003774 876299480 900025948 77705994 180230477 91826208 675461574 426302569 915917649 954231975 720035237 44699853 977932955 687900833 747688022 975022937 746144423 124567540 125533260 43355878 935464267 259855579 801775005 840280973 923486945 426696075 786268355 977509996 793646918 931301345 743314023 291807437 754484235 647370909 897240799 914326071 162346623 300080731 257218268 643757210 979796677 794855312 557319485 533852057 878397333 765981327 426389662 739098767 855530873 890865726 18357427 675580578 515332360 988723562 434634997 865663332 957347706 276247314 920583570 969528849 18294034 696290703 39459998 889595557 880637143 689872347 673909508 394367033 787584099 882593757 995755513 617038215 821778567 978576812 791138170 73847892 818515747 447092977 761102317 945293276 519143614 756413572 368274795 924497695 86357622 258828134 628233913 324424862 694817235 779400132 62408797 887555484 846583327 816824762 871944451 826118128 746830555 771639757 967528791 833584979 953255335 421743995 185943112 768945510 233959010 580779342 992023027 1758657 937890406 129243900 627414574 783309068 935822949 885833127 568827250 901121047 525953444 945881413 26775860 614613889 106422342 979997495 794397314 193251456 768603774 284355995 763875569 125808274 756631366 160222774 859764434 833853030 796554323 38604575 861446701 902837248 132472749 729875237 420949313 783900348 988854535 708105970 965132078 842496685 828258455 97366729 642921284 267449860 407429237 692626547 494311512 453666622 936202687 167251865 184542069 767257945 615488903 829395930 143844414 65262636 256232589 539544631 982071032 185592479 425558823 887103124 416345550 419414652 901667328 234811446 594507219 492880363 802688656 954305058 917650194 810951446 600630593 132137405 96044016 753702964 101564731 301231268 982183981 845281615 440022684 364688212 759534735 874703041 351911292 457022804 754936508 699741139 41316957 923860522 860915882 767813037 745559411 857483036 34627602 387976376 965981401 705296910 778704840 173415520 753404552 909099791 790763560 645325705 970974010 407565619 714081025 279419904 67813077 935783183 199667392 314531193 857201476 885969119 811535055 881304555 632551587 392428907 979810464 454678639 864092512 673674612 459610475 635985541 976858653 322816993 345108232 981395584 818811378 738373626 874203491 172638609 704163025 916371740 245583544 512307854 207863525 955301223 515213109 869449772 934667407 235734812 386531220 989521907 739367096 99304448 808965419 962656759 948771571 237625947 825838081 153997664 901086350 715833287 450746299 959311276 928550143 805114500 914641518 577294907 936170109 902839554 683750878 979185853 507870633 823080154 849282558 905742321 219975894 747275264 588742452 746951117 178752309 401630387 929236773 734844351 583491250 786524742 603637498 957253439 966211834 604836352 963533743 593062449 739008855 910047116 45971223 578207172 794652185 893238626 643769908 84909434 832627194 227125305 651290566 909252123 848953800 703319716 721732439 859247245 790109648 279290266 7842998 914248239 692122369 891755304 408904534 944938529 954202517 443908814 294553659 33044303 785848388 983274822 469628209 735063582 169344987 611103110 449564634 166583935 781066793 229667537 829756136 20558117 487338898 773416945 975351824 826737098 963989162 523271087 204660023 755039106 606571531 820421459 944010955 814735065 806092894 351019940 334630493 711522412 776562241 774398084 833371323 795552049 989675494 393307649 858333241 369532044 954828289 117295412 18714988 794822520 907229731 838610998 842493887 102640530 154796484 973764275 956550310 229417390 901356843 987264690 445075870 623325656 451575510 175625875 718653354 67240490 945509745 941792642 29944904 212028766 453184600 543071871 834163544 569225591 715278479 651250229 757457407 97942897 427479107 929094500 575476630 526327450 703734696 944988707 375902750 155275425 873208767 650650547 18217915 70748550 800304864 886515612 488602845 552098467 971470804 258487199 910080945 22757777 133177699 769580383 777943979 873007564 984883690 75705368 954833919 852888171 944639030 924127936 938380649 501055570 827549142 387716532 876434154 639274951 744338119 827218066 897771440 148002471 988272365 788880150 944821296 935780447 452399123 355383491 665238970 188785043 814177653 737051057 836908273 46269959 535431130 994824367 835043007 949468609 683031769 742107254 965346914 595318076 937311851 561912308 391423603 794181090 835475851 876647050 858008184 771444404 997173963 261425913 96986380 891118400 639899264 890710443 944941117 739969729 823375344 741685131 991863660 248211960 835665571 522243675 948691538 892156528 478351410 881333156 659384030 129435666 3847908 8061201 928943281 184011193 322009846 900539275 576270117 211502583 95978082 17883466 828526090 806880660 180799701 886873975 902707346 820907101 754162195 798041376 181670153 552634346 891467060 738149229 824754598 842107245 954092296 611701720 54815339 825319584 234160594 892333916 882056946 559176304 267677620 770255648 803358166 370096125 702041747 462032771 993727679 914639748 866960908 259037111 949894373 809377332 864860692 370763001 841563838 538122791 784988993 732905404 479902381 933642472 719157034 691469801 479701548 761054825 761338518 799008771 934334695 761500479 145145025 861345342 414731268 266150425 899548784 347698843 648621835 872609306 654651765 789524552 794979160 169325839 418678788 862848796 79760991 697917891 498022983 119248595 771311407 841733368 513771648 551047359 611126321 342588803 315613794 831825319 187519570 687769246 894547132 943719349 901770784 524243243 843633001 580339937 441077695 302491135 879502449 889038650 378529655 996155751 2312036 557507662 576135161 894346286 136414291 186990482 808857103 617925380 820639509 756476551 883039759 949670823 439864435 788855292 701493611 846555592 64878122 811336273 442395238 892982473 447907241 806201910 823595469 771089753 76913576 26632725 894544027 320581284 954794145 170412138 388181068 170103250 836107598 191696882 112079466 313752023 977274898 572992961 677984767 280997085 848179160 764318359 577157380 735378067 762702582 753066828 855592454 172901848 498424817 722846731 519921822 518367319 976413928 804044628 324309740 427804598 881863317 343079972 909007649 10275436 835851784 628973772 508778249 733396893 896747756 978748069 797300932 940727322 473512815 828255491 961719968 533909431 62919283 779622432 757226751 988962922 612169924 840707412 836452574 686909227 748123423 735166480 946089387 300389178 45892150 406432478 968197474 762940145 923430450 998565557 953623862 847871854 340861578 935428641 935200882 328554886 879390499 964123353 835731933 258241943 484264342 322476976 989045405 932703952 897594110 220936523 526960906 529658896 995931787 845479925 700058692 890634349 91102354 945137424 310076250 891848277 833383371 987537954 915413072 158972754 604443985 738705054 518572976 695380093 18943892 908838067 389162918 906462417 943102374 853075540 172713101 266245044 784737676 934200780 418575279 693529630 169597608 908304783 600028700 803044134 129753549 107562397 472722657 886202661 775638397 993261592 101100223 686232263 662457451 26559418 194561021 910850532 729146827 492060386 433307307 292361837 368294507 145061762 927454518 727994503 579572159 199789231 702893946 771439938 896537028 785724185 976983082 851090829 974095882 801268362 376346540 887581646 534795367 795920560 224811898 959598925 927724077 764524197 603004482 526407423 597841662 971450835 8044831 72850706 845500623 935257426 316546033 945792859 890587608 812420948 151680716 639505379 850514092 746013951 759591673 972007349 603202455 942230106 759622512 776878812 421126557 221276305 752239479 891233966 389036617 875883624 160071985 740309936 320404937 263280323 511346352 135698808 958641500 969734739 948724436 234322738 230023804 885285632 936360361 362623671 910295097 800543586 692199790 767907236 365304176 411524908 921229264 862445358 92895637 661891375 853977278 582282019 933218702 357274265 913408937 968411739 389361955 136449013 795466970 910972880 445950208 962924185 809796953 921835768 824956409 937354183 530289066 873252978 870868141 342803252 955782761 418360681 879947294 609947850 917359214 950012634 242373511 162844116 168367219 441818474 631910865 567805517 860463293 805686352 830607530 445372360 130605380 777041991 812664634 948160252 507661004 958596773 966497361 76880073 951348051 306724595 395199588 58947269 224150202 488617020 938770002 194441900 956607980 45824755 304024637 610340774 812752286 986691104 742563749 243644310 394520300 490832207 60070616 496976663 406643132 931199767 923710252 620949213 35870456 266795008 806177907 405859759 619226624 57797875 156158892 70130750 765195354 992093826 821199963 732698361 484496506 864446475 940326594 186464927 239432785 571653854 319049806 968368913 761965970 242955594 978719639 610302925 791319380 768693901 488039460 358037666 988545794 756329726 909872297 11440057 932375589 583946095 758203900 437648201 757216991 569862528 168913530 170011605 164482957 982676838 373694761 978042824 64425884 918623361 890260873 444431473 888336078 475494275 991807714 447934023 166432929 611718109 222867619 421744295 406207912 65990484 494637326 787123121 371274974 376096834 980412551 860860588 766170432 166460189 60034044 943536185 516551042 925728482 786836430 953750983 271785881 912678762 980657936 798960524 176019065 769923318 765630714 243966987 628438285 855952237 798376526 755502336 278938109 256214166 859633946 775306909 992916242 688823455 793103009 9408036 154154380 770294651 843730022 954320697 388759971 299942695 797555909 373737949 810803600 383493206 296693580 774076303 847121302 126313187 71685027 325026509 804332842 891874589 942814371 595243779 169919050 87103585 805920284 96136304 101441153 603908106 782219946 438492107 909651170 793285364 747632619 773906564 926162648 517868053 641789390 831401411 801018863 989686938 189183719 905779993 654731770 994476318 424307507 726267892 469422373 130365505 211756914 799783004 978862845 768030833 132720006 957961146 11755910 737020247 728022885 901382701 700909510 743917875 349357980 439819529 31259193 113435187 827178665 922934538 810926584 14268524 559345646 792575612 917941866 445511349 499159985 262199503 839771751 475574285 278143097 978229369 766886085 964835935 992645217 703243927 699346163 866690302 904564993 365702054 563208836 965165306 93815815 289904682 969429867 597281840 967005412 56093566 752706975 739445299 26256573 844826026 868309850 888886672 977325621 537390164 875708020 407715576 250152086 895615999 894378316 779589095 825471580 783638750 777769020 312250659 462926246 326320920 635190886 113049936 797711154 635746964 916553750 196963622 945210798 907539313 762220966 369723346 764536314 984715545 980501737 523854643 395892766 121635115 473216866 142174813 739186100 93385044 715918946 31010631 968962855 431140128 607810740 432565235 478851542 302343458 967265297 33017344 26257157 426600030 818482698 262689281 764916156 760314147 211473465 925317280 961096453 502042135 997146120 802279518 367448174 934263307 772204096 978123443 440893761 595573715 762024715 551841367 109927170 202091859 352037919 302942058 136823915 841634200 132960033 888655326 893195663 47947462 393092211 976573165 753865966 763562319 541050575 996165355 517746094 875303472 258962191 802171349 349632740 999730226 127228207 397821759 923493668 851561693 626651691 778064701 795881995 969770708 972876161 927987536 787488781 216372787 265507654 778672389 883839666 49071321 324198661 500780219 914727678 225898942 925242800 813264240 919290377 317215797 663878468 279675501 293250566 781347065 902436228 489261740 897822519 825807799 543074215 802576627 914970536 184537584 623436602 330194825 799874754 986888706 853272637 957940015 306288272 392702297 874121810 117096132 526746069 99991560 992224968 287152584 402326596 14695138 999050410 683621317 999477314 868770734 562180676 952237000 792920288 560925290 886746162 255949300 178785205 234526407 478633787 915973006 890843890 847559255 880365612 640027240 22901443 766993536 695554098 935005544 789302854 369785680 740053671 1601005 612877969 491546470 700572781 928906314 988436421 340546067 431774846 813467831 140960485 925919822 828137378 550215358 884611094 936106706 212194556 446451168 560532756 546541746 375272554 603737845 837859056 974123938 866857523 339756976 924238182 137161572 799327841 684863835 754587735 808134744 311255694 909746105 847966678 390635923 924942408 932180316 899625817 339104272 1545824 831871137 950023009 873487449 407327422 609856006 846259524 37470683 546129580 916297200 273760275 780072437 838495141 676335310 776837830 801446264 865878539 680543731 960630976 898462536 909262783 636559646 896137237 584722517 294916489 146876714 14418564 481020408 890199655 161944629 998749637 937529989 573426685 847941129 787954459 937966710 947456262 963167155 793184256 790012057 351420786 739678700 545574456 806193333 624204499 30681072 742039325 675994230 715319447 804885244 811834270 143973290 188510982 994370889 810525446 891326731 274652586 994572499 484577750 222515576 759395938 169654405 118626065 953460214 53988204 952121713 824248748 859944428 810467921 738738855 887406248 969358552 945633624 457467822 669845638 80277959 778177116 250132429 346746931 893730846 381525394 389502909 688199949 774695879 693643254 500389949 387847174 741675868 806637261 521321652 194299345 36781630 798854638 611749216 496899357 910539476 105336861 210383452 61170614 27593183 745114825 459518418 550440739 982603642 179209989 84078794 343100156 979691701 827499636 857322795 953190220 271242681 845097527 265618938 986928360 882568366 357250355 231569901 405436374 259344799 915457774 362446578 928151059 176288291 370814019 954731745 921921056 694919559 214681335 771524313 752286907 740576560 700021234 922733882 581206952 819055194 633825570 39779154 794995036 882253635 410068170 581921687 940492409 446484202 923758887 368069181 760505173 932196769 623170559 541702819 875723814 972855625 250482225 538487027 188737738 299182602 619878330 955079537 809430601 749207179 792247231 510716286 923403170 956358840 861544016 914840140 49531498 850131783 32033989 589793857 943938447 496575946 314577435 817240748 290562119 933503907 960910559 844780728 904885996 261539036 91207824 924393991 789170006 996445333 384619725 888691377 805464533 754595407 778004813 994456876 960351726 68944316 565082166 209356789 956894869 751952349 496304988 431801043 353138250 437842574 737020247 879406539 992839500 909062702 729455824 946361465 778505906 927751209 738740517 937550946 795333164 780764906 911380125 835584393 866104188 846545943 455651805 898032032 86113637 502517340 205497960 942542809 869775713 282105136 73921274 400493986 5707308 902824637 421110014 37890955 640065225 47745334 654248043 763145365 837283295 880793059 120171235 197467903 266900259 852314426 791550627 214030171 627426463 828518940 446035846 785356759 699897320 11522413 614971919 270861436 821713530 77602402 935513432 664551074 977182778 272556775 130797117 886505119 874419391 405506965 888455524 503823649 876416235 777251030 969548714 411142637 406983715 829876452 913001552 798367826 630134678 112528062 27145613 175923520 210288923 969626851 69484890 76358401 930614793 423921878 809333523 869994235 997924235 775103225 786173141 909297967 992149725 648123111 696225730 861838493 651453282 934555041 959141924 419319910 912557600 925843124 251911226 882933872 302045682 233451747 933339021 579034451 57054127 686575098 31396325 979192771 875690605 781282647 964630537 881710718 944575488 760809132 18721195 833141001 871560429 40728560 518995901 961095024 548779462 524864915 949906816 844670389 681729708 288636314 37545603 322390506 838186567 47230306 826886650 938230129 315980628 974673981 720352980 435126274 469872158 845965187 827969054 593160816 920670639 942992095 423244092 731073345 904770327 950597416 914310662 504051802 80421031 741388090 872873449 136047336 87420418 896928241 937642592 963968611 902857153 668682945 815746434 829830625 45678903 785847732 876332294 669671813 388236216 952002700 279201186 586534747 811671201 41925769 766183946 785712223 563890459 950030658 531674934 383061185 804874670 804160355 11492247 983315943 777241054 325468371 819328773 162489580 881133990 436468861 293600327 965521193 877717858 767506417 763026014 921388242 972726386 924222666 773885461 690438087 835999289 885044537 674033900 641525935 385719267 662667804 28684746 532367857 376050348 966270429 884526601 927464784 77257716 957464917 863897219 681375127 686292212 730621614 907041589 903321549 598771039 116231074 998907293 693319439 357672910 880384115 776015501 714912545 32860894 990348766 920701398 472430583 180339934 298318128 10057191 602882675 801260962 965312628 730200832 985852602 437083352 902072410 756420992 405672564 51681432 691467595 969537206 820911790 860959315 319263348 608023521 974171650 825149267 613506138 280827504 21031008 564731043 740256851 684308626 839043252 793074957 489744144 129812917 703815429 599437233 563121736 754710313 915859656 493033045 762764624 925230109 322168357 991731257 640317078 286258151 330954823 243614886 614848236 942645525 923193894 551672199 332055141 639973606 153427110 724170632 649232230 613712593 772143150 7713416 37292516 13432576 990578157 969725865 945162094 782579509 889850101 132926562 923565914 478918910 41605731 772686956 766499651 788594940 933501121 408465048 917526624 161171222 924576076 34299162 170601345 985795450 97360292 911569386 907234408 767872225 687598237 979272430 878018995 997110412 915324573 495733061 703684684 220813191 739365768 765016229 756348006 136454516 957446852 885577349 474279554 944261237 872293845 236336644 913475150 754687394 9043415 390321144 738718869 908141966 522754538 801143364 746416250 287412825 948957794 913283521 895667450 727425630 129539978 938272977 696658732 228268749 364218695 523890447 900038729 156578364 950654437 671308125 953492513 828239306 962167440 476828037 188619363 876562973 945564310 854379336 799068549 104847584 902267075 204462631 757138571 440373465 841604593 90410707 788447856 259775640 590752788 993481259 855270558 685633670 317500540 359424266 848577552 538307964 832372647 844251830 819334911 407844475 925135621 819328862 405434919 573427546 879232745 813980532 403281726 880620160 586128280 588275593 158585759 677939664 221626084 787165840 763240924 746437616 860507943 820068945 104726102 758662560 618489547 1460697 966219402 865260324 793888524 708803554 990133532 800148594 320474169 986121401 342061017 688719229 457625114 763397672 217695250 175929151 11225978 498719225 979544178 863098206 285020437 978288839 795412767 587282078 346130222 982828656 976079108 918919778 841962691 991644034 232210058 862925418 859433703 26430509 766296383 934021862 851217144 636783277 582735784 269256835 798821426 834085696 961201997 376997235 515996986 834388706 895275549 876408517 273753155 877997799 535929097 61581578 847020425 703381586 513911467 65872464 998049182 662098245 656382764 936985719 715645721 750521488 795861680 390586096 728697299 607656544 276897262 989483635 348297684 254818806 822118196 865288360 768545345 423033165 599580753 717839901 972787550 802536679 281873713 635323703 202416983 790260888 698924219 215986342 237241070 255794067 779513375 946788344 973314466 883426633 213487216 975580576 969905204 657341022 673327419 148177909 98930220 644016353 840322665 110443322 8439125 840222459 846867050 824486243 971258660 504973284 114224413 771869204 88693422 838454685 913497871 163384231 555118374 128902962 619440717 275579227 883599388 366935612 789821096 969426170 350143209 538269889 816917606 806657756 824951123 817375649 16458581 836248235 737020247 754778974 975034007 330834739 399536025 138167687 848658865 968758532 186839524 373492793 665213169 966182746 748670918 370683804 931196363 299130190 310342973 175195921 284303649 336524770 808296951 985031328 425835345 448628082 802748382 342408226 100734398 439490622 945641091 340015082 763840155 741446948 285951097 910750770 653680356 409920646 78743282 162656273 1891675 583017183 974771584 319736424 394469304 809954326 857790867 916453036 928125421 898570930 843172431 997603920 234176442 950176445 698069264 776060482 387952370 661551946 977751524 763561805 37767003 241625157 745794161 41100510 599423938 566225077 209757160 590670598 235891458 856370728 6730299 661782587 925791696 360580248 580274556 458112503 315712605 496044513 246083268 831780198 884245687 925871529 496059230 772072975 753421619 515359881 789251193 204682357 988083455 702403678 990182901 993177613 36649090 871508608 181891472 330502014 969313034 783106597 540589733 957987489 312992755 624516315 737805099 986888103 858683344 840645781 922310978 497459842 254621714 310468683 276848383 874135737 926857087 811683704 842333733 880206657 932714173 352185093 887870831 953836406 950935130 953415665 400688144 888553038 425099603 304650805 988419055 879861140 751519970 457566092 750521673 771316445 752522425 860760927 904403940 524761497 281665308 584428339 41413393 965545400 798021767 886693910 224001751 254382470 931855762 933644214 746027771 756785043 759117928 292356793 759940266 724199575 785033266 986179837 859975111 878687559 93575182 935015595 98629270 301904370 531061199 944191098 719979764 849432357 117230273 338617273 738933627 748732793 345834650 854867788 919618214 327677297 978370566 490742794 955362452 783265979 36360963 416931128 181487628 537921931 680959987 737020247 971471349 537202063 766137995 965611032 408511729 104339681 912824682 135950050 948050480 806302154 869708007 996994001 924977857 934993897 418499031 829159354 128112366 92526855 128140794 265510903 747716821 599615877 590826167 465008095 444541085 29335251 211191170 884146700 541232297 962217678 16957067 997234874 938429828 757388882 782628289 599851659 123708394 30907516 225065377 116189425 841944084 494562564 370156920 958790565 171284627 260512192 932105103 852607743 963128065 851604811 401254614 814304157 805695380 145289194 823286445 478769539 395443576 706106358 482477980 270761500 975430075 767249685 426130246 822966334 905290517 963258012 353407031 827230920 865757924 984429527 805008399 246382105 717804806 892015554 854211325 849165854 925089133 927331851 957080467 760104693 764259292 92538645 385923341 872043007 933208366 995412918 449731894 997091528 189855022 876999945 602258398 669459074 793303761 885605893 613928129 446910701 707463845 774564749 407805030 509075714 470366513 628731369 497619830 591775219 769404827 647098017 638747641 873151048 784373317 334188694 926942086 476248242 749507897 280970910 501328462 784078945 618088362 780338025 831758232 816654336 746882918 121145027 855071918 930024108 862564958 240353808 488026527 856569207 150054637 779585911 957705207 239957177 494157471 161829493 856068688 738179305 902658763 912989600 204164171 916340213 540850422 19177976 592513757 744889575 629131361 204192186 322123308 846066425 550011608 733541224 934432197 901360564 775103784 976288882 45638209 502653474 101950811 815176618 918540500 900909843 811164603 791040525 819948807 919717698 977477868 747127664 823974541 465033561 45748288 809461781 474734293 692960373 578460664 244194262 286937889 773871147 865818902 445738083 179700041 761972012 149965815 484899590 135934779 900898217 903523307 989485358 858599585 835316551 757820794 694361710 324250982 963031344 865123456 24020078 897630556 99759974 350134942 333470582 587306615 310204102 134379794 917430061 772862226 224703414 437060360 830461647 987331239 998609924 727521483 821068023 648244246 844774123 702968753 553428507 940206441 828550829 106069002 810142628 979517161 948823186 804901768 759365736 844241512 532080494 536114977 912781264 741859003 66754542 293357331 757661836 768497846 93049697 878959619 936134954 911833363 814770287 181055384 445232216 978383957 767164987 954511671 417960720 594884805 437819995 616630211 847918981 244818724 101643035 287281894 947581438 76611325 91027152 832080101 823138908 597564739 995140361 224594330 132400449 169492633 378793480 778967076 951972309 958383174 235587910 906310296 599710853 961050841 664230605 258836641 847274356 884503643 911464812 27971087 587013993 28942837 869552855 984300257 806773308 909676804 737434816 911159871 354099881 31663789 523069383 929670870 141974987 115278271 379219536 334650403 502740009 927289805 24236705 804811540 882202310 248810545 741398753 817328785 451669137 896007116 802997867 344449152 752544051 554611840 823278603 456124283 724760153 118367894 346261194 236995253 26146907 805358112 612213565 54753222 645078962 618377980 957190575 38860109 879206685 34338995 850227946 404919855 209482700 257564295 886033723 942440101 627059710 479101785 717147087 474501219 725819971 876021840 833914047 971046937 899871558 757229303 757125921 552266938 900573680 844136847 737901522 269439964 757477856 952429962 368700931 153801772 632477360 615627815 550655991 990365071 432231448 746015382 888494110 934554197 887522137 709630480 776210810 843674578 748730081 974619517 818074014 253539871 562760473 866006549 430069247 123701513 996490489 923552409 934234399 906654334 823121898 753466987 284833251 64719907 812054430 884998497 524090878 348210813 347133627 479641250 527161312 976331936 879986894 923535068 880343393 820863483 302804073 106381472 779124071 669987609 444756798 798698937 739749218 636323332 69595078 638051889 931580384 81254947 76880500 762247158 886609605 836310490 774450098 126091310 867672329 615243484 901453481 811918243 792324653 817441991 123553643 807067632 659677079 209444810 781587750 148363330 597438923 30785851 302009010 778322974 438320283 532471739 758822667 742262495 885621723 582671876 935355367 51159340 794026302 866378574 293833938 809248583 995062921 201408048 567919661 223972382 999306632 373667482 933132164 56127752 944806184 158812369 197719766 787471039 149808932 634426598 26308333 81274173 916292925 835635430 524137874 748367698 927706252 877855079 82876712 875319524 761313242 363191701 518734084 896668888 986452271 273744475 960617948 833100450 494541773 828497366 781110582 855759305 260219003 147220581 166931680 661339893 967568353 191798252 424452937 930688292 845703018 548255176 679389995 885414100 570275554 834531357 186500016 624822970 84435101 124524610 872628601 216935269 95366756 621154446 117358237 899466993 638672150 933735373 737447750 43852446 987615733 820677619 286404779 473244332 830086103 845502414 971996303 412690873 722200004 715025336 859674006 891007918 704280912 576305228 941424003 185829607 745377316 479828749 956733195 972209405 409065280 981478354 160787313 78661158 972060525 997891976 120869999 286405937 123962547 326843094 959109837 941418777 747250085 794400716 958013581 853952735 776728670 697438055 865084800 329974773 806999132 906717477 254784390 535699658 833226923 830452094 415219286 696337470 901272652 695018365 986294175 220243205 489495734 393524413 957472007 104268837 692515572 839629249 768687887 786834565 927695862 69419015 698341102 192156201 801004089 912359454 928230064 578614042 171649652 898107608 35352960 477904317 7108663 941696173 707921586 988131780 743885770 790238562 491628505 54054644 592540300 170300541 910945607 769110004 801359828 777357765 941301254 746928501 753580578 857811291 751580731 659687769 305992025 589081078 957728413 708148811 775474929 768453980 674647677 553617651 139270596 373106283 247112958 805335833 824496049 590534819 850266741 792917763 802881270 749448643 528437808 840798948 823247194 38348241 351848611 710467649 759594170 46873250 866014380 465161166 582246114 415281465 182852813 968795015 122992306 82486629 837873595 928265811 771517553 424027180 963824037 178222392 772934298 661319107 751183888 345612091 777991418 34177454 902245882 153170798 930377671 865043685 607874022 795251865 810290239 784530546 681730346 710791791 953358415 47857564 931495954 968910697 246586508 935818336 967556602 32511590 889614815 841925391 645503440 860592446 585302454 82085757 881456410 496988732 871183473 741617523 973306708 52001762 778288932 228082189 493144929 486636242 963013633 677592725 911757104 635284843 420490787 801377566 626221005 789209489 49683059 45548114 732271647 963987089 58653688 900038043 979311016 98660299 814867399 263445436 863056153 199076001 880955707 530287788 808528365 111244427 654109228 870996111 140965881 921911235 127984054 697040281 441219423 919262424 252533706 511900842 737772878 217918335 787502754 40940434 747866621 861108832 940817762 776343936 673531065 719172066 597031641 863572739 903003753 324548670 791442977 902498033 162876923 922423454 166206438 925992162 762803439 744277106 729605495 816281125 935674991 454446527 632168016 889325074 745412980 321925878 802779642 446128354 765233347 795066004 781329902 224413959 809596321 885591411 405737419 895136829 956310494 884062793 388650989 793742040 689589603 963024930 522608754 605768576 650710794 172594702 898601230 7008643 962934826 862390832 883922181 887776727 264088832 942129861 984324064 877931101 356908304 947174884 760512841 661873590 179062821 143467314 757538206 968110721 974446992 138617612 421961564 969971361 927281274 330121836 35458050 877870840 289812721 846786991 480724140 761719211 277317805 415069932 108392401 756901526 337036839 55986891 877158890 840331556 158798383 141860759 145448372 758607711 609745202 925380709 757452489 894621374 635864637 783123083 153733912 283720276 988548137 538528957 71689633 308365253 804708837 902538870 721871174 945983634 832174434 607430465 598359012 130458073 749137887 810564968 976944480 997872681 68774630 976879357 854950812 142149570 318676650 886020859 662569800 453220281 36130423 846597479 56270790 765262928 784202631 892687499 966462089 907319489 768262523 882351708 999926717 991002790 917167471 219471525 801186036 848220870 652699024 179766364 306017983 953250862 507310561 531142172 792986505 979284375 820605550 887224043 994391077 244939296 937416082 972251633 713937932 499613348 956699564 960236862 789817392 894943549 775948208 55534661 999111712 962741737 953221247 776651072 807118001 207902620 933426588 828469385 970931484 937097116 934950724 295010418 762043088 901656920 399181509 465183568 353515402 677349229 655526027 590667435 982149353 602497675 849248693 788175710 464319936 967311061 992295766 186286316 953000428 904031308 855276844 808355686 894886004 952478912 708146987 746672845 569275799 334429282 748107362 959834323 107473106 450004013 405063743 758097934 740715312 520063242 591890091 426289095 791643239 790958785 818641658 903180398 479717573 288466403 372477022 352608151 173195580 630742289 223984030 384921762 960554572 102274597 769453663 847904831 813545725 785401990 917165700 810647550 18680740 201316285 577755644 761743275 535090742 680812830 384645093 875589466 899656942 523448710 402239288 260330429 993876004 792955148 896390089 286700118 400550729 968951189 860185626 763010340 715616322 829414698 420896192 478815912 767158937 987183052 610189997 973073591 452701259 837436826 143737639 463443990 841691262 746934940 879155324 976758875 769283522 981109380 576619546 895229855 867662576 71123101 965777659 867191760 884833194 757120226 940513548 920970698 691338318 446251066 245027475 983780736 915696310 435999787 166782378 691884149 777746099 911881762 990857339 904805503 352356123 918224715 920206275 363966742 907084654 237376564 751595426 354476210 478105980 286235933 259653661 983920829 959782878 785074822 429066369 924357000 369623078 572243027 41509246 603799072 982639827 763996617 935363764 272857934 121572354 533484233 754511656 764058710 886234759 215150136 859635479 846442175 845355517 920991104 958577855 672223150 793218463 547640949 362915671 461446761 109125592 881172429 700195452 858208309 959782201 885192922 709425238 929173101 330109422 198852614 791603793 809221637 958753205 736335368 863304839 968474667 892983691 57325509 826171072 960566837 940745254 866125066 488797021 651886044 596603689 697225541 748793800 399167742 983496157 851548625 356499470 898976304 554193539 469241381 739853089 923034326 382175188 964741870 695813469 450770278 680360627 402206252 403811178 808638136 580219986 94280555 913242235 343693983 867082741 922310093 743689949 534125677 804634152 819342875 706027422 855125329 290926600 830336818 25346671 884507331 324213210 937971968 14518935 256539115 773585489 677931894 159366209 778105911 772133477 979160537 327053395 297813129 300448582 954168380 749615622 389588489 982775807 405419156 957866432 982718314 957522163 920984783 34785839 798448987 874578807 514429745 449590538 724350481 721897263 812857274 391181337 511384886 846571648 992776701 748901655 676769106 286885547 839270483 838718884 292404880 600950325 980139587 193399141 601009958 928823557 853467910 356096476 494700007 361546603 635990139 760201024 761589543 862422334 339200911 962255215 775040466 8702822 916893218 130513483 901237091 87597734 817040402 55120568 835746751 990895389 792078978 915646853 403449332 546683258 60817825 235716050 181564824 657338029 275204516 611962299 12018155 881289758 778372741 453598622 419186584 805045152 172714457 808986899 697064075 209170826 13588033 350874209 730962906 998330869 414468543 238746803 641318157 532164090 452777185 983349879 834643375 893266740 840135728 778171787 643139285 682387345 950082079 812589038 747717126 725397528 802476039 667154436 932755148 418292717 518808945 341137025 907436029 628780525 76429852 321974813 22600334 928004474 496873087 489834261 913015676 323582627 116496113 516687748 977984415 76720825 1590327 133025988 296223107 678089289 760860804 715789422 87060752 110410784 882311074 902652145 673725079 896685113 963497211 640849944 912464972 485328998 917466468 421055379 571492072 952259483 824645614 341758887 123308438 900663730 436083963 242009672 910548216 537063858 803021823 638314689 881782941 139486417 874429487 385061632 42305453 737020247 133845109 928929375 418796120 249034613 826143684 475134666 510922846 315837900 754586950 967284398 807191964 748245594 858471626 643987559 428258454 727047541 184535709 358064574 152205968 833777973 128938593 831354972 828468819 860422225 676803163 901356709 808568189 712345027 839506881 865049142 829846778 968968818 942678061 40152088 373928550 868871385 149888905 438771446 371862464 148678406 757481319 235712502 763132055 818594702 987562075 45300829 546798809 736667742 357337973 594250203 748234660 894166687 568372387 891810278 129215648 45904562 43035270 912539302 507261025 291794486 45922969 737020247 614395319 67015898 817853039 862856521 932657037 809585566 791035939 527104660 985843827 422963363 151539633 476020091 881167050 901753489 834167134 227386732 858439311 517997682 865216489 284140843 242901076 206056027 254255456 368622875 753775167 835089230 816369654 934205514 488762886 378487164 924429390 668663566 819884899 218075711 760824954 119376313 636850234 979706621 955332111 2317027 36196774 742919415 211488728 11743019 803328337 880964513 599856406 934315043 481475367 903192127 939887978 774836649 597502916 567443324 773518016 850531134 872186461 11917372 168021756 609560381 727268238 770940460 735733027 778747820 972392832 937926184 375403233 900947191 795938302 907596927 602100068 949858745 923632731 522866440 807784259 779231373 351752112 785511234 951399073 719193176 30058322 996633971 936329734 821456515 860247674 373260706 916233053 802039481 849988960 618220189 134271899 636368635 755514459 772414835 911504369 430518166 10406633 41087612 856596570 740484092 118583848 949880997 906392672 823619179 773994212 979712822 60333908 295934943 897371960 238097133 442350673 988454363 828557008 929673017 958134727 776064435 498813528 781872214 574950799 582102412 932851782 595235671 727527973 59918817 444185494 846070925 884506589 119952784 911244729 980568944 538740048 123698575 302641375 476385533 933637957 777787602 436705155 775137235 755643435 949431904 276813204 751531354 902035107 433790218 756859285 353003120 345473544 847243865 936809693 797062154 923203117 334706816 897948105 137282918 169555598 835183248 874371802 589777635 154695129 563277010 770301480 864571218 269527243 734700707 779524404 308240703 338239522 205385647 967044465 945721649 423497278 687422413 426816507 948694918 854145412 868242198 855442912 740374982 356417326 494209469 401633679 856007248 462789563 545664111 989445613 975793828 968898098 107068285 835518375 515094083 935298584 906346489 278467821 154177192 904407859 780217025 784168716 338795876 825566941 913743903 358922095 839413088 624977467 628878000 976926925 212822025 269744685 749843776 489708427 62605514 843108795 994635584 718646646 570667630 887566793 865292378 509912391 352496112 775504604 883509438 417218948 828631848 952902738 342725349 962290567 834564758 984205854 400995529 568098522 798274952 131815808 213507096 96819749 981641677 151038974 955457597 482622597 532707319 158161151 861129367 819607793 111633211 559558897 12859348 86174106 482887808 926127673 838903117 361655537 383653720 320751455 904225093 480846613 286234717 225247741 472044092 575830501 990845094 101275874 913429659 951322708 922464934 750966161 985821203 88140249 947168155 766695971 106278036 10223648 588524108 885605318 104461938 831719809 888466474 816326506 988890762 761181347 687500070 702814395 388771302 616816968 859022706 750319477 593014712 519525776 981473321 978424047 982493674 100791498 910640622 876129020 6261177 46524472 659517515 75959900 677037705 79225178 966821377 944527550 356275828 966705225 458410582 771809855 445631440 101852585 871905632 877788300 237194603 979382388 521122953 834498560 388099819 956443388 700600166 767255743 523954908 902201627 180257039 101667641 437622431 344037598 407689791 164232224 770114049 201965613 70140863 972603881 731888557 38703326 734483376 817064418 895438104 187810700 654725334 987984567 406297546 702552003 411882608 219036184 623119823 997524006 926740308 888661723 560729389 278160895 817177941 586421896 780045064 497595685 928262081 651317505 789691403 799029035 436368460 898379982 817953935 622221947 728063147 749267761 921813443 956785064 671125643 758980063 524921257 886526416 741397744 856813753 806851982 689861767 106083216 859560795 997494032 22949451 810156105 850005434 817334783 524376452 325806863 817532026 309170117 710003109 606917433 999729786 650141194 928166442 147277143 916869739 557248294 989819183 868883958 385700642 338019718 963229600 642723277 528209791 875136393 895766581 282904332 616657749 910255098 478858876 972177863 895245982 435218896 153189630 319491176 907380017 483102628 105362349 942724803 984872683 625994174 94320006 978053808 586213286 220923059 945463962 918464433 516571751 980160083 878622240 52862014 864274631 500340104 849279687 139219342 229544635 179491135 207764985 80750726 858342064 965996809 857309785 902074228 716999803 73663676 939899167 554434655 831325435 950863538 723534267 831145415 416047237 653551906 639106892 356289442 756762954 745762769 482866779 877702966 961586175 84064640 960696965 244350189 584300330 117828624 551073922 397507005 469616369 531972131 806302168 684034310 149296198 896469403 837058594 915757368 871889067 429836844 206326209 372178960 182448152 218257916 902548225 815284999 298109958 735143566 848967664 549186017 480989160 791764726 806863979 694018234 87563938 270277012 583056592 731007814 577589310 783909232 348351965 909869439 901471497 574524950 400391236 494399946 906738755 347707578 847949918 20300870 547505822 884711776 68549400 207307358 599118451 979857471 879058529 302095288 535153128 669455373 616175203 925358276 543265542 639630888 888233865 209993820 353738999 863134773 127461712 114970759 841936160 867690255 967935594 80999349 539713123 433992153 846529433 948159197 301315870 861451030 665822006 350305982 213046425 984930221 901326423 968599177 824393973 92638645 930156240 400559322 659899129 803486290 141335937 533953715 996163628 86454420 526271681 916824003 778195529 933822406 929695812 185734882 528885937 351289042 904716707 675863489 961218844 913482199 326660809 148242733 917214065 874213127 503184558 872347454 898416359 337204934 910463905 962162851 401061494 73997477 404657955 789662174 497844381 473256290 739414849 837723410 781050629 474605466 649538216 506049544 752450955 524336307 329084326 548724753 465945137 815757517 510677846 667447185 525244181 752026103 494427716 358278863 882789465 642263450 761921792 267601917 304772001 241809685 810567834 789991155 884156928 334028551 847616870 864851468 448328246 793982655 707119453 837375683 773503250 928819835 279166623 105274320 859321891 845102056 811336899 248618316 889157710 636706814 963734119 698449482 110685124 142001733 986820569 768869941 121340253 523078148 567134247 972702353 876540828 801170240 687705253 833484171 488927691 834908206 745541732 658274544 649542225 747895856 261952203 789164103 903027814 787900569 247363251 834383013 460511342 443773600 309279089 415395593 956598168 820877573 763280062 7386234 265430371 927094272 99197181 458535560 852980823 763725615 261184046 98178961 886958312 346255322 752894076 855029166 806652699 158446204 983201676 787329925 238259316 737151209 825314431 195167651 472319155 870802788 632435245 713792838 780921399 704268796 472584926 415995407 767833428 669952059 807688025 984626439 886412963 978975446 474244387 132543810 286543589 215705500 407407922 540624672 425107035 614566449 985973104 180077414 467325007 771906706 315108710 572914432 302935101 981745391 527794545 840610658 962306368 26544075 745091533 906997947 837615978 161614542 998470248 103051034 18552282 930055790 775337332 936599853 36695485 871084713 850667750 449877933 844008478 933054177 77405194 83160254 225826709 833900998 629111093 726717223 83868568 250307671 497644111 965777984 892432404 272357582 242097304 875028800 679470870 892564072 588338852 86693764 8960464 291238655 192840579 616391064 813777227 941284241 221896145 889849783 820752154 750649684 743380765 439624891 722876658 186455068 848612021 931886422 914300118 841361241 311106310 485850753 780734864 714916507 887343401 348935912 128459330 757990346 993159541 778970426 977692622 464297439 646486628 466106840 392370264 302028242 779470351 533327175 792833086 887000752 322894380 980698275 737020247 284841406 690829076 878500038 370496934 710201531 691346053 845007534 478240234 927323438 743529686 431938545 330662877 855359340 913467182 208470275 811336154 463280351 842553681 528582200 785247321 201697084 387270532 271055201 427655425 988688463 205591624 68007158 785429202 976344102 928920104 119792535 867746861 955432261 984097877 933171297 699476739 178333585 358010449 723353961 646589267 651056390 785148385 996289477 840929170 145171868 590123526 183775602 579554156 96431017 805208165 843521117 525209587 741674727 913780841 854320233 277899500 929512431 140411 466903066 418050853 917764786 900805588 763965218 602988111 237068108 788225121 356585977 108069713 744702655 431308921 916872977 584608694 587752209 431732893 324302134 493518486 861342688 351310410 840672126 497596162 104293158 286497511 41384762 809351528 759686691 371679850 782329709 280216572 145548667 737945898 889548140 1026177 995528127 257902990 885711021 170048851 836007746 278287876 934054807 287934952 625110313 740552074 477017660 899122452 823980154 980893069 973586425 749349584 885793966 882415554 986208013 41367779 957113872 375165419 911303751 269354807 52894286 728922001 811814075 987857872 868148381 353854577 912599117 447203810 730041016 819921708 719842137 687353800 312620231 620590626 990274108 697272525 944612472 873143195 892567417 796083651 173999490 559174277 935654422 862539484 743774175 838074500 169913560 833670150 325104637 453237117 684061514 624153357 772998926 368263386 988013608 45835942 442429813 854678329 930515391 262070427 836377312 79563933 748013546 880223218 12693214 947916716 808577767 323281073 769259044 495824641 896751495 843248506 992174368 103014550 47609199 952961671 45603084 180885703 867446088 651053825 360683849 903119708 979433306 967676392 962115779 893284607 730066591 880549534 878782335 162229303 166265799 761025872 624503581 222649015 841634357 886069203 742285753 752223461 902744968 886893692 815631609 564944915 872919897 535051978 680995731 864733536 192271191 758320591 797265025 353453896 947368382 305952042 988950603 465265476 809626103 900125618 609048679 957950588 491316965 765119850 493895614 957693837 53441375 150030043 902081422 777087282 868498558 964137141 828440596 48508446 207714369 699849572 758852010 645401680 586441444 756828546 957440915 915146318 958897147 980521588 628042174 266360575 723518734 831200132 384188815 859392808 717167088 836122687 840794016 16347847 884684809 703417906 375929588 204064128 668810796 32126313 988598121 931109198 148014207 832787054 668919907 739907663 494034097 922968806 430757107 891109088 924488350 375767338 475395639 767707720 752169823 924239436 802294159 887106598 619808246 755764489 406676849 790215709 926774888 784321304 123209090 865458798 984864872 543681209 371247015 426390034 675963257 689769929 750079720 431280226 815867347 596254131 420364593 820077248 326652771 285631843 934040191 753696801 973122973 786866210 818400128 667395937 862278801 983081546 950571416 831482172 978754319 466731335 464869745 877755509 813046250 989716631 807695190 225191071 792870384 446358724 393463198 514905574 376944224 837482660 565890078 270974449 967399391 833232784 937655622 580102979 41513467 740536317 953700201 956446667 945181154 925169930 523389758 572863983 40709458 681301137 332895231 419210738 720283270 272668403 670932633 908484059 68800711 752247869 901802623 398179428 806243849 681517646 993974398 594682792 788583600 101402862 292341144 533700845 794158200 83215612 587760591 211453089 163556209 449263157 109975970 767896747 307297812 789402236 927614852 825159865 892480513 838698075 750863311 794127724 882987630 498623249 206547536 919758978 56690904 713226651 390487612 808458065 674296669 586217995 631817449 504886932 969855936 940483981 285118144 959808952 419603112 873875934 232741247 737020247 995756765 687976725 650235659 772720132 549012227 757280916 391336984 497372506 179481619 71086358 890094503 16214659 83672634 786111331 597798211 901752584 568576717 974508601 969412262 628102659 783725515 792657705 398415496 464619071 552126269 22788530 803784134 851046111 642159243 859098113 959147656 71558282 745709433 782569598 880129018 755722901 219846490 334630419 1229719 394589339 835177063 931384528 942733145 631245417 55971490 893995193 818262006 358815173 436440212 838195662 896532937 896276646 104468679 401167906 522451838 712720642 968208083 358486958 21192574 495117688 404943362 46221315 876618830 883440050 933471295 108695475 380294334 974838269 618251410 477207693 971747363 787699388 719470973 388469879 206568653 550338485 457662036 417288060 951662840 945473869 948267612 251852758 18309344 691197006 46543839 352405591 976912617 705786869 137380998 801723191 968817406 516572397 984811017 914964795 941524268 511277092 284068464 974658956 859026876 527622017 678431694 373298038 878657440 870107595 751863300 769613750 813339578 839836145 506104037 463578324 228707604 929617854 441608771 908538436 381474274 396567137 757968631 951482587 897525358 471421020 618227717 487243080 127213983 777079285 833237735 173392577 541127667 971704221 105873256 927128808 791322898 516528603 167947196 617642582 742108777 78574632 715638826 886568394 978923589 757491937 879883274 282140841 137489385 915549812 893607889 207693414 760425154 124365197 685953382 931872407 879521078 563716518 717942693 128483107 973993902 886393875 671291147 970132682 829065277 504594088 961433803 964311858 313437447 38134818 795939920 993939660 878075253 751391214 644519939 803615941 988956892 968132152 162917979 120040583 327352309 83524575 273592204 214241694 127892696 68623741 599836012 319062247 465723829 969846151 830952078 129867034 841396169 829464755 792885992 914573637 189016800 797775478 231958067 572019921 752510185 532837509 620872180 584202339 432687913 492120931 409235338 192245325 933831692 789761839 817248715 893349573 1396714 639118450 847630197 528339699 643153061 781513087 737020247 878937849 420058873 979612301 231449007 149484066 936628055 526754368 877805303 786436267 481719933 9334896 990831498 974523766 132943800 784460416 539950571 947517123 757018376 731227845 625699688 229028521 885834151 313600177 811690177 195127884 887922854 894692340 847698898 813769352 774101378 892379390 949037460 928620063 682344416 885150193 365920873 932435066 484650280 6660104 728110475 787762342 122321554 605456683 870822033 135598301 737641855 956896617 187410138 436799108 837866503 81452117 450003755 736164800 162535100 957698546 552515043 108844083 637943978 515261067 357464623 11877699 913565143 577484648 682882922 438908221 726152912 93775360 881212229 473021595 918819045 783185129 127701736 413596986 885845952 787762854 253104342 449216901 518074545 872985753 984395703 400042809 757916459 504514426 886788335 46656663 51097657 846334813 989947678 857645775 354946971 226676657 842323299 820706383 963180234 312912925 997623609 910625676 827246564 579992891 165037398 212607773 229172908 168966451 639877643 844526189 964030269 746862614 202018325 819593933 288409481 799180406 831547857 476658128 451686385 930478647 9275700 765277855 183063537 697329893 35565157 50531330 575273870 782869830 883709703 599067986 311261565 938672707 418934244 770770186 244356620 749429346 609460920 718898785 923356194 940229089 393998254 749100366 542922735 737108275 872692826 132276785 848706134 777950585 954521527 899825282 994244756 240610570 841204792 852709434 454207271 646949533 813715126 927628857 454881657 178645325 43463061 825617822 936437276 927587178 603155877 347257800 415004421 950662876 111809633 352322432 43596772 520410167 923658422 315688044 784803000 511351250 954507340 835013835 816922588 29577859 178864742 796610783 133556486 746844748 293391326 86260598 998088312 866029791 831890716 202944226 165233563 781779764 728997660 66285513 706183151 510298715 511691636 584267427 295540305 761453333 187490575 469430489 149458878 939422124 756649977 669664713 198175859 272275189 700082683 180787907 327918695 472590739 923813745 664476578 578897121 951102322 805923243 134618683 690035936 384441261 864471824 984319339 98887924 759504134 750291261 753034478 883408018 660230722 808756582 336992963 748396621 618769095 719770858 981055039 716496703 212009868 96807796 463365481 133340265 38370559 356998786 586849170 235430839 917003297 765535160 440055157 358350862 843243463 60659122 943912733 553072295 954556589 566770734 231816587 984934531 743267860 579482560 279583781 910400062 800120601 241212237 432792484 995732751 835789471 949439716 583758068 277022270 575832361 87208289 334782410 814142372 850589971 819519572 472540536 991420216 846360629 153461494 853683597 525686263 923061533 687377088 161990753 317531772 117301216 795196297 878379 41391560 918102842 764128666 798972346 954705951 279738428 927987811 743487373 789253568 79154155 359207193 742797100 325657633 445433077 979776972 846363501 571021709 860682957 694284076 956129910 541335122 787027817 408906531 233945672 38671672 206879326 272936387 928227364 110708874 847789416 987837787 801520843 922517988 935808277 792491431 947336626 781922379 793541757 802524748 668627482 397476593 151985698 763398233 498565232 947660202 756728337 424814927 997289851 563998189 784206752 898187435 67833219 647751624 578638321 488365915 788069849 364741124 902453051 999717896 634010176 420674979 639619657 494241573 93829150 738426563 501671609 710732378 994610093 743032101 925794907 889150487 717025733 802199942 824352677 141398680 659323441 185649158 839511086 181763608 885870835 915761104 571328272 965831335 975851845 574507519 790915995 794638642 325507559 737073676 961535759 791928858 191087177 997399991 614568808 911428051 893996926 754897677 64467912 482031261 483351121 9250114 257951137 740930333 95809621 310657428 968906478 670393219 721368052 551371724 837612675 989767090 561117729 766623986 943783199 737020247 983559086 838405255 336185826 651858558 274595527 821564507 768318947 774399677 298198370 421661478 886067952 923404167 465870844 453135038 908944515 129298329 831209744 294953387 252948194 634982006 327286633 241153541 125740156 875274133 924327430 868674581 875024701 902248787 501631431 197116000 902355321 495411272 689192560 767816505 929100813 308060905 935986694 281332407 985059615 322871987 777829938 892540427 692804701 874364882 838791292 923558569 290007571 757101719 936405096 744722629 933935230 474053420 419419333 925511462 779622138 769445852 458006366 749034326 452049495 835392223 43395929 889132716 26884632 706791271 553174605 815614127 51030651 901540487 100604101 974912003 687997622 463127499 512274166 128677479 83777330 876271855 627826757 895319952 70228780 756845836 898379345 584929125 988016589 793000602 872134739 965325964 609329818 440663017 594434133 424729905 885961217 547490828 321317748 763851821 998110990 732967634 619522109 440507253 900467670 900232286 971172062 742198839 936329129 459204528 415941138 557958536 591039141 585049695 826066320 93754229 768484144 234022068 968793286 166681856 183404220 770925342 42311037 996591073 664873811 96063181 982187589 996939925 682981741 960629850 739174337 124732160 148875641 478967068 686398880 60449831 997656104 649029551 57611930 486259397 17944719 910957473 155731984 39759504 488747611 852954099 772685956 15678492 744524695 802054899 910785542 497912998 788962555 303739481 774810439 979042566 764367352 741566895 819549618 880273072 446290950 122508725 485516163 483304703 869579490 753010072 182449033 544199538 861960499 959907550 308048146 600640174 775996849 411864271 753308235 813969091 881663352 877955279 901713897 592242511 657105086 483014006 469161737 799668239 903417643 792089304 194495654 872511447 652341512 873667833 670144281 885585613 782438107 678680211 898333231 535163982 900424273 975947154 896166161 883566278 910797074 926656537 699512159 26435254 758773260 366304311 171849910 956658605 25470301 738741124 931557459 428406348 35024362 279999569 971700203 496521838 786382463 69225508 39842493 283617271 876022465 984053983 785866916 519224969 870304177 993523458 478972008 907870994 519668314 251671128 956704336 67224399 472092445 841229093 77563891 395927572 787407495 831168996 870928337 446328232 409910157 961423443 41497850 490207323 867926778 928683257 965521089 518934133 744497422 912981749 838296571 998676716 593154837 118714956 751597252 839371069 780269965 788102904 797507109 167455006 189315820 80437481 856348846 779743820 769047639 424040735 400355183 991438298 909458467 537950907 694876595 84315731 625221716 994197539 617419038 205230838 465058550 776890861 354162113 993885773 778400874 660028669 966451305 847801008 941229388 254504005 935463587 473969322 565718319 228656827 873042888 964080308 756311876 592249326 413034169 417715833 746224071 711717381 854808548 109826937 889258921 868125948 142974637 878862272 994923822 325742254 313606101 993287500 824894851 930391814 784364626 481167875 478140782 894165891 391414170 794947056 853966796 683139753 757641879 933564826 442475458 329789679 911214652 772728730 940604587 416423191 836418933 947234813 755961282 807754853 815410997 830846484 963929032 349512196 433088116 33903864 556668840 99378484 917197182 679426470 855755631 103408327 801085762 948522577 536465470 769022482 353711696 209236277 890438074 843073728 935490492 725299629 193635080 775608935 915552575 325470421 146749298 896221155 706603180 200594931 392411990 962415749 921499001 379343428 225115976 807954160 232945627 873439097 553447072 935405677 331760002 438669586 995781968 383957110 930472398 403784238 70754062 748917290 904421554 264229925 417145904 477075492 737047094 629643675 843002443 961719899 579874310 928228651 826980456 756437854 866616270 672257138 376174128 116201156 499784383 16029557 725744353 421916029 936117545 893890736 868673549 962728005 245140903 224948882 798835722 744960645 341683663 825168254 449387374 805799349 962802668 780362060 684213701 25852116 606589321 246107629 817673860 714417671 831423503 761910645 972556794 335010606 799050179 849535833 869753739 664182604 857949708 326122324 153468621 371889974 760577281 646516391 933104339 277357887 805572248 843060283 815332881 500816181 915654657 907525239 789347322 988172387 313025419 303591605 20651646 761751751 549670836 821173480 595090011 854137558 886167607 269312554 308445065 822553382 850916893 545420092 140598094 774860341 448252850 915700184 990108760 558463688 658345596 739657595 793994013 332060535 981037286 108500219 590923540 831793228 962782334 983352367 938655081 120599081 991481579 749294284 475145549 815187672 613108692 794383976 217389725 809704137 561190475 182380205 408358952 981328006 802010516 136896316 475313202 712065593 41153374 996755582 522808365 406144515 903930739 937546037 881123006 942096157 332719777 958367748 960518328 133646 787641753 778208508 763969090 673015643 813160416 827773584 585169428 358405482 879516733 229441589 188695943 863319737 959507961 332909800 921124522 818815396 15128488 579527799 836254774 955140645 939886232 712994148 979508408 976658328 896854854 270451888 474123188 253365967 17049673 574157704 253777168 870958276 989768878 490799727 844600231 823558796 246045148 462839956 980758144 869946623 957607387 5216067 439112141 371299012 164191857 877077020 488167707 177169770 826921109 753866521 861353218 322518104 207500424 333828492 221692931 740948955 906075024 72106602 338103020 873887334 999752842 564865280 768461170 878192257 269993021 147460213 864883356 946679212 606707083 861673739 891369142 817045927 357733570 874931777 959707387 345024471 975542801 866676816 535159203 299226977 783196223 444154029 22638255 58453143 943923275 765624150 788618513 461313918 813866199 204752421 890895590 350588681 237313662 60395093 852597460 972238815 865378721 551342771 657606114 167076889 848187166 312262401 988777327 708993754 453266193 921798264 967891788 66659917 869584503 562699081 284383356 996507492 805384744 127701611 479202408 780494028 814724760 207070111 918047264 887373364 940322155 306112381 240947978 884658543 361041047 627707347 858991388 266317717 864568348 24143234 204486556 675465672 688938758 381368808 930645915 907002470 900093790 789790897 804527698 737170101 252590520 593636405 962644658 706721864 340205309 664447252 224681561 785073291 941335726 889036401 949672473 899790003 17138375 873594262 764373252 17727542 898835693 940304344 913474104 379529801 808967590 931319596 413879814 791731161 939416917 262899631 539852354 92600974 394491470 20516759 436826417 440346131 670050006 539328301 961775056 862019737 957821208 955307450 981682190 911762261 823994744 175359465 701880414 505470011 88632370 830350358 842780003 861023509 756183076 806041105 210282998 913449964 341937940 940322150 510057899 368595090 242636363 985850736 802608054 995060132 511436586 339076818 305741218 525711179 366522939 515501116 596261346 6525975 771766966 99310838 219827772 973247838 881072724 820988293 526174904 689485605 278658026 846439503 323207613 975398742 955191704 725128428 663245192 966023792 813771513 611647453 742382616 513017924 995321286 639681666 328428295 523580320 949341043 625697796 823182155 567503227 304204852 910552775 447533395 292620197 624448892 599079445 804229512 833871276 92470722 535334057 875907866 943482388 846704052 900542260 909955018 966099119 937966390 937461710 484416875 769362870 784038481 962829242 71333696 757995452 268959278 819534188 418960135 732509398 402124294 63063831 777600423 287035687 746883080 598342519 40340547 809048238 10847219 102450294 651536354 939719514 883441793 978705206 989436990 446341174 420617555 955471013 859786183 349421022 856437748 668747928 799260739 994041623 332717911 366307179 32885346 987516962 825279590 828146622 430013852 493459499 397123443 819433704 894829726 973795661 42207922 997802169 815231165 252942615 244688585 221705587 197453736 920498168 982220811 138571690 678643640 156760007 301646060 38186472 457847891 529487623 660762521 894924171 760693470 845150844 293288039 912977660 246682567 999213489 359492045 954449859 437043804 797604385 909449353 933090091 419055613 972457914 965540053 355410644 866274562 954976971 96085990 754312140 746909355 802530544 590914303 690567501 470008476 393587137 990556545 329403050 885829112 726888441 48568016 128032666 809823096 882208629 100555257 665850447 411972651 496575798 954206160 509322525 635423510 814584031 280377743 553182925 925046894 883595671 962247316 397512806 747926176 816697040 759851450 807459489 162574384 994580167 984442362 999326916 828690617 748942013 870248594 793918528 892814850 762761982 114709779 605692511 213720682 375784116 598928426 333702441 739238528 190597276 888822150 870561209 487104082 748092320 773546043 455647602 751329603 146099868 236848558 869131228 208209019 578835154 621497018 64331822 986588295 251139557 859660211 45239365 641211849 840139059 262516674 968963127 906817378 375870417 453602213 169880118 510041103 979398783 43216238 903235795 165432778 602762706 72692719 479816145 923331475 999631914 162581694 945949128 805482585 213086263 949018601 79153985 709311920 377441468 912074181 116948093 977562249 3486249 530002455 896100863 398471490 868714615 124333970 971673009 700785154 901211537 683699776 754196205 824456180 112106512 67398578 205193218 786434543 515212638 927282364 803939743 615827766 931859103 166411712 69073796 916605911 970021155 892127374 827758994 764648865 744315023 379373940 820812858 105051413 475440953 929649989 671345852 399033232 371126785 29322875 961965568 457027791 837684462 386079896 856518840 231190781 774549711 870850351 336354136 515396710 212760757 93201828 361565104 788978713 275705394 359274262 776588207 487876919 209911066 660374841 592867567 805249740 905111875 741167261 974685204 131026579 928040222 233082402 242885624 868005907 772572250 487611281 232678748 121254111 773760938 800121099 805268454 858259530 997074105 985788705 858929443 218764382 891974249 918706098 745331489 379691295 360313459 958319630 680676937 330972160 908645874 805531525 725045236 951310410 914805810 881282668 851116956 108106814 437957210 814304412 989534202 656504060 430145812 179433250 863971734 424163278 798563022 76690875 454479795 652739498 272653174 611081848 322477341 830931511 858098309 705722801 803970929 984067785 314935209 69271182 821695250 152499802 987898907 848100528 508914476 884498724 731453251 827501497 216983485 802911538 346241286 965742893 737020247 88240151 978811403 955341178 748377707 140644983 566526808 974710899 350076933 652264877 957660623 944864607 259994863 149666249 413026518 771815564 810078691 9008409 370344547 536410632 935678237 906657577 481255981 545691485 530649211 749322423 906439512 534033731 720961322 74909139 901435674 746238673 533358370 286439254 871509704 471839301 745357378 904482146 749152082 737302296 646646170 233916285 885754054 439183217 942617937 843147273 498768003 103841072 794205838 848069102 373337008 927717984 28059975 552636673 813886800 150474505 546046408 826940438 758163588 740789458 833099872 737408826 409837411 654469601 147445546 776923422 737880870 160065050 760833460 761123495 761838604 405460952 946765571 848379374 941460449 896629542 653679518 266833906 668247977 925247676 480156661 877073457 991953056 272801603 998327467 74380300 658208938 241393789 930130854 853161129 884767546 844240735 976686761 653114172 227032376 3467106 862973264 854256694 17099801 676909213 985559827 536192808 305501049 695901151 830047658 979905356 462243437 98336396 922184999 962361685 694061334 825481979 961347646 701204552 746621936 216708846 544058954 862495806 424253147 887925625 874998360 337618769 694180227 785233869 799199501 47384358 970800532 820899385 981899775 785582277 750736520 293345832 471198576 913842829 123732570 925749664 796302012 495221149 808108000 704521160 856855526 893373068 865286459 548629902 292602165 798475121 968811315 921377759 264198634 930761827 196842643 930300185 913098767 3716355 370569684 826774244 982478049 303807266 787446867 863170030 615228626 440125546 739432701 246576031 666544650 93983300 953297467 976705787 81310482 760129920 562976706 840914233 863460067 850189768 861575186 816249488 411755591 908528261 495113905 862689825 330119376 916353942 213049172 872694979 713163803 185602906 80229240 833666203 350568779 976685130 929311107 298702120 956758921 811951564 562259507 858431231 894574268 615358232 855854292 790879801 902506278 900153098 884268872 978933918 830842139 627028000 188258679 703908260 993532449 583944936 761009680 947964692 875802729 489189923 938147681 815558242 431571068 249803570 937903861 110690477 572708711 979808959 523162451 240992844 808644966 816052624 815315945 843935128 660040009 198810289 218680232 265157902 946076713 792347916 260497724 646369388 849110704 593517036 608823642 752729899 319030861 874137628 706772076 523538737 243977549 965399678 983798511 548124255 958320595 610633879 513528401 342673953 962009752 420811066 388036456 901751800 925324831 821415859 800455744 846304731 852520185 176925569 64850643 917494821 759340612 972198033 940875307 947554541 619095811 352469925 308799946 863822846 789444870 737020247 940500413 772966940 976300566 108341980 855811756 942837633 526838974 33145497 778739399 950699166 137303907 149544683 125032011 148566834 269796905 996780942 933353638 552567549 337419849 906586822 503042016 912531041 803594058 877945829 561427106 666821720 910257560 527773243 832417553 93965716 815948332 790384457 531352747 826756606 243296618 292630687 714339688 950767746 206487646 404430793 316040854 903580088 958460320 987402818 997783167 159852933 343606399 811109993 755775265 947379773 286425817 895303110 747334689 15322326 795480537 198048320 522226105 163837600 897835880 946358781 752187310 137846613 991254464 549577970 128846770 851373489 408616541 688567130 745339453 951646139 262969365 902211436 557447184 296008509 128905122 949131578 879341493 797816573 983879822 353363393 894238914 939712798 144489978 847882554 137319552 134831531 741490711 876140478 252682770 636865574 70502129 188997337 794044542 224958004 798009841 957987630 405009616 391611629 634425945 998440476 245075566 772237193 355121292 617823455 792666338 860621044 963621056 2811176 969387030 43774199 670373060 997496539 233240518 667721364 972860020 586806886 831604617 99510650 972401584 908260475 798391453 222019977 373512495 910881856 920555337 452848516 697316565 849651099 448311072 901861180 584790372 896343851 940468521 904625915 479081882 15576851 161151448 812424363 772113213 574605925 956758760 246472611 963121404 642208132 280307775 638714594 664142323 988737480 737459450 699553892 776281030 456991963 198935367 845596537 761986358 814705115 753829567 565567531 362065029 877584454 908841200 743327364 300351776 991283709 578812618 980082892 950443906 831963492 951852688 759925969 571832691 968742402 783711237 93178720 972935131 994483459 693860220 785354698 401818813 876920658 509519188 165507753 148583353 412203012 60725324 911714779 306814852 788718559 919815449 981714637 820240752 744149585 927982092 910056159 268713066 360063163 994410397 994077385 371620878 987980094 840487429 625086008 578539209 139783228 432975413 639174615 791278609 449438748 26499635 860800758 159557311 179359345 860521664 489592153 356919316 996893995 109430494 751106590 2677169 800623233 328560775 945155612 225695152 683806370 603458313 678470158 370403705 959611606 726827435 821856385 895569532 743227691 287116878 967041866 788062435 370102538 956502783 735452238 963299525 782171379 408885955 850596504 175757922 39804578 742279581 926977801 96246295 534972594 610545077 971623973 739391339 686719472 971001184 418528743 223867391 160475453 593232799 750414615 781126879 466063858 294353899 141527701 766198441 759221876 34845352 995821456 944885389 945733599 193357260 864504464 761254423 875369849 337206953 356300799 867321065 811091465 371174500 45538360 881614609 940017200 568870758 260420659 996435140 286401469 209209823 877347894 231297203 487099817 861815024 47529944 84082061 942821641 980327367 597081944 882180819 815941490 968797141 776604143 911580366 634875530 748739362 936327360 753840707 172174793 357667915 455291105 367992282 955877571 771656497 921469861 168381998 167760489 776491751 147421460 587842717 764959785 780217993 120448578 600769947 523981090 178798897 795648159 826416948 845375200 780571196 366531095 176201335 748270838 705558908 984963776 904294087 993321258 23765513 961513861 446895998 712549599 333902525 807471425 854017156 688108015 488381772 775658159 333755567 534622759 569430931 766741156 741754538 716307694 605420955 433070053 964125212 918173680 744408691 868329707 461054471 959482738 832657682 942846931 688248088 878959643 314106144 777082600 538558186 749666252 734362605 445239480 977698515 973834198 109623179 565674425 803472201 974300110 858642515 914888785 447500838 861554316 464959705 941390014 615035212 994063960 435042973 951262291 879043882 789967140 453726552 996087402 897614885 568515494 781835304 360424418 53197189 877437214 79432546 905626058 988391120 685754689 922341437 826441425 771496719 103817994 219568929 959892433 540051218 356631471 408879043 383723489 955332944 894090968 17810580 54864671 975163816 999720983 822545898 657362126 783931885 295232664 882515975 824752323 709720969 837195552 771392231 772645728 368803520 899659453 94795703 930303868 925359979 744190413 335934482 345556034 872820426 931718576 960090487 704737290 901856790 478250250 474810559 313172204 655002599 942193496 750578634 881753224 371391517 836255794 412585447 44023211 602381037 18308134 645026126 773811660 876665915 933943639 198120938 395608644 771970748 842061716 160160176 148495743 354737176 120558872 940898547 158639025 403420412 13180541 978950703 27640919 999603416 944884560 726062678 883836550 568692841 870900032 841368598 928015173 799005617 426182723 985557323 963104853 912273351 915866594 880107034 960681792 90000513 298971828 821088620 258492533 24013981 678652472 927228038 559712457 703097498 313274343 93859679 300432598 966775979 493238257 926423303 976006829 935323160 985923675 263746772 706905239 356096719 645168700 295320747 891984800 89869013 594162352 182838410 502419954 983647977 875626778 777083486 3080816 526812438 753056668 742789315 639105931 842840535 521098075 570695025 498855155 944590310 267262245 998217468 931018139 164977862 729964079 375581410 909219244 29069675 817519391 953461625 560650256 664248458 859226445 856364406 786574402 996332187 987967400 754152056 915303832 910302303 754591899 703697716 747234947 276978227 814912940 369703315 851901741 573471208 917130614 834517476 701418569 365247140 952774677 841790830 168072983 882087443 848571517 383696867 602473530 685392786 24062230 33522751 889560827 103205312 987742648 681823756 873004397 273985675 409227241 191086574 895855889 85645102 874252873 581980872 828597851 968073478 882179874 536212482 753637487 874209725 817175403 856037062 74147927 692603374 602613887 283571585 89752478 791391072 824316874 756952801 607882500 750799407 801877291 644006739 783582165 315797699 394844242 509453292 378499494 896529363 395082193 783960968 565710835 69384768 723126789 578852312 693603399 830087058 361786143 995677069 676524902 228700255 834957521 474398864 913646756 216387353 518709238 336771285 159606541 681569691 756415279 144340083 399896052 628210323 501782506 47618280 849270254 572268033 23078649 322436112 961702623 299351748 770261496 264415016 543554331 420349661 409842510 233704491 35013954 562497323 766684319 389024624 849517865 977113422 274057376 862976303 21426225 913075471 940025704 421618294 7898196 915194238 134509249 59814829 98598259 771932195 940306340 894461544 889791488 92675713 724960726 141958146 510138048 862922390 770614134 161961577 825452837 974990654 792864502 298471873 974313489 671663571 757218876 957723779 918347273 815388155 604739002 784652089 788342988 27386341 859133813 599545743 780871385 898581381 906802247 794456257 200456979 122400743 41750113 107094137 406557811 196358419 445599636 551376564 739050410 877299826 856152220 613951441 274842134 26672093 463506252 934515382 235066787 857595085 985088497 978354955 838269854 909911483 209138318 312286286 503286093 833178347 966794828 816333764 934723308 992179092 916023281 674669750 677406033 869909038 261815875 119770960 34334817 620173664 908338368 802483340 263984066 154912724 604122504 741977109 902406240 807987825 76907010 662209899 884139172 806972131 680459562 762387498 696032840 640626443 585995680 404951066 198013030 773217439 390263724 956920031 900855157 426273265 85591409 955055968 786502401 401280012 55645097 716807461 765036463 737020247 836471596 936691175 47229392 524882524 684947324 148641753 836948137 582822598 991268566 715667788 80125467 948219719 860904198 820725931 947097344 967828976 192814878 678485709 49420864 655727918 180535654 704824171 999323506 760292053 554977415 405284115 64624124 385553268 340295710 125467430 592761657 992673438 155246444 175471087 762737377 4047239 758074876 646332189 770620623 448078140 81628877 964578862 244915215 888707064 866717069 589071810 847785114 306666100 311424821 863433556 778461056 834324467 987499646 549932410 797208719 315917646 291461696 224594699 995826409 956406813 828237390 779523609 623773514 848510161 389247468 825128761 996257589 381881816 236228747 219532302 923948559 813098089 386715044 329383485 592302799 839270800 689167732 232948308 558027798 764484290 801840438 958653000 967638513 985294072 199365685 281509819 595410965 205278510 797038508 764526843 360725752 942282662 839145205 5178064 769386264 765651477 530363762 250464882 418495195 20277612 40898643 808956467 235787112 779308749 225878578 950119983 911587894 247509851 273495815 961062200 922200690 969489523 921597466 591718082 887135689 969518057 929265027 822690681 628080164 610030671 833821955 880293296 484714536 811296598 367854970 195461403 231669968 118185651 351847993 955133417 212190962 890232861 917865755 862139022 854621305 989229731 674605368 879392306 972041244 869617260 477162342 410502894 829105775 966148399 101592134 860229281 249706892 912644564 417878821 859365091 425283678 716796067 225508154 961384744 987303901 934668402 444592098 442628058 896813520 934099496 890497939 749966341 914373029 580596280 724262293 14114958 717533523 167503960 755381181 719645037 751385200 717072425 842173683 839722821 94761310 797560108 930093082 97380186 280424757 959804072 868151037 814823401 347617183 590232224 491840179 819921205 655984241 410052816 325132949 737020247 964170236 800054291 817807501 360564086 921933017 409854574 962227474 305414618 400515021 176726007 786883215 704108280 706836535 835706306 959149657 579060148 556794447 249531382 321427252 998460874 935992993 123760724 978401873 797803065 561953818 826141908 402859171 177369749 869273274 920756297 217929388 104837152 121752514 448093981 274676407 687462712 912240003 288302196 681572089 806062450 980285342 986156721 493981399 6107810 499098063 707777407 372131803 911641655 930679765 779606789 789012517 213286684 361776998 268625491 921340615 968026422 709301718 786605018 936777548 684141208 991807879 821104471 797673200 972841608 962736213 805032465 769034298 727325445 290823088 409058510 434231469 525234994 803218515 816262000 178465950 597801434 76942054 866436937 534624900 508463547 564277357 350604251 639407306 799149977 337724790 844565286 149143724 799535575 615167931 575485677 106891268 771325239 445047568 272266662 430093544 491082454 499345837 896047207 793871910 274075721 810682872 918668315 278772342 974669656 234746779 938048588 311444447 501709193 594695011 326937980 870150654 788076804 487893947 888618210 283946611 171438106 787455826 224355806 770519558 521315220 943758958 986440535 778090575 187863888 653344302 956117406 908974925 831484120 746567867 170353279 767213763 841921975 948366900 188678937 799427198 784361266 756391224 79750272 977276325 328159784 74949393 827299832 117204615 760161632 848790520 177406878 797080054 336594259 43454493 914432191 894278322 52884044 848224929 682736602 911308295 260067228 908595668 989002111 296291770 272125055 35481165 975198552 977909917 516272488 550951944 945536803 821302679 346512704 637228622 847174795 12154182 185003993 364901305 920535090 366903746 602812777 420148322 294090056 582837560 659296368 114158137 898105162 337911725 46980179 282997757 247069821 941525043 386496009 976921428 929272141 587436375 211125072 565338633 911108867 930890363 229639891 976082863 526982233 878565620 998879730 863378876 40189261 987643069 418636322 799861708 957030871 658241890 886672818 605533817 656487659 993847697 515698304 984064405 428281015 982296172 552503336 851853077 767514677 143073350 210157094 183618204 782503058 813990028 675083773 759363575 82071833 473457420 814864539 837153434 429910182 908927331 999937832 745938343 877445023 59122971 812615523 344821218 358931284 816234101 751137894 208079459 531242386 756849057 783906005 26107679 361338857 560068889 785883015 865473395 379797517 725833842 487172917 389494335 538025529 411940309 476996865 921385005 708252321 468934673 831520903 141524830 887299099 794596529 464320198 609895761 209609363 776687838 822037036 768588029 28342221 615635642 455334365 935952066 867431834 265948381 792691793 42477787 276960464 519814242 865373347 434738154 799816345 704847882 76686824 866313747 482108520 607897142 508362572 936970928 892683976 829822322 839487633 8505260 733599049 84085307 588209229 620924887 973748992 637825536 758223432 849086682 401193388 85455850 937919999 447164271 974788755 353939346 825959344 220564197 422801601 265308970 39511922 950489501 791936294 858524132 939715863 792324678 140786671 549498314 952890062 630932921 150972514 737020247 804829276 411073154 910654339 418148512 742802491 350816069 925687898 427732438 977711829 943832297 859870939 408372458 774170355 549741936 860703136 901326122 835371503 87914617 905229077 624773976 21022634 915214297 894570962 408685281 620645337 745962070 41391508 395615952 737020247 753213703 574644305 7713532 76412046 52139374 945251345 975452984 768942659 815640220 404073994 179617858 456922327 744482389 455212792 942938241 18973546 356163621 797516574 484435207 816711063 724870233 235038007 537949552 111182138 788625487 993485315 853478192 844252234 735331859 874610302 88489154 52144639 314943617 292456876 590982840 811564282 540307491 855049347 819571204 589438775 916189255 732267631 922325514 758975285 517200634 886925815 967550391 816647047 128847197 780043962 779029077 143770994 826694330 741660415 678584663 321293208 816180523 872834261 260737346 195733035 976646176 810464481 644401123 454801842 659546855 918158667 995907353 666706442 979671493 375357005 963887457 757931155 49817337 576319102 881055786 782720044 126994617 947883725 41555056 740925042 926692648 851887865 325707005 952013662 884814143 975727728 59103975 394210343 836628023 270464017 860464311 917500591 457223105 743130389 126367046 589017486 944852973 352963023 531347881 743969496 85668518 803526994 333889078 70530464 803830443 300822008 647076188 750646231 20504554 821167818 689954680 923910136 945672123 512219941 861514799 274179128 239485708 56008921 939264892 628190406 292611559 990685505 256604048 680076809 235291628 787818043 627982725 184470861 643716239 780814498 664427837 97746086 542152692 245474609 925305195 216882797 753624424 685194961 994458853 236471132 749433825 950279839 119700144 534892580 232036438 233070518 969910921 839933117 109961636 814873499 570948887 26869877 816575333 921278667 847558348 730911880 83475148 775856633 604452107 835751038 365459000 892613901 809236771 605359315 906161754 373485996 922664804 755004093 869336022 108460025 58473022 952501446 177832060 593462616 211389039 919429265 251450573 752117625 869918262 646250446 335730296 203555997 841276226 342848192 163988271 712203586 964253326 312998739 848962085 997777684 830202841 808218259 857484498 740534194 465537823 943276026 928022808 802152476 73688920 416202086 16049612 982233534 996686362 304765979 988645237 650121722 801451613 948058804 989220040 793612003 655098814 874232387 55159253 580339016 67145625 796655723 812791640 990833821 893557407 227420134 263092082 929560603 957321224 791062478 618191185 740439593 883873021 801893309 591526054 739222660 110819079 933449427 334914057 831722405 996879143 626403497 839490239 907632743 397642931 488963560 448134066 758778580 385469148 882131345 273959326 71204672 863035644 146798175 145965217 908651452 907432630 129400717 857677994 469566237 551762309 955954636 697655584 49320298 619696353 840705637 622442873 118504829 870113370 554565137 904922027 83702949 902838531 420250564 782494892 991056337 343462996 916107301 641758315 830210049 658922287 203815049 816105446 766484695 752388342 636842895 877201989 915249160 85197633 221944 267383579 745738048 787772081 838093006 997828000 611926258 795830576 797057222 454295022 960049694 872699539 441436447 950318672 48471575 880005108 14274829 919458731 959651220 125553145 988981368 792765945 496363105 288911304 810313634 435687677 770451733 957424846 956737381 511053395 100373670 656000875 991768779 964355637 363459433 662594709 812259604 979742320 331119537 380545610 766755995 858264133 876016717 892009509 397998338 401577032 193047745 882024810 874904161 662451360 742154039 928020054 375641485 717987675 164033971 959692718 899814366 662365416 740548205 375529743 471853508 699337611 799210387 743554665 742685584 951524640 780181248 377278165 174214269 806336019 159801871 187281946 70728874 313598976 982774921 116344230 371115751 886966474 935832365 772375928 987710754 96989661 144989791 111886387 886971878 152851596 943727989 815388613 146301541 430777720 126421923 22722858 86003710 935413655 652428949 850779243 2221973 416048110 896381010 260793496 302557180 962582521 925849442 828769582 746557024 563739059 829250518 597899159 297838097 843328091 308086536 918559945 245581723 855311762 895382996 177741043 751039598 33950689 972302052 34616961 317775265 469904747 122905698 963767589 243711039 791705503 924997248 954601348 941952099 765060962 925585741 782797202 229697433 300338624 922504420 130727128 57153593 699543986 841579582 54382663 560144968 788117841 218915056 183447918 688301202 928716451 957599368 321657777 818385770 976571573 886984138 830212771 399559109 944651123 243580121 268602863 935562324 6661011 753229545 947328236 170488315 352766976 751322424 747861629 893636507 253478900 987040481 752192929 894335240 804918634 517469237 565175784 784298500 262593108 981670157 842877090 637012512 607020247 258554699 976736033 548807122 984327716 973924381 843797958 732035254 823044740 760746295 56145546 481548672 163098611 750726476 540911292 836842684 993833201 840006904 243027988 461738512 15223534 648524696 878589342 625646311 987769688 940804627 703070778 196332755 801506209 71547684 915243820 168205411 424878092 703603560 642192876 54236837 958685574 977177052 518501445 284224422 117549288 457877388 841614846 81411111 82352517 812017279 464443005 780073838 424936945 210048619 731471477 765938844 803960672 438355568 496742 759265568 808593844 112170590 703203130 159239020 602680557 475144825 961181366 225253105 942986218 940023632 970847270 394075697 62054234 54368405 991911866 956220531 737020247 872411932 946582360 926680786 865220775 448903924 980245790 265744084 956752501 396392458 520937024 811806065 569228046 855199078 14411095 158636878 524379581 906058548 117340804 694398180 370672799 286447443 442005688 823471794 183646396 679108936 991197573 145426840 785496931 780829526 896118091 922826454 452079530 43012516 711303329 270643610 350564713 939141311 901407186 425018290 961385567 581855561 44887779 214355561 184128263 762296700 406801912 129070473 815942540 969209637 708015197 954151706 5126617 255819729 765589369 830296574 20403216 155631488 641003468 488885000 642207253 977276366 291535666 824457618 413802809 569354714 113142846 338579522 417798910 7503615 354202358 986856287 899052558 207814318 899131229 870647421 296521723 764090235 83187671 531870878 926815637 776331754 792085559 832303479 652879159 608512003 5574431 189858567 145848517 697626877 855215831 624800441 322949214 761704087 598761166 61174003 698683726 52663125 827577216 884350958 621425452 967508117 838898225 942578905 239267715 329015700 293155692 130267254 929867928 124208386 980965703 46617447 858007256 42905435 29815111 45978738 358492183 964517373 453256064 892460330 706509685 523511417 376370523 229987018 797693146 333564008 984807536 484086407 725994847 781196304 920262313 187841919 912977869 661696638 998084416 791775490 486836406 875114915 895692258 391071883 141984299 990318513 869812647 812554767 187770260 960336187 559338732 813148850 341417611 882237794 198208389 800977994 823817627 565089149 187882165 455690762 307567181 924182450 159761553 640490600 821086942 910841010 825439080 856329730 339287285 376652447 748528646 292901072 789996498 714022131 730511054 800099568 749197409 744126306 398808759 835110077 328050872 357210596 749307338 395325070 449291480 775833714 759718124 204541755 792778417 832937898 778986737 733849277 916804535 984121573 366625509 904612150 268544967 27696377 811637043 923789433 227516364 808122810 602104081 540254670 141363330 899002534 697934153 715265599 954286703 260523376 992007475 743134853 914796745 797018041 166700351 681550606 942886369 715278149 853509259 790378743 799388582 719763456 960442761 796957426 924453189 944241275 942593257 766728031 637106505 872688304 6796441 270598957 753964017 847843239 533781943 240078990 137184204 552609308 481406605 828920064 996765494 913080070 897627084 94742723 999162979 607456856 340775924 752248232 816493292 769090658 611364375 862351876 630749029 858303767 784283906 963436623 476542588 983120474 429486963 872652824 803142885 210811981 897524845 771459554 599665455 425432837 467329793 445604180 479735215 461270151 671420184 997027828 842899571 303654972 198240521 767493852 732855317 358036452 825971379 926485787 677934648 12413576 462140830 797601344 104552529 792344236 332025677 999669339 15286082 807993537 766009882 995876286 771060535 888299017 368879022 385057915 741918443 990187854 254385929 58466377 738940885 936929613 117995657 982370267 753452644 831662147 572545247 900698706 348194983 179191328 277921727 607637917 878729590 536284558 908382085 940275724 764588131 20895845 757011114 966830622 931967055 390158343 598070586 517851371 126141931 787601121 55930394 409191652 783702455 121339078 807228245 360973753 625416362 81565518 160078663 355200375 524161575 342107536 374946869 949769323 948046052 815425240 784903218 942951235 945243725 869910133 278390644 815309894 175969224 912853691 640111011 958887768 163234156 900901047 813622338 787580386 912715530 824034855 757404295 448935533 743483832 794118359 281229656 984234093 775310712 966052183 793017153 364877939 917113985 870223310 657032999 967629326 759734197 587541104 662802505 928227804 969900121 236080727 1253292 339019856 878835899 866143873 772744071 743503844 620257537 729218256 883012309 843269161 444878139 953104543 761324506 904647402 904834626 795576448 974318952 860112281 308561884 809242655 80956361 318052796 986430598 566349861 886410292 940958499 954627729 906752300 773989181 806500826 793817623 745678208 754696720 954800690 976603976 394560147 777018296 414327881 760688542 844032097 962859907 807869387 266370127 690497571 539725463 991463778 366954438 891845832 814393718 906557896 779997975 958820489 961944749 815232448 821288044 614499056 910592487 3134620 759473894 860181201 822967608 140293968 998624485 245977158 980268599 802239019 990294034 531324086 510345244 950772292 992462854 790199334 912754948 923299873 747110025 698885398 607889653 860519059 770375668 304085982 832798911 877379356 594579294 822599917 792170744 207089157 972514291 499835421 339821715 889626895 991217376 645271328 806190985 867108164 301161216 173254221 742336638 915560370 916113982 780469748 516398240 767047733 301079809 860564780 14249085 100767638 19004202 363129513 327565512 793786391 978575362 958206170 700181053 26257626 868411644 763664191 841460060 691722074 843063663 864031880 337102378 22536806 70864541 795070874 975779944 257191651 962967797 860729107 988641121 327923711 523156654 829880980 781435137 743089671 951646081 564643902 233249578 727243583 350005919 247547585 871685727 159757135 655878000 777284763 184615313 920251604 808752244 994453531 801276495 746686882 804180264 934231732 714602939 57534248 565781117 742389052 277436177 447215322 733587322 782240245 736041474 829181743 490644057 505016986 797645717 602957738 407969682 990284589 837643908 483687656 760323197 801197230 497747289 413084363 785672799 813767013 617503182 900077767 800499301 753401370 788195709 845205098 462797031 898751971 831469131 796915463 935222368 197366067 711750249 867983254 99137967 43731831 906872397 922450782 858164352 859730165 979784207 914925286 614519304 977386977 919699703 957767280 454403706 52736588 990501727 252773545 877974344 811777077 493694441 216773745 438847071 59198265 952152694 800350112 877196703 448049473 724759092 951383387 33221247 14776922 536796149 843883572 874918721 987466070 265218445 320233063 856912082 816360383 30904955 960424687 765524562 266517114 528514138 602741356 775913373 64241799 409099651 259315868 704879548 928354528 758680693 735139729 951474491 336166793 993965459 332202280 864498696 6416925 914508438 131513066 805995796 131426020 193420354 75536090 281352717 351109857 259778834 514975031 760977330 466417703 943538630 861848240 217807588 667601742 573381316 326697687 822765894 57538621 18512466 781969769 152828192 832694292 242426243 195447717 932396226 13343714 886096315 413785572 433602245 808638533 759124423 802194654 985855863 11669818 874397577 202558574 267607134 315310558 816789116 486996860 966932610 66197578 390277682 842756595 597321042 754992723 757146077 664677700 886006596 570602349 307508363 496209476 159686716 827796465 126756251 504399442 882122048 310934860 936473639 642387536 362994770 589265985 994846808 525647595 882236516 874641409 6546945 806689142 707816259 598712494 954318699 158489427 909487787 935840032 749204425 992414501 966967149 901967789 799032903 906579179 748601900 698923629 81560766 867773098 253948569 305517224 808849303 766303721 909978160 351560143 893072246 689040995 16214351 599717192 854048863 864660670 946417421 905180600 818258027 513103922 996590129 108357822 959515678 872206284 417775642 496773016 807436037 919699560 814196896 588870882 936258712 874078900 753330030 677701452 44690008 586323393 434739418 794236413 442330707 242140337 781578193 375824822 109757354 524099494 624091704 60954075 580553129 638384063 488516889 212906142 884802175 827799278 862961350 341465211 941044910 663904878 78754671 329940090 112610125 859454853 78423800 831815453 778324724 794510060 845420445 914864510 857667526 289808196 791399223 882488268 759094040 886753530 894507287 35767612 748513480 743546820 960902382 512045985 10139916 986046747 737412263 594627777 518655870 925122302 880198023 763285578 794875133 38329851 945203948 906998505 383510434 363489661 554130478 556051845 925619843 995575241 973066354 392703470 142948989 974296742 753894272 913656361 266443679 861177129 837618491 991654575 952374287 623723706 14388140 899553992 891924631 427222387 769181016 736045359 172308425 795089994 499722251 231956818 224105677 842768158 593437748 764734969 899325842 805004446 940664072 356119912 953872515 864709686 753232288 980073106 97591389 828743972 299103429 960498282 910013029 796894434 25932765 920138851 404472974 976499565 878302190 166434772 804400751 624554095 256386494 324207884 711097174 914190501 758288661 909431074 80720712 896070569 727755212 811391168 854164018 239801814 667918897 96076203 940644420 727987853 577779455 969648001 888385669 206781379 542618966 982829816 216044595 437617881 502806615 274439198 604435883 143125429 624435151 380655220 704437320 689582407 404855252 744228714 191144772 23894898 757015815 746355225 789052598 976516817 742296148 887476089 329719201 590805157 886413147 49816645 899371383 740668755 479200684 844048404 696933626 947065748 980832430 489252603 954117293 868123414 779647807 777541077 990445152 100458334 897394996 582458626 142124773 53008895 603684304 218960433 845867690 541434333 258096513 815047320 740296248 781948129 559753578 855351280 956591184 872770677 895483864 565354541 832606729 867846728 533044812 43769475 809553366 202782109 503521022 820903733 931946636 907778614 963686336 843698035 809989615 602483057 570771748 431510653 850619534 510691039 985620545 907506309 342059731 257934134 852107345 627132591 891099773 812976508 975497056 908286847 300331259 460470148 748914107 645664906 735860682 701632967 449422851 738907887 221305996 698449944 917740527 821921558 829869698 955963975 291287622 939791678 696626607 583548610 546799886 527276394 78068238 684392261 814705701 168724783 771378423 197233745 524222956 843246449 757940178 544879338 412584596 320052543 51310943 199292949 860359602 863876812 73260396 83597832 80429353 61548032 325788270 18302126 637201656 183316270 583996135 966558894 559375713 498153751 334669964 863143523 883962115 535182386 52066079 314983264 935421175 851283517 737020247 884132528 536437583 908918662 961175804 524857847 782584049 75298661 238573890 127330266 881607972 230669357 739111363 737762552 744453934 409007913 301990465 238233745 895176290 297553059 919539167 461947802 981702428 811363248 878685793 837996961 874977748 611444803 602510023 319226375 790538694 28765759 505469859 842679288 288707057 932443959 964619354 589755373 150573039 46083942 755327798 619646799 974711554 697143035 866342704 197681959 169403155 918886394 391766900 758708161 894608165 813364742 773340244 833145150 440157823 658532698 998193389 983964629 246610976 915545888 184851149 733237089 559687049 434318410 912042177 967436348 913842005 727595343 750464611 920811774 186163863 480229192 344351981 774864110 980729062 766709991 417208779 917106124 291900899 784496938 869184515 533515735 937264786 980645342 145978359 640226087 305610652 54383370 538852450 300600119 685440517 370158400 906316101 225654768 991115045 922033547 880908246 808314797 859574479 5396076 636435368 849121885 920022263 855449650 961645528 774949633 854653711 517474726 133801206 357741353 793388977 878896555 700127988 166004026 988094656 818251486 883665553 660923860 882687510 806164052 679950768 589937420 12475670 535406556 927220595 900978517 481831770 889912695 385011933 193558542 268191994 940772015 752540749 886543578 922764092 598631986 704438883 30710724 378355457 853900774 806532599 182410723 881038841 271615786 961734887 201027363 574962385 350169796 844397386 825571031 840345664 201747413 902404042 737020247 829476359 153618967 791247214 714374630 869535670 319586622 609014719 914252111 241860852 226684530 499499344 246463558 780293929 132304710 28350797 533281308 415885324 955394502 638885818 827668958 771795957 972770651 315758044 725831696 756294819 541137477 133515401 866027593 541741319 828008939 735172293 477885519 864608086 936924552 919119346 946771727 166219469 580959832 839571858 765814464 21522105 185807130 805833592 989040559 816233703 816497031 903405004 997238009 942220000 804291000 736624409 43995770 760121291 820652333 684234187 374754619 632305480 754533878 196915750 894312646 61447993 815014936 137635522 758954843 832393493 770568571 907129884 301541826 301566285 352556708 569359531 961370832 867525922 907674532 184205400 395022969 761744441 905837665 824297631 378871530 148427482 469245069 823248323 389566995 642701387 282533991 549968933 78899580 879343770 788940792 116338393 916488732 909670999 833224475 976823110 705857188 498204263 881032045 536825074 801944815 888006740 396269297 724492387 737020247 924149507 911892703 204286081 362640361 258247944 949992547 763484981 838896565 829773358 946464287 736342524 920966397 663473409 368293934 759971632 217141472 785265832 699660080 198656651 482584140 818666104 854168622 199146295 782213102 979054202 795979929 46785433 348751841 49172597 897802306 894951484 940174729 495034043 740268180 884833784 861743519 381283505 174092720 897298412 724397507 254156192 811071441 785801962 933883038 721037871 879694562 795960726 588549324 896728569 737397556 783586989 806400788 985433205 892785014 833254210 799088904 810060811 984667046 548825890 818485476 789663643 857265008 461987375 175884145 809886303 827087381 629297242 103491868 219376640 86675242 467965357 635382389 759038976 675536474 145970180 894670185 762495158 304949569 377274581 906761386 912734833 585138352 929715664 351227815 313805409 956749724 367377667 400234746 195399518 65443829 823706550 872743019 874999760 743262996 259505162 505110209 863091335 670472980 13286495 161860005 997132814 756103577 685181140 108732415 582813381 893786112 71525849 721657698 193097233 306033527 763055205 452225158 989862987 898963803 767269045 252217377 998090516 827566756 136506495 842419456 950325658 941839031 549366713 999575818 748830819 674883766 66401381 116221668 299677102 920070075 179585675 6530007 51253984 339983618 911950182 969228031 126113697 164925918 948409011 595410155 685524371 981853617 119647244 49230072 769831386 678101857 969622183 68707159 197015717 582116375 785539017 989270355 237625011 903217885 210017247 960286421 848944207 600004932 500095619 827650537 222765443 611059100 721285146 705718796 962693090 646193535 892966121 892240243 926122839 900788731 778433850 455033301 919699632 996736767 758493216 655752094 614939143 656998827 26610329 825306809 624372307 753853596 921732579 597742272 709569298 161918551 709460245 294083382 966617410 823249666 818802534 272294558 944016030 901580411 288422014 590344817 535643107 947420740 401161500 860781400 506216330 939860388 457891356 895865496 420832100 257618390 785647319 651686855 411708462 316810964 161104042 851874744 766710387 930045653 999968750 775278269 253099183 870723953 586930905 123114167 560165993 744939687 940923949 114263293 19868520 243001826 2506920 48560641 292523419 953455748 692626180 598042656 351009995 963913304 202523134 607522070 440037447 880457284 9714892 669022983 219630499 882968598 65182220 786433481 809750993 862705118 958582223 737020247 640881715 817167488 439523475 880266006 906782829 650659867 125803287 932978533 745512714 180118446 783537652 865643584 356304462 891354456 455474055 856220963 17682671 654409761 806267881 456637999 945164029 368593770 755327194 985081968 916729473 932001871 890217184 756191343 818715374 872060252 763274543 372910638 53065589 492754470 507068597 825517054 737020247 174954626 946235839 768960234 370626469 46155845 772091173 577034037 990768054 415277606 106261329 797476376 993319071 716770602 8722814 510725831 997043849 82035406 799860514 826377550 941853391 763263536 783351496 107928687 685673694 523745552 832663697 388316689 898862515 343806904 129881484 891011914 797793884 846270850 666429767 318162135 967187574 869463818 94282783 743288172 801358941 99972342 344454179 167979202 909760027 57632572 647569514 201308394 67312720 291762216 431183493 860235361 860070298 828840574 269948743 864623606 415348436 142504250 391433471 787197794 463560833 55927902 70506333 535340068 846683792 753071354 839954738 292421817 653112272 772205848 943801058 545031302 378525881 746555546 569263942 850946038 330175401 71894461 224867440 817838461 593750242 318074943 962626487 822038520 560430504 768289169 31225817 947241605 391902079 371206077 837906193 766200235 398401435 187875011 800038994 469262958 792776585 982875699 80248249 92444814 972145913 605442877 777845898 632873973 606642355 810631911 433758779 562044231 737020247 388595418 413725031 901484050 784699098 373140474 748506403 289680033 553564252 268539108 940431664 968114425 506486511 744449139 850884446 403831425 387391695 677605597 975348741 693846073 78849083 978017286 469654919 36172495 874071094 843646529 437160899 751331875 713417941 492949311 626137717 191873514 395632704 961374331 946376050 864897687 517695619 941940248 825991317 105456936 667898003 878830269 812668256 841194730 13308807 984390394 751257060 994546109 539615326 328905303 840702307 479828235 984930849 839235135 401681071 615447831 905957274 689671352 916477042 960889222 826739478 756452108 588638997 696839732 904414696 208807207 921275322 214668219 844164807 178282815 911405713 935806583 417803 153875266 932860754 769621771 355104925 823808973 488143436 846345733 871448797 160148479 820141483 883688736 218521882 274751916 958133987 59900993 815199702 886283575 767322583 920813559 882129741 337830159 388195669 797866185 870908416 959943840 905799674 704852048 972336537 783216755 792981204 713722091 431779608 655158500 227760814 43121633 628053778 951948251 845387202 981751070 667863995 807547522 765702335 466236550 46894745 115512055 847318991 258428622 311680306 947498957 792750820 749012397 14654597 501291912 515117661 802986084 267583273 845640841 652847453 535522939 727533204 611823159 306790138 993677153 820371892 766418589 645449359 311452455 643157723 357169893 507901675 924591367 83410303 249684942 832151755 412464810 902708163 295366417 530461150 813694041 775723743 5046866 503932232 802497532 798975149 962363614 994447424 121372060 668842378 713090414 719026387 223583087 621950105 986186165 171018664 943193684 311852792 9986730 762985147 821994654 530595597 526288288 573416172 829622708 229143725 83976217 18482126 761841372 957834324 630303317 16053591 924980304 867650660 994709753 470388591 927932791 783826985 737020247 426595200 760000801 956109823 994031673 538227681 290207749 796625649 524875864 739973826 740078770 513383272 167255110 311163926 56816137 477853029 656640988 131248553 239715770 705819411 253500544 780460018 775356773 51502777 807796741 896731443 451635353 257793481 540609161 992853245 542568279 784968325 511885976 677055529 799754633 951758598 134180532 240875609 903760619 783079720 957294910 93941732 798080375 895000883 211034330 726761597 881111147 733382514 783769791 766057450 838343453 225567860 915160493 192123355 7544324 967695417 278076493 154308046 374807780 829887570 963676846 429581523 847982457 112215569 27089718 924533909 391656235 506062565 597905586 893688765 898996182 61066144 906370698 823601992 16195936 799408867 744294637 452173811 380961277 603115447 669271840 208393006 960796779 898175754 103943135 791871999 916507477 132658819 725788756 970096605 545552039 544783449 190032562 765320781 993354819 493338908 998633424 456336105 448547702 791330823 354617413 796674346 477568653 813344919 950143943 947858014 109641045 759397530 831783528 208080593 30646907 579313375 762289064 134899093 577814944 803726915 249123331 210029815 419903980 368585047 780140083 946705778 467706776 768468851 808027895 213404759 965240829 142224745 756295111 933831067 589474028 512969214 87354656 955826714 639603056 766744627 809112780 862050913 813215786 990848657 852105591 952379223 116999512 397194163 946482067 755260413 655419703 787885096 938948167 974349110 321968961 484940321 959578186 601198195 783300987 967576151 809958393 733277617 323993206 95302303 304327975 808702617 296178563 784605063 410135778 638184224 592649994 620249774 30553175 152726465 832327224 288268108 948151197 415032444 435037331 802249659 771308016 884091926 267039205 555458524 390205566 832487355 965908542 765424225 895057922 163795817 29519288 189760463 644884356 247230513 455280129 447433173 478661762 862344368 934428728 913030241 541682131 300958366 806677902 691820374 322402038 929829397 491349232 843258986 210886150 660885201 391320785 872738066 924383248 809487473 905063383 25424994 76593899 858712546 25272047 679760307 970073203 50055255 980292217 207389594 794451365 759722433 734131364 982278874 963803085 105311851 773947483 970428305 891955306 855721741 822725774 703337936 998280814 974402472 57479469 861535232 935369782 792838816 745677213 207396014 404942983 655598350 823511938 266644525 949067231 661764685 955462076 579496688 913178489 157294704 473630178 183024931 783236727 969001183 921021341 254013104 738107872 547278668 343615805 176121773 366754296 982843182 587904105 995727071 681582513 979632110 996188833 833181105 665431540 841129442 427827997 47953104 560164624 770851905 541490052 997004372 935176076 499958678 983535734 496197749 997496571 870070356 246814385 847112295 886137880 784089374 761088908 720847482 776573193 442931068 738200584 784993211 60037286 616035381 506515895 183970862 626859193 279811060 984289641 843474355 902252469 885869570 899388763 818981993 310584185 392679675 747628389 109832946 158499710 540185750 285595879 765389477 963848158 238485542 254380016 22654118 505458595 866609659 454084401 928189974 386924353 849710994 708475160 843161201 814692658 979434207 985173428 999421982 785840742 747383468 384858678 688154155 815500424 532639747 957416873 520598001 968143424 966699164 108261167 712492048 263123678 768833188 759193693 440997922 697964720 751246020 608186209 387879900 987449869 369223999 724209160 653146560 423560966 261279423 556660915 911774918 763373494 862937152 144033535 753903997 771087212 823629009 713210519 711396003 667806509 733387715 959688995 868009515 778535111 56767862 643368227 782759344 851639596 884479971 987126863 958240094 983040910 740300537 933127700 742292219 889625662 206442624 502291469 954297471 809717312 178810110 430883285 947716206 332172602 279567278 882186522 968105533 947807468 495372047 324307846 966734988 431400901 781995508 523566833 210513703 810653581 853943881 746499976 793785121 465852745 874157153 894784495 587695287 752452759 882584920 966053382 566097852 818469136 991028601 983412563 352654288 855376874 349899514 328359658 486184474 827188008 242477701 386600380 812991318 487096625 273570607 409372371 931019864 881872792 845793177 856392512 798269876 930402400 909261505 889931972 832602701 386579478 930737181 635365426 531547582 859809528 998926153 911038885 687318220 356680919 620628178 778162893 637374610 619613682 417473742 913239590 888734606 409295504 115587008 502611379 771695863 900875691 793500878 407702317 888317829 590580800 83399711 177342902 511115154 696260328 555899324 345111158 787790369 763749966 643179467 428247368 771047322 456172420 928058132 815745036 742650348 165682701 605808050 717056888 759276409 823842710 822292396 209626764 778469968 700366398 971862968 980631704 921203395 698780766 546391633 803743132 683187081 977658461 227316633 745258954 271177557 766673949 847440788 578703223 428268130 661205751 445650668 30702469 760836162 345633293 841890265 242290244 852419340 344542117 760920907 455212577 757478633 198288373 241379739 153400895 93780530 840854429 839633749 733588308 727209235 18402112 44622178 209386552 924532667 602389919 437019076 855002289 621900188 523721766 270016520 992513640 983399477 82401973 670060246 349108873 669931460 366698050 464132971 728632932 802884999 376657661 901578079 606209401 657587684 792165585 430317268 908036290 27931261 766519772 792357067 202738204 664997595 169327590 97586166 446279674 853345057 496655176 822000645 854603105 542579961 829702231 950340513 116065389 665254123 409608645 818002418 584208364 668609810 509136636 509445642 201112486 88919729 917319315 840361038 343448320 679460698 163019645 21293685 186620335 293455871 439810201 354834596 934213664 366441983 104441052 163734609 943419171 46072262 793392604 795095803 164835117 352038412 922790581 797395814 309710109 284861691 248111303 846584677 785627274 621747402 815087368 747847651 744588953 905162726 280842093 535633284 927984737 469230321 323717658 127962708 911113262 911574343 399904730 41071697 222734657 895598414 653431919 890140768 516753719 204983570 81303088 970412320 281562094 885360300 786762936 809788507 869072874 54464223 863955881 885880314 782980460 538867464 882191387 816358015 543129311 693233310 952138127 727811276 157925467 987192336 722327572 826627223 228328261 436139302 861194620 835031435 708534406 882841095 212356994 891101401 989026813 817151850 598300824 610240776 994972176 188160892 231182665 810867113 857450267 935342069 797382936 936236374 752454704 75850372 723008388 302368402 814414996 417640240 579887599 382262696 936898350 79938161 64428818 190172454 955610206 930651379 888975313 386192024 909205301 755561576 658489363 758459475 986944820 985827498 814436001 685172512 823413628 264654069 763844577 185747589 737016944 660517318 832994588 386143955 631606079 937417253 523532328 759259510 859404522 51233382 904498267 932964564 195021546 106383576 977667232 930858782 429412620 783026018 735864381 692614011 310080179 328973649 674753832 459674646 455400193 55891581 610605267 895715597 219073477 837187320 942256648 489776817 971564689 840975396 349144544 251527587 446790385 804620473 504354147 996524406 819846074 705059236 620477278 250744748 927968347 802406351 536503047 893087055 629937027 969117226 277461130 920872242 828075961 824713215 316524142 815308454 31457508 632099198 223311914 4219151 943668201 835959210 963910850 157284306 927656577 485343955 986425610 880656931 782169557 988715201 920405493 555273474 818782275 924265922 896107035 518871245 763314275 968997931 951253020 857850020 82047390 950928315 831209093 940420983 784659469 954677877 607285616 608325817 993437791 754948691 934067799 877974860 688801589 975737506 687070501 5765536 206143537 70049195 943820840 819613632 328312881 81302873 58160132 963883774 719436658 383613312 977728085 737020247 59137678 822253024 304662271 859628630 930980030 618940429 283974291 888918162 991770043 905490810 397806163 465643197 22805584 346921344 417076422 634218505 852023179 401409585 967844741 133998483 788161247 230148540 547513753 14816026 784670328 468219653 821087438 899556056 885896825 657908996 900306213 701565973 951728583 222589441 952143944 818902800 915558721 970200568 994225710 768238778 740032678 3325432 886820491 531264351 809625515 924304703 577654488 733272768 883207239 864445294 912697623 479046629 27834661 992086729 775128629 888160905 896996941 122227798 237868685 493757066 464018620 357384265 264653931 969354340 499077627 745004989 749507112 474121591 980229591 799451952 187343147 127635569 251500041 960351429 514611145 883146834 108835112 757279470 251656036 931294597 354875518 714014309 198445069 721504585 860594409 697879199 425961610 747518320 757604767 369343879 747504080 253887361 96889825 897975735 863679699 330816073 542412574 808107921 265069679 915218220 301093038 877794786 876932623 845543740 915624310 426589316 434271800 754439683 947095943 792825713 260838140 512696147 745144902 456292482 801892002 331708228 362393409 926178889 740602718 428952554 215518489 310134382 829721393 856896146 973051020 41781133 314671171 968544906 788010394 579948954 797611894 575848135 196439775 821379983 229867347 623236576 35251056 618306359 550101026 795565374 827511281 816597112 682520437 897388119 707752688 180537953 981763076 909570902 901514293 613331860 727575715 17289049 334832685 853832356 409135157 515220637 771731512 325089243 541002949 758432651 445588002 582892087 923703740 369433810 907017595 898988066 14277394 9297889 517726770 844584241 787208724 799618622 555183170 751696840 809160819 613704242 820487694 999224513 932328215 274929937 203838491 261811181 849034109 894641747 765919648 121613572 888989349 765772905 596300229 241041335 841313218 964289451 953015686 712425497 109088324 803200744 908577202 973759373 737341010 144011414 288763312 157472633 992920730 754080165 860704235 840676173 928217599 805978485 648351994 784818395 786148909 214746626 713300593 209080921 190682232 508011220 979150844 905403179 775822673 142521776 837395066 392765156 825757091 893355088 968643735 944646943 787914386 966365614 932386753 926976357 956878488 902597963 802804929 928040056 848473373 158607997 287319736 954178506 843952672 789543975 263820557 901554755 848782139 470351576 924593634 848641988 541108106 859728209 86457489 738430977 465634174 44198199 134261590 445404624 769421762 890343808 422078098 604694052 756117758 1236317 427536705 358757862 742014264 288638847 956164206 873817433 846527747 318867892 701269141 948753771 219277509 758665067 115811952 784640999 660495354 171589504 244661597 558238138 978127285 850333631 718102474 805660760 642089575 849696327 24180297 278767687 555552071 929150465 217136997 773426997 472592795 941963403 481930506 495697226 944581756 869543999 944658545 331346093 106890953 961339054 786200635 606580219 834118469 847613441 931967006 393482463 56160815 341117783 909633249 446508707 87279720 606431130 917518630 545457471 560325642 629225676 617331178 869836901 589325630 833187463 538079187 129344274 760101035 111597479 743365066 879812000 805800245 27509328 924091008 379457755 853572894 487689490 929497953 723952398 906663315 933116322 434847343 812240302 782878106 764611364 979819429 148176975 166273487 690742465 599291341 556262969 783108597 662932683 846503730 707303746 480686835 113004468 862523490 738402202 635764358 324815000 767170142 914974593 308104292 613977550 729161344 276201809 889095163 976247930 632995141 369497657 812764154 986570745 888033036 847539204 996554770 707679089 881887280 924970191 303173395 329021957 696845787 379069067 807427163 978913598 794916075 77596466 394892516 939381037 63788389 66019389 781941858 52729445 918335107 968240418 428746333 465716959 601748416 931868210 974452904 238583636 981071336 839323831 844298856 583361088 915756903 384814862 118670853 225494390 802015366 668638931 845997696 947529390 753357126 824301773 745453858 6586697 791078897 955343911 817615573 112420262 947758086 832414749 942127281 965015704 966177759 854453830 756111900 297221138 622792401 966750241 24205942 148826483 16583426 934768638 138245528 217506901 305987303 945542341 984646261 835959528 983908757 786952522 499634772 825350136 856742977 925893833 563810404 965140834 445352415 409753442 422658489 945505308 951479435 994996443 573689489 963593503 868235571 448191802 976669788 737020247 822308032 729877141 973500129 960548530 712454844 997346584 941703762 806783818 946777637 765749599 170383482 65733449 716607104 392215314 124715556 147947930 498155008 666360823 217214585 966527967 905703761 140969417 402301917 527827122 744072987 953730134 87539546 376120199 747452234 30091046 787546606 984865078 930830521 157582090 299983262 169949860 884061131 878617155 446646696 52750176 452870022 972943281 270404411 891123760 754443382 820570933 811202757 783106980 895460323 501371486 887273354 483444036 846489752 867594643 808383010 937647776 742403662 267285765 844291646 21395148 392609722 756298737 990872269 969721632 835325115 739865499 187821540 870675971 810971498 557025874 179858370 904453870 684593298 889393238 340772773 430015861 588190777 355180436 763156686 907261593 268201287 601925340 74486322 433876405 372571918 241009616 823784478 742183527 486055188 983630883 778454698 897899420 774071437 242676687 120835044 416177297 292437533 928588085 601178402 759031420 793796300 722183151 143967380 777072732 958583406 934263104 778073024 624163513 223242978 823815503 760427972 739046447 661383006 947395536 778052409 174183541 296402101 598294890 180195318 316473370 992215882 259495521 740951375 834945711 523430262 630431573 962263950 785665555 820976873 526243060 770126522 835398229 161116344 932965089 491593903 853705206 630630531 199727447 284300323 638853498 251585235 997916027 683086884 970698383 361696613 717085542 421545117 813809557 227602197 798380706 251478780 378274777 939628210 137857864 913024356 737744015 987474743 808333423 723198501 191270479 759550643 752898577 645820886 647459751 128658050 279136943 16529792 227819359 148506951 201879940 754176734 314631540 947687513 737850404 893764618 900270224 284866239 12919241 846585210 273526001 935880592 910768151 903990150 824666583 830094854 306609401 778690337 781263311 973559783 323858557 946310699 699713736 324838933 967272740 274493840 707847750 469532906 756334488 96249629 738456403 113466707 378948071 591484923 869767001 512983457 924698855 778079487 829165403 723818901 613549586 902838160 223271204 770087926 543277991 765460891 227156704 843858042 855512433 29105537 933441212 798965794 449209720 832261317 863874431 748099935 870015614 201792867 938712644 939940010 990018886 430296172 556616276 531611569 859171840 923097893 856249244 75790186 772205062 691884022 612896467 813406355 887017245 911334948 111336082 714267153 49299176 734798095 897080689 638393384 964126635 342127020 112374012 578963387 304059629 983864685 811223920 55443527 833419984 726752661 856620250 962911231 85212395 100629891 771325262 159931068 67587551 215670905 553056648 637553474 737020247 844199165 127525269 756310227 542376476 844644630 39913435 488278687 951426632 757256246 446314948 637047320 752201016 352057905 505154114 264239749 490112077 372182122 898096527 76555943 299142814 258233311 817179442 819032096 191496065 858141008 499846300 402432267 681028407 248082426 805017757 902639470 637141974 845709013 902317869 239427104 757011079 680162990 878286904 739981477 179304488 750014300 360064570 876745952 281820649 752718142 539687520 97336993 379524138 829033191 665498372 739823104 906612958 159217399 929777029 741039985 215213855 90602105 856845428 490200414 972256140 962466728 783446289 881365114 886580089 525240392 500450255 760641201 993098068 754940742 737944802 875816308 754126167 577240437 195978201 789324871 653881478 255723425 124083180 766703410 774151126 943314868 199610109 880107864 124367929 102854001 254939289 746604707 796795923 145406161 958321392 991182405 778709007 805059498 507735405 766120326 897900121 809678144 326009067 349505609 288539818 384198398 349160015 923261583 577563900 569676788 131299400 547185396 811696090 413290565 926956489 52799622 886069373 917648018 988813153 877854023 737838290 404917293 737020247 671308353 805327140 816631465 794767582 947496539 823509945 824677202 824000640 936571147 204600103 820785878 386478886 711089173 333162120 169036390 907820740 774226684 288742550 374746488 92673919 611340490 359426571 250606825 953917102 964734113 737061195 579923067 911630067 884463147 979997925 937846186 696901839 933308770 845130326 271578767 830664872 879287442 150092778 609478441 927186314 979617730 328078967 128613019 997282362 890648015 404119396 856987150 954040424 599481118 253442162 937580608 863440242 818079916 935403772 862525228 309626936 66193358 33499685 929009698 936658040 648158352 900556060 245048887 278315559 845251937 934639681 937934211 331548457 2870025 354547418 851077094 41058912 825443741 781852125 867015071 24185330 121390545 999705554 339399221 881913140 808161278 116982917 838748468 306733304 895838217 792613829 699638893 279454838 957916264 817952142 228547031 941679650 745098885 383379730 968085858 476432153 380984087 883138022 991808939 958202208 271269787 871121925 775814771 857790584 577417266 433359328 54068760 50315693 304731264 746987758 359618004 227234232 770261344 55089689 694019705 157162900 973414509 263635340 748586595 261546539 995660249 747879335 761684055 161220941 858514247 692050417 771032062 708810708 80010118 865959253 71947808 982611039 703443431 100650335 723714488 888976540 877922115 800759549 932604545 855196323 991839611 575144538 375154657 564488434 315305100 844161845 912263342 530604129 758238929 485804818 767308377 861723256 114081240 992507631 835886393 953808384 957848558 805697204 743127863 638603714 705542436 785215755 255014566 781733315 90965840 596849394 123298454 217336934 834494184 9037459 901955159 996707492 491147508 605083362 465824220 488058608 459214290 278780195 43988938 963585029 333097604 550679143 248336631 900529032 888711000 402158426 975280839 832089625 858884936 769943247 261140917 560666871 937984863 843864705 768958323 939187686 2468300 877223320 722581587 748768565 956575229 798755785 73325520 947017432 708853108 366598146 820733946 365920222 795619072 177366133 647795202 938479181 830450908 578567517 367925417 849496349 679094814 203756274 649248075 908053377 819502012 911501055 977747352 688902884 972669137 377055781 568770630 962040137 798562757 829656741 543998342 289705734 897218670 955144459 979370725 857981522 994169400 877806654 311272412 779108090 624235867 368551746 597118722 813998349 848723453 128892520 993825633 807566770 819351099 896518235 146627305 348375975 106854812 931238801 313487504 824856218 821758367 839250235 265854727 303928949 898332769 835181897 737511457 846289669 483908195 785183275 711086111 861565390 851740356 465041760 786591772 794376783 707766922 900752409 903479159 836829781 964425579 858999294 919016960 794442955 866428185 938116512 9853664 709392429 950726423 949318189 37570253 865979124 737008096 835857754 277627588 550780625 982742636 769610693 930648347 572652531 110440060 661653411 371444596 339395664 994155256 603044251 888183443 105793480 933791914 94680836 622213215 193847262 53274790 802727843 397393172 201083458 417947947 120653124 807394538 775162987 44570435 976545828 550172531 781885391 295442539 671078533 886884250 792586410 887573342 400475000 889915051 792656608 897892124 881757102 195620657 627030652 966139681 941470966 945068205 408929495 591765637 528976171 864268493 392256880 861114706 794561534 770734451 806220733 554481421 41064488 911685800 538979522 593938153 49846135 785781593 865570716 302574281 878934345 358692309 961589650 112045618 371655986 949004853 327986126 346966468 311900812 224882388 224589547 971044261 831600650 832096307 189630900 177527415 999638374 758975559 704582678 883959029 330823310 277965891 738997300 980099576 823347658 646801241 707933197 913952925 32884463 618606768 900886403 895979027 994359471 993542381 487409153 988864731 599445137 969498554 105580012 910009121 884758145 244072408 824210696 53528174 156391754 837462131 819454571 511396464 644911767 397019148 976278071 612745668 737343663 377713637 219155901 198830520 752916698 86045510 94115535 56427283 808415792 137897607 952705387 653048235 375962055 614600439 699468682 873327735 373819927 260084345 949879454 906450419 170214435 890603094 669854321 17187083 581214675 205643240 891757727 325685907 877367054 816204145 105944582 839147196 799082814 126690789 886954664 257631082 116465566 180673170 982406997 373386613 293858876 866752313 432948693 259048631 190209430 531738721 983133325 817589819 87299441 557487162 547347860 261721617 997302144 303298079 698825042 833816928 13384752 138494790 121618733 878240042 835582871 994708821 987471376 968515246 991933661 877708609 993908560 69436350 499435639 760197572 870440040 634040273 705173779 66729469 897457754 887641334 877168449 655808026 108260762 737985958 671041336 969629000 25853325 860341018 878601940 127922803 965763435 621088657 307507853 239965857 141533799 282892727 915029985 843663447 433759409 842932810 786217537 683830899 884183126 776048267 52239217 173587987 797750309 86323085 219767819 547537993 938878415 862989664 778270406 307353563 781609176 751066275 890238419 797807404 398620421 672384998 485127263 864349756 306270304 926020705 663335911 848339340 600763809 892359728 170334751 482766788 993132752 776627950 972282370 821752005 901574466 240738249 135280094 726587575 283840675 541949020 939963775 981427422 735453094 847406318 811995762 789305836 743942568 764495485 332802893 864651607 424621591 516568655 143682385 368700278 483952629 409628460 88736425 285640192 634616588 823781771 762637766 951361868 539463638 970069918 963215724 589768703 228980343 204391852 742890494 683512528 438305477 992438053 980884978 174475322 798458537 402400344 747885414 961419473 278141117 610690059 912644509 101921439 836565557 290509036 264284399 268727911 223442038 847435402 801670376 737242591 813299599 686544801 877382813 331039938 367648110 350144285 908249262 513155784 903913712 928236865 453724769 594861913 187957761 205045667 586372485 608227912 865215304 329031296 778930084 776182773 239200842 810282873 891333956 997300379 875878936 215547988 10824856 746373645 731008910 35818538 787884404 795598075 932942422 901109091 748150405 971653189 159322434 762413600 552437850 720208500 714188600 950384969 542060708 185248936 978388728 941623669 71093600 938949258 337691183 777677466 948175085 921658856 191458382 788113985 67783349 761489625 881091270 19050047 251611401 508725269 840072960 543871718 874943396 428538939 842150588 574640159 972855892 716641986 908270821 913400562 612050961 415692355 894362521 446735994 810923673 389125603 872235063 918254534 981965528 826112699 26820815 944732298 508071036 539565510 969048015 758417006 382033068 320774570 745206518 55240061 605005994 904946647 433951019 120772528 356176417 666563831 397191792 959207499 822544628 837685954 746791016 570464821 675938553 968198221 94170629 767814509 740153833 911679028 600398791 465681533 851727155 385318456 597649212 890709804 382962620 343408956 920941491 95511998 313529664 195669788 150158028 249648265 896952812 327192740 46453052 974465545 924729274 369888402 959670071 420957097 288341966 263174866 431747826 355477134 936033927 671966145 310990837 429943059 776787735 450425216 897207752 872042012 835040560 840863228 460687504 651881246 777009805 880676795 544504002 110862884 526141197 306591449 977609175 959286555 789238966 702433095 275258286 804400617 992089709 40790039 854135163 326338753 813953385 912181081 905038019 651363118 193693942 887026226 431577022 286064171 918213630 96984889 914826268 908411024 809278508 431386291 861079228 330509309 269392308 376141004 93892893 369638962 883487629 393197423 755939810 463140340 144447696 985506388 452592894 615174904 763947286 934025493 686049653 963576447 25217476 789599245 873942901 761646427 691316840 853258965 872810576 8929889 691405160 957545133 278702285 637817463 438469687 777219818 848920713 351143980 901754907 102569447 715035007 440296904 852893720 244922780 16196428 838783028 620759573 211768341 911478992 287246799 94011589 245531264 541384793 563019173 597918458 996493230 857870871 926667177 852319431 798397322 410558871 972559599 876701812 722603265 704237330 942529732 534935623 744235520 518430754 782265085 980983558 212851958 849096606 108628835 622176257 662222801 888829079 159502041 535654326 941033434 207867269 461522217 746798414 764672025 970918192 810484138 338597789 625109101 250257820 810613581 386246259 892126546 888344097 725333796 11894747 918333660 993603157 441789192 866102469 812073578 504477468 786509687 831494220 771383670 967159097 69087654 772253266 323513088 837158774 939336439 771650719 648488509 858604507 856506631 807212941 755940775 254647020 618742196 976403752 884726438 776563589 19347660 309159518 92596395 289544886 947838235 632062734 800075432 636210700 938827269 411792258 419861965 510830415 65938925 173059194 889715778 600491066 824417659 858750647 911518960 310396716 661904059 16516481 322270287 747871541 781924020 460257299 8517050 485444168 957722903 394895364 638278251 776308113 747985224 573361013 204600415 912947094 467490132 954348354 807204521 924316736 94707929 990093699 860270692 11189639 846220079 761452406 471225630 68182415 737101739 970396460 476458088 372036157 271953804 843708901 767231338 434586023 172290634 813296313 821557575 757343505 889836644 904234401 66264862 844995323 645443758 294483410 959252581 657947791 599835520 710696019 784645494 859929419 978667331 38454856 801051427 946848876 484087402 786620303 951993285 930679846 160872939 787714504 581064573 115256740 45160077 833505533 737614460 936846159 833586097 448024694 744328202 609293459 781841749 694989792 13738301 928575783 32185309 302644975 666592190 197505025 850717542 970345949 617662122 772715708 130772566 883185010 838068097 629607928 881468308 210845422 738399524 769579806 458273104 683851198 277631106 186472358 782180353 101386787 82118586 629865382 148911275 390530061 910470683 95240814 602432987 278247093 202636366 487319903 958587046 163073306 731288908 804390656 116883715 396855233 120911875 799415006 897734185 397669223 897852396 407160759 903870033 979944308 781935831 876796605 306707759 777102187 411403208 255139856 803270221 384925435 232178628 373730135 311297219 664923014 697779396 953515803 922475843 892987975 963137603 941105632 205972315 87637316 785100869 450441801 771794774 130007129 762168009 698568654 852620687 969024227 770741052 233597583 635071508 892811037 717668509 834113397 523648087 851047970 903493864 198846960 898759238 438507949 79365337 125602887 144266579 757474940 966759940 482060703 809174005 512615000 353105489 267653849 983529583 968683098 414189625 311296667 119596878 328933122 5749239 904737865 905958302 866356373 762522190 782421829 311358279 904133237 834382902 836266799 574131226 935395876 759477553 899416942 638311818 516488860 394668668 533834416 307969644 954936268 738260838 372720071 904184908 391595155 703148794 771906328 952235407 822214030 901976147 915461291 56988151 752393707 471784810 349280678 375629934 499213972 578020223 944045385 781291733 773740090 991045802 768775731 578558926 337921396 838173790 52218207 74927855 234188643 820900166 86859601 766439611 603256560 427725528 775955858 886255678 964902863 59870788 768835020 801370448 782484745 415835635 100459846 301355282 995145851 921735781 285928567 842363795 780935401 747230075 829708768 867812159 255897090 784484885 831495489 775966240 139577194 879296667 834765139 853179122 840957248 810583993 964179161 855775039 190440191 923318049 713273033 924866259 67540567 740560888 216844990 787113934 536045020 949484293 687934527 780540381 411389036 932430044 984133180 497409931 837452498 450411429 985587434 120618499 432725041 861200212 738893872 597022472 82444488 827695279 874442945 842471430 231753326 98961698 138371898 280188424 921206509 916702862 885695400 378046031 15638792 168722927 470558518 419468699 41936384 642103250 450111385 123232409 942833260 535580705 621883255 125410511 236907254 417966472 98301499 898633259 779689617 58760051 990876596 672293807 539091750 761307100 126926069 991644032 856736729 406773088 101338447 973372288 806910993 495961629 897782710 606016476 880490005 779882729 205188981 270495119 676346084 772252592 460839607 804434712 925923882 934840485 747025390 966004196 930435333 337683803 239172318 339830647 769457927 804432125 945561941 666601478 200554560 748931923 640293157 398918629 414019614 151946118 959937985 682556052 951948590 952336308 781552707 828075370 915720615 931602186 926706232 926405320 437559247 747184740 852315899 438741455 903883746 651247503 20001265 343165640 716588173 781938860 823730336 423888684 595672319 978080337 641616921 921241360 902373170 839299313 588944108 245392340 614458985 984440247 676958329 687822814 413296982 884609428 342467116 603578558 219806834 768663908 191115693 833580285 335130724 661850213 820822505 993895683 454182756 949952812 820594622 927863644 822744525 806199136 946514183 965078867 808984715 826872314 481651396 544854027 63934997 852027190 5063665 640902160 808695942 790455052 857564642 63057702 893148959 979515571 402333824 222866777 911118462 407074550 181140382 278363246 977929178 398079955 902188764 676806311 910027536 767063088 830639705 882763108 436927409 906159847 670301724 369176367 247168063 990615662 651929485 754906830 223634142 971134728 872095947 887522008 834830125 656137248 836711780 213841457 852808817 978917986 834724922 585926299 57859718 787303254 839144290 758504675 533146458 164413273 84121509 990924881 237783519 941287985 853183742 961336779 533289151 739884738 76001325 757757873 367754617 963915299 12986194 538445385 772122735 661898966 114372037 114467561 240171395 893349873 420127193 455301881 841778774 759400791 52471608 12853712 291804352 234925477 971997843 305589446 900979419 480332366 98870540 810900305 976754231 810371612 992575610 145655050 265177226 372035241 617192643 145013275 971313322 664294371 684541195 776165607 130593219 361545488 88200682 900751735 38732893 874279646 622365880 958032996 880438920 117602020 728927139 291441809 650625247 956963582 833301921 55194928 901890620 956173996 986304378 740967074 229363273 834717659 335377374 907447463 877160746 878573921 767682924 164403717 290515308 285068795 610386942 933279655 677622244 792083876 374410886 826808189 813398521 144092890 763136614 108914234 809225244 392548418 962055248 863612300 520621293 191500581 739590753 840789032 464907717 953051090 293508656 742018008 991605990 38741060 567205300 950366988 418162767 331215619 78740089 579815386 436875565 960943873 137227334 455464653 959226505 980440179 780413038 749909708 860890333 392989640 297096505 487242003 778807496 428383462 337218957 993266301 967067593 994106324 786892421 949639025 874310278 600191359 698605200 609901622 854317457 48158071 103913513 359783393 912511822 994157525 840086568 268103029 751344617 909373881 765430558 300803013 276403673 775923206 923252959 925055876 856562980 941309725 438156371 70707557 787963530 839706791 562987589 724990874 451959556 456847046 637446785 137275228 766756244 203107863 906460878 928290725 142643578 947408112 523538900 364478977 781903291 272779950 843379611 998910453 90436801 112675545 450182703 921198712 991382837 354195242 591060952 124893385 202565228 767294553 856843018 613512815 650214 991885901 943071451 956182675 307282106 182858114 987427691 259123315 978693142 904290327 62823335 425148032 813775491 224068003 754088470 617462513 88219996 741118102 948602010 93213086 811241650 981883317 916570555 986170402 93479767 999519277 765437192 163990735 742904534 524739014 694211881 871531822 611851575 846317115 971045005 200685823 926519789 802722 96753827 952982579 866757648 33737047 773613731 969230307 8271717 951978843 124249632 319614763 288029765 741826019 12072602 756139284 458191809 387201739 523232889 898879345 73267983 411295345 202915425 635753744 688680543 878138210 949963847 950311648 607237193 829650786 861601631 814168630 301298753 730456635 154897305 587749075 837708738 500318419 753090847 79042251 618927149 26640246 912119064 747034452 353139755 303753809 955371558 716579207 803598179 147285767 69508267 945360870 872442539 772075916 932852781 860500540 814720564 820249026 808565154 748335130 154970837 601197002 855011374 498728217 780289863 538592643 955703464 153753905 388674454 824116011 495802339 392746491 714878564 360890372 765242108 747705020 891032286 753300810 254522776 720853579 810600759 108478792 501950292 887279571 740840067 260027097 737372001 887456015 537339518 945883308 986141495 971815493 624755600 999055472 45377062 983879241 451129936 551818218 979851788 917798362 982926497 669143005 954957036 755293681 863443485 414583419 599130099 21032153 141700217 622594338 763352452 155141017 484083390 915064112 640700219 802717876 982504838 161548159 946313808 404511237 920704932 936338397 835791068 61629996 990854734 350765051 522060139 766457679 503216563 92325199 877266543 976844221 984751657 720460382 822851646 938724783 899108543 289052026 757915143 172759190 976981170 392568347 467821911 709698636 395110285 912583920 669133523 728730217 911229855 881340664 315440028 966864867 145183194 827026659 761025910 551262558 500970701 893670683 247563423 413240629 987224957 143339697 307379170 428220472 748217189 86196234 622382198 663600174 924044343 846666461 809326890 426143781 940358058 890559804 192980678 4537554 905360311 770377636 474163685 44538830 912760295 529589351 290538452 562239547 531473252 782994661 208379412 990024044 470876373 617749694 872346236 903388394 797229615 560211384 860723852 833233788 19179390 953953084 828558553 848133563 37372160 820741005 439366211 900368230 923338709 711464509 922938871 526497654 611012357 598787057 417136676 919641428 66054671 729212005 435967444 968972393 951955491 916682791 984294558 272272469 427901357 910218663 96036494 611227055 197535710 830969229 771729662 811492825 888938628 584552912 864272959 957370146 797110551 999640535 201214489 828389272 616283395 69231763 756430570 962860273 971656924 459383111 274624847 956176770 883207394 599773940 672980618 669913820 10409903 433012218 574146705 907349383 894872795 571019287 863989750 719126331 828791196 203936338 52040031 827258026 975182979 538523350 226192767 278014492 97591864 976303489 655389663 302316465 737020247 747567744 994226736 778706456 798977778 945751183 836604251 401238049 849013630 764675477 775844035 504215424 112205459 551602828 872488386 833915356 204815304 972468085 806947868 909276338 590093882 797035964 845375989 403716228 544577700 183536038 702083716 753921373 35463981 377711980 754285963 888413579 861039481 851027320 459613829 105224862 875896565 208135347 855584886 924296105 941902199 998772528 157812732 344845470 393514490 784972111 792313036 946098202 715966833 965535007 909789147 711853123 299861623 745588069 586814940 150096828 857816730 586220937 583651725 146829004 857865618 966872017 995126845 769178152 315848688 878821153 214470874 976162230 614360200 928905205 832431777 916605321 447254327 968707862 238266458 692725982 274500680 792133194 792685627 991060023 97429846 982684160 366898551 932339552 187452041 60763791 911904219 561926128 815956077 544306499 75826418 274708397 825406356 35162206 974288547 275436086 495767452 978598520 798699079 676818801 973259995 110049430 472229523 857551646 937676569 978874242 150572224 355897274 156145580 793690762 87510979 361056160 687814196 898993463 841386840 808917731 15055065 877720121 801350640 24922810 932381239 347574843 879405022 221782344 670758314 733732089 761288930 134641736 193794107 436820694 665437270 836376405 801970402 117401436 834867610 769974279 927874837 200332898 174949998 27007750 819829132 198596156 966128140 839761507 951348331 905783105 904928709 958496339 478156641 295708775 668685411 636621086 964065548 819091874 934511254 858501566 993580202 867289862 869992181 857113513 950975892 291041368 483574991 114685796 603163133 344145808 769555942 691938459 771064509 221974393 498281545 496015764 124957375 31881654 823350493 701760506 963251959 737842694 120686279 34744436 803824992 792813405 742417715 930400505 785666224 314165554 925428963 961411371 325394928 960810663 828248467 211084062 998739839 382502487 682084395 760954911 270954798 778335567 808964488 685363928 760897129 810969987 851418071 8790579 182694829 248818211 556620500 997009485 410786005 458685668 401326665 105084424 490377826 637215450 665978527 106057729 951960895 278069894 358077277 642160444 870563310 31364897 813580684 95260367 374051129 994338408 921881968 7205464 763094227 358566132 41294244 213325937 83142402 72912999 511953645 396846474 853000589 508674309 944740600 818290869 440308524 179373954 970621667 829350146 928077944 905763919 110996779 893859308 736657838 373024413 332850384 911044588 108437273 846683826 812467333 65786118 490235906 864456572 982943182 961121114 57180969 680907421 553338689 308821272 624745501 72142915 168614792 519503273 549797679 809238407 112842019 322580100 801898088 888437422 56292195 759091997 860454168 22984999 817167398 849149522 787394404 56623323 424003643 68582456 515393508 122550712 577832721 905538676 787176009 937022472 913536432 775790270 438330133 902245162 843628152 376193911 484972344 429740762 535049138 990836247 204730472 632744457 936882239 982583847 236505405 739501289 820857762 974394133 429124237 923409010 584056048 872637113 482266974 325353257 665228888 916609450 741203794 931556254 214043628 182861918 218491328 269367808 775451401 757375072 744050388 4716065 501718516 772107231 199895513 576146937 153415039 814234931 898192899 132596542 926627236 751682436 517950386 755608140 779021914 823060586 431271608 966421797 124108155 621826376 892213473 9669870 106466987 780521950 640692206 465185228 602646723 640336920 801050489 15026065 192223900 196066916 967832913 954278736 897248855 851104064 603568831 966643019 558210074 416870883 948933658 743698623 326527501 809150425 777935749 191227193 250296833 857400254 516449391 764211132 303264562 39208128 530583960 157961103 947661617 285320516 798378213 811359766 5594482 856022632 869729793 935474909 991477120 492575566 914836260 163239801 759236581 998583563 825473159 745340392 918391330 807770091 977282328 134533753 77032670 552231431 161893390 931273235 868267531 90231002 891231326 953207697 416387711 381586072 659280714 955755852 991992244 826103546 857673149 994413878 88675299 923534265 675984156 464416430 935366643 787112125 700865600 880316946 958217018 839425089 911084337 978336930 762578593 847964559 966181464 745875832 654276482 589559288 847092373 865023593 924868261 149872938 692229808 552314769 568582312 953915713 119510274 431674219 817543002 282318732 903901540 892902306 918645981 416476126 762730108 356391266 355444302 211861534 960432099 375838375 18540390 885869598 29210547 90845805 668773445 796434921 303177741 804408321 521162064 714926110 191475203 986918609 800200435 707642460 99521989 797639574 571323153 845609724 708094023 147542880 147145291 850765391 906412204 896700874 515649201 930551048 897573074 970672111 950317259 369510414 190269907 560627098 456949065 494993819 989626755 595518900 500775538 845433593 195985165 255399558 458065344 776710661 682104814 297758927 995344571 938251014 901556905 656455291 137492125 838713386 77220222 392372311 850870040 496866791 684124837 943887355 256739340 998321771 542989128 811856428 896484991 143727435 840233063 279945371 972348823 986873554 819192678 804820575 828320781 727911848 870523960 437972910 440800930 825342150 967024250 893960885 290025043 714974323 821392253 599324727 568088837 249247555 337044998 360542692 979013022 998430969 487857660 617657063 192003249 282432206 230587911 982034191 905867147 886464448 80247711 562727582 232730359 870903937 113388065 738902333 719984971 760469931 716068955 774518579 469221210 812923758 999336386 241388344 740017909 587708023 295363535 799852178 366104267 22778196 738269698 96516620 865161934 508543654 228219573 965469036 28474826 793393618 948640051 865640045 884721787 121971195 852284849 165041019 971367269 769724670 756542041 828979279 994784362 908205804 783939246 166403931 169999989 911172916 880666424 927868538 109912214 322818555 893706285 839085426 880826780 782656005 826613609 881709218 971860867 880062656 858203472 831161931 924306109 458168254 769766458 863328267 844862827 22558541 903712909 839619496 839515880 742924757 629445566 758601299 246202342 770104920 168828842 965592561 973548651 66107983 437231159 713146309 343588028 772985514 801744382 258330731 517995076 323213361 929883259 553410651 523003630 202550662 753503090 851828364 897257069 750637618 144948224 102884258 485505466 773355019 914587664 945495547 216246907 763765195 37467479 941140100 90695246 969812088 336261867 135126092 128401017 916706304 737020247 488029953 996444828 734818880 602491185 848657916 977075644 934529934 901176200 920974586 536319258 865748841 493264317 604899668 394772869 454478930 679398481 856187042 798475319 969784340 823205666 824727996 970940418 945311596 781556069 659367007 127293163 787133154 887581181 972110983 145353743 474473027 844663221 444238907 564356628 615048029 898614854 408985400 218917519 191535654 21902188 565604913 814532031 456858749 742441508 820688332 155641141 9371153 980917193 974992102 734740596 442467172 692998178 892230356 765158311 941780575 462589764 858451799 81738885 969525280 354700373 788410455 790254398 412117752 842038823 344135240 331126939 827222141 933066338 683021620 30027111 974938450 830163030 257378558 755469774 677859351 566591129 830695549 43066232 106816663 953812749 627482182 306625758 934815805 808315803 758897856 997831942 690526741 798006208 997533573 725797507 639555995 665218535 720442617 462697535 82873007 869384661 278605344 907293056 451280724 926883548 222174546 358379066 924669560 494425484 774846759 969278214 933177163 780543288 31828420 81996236 402670588 852138688 428068776 722829255 459158120 974357274 860369989 240208024 501580459 290537722 758034529 10708774 750912272 368954437 851031040 987296877 834163034 868977707 581929840 905854985 282917517 919906747 378730932 813083745 999395600 42107942 116459954 60833414 796086061 128051515 746341818 699005669 25909770 959414992 956061910 829601336 812910699 290717165 387126813 921849101 878453420 829811185 810072331 119498725 310956654 877322562 433878134 716280842 284290944 328362822 752580163 882969339 856503173 489089176 22858511 230996068 151699899 596467359 658132562 109481525 429400011 550703310 81245884 121037082 897504503 745338496 362642966 125481104 210679387 704544214 570608869 981393313 731786260 300677863 824365703 761165275 851308383 816975611 686596469 752736584 60261869 800235653 784270244 906646445 922702904 194772034 349003190 766065026 545496271 155042753 661187017 996813949 747266450 732242767 556446206 284810492 830887055 773238724 811902926 484782226 823219536 739649604 408462340 921837848 948932457 705983704 204545265 313344122 331178519 986111329 65932517 916938976 316116638 637073602 25199349 480371777 999366557 980911955 319776971 825241391 461065396 459403097 404892330 938609650 734867821 717708756 980082785 671664845 277020021 953227937 922349985 826577476 943308704 140973680 99099910 882412102 755688966 489466353 820456142 983732772 123341140 79360180 990769543 945514180 825930765 682304372 813671616 800246914 784826160 865965351 232136586 902287730 499925010 499698792 920265593 590459125 733131890 998007805 378463137 800037805 329309720 705489269 410859154 471894928 38438282 946764382 750714961 969609450 70535236 788315184 878513804 212051616 874117379 207071101 578035152 492978121 958533441 781633765 206968634 264021014 863201515 591325079 817173861 910583753 343333762 100724985 637859606 325463972 532937141 795195175 978867842 198541809 940623654 961187131 156177356 882280137 387734336 382943344 814024065 213858910 833023688 726187675 881876214 78850063 165255483 785842336 321719313 753535870 318464962 255124282 733416926 45600654 724104636 168979247 612969201 564032444 355014213 913420485 398248288 861976049 348380685 648799899 45242998 995161080 984306111 878659861 902734705 838903834 829254488 997766431 309829249 64083144 822675439 967485747 112193846 36875677 954810094 429038709 955251420 338024082 488275469 801050771 414788028 754431247 800151410 923236080 855119250 121450212 514853274 964617886 45360049 994487416 309341006 903379613 333474043 882226508 982321375 245711223 389454467 651724164 950279607 701564632 840463166 797588663 760827900 593652723 758584449 853803725 180257231 674524245 815355934 962336186 984956137 397879306 897466771 795237907 675574931 721655697 761526897 926175365 557487036 463205324 897683637 560838254 523707131 934143004 634522429 895715869 192961499 221738231 102030260 151738869 916582464 91028393 863543065 610846513 811754605 715808538 50751493 755413031 820076227 813664885 728700528 748172659 991675883 705788944 832094219 871604285 212029152 114861756 911958030 92399195 926214085 845872766 955123171 75480835 745182848 901360807 894259141 645851065 838972403 777250373 524744829 801646090 405148670 944178440 843117461 295655879 822896602 603852421 702729111 841220682 993678580 769530614 349096433 929077227 761747761 90725867 273417172 412458316 789410714 934307845 539102002 251449715 188667254 238716116 918551253 974608915 399446818 812665949 25224424 362259505 712478986 829281773 774527102 499538377 736159142 870517970 967428982 659204103 986878472 940883869 219327224 856521391 323771161 442307243 534557412 139692907 991264848 931828255 721937689 983327026 963974413 104100339 967093730 18886744 297788510 695099296 964972118 387413396 451482969 874465256 52673602 198013336 889241793 820289417 752749430 432832663 739670298 163532927 119806254 770648497 160641055 984883985 965505880 110081444 994958233 341851089 129002772 789637092 836993547 49738763 769551697 922545796 639266645 462647247 610789095 827408842 403884938 799081552 18789324 315120693 614021338 257199400 392232649 906827870 82598390 907503023 574748805 858657775 915886214 845672767 336775374 181320431 940602416 534162749 317646049 139188052 794997751 785717323 642922398 828518760 765332302 765282140 614194782 526780281 123996969 923060338 676714657 627059917 431050195 167487892 700865451 738944463 742180177 918562167 437843819 105828649 244035219 769937848 87030649 859654588 777154693 107715143 665716443 704843219 630328465 884818131 634362940 269393367 992432373 957108224 668010661 820345133 183993848 561339189 974380649 129711507 343041784 238470277 859111369 886660441 894282048 776339635 847930049 232297898 553030955 307913533 12209556 119249506 942903877 980743469 408961822 759557010 823978668 797827051 329124617 740961906 967269140 843690924 495099210 419265197 844974418 938751070 866930878 911586089 706915841 794647435 626460203 284128198 397891656 36409668 730838739 183265538 931561086 470507251 901084076 209462050 502762833 780671619 123269681 156433863 931164169 888125806 32807727 826820049 791955130 741585558 582288211 692008144 307817669 858267673 965554895 145214640 794190610 943767832 567615577 370266229 850264229 507740165 780636468 244485306 12850201 876297924 31350379 138200282 773772971 530154503 814336094 117055448 203238809 855108192 63314099 978074218 952470118 999767856 924047355 671275911 449657961 899289867 835871239 917338377 953146913 870127403 861587697 419431153 513580104 671189973 452470283 71210315 751274669 215006754 740640032 857011570 755825655 837976463 769943507 304820441 865172239 793450597 506116714 882733376 924662335 588275469 966967708 927281150 331811110 928866775 847994815 213543251 192676492 737020247 684674518 493573307 459462014 800681529 275881868 654886591 625778194 706573100 78724789 236622248 443363653 982159995 104120008 655705784 685921539 795947853 889768235 917428866 886818317 928397752 222312909 860335976 133605227 756603932 615524573 783024659 837155178 933136077 786018675 924769086 779955279 176788692 98050064 29747399 203195259 830747116 690160147 912867068 784280712 934699985 966261047 396033457 773700494 70359887 239102277 842870481 599735195 824908915 673278032 887209555 855734021 15125051 924192973 262376778 403629110 312347434 608740551 800252090 743418594 794050030 310445650 768550511 907492727 820176426 723782873 973356156 4520526 482874938 616879336 929119620 546000226 934661187 876291898 892835515 747903183 117254456 748395663 779899150 951030179 415668542 218577137 667300171 701319631 620190303 812836597 739809210 114125673 69147912 821260534 169586055 925623000 357120882 792966813 502395660 407434351 384111724 827455894 823063170 458545932 766961848 145854256 848624657 907988733 993343878 948958972 941931819 188655075 672443506 107146342 961925498 986557291 961549636 676401650 870369846 404085857 609586152 574925883 385603261 889609883 489818784 383753305 827487638 585028326 212196333 788604968 527609701 854815056 986090219 752015948 482083709 633282224 955127761 752254344 713848340 755667706 459152407 330803618 4966414 931926484 960387326 317004465 178675148 807291663 786368466 487818387 593462558 371091585 1101580 845670115 845858951 816564046 193816640 933083789 163746086 909416652 415285845 157005313 958342374 772240728 866341203 465004543 783538024 760042087 744426357 111077158 918690124 466655633 979105717 937387728 355396736 783042584 807614563 476897646 888947175 612530072 783048403 607563772 866187759 404714852 923767234 895695186 915055370 295463666 175950759 534893817 127974681 122448711 4945022 287262704 270562159 737644521 641966184 25221177 769850897 921494910 947363786 404329175 390170096 909319508 914174611 54624488 468657619 919062272 800413632 811357646 891557594 326918353 795677386 230400815 755156974 778144353 737020247 456646422 758842932 927416298 942843509 792007390 411202892 983512261 508345499 758773139 128954650 957924561 302728329 807612301 818535547 897279464 871099023 882233755 801220482 933148504 957617593 872662874 490238866 569568632 125585018 504731535 342195095 750243913 695866070 966902265 178722851 231296680 810816987 954441653 66116420 931719118 923484587 988093803 814638136 182763291 810536294 459051218 918404856 725560958 766561172 877045125 956807207 839777106 686789693 748023082 620758516 916934394 914048437 975829315 162365807 932245398 151285042 550886082 786956372 111975575 857786520 785369769 737281719 973494861 767376916 2622932 579667660 542236448 963205162 28010055 647876359 957707642 487525726 949091682 242844454 807020256 402818729 759191947 426353741 915294096 923939766 385794113 136924181 303283778 578936019 167396903 923521896 989108680 870283345 846368829 81274792 637057373 992342213 332780288 820750447 169360637 681141213 308641767 943370063 57012288 716134949 571590857 761724252 878811603 518297809 49851820 713995626 519584031 424480371 959951264 746567450 616305959 512692120 948059150 958997399 372484340 500476599 493701317 747982536 851564655 993387001 175342216 791972710 932921308 904876540 855788270 817195818 724839512 399881353 726904353 224816170 628135285 845226083 621274563 661903536 809948002 979544344 800454637 920156167 433661320 865520126 374739838 902035483 943138857 603276535 812635203 542872602 878115555 760877261 208122463 781713817 120133695 504602669 975330933 245919371 859588230 978044842 837488236 965857072 767115638 779495761 710777170 71574919 273679243 492733482 197160385 394737710 829156733 986334068 940594866 935370172 229966456 117007360 896746035 887421792 48895613 897141446 5338720 926686849 836462726 286273690 658514557 375164503 826137758 824658055 67995758 575077431 986973518 281775480 608309918 590537189 16399255 30910567 841476242 938918967 139367369 785602881 986718941 692708926 605125730 935627313 740153526 713874414 869184650 950702557 202394531 417090271 901323501 818233566 586705981 984511330 121880402 845058395 948786373 975020933 468223398 273338802 866724554 773016768 875192748 930327061 382127035 741194006 234749690 580248171 627572618 957172183 246988288 926003098 398110715 348839953 541440194 960779903 816205437 834716146 444023426 406701036 941561755 575882853 797920257 554734164 802721074 778206953 802054352 64966122 759521428 845633019 765080193 156557467 589306292 642922479 103681147 852315704 969707996 295302344 608514706 860617676 614718446 77172745 829719298 970107407 482306338 228218682 775476308 961447539 272188487 334487142 974400761 842536468 83813110 838555445 47095101 940073670 942804512 598211152 743220287 471513450 862192124 828677805 184825566 716378778 895602880 840082731 124984936 976529563 413051204 47584727 360198053 861843334 460040649 804595988 775674573 629379837 769567272 327600772 780285739 684892004 859629973 829240917 462744972 360178540 890098910 66137059 776784191 996942665 434901154 746197094 779448418 789464481 909277596 970121400 186940476 856580292 386563558 469243651 914495180 854560537 671927426 910130833 901740059 877843529 95092583 755595864 914476533 383893169 860184781 197422837 884589982 564315036 893096595 984974314 148572445 140013657 5449083 756149426 571773262 961400651 454947962 611279237 134299610 772253481 853986872 696184942 229345590 872166964 36172689 245219740 508093108 940862822 665982814 641737233 836611926 500660832 860632178 905896210 258396215 751301498 861955139 60368793 51288859 968501894 346859398 320960084 751809194 769492422 854671489 776109954 806144324 778719200 710893218 976459886 878565041 721705191 926913553 119541556 313662178 993464808 881930531 165984340 321169653 281784656 897116640 874790337 956476819 895492573 978857267 984541461 178347259 104666185 866645401 54856820 997182975 744616683 148010252 197089471 226010796 958265786 938841421 684366667 955567925 941822890 571187584 650129077 787357629 755852399 591165686 829245426 962449382 990450803 770518038 247998930 415699803 784749062 998573736 24155342 287099525 57990935 80288400 812981509 610827380 899511355 840161139 707077353 366294260 743733949 282609818 257897158 595327611 389217572 763744557 20316881 301173934 989902689 768097031 692195492 779781701 231527163 901257436 518495654 96983236 59428733 802847411 255537057 861674582 748477233 19173732 763219336 198019779 964879530 864378707 520396433 311549573 903111753 454859536 392163279 361653756 510386335 182211174 741739487 422399839 926734931 135070657 67979817 742879228 995137570 653376288 966602162 950196841 355992036 378054751 798053590 754163081 918976043 815670096 927677339 300422992 639890531 741104847 357621901 69354522 802595206 819721302 949102529 297905337 471457117 910945393 437126451 739316392 696205754 283713330 409250968 526883591 866518150 29715229 194436167 973870201 925469993 871412637 611149407 30429719 360350388 572101179 162295233 845398216 749386497 923118643 948508952 740548593 942586935 921809527 758506439 868481669 871495017 725347124 803053088 682132384 902080704 954643514 680546716 649663228 848396200 771564892 880596798 694074659 14069244 983919111 607742717 615236756 910620543 798621622 463988031 937029467 922176762 57237543 87920702 554644470 674546355 502998929 409934970 192226286 999407501 284267379 276495330 9132186 116904754 841288573 770242571 799977329 952887167 877164637 151443783 872899658 543377568 938325676 21354004 6467051 28707874 916488379 328629471 408826903 694303638 574438680 819784981 426899332 792077450 482580649 765864016 386174046 441954702 750789401 796311206 52198797 107787660 357579471 921265665 945292566 900817732 955754089 997680501 681848925 912977321 755009061 999534547 767389574 673971838 38259644 920118544 196993206 867799731 604542702 941263091 21383541 427627670 118939104 571451327 304663357 912754373 72389290 829470083 589911586 985378283 603172396 460640262 898740376 850811941 814151970 910273597 929789419 166998723 346662231 721211019 843503454 804084434 673984267 394728861 824403247 715739423 906162718 127374409 947898575 25442387 848934619 417712815 974277874 803727880 838495046 866437262 78342361 777459867 758507725 180406547 665292054 887963025 842753505 188562554 616472027 79076000 918637748 466543994 349005734 905144436 346037892 907970945 641845846 357914044 808320643 776576813 699275025 952495857 739995477 85966547 617015374 195711103 800814628 153770366 647505905 779622813 79986038 891006017 27436440 823233951 815725516 503013642 858253451 777294521 756012858 882635679 734494674 864565021 765659890 549219438 80817165 505689639 574391598 837646069 983194497 910398324 86566336 123848722 364709673 341571295 74127397 872466852 748516816 842549928 834975879 778592059 400417930 798967861 756578021 559135581 926355334 431043654 780536124 352256029 646176860 160556836 568902641 264590655 318935969 993607208 602197329 994796605 921438719 188189867 832420114 797420839 585360136 876986063 940355338 796635674 181637891 211137936 915024307 995142718 829446092 39077892 767263624 962717313 965554325 547921113 765658214 575437643 961498649 977474780 521356153 344855803 938359971 958785140 63486536 972038218 604245990 96366533 171508631 754259744 827816074 237846924 906455611 569730932 779919544 119502862 127602573 406509213 576452925 849633897 908463870 858840065 815257403 728757626 37747026 964823800 851022165 18763969 673116914 975594846 371283184 612191786 796804096 928217410 471773033 901939651 369032734 100910034 847198313 853019571 976011345 144016737 990299045 924747466 362537601 178436177 483501430 875785620 926932729 112436942 543667709 930343425 831791531 827346240 399236106 261457053 869629638 510352347 683789892 443177603 788917171 772956026 406616275 181429758 830241246 761044493 665842690 263549886 744854948 776937597 356701409 753256517 125521479 17939337 431356369 241738282 460696456 270258215 917009350 427498757 577026749 893490964 600215995 756619382 749255955 996220190 791297244 554593504 943031971 574487246 366581479 331466130 515512398 901450558 947621106 972217544 434035231 807249109 355703525 418574964 316638854 915502868 768101970 434024157 968014465 754418791 588406324 991936348 66348206 903382651 925286904 4375500 766257465 808675047 843142395 763176162 642594678 994507741 900258612 870513379 929322728 430977475 54578857 122350198 68450671 798669954 165795729 796887953 741317178 870499560 103689449 643809413 498060572 411161630 773824045 939720833 887109139 718849881 804524793 487719956 730398671 944824934 757418729 766367513 339337755 787516196 780628821 490629271 588544991 244081913 367546526 934356256 136947069 825324649 960621257 804108973 59035644 1591878 339572833 749648469 770144832 934253947 982771490 973193669 879154779 98691446 880609949 943581275 812409161 940888928 918666794 649106787 864239437 575939535 482745703 105313096 108313178 947417315 444416362 417999935 884697120 142635867 194384423 725446393 910806372 742889508 525819567 947040085 828330944 929085276 45565389 970148884 418545235 173392775 905263871 625833078 220810582 811053675 340371437 397945738 833252100 876844813 465911423 929059113 138789730 438781984 933284365 398498129 954245743 472861414 250207403 907710839 939481466 462235850 243360609 501283295 541037564 587043726 384915228 803189728 176469410 776826364 528316253 730303461 349816295 896112362 950442167 791494310 485199646 976987347 977225510 579709732 835930826 812894751 162542512 831549678 839006444 86695983 4658956 848205866 39947608 421635517 933720199 864502202 422882700 827401236 966846428 804805321 912778473 87222740 21518049 257339989 977611111 80504434 970967078 151005722 941892615 841590675 425981739 857047524 414207386 496252092 925211267 395737027 787424459 172560233 7682307 755545402 827914755 826795704 735332586 911671485 983464650 916658620 690922740 989798662 795006504 836328819 916646622 997845345 945394724 822794153 844549416 944656247 968283865 851732794 819335684 189440686 988823833 603092308 735065896 447328908 345110968 373068315 753759079 26109944 999230090 327159341 521916129 879540673 765308984 380272315 564828826 423592385 488283261 779669987 405538493 282629405 583129075 757551691 588927385 938962917 921971575 42157427 79236199 805272802 875648171 448969254 679056270 964728763 594848476 786141687 709035138 498106254 614166579 197363682 312252680 928937700 536717351 614516048 32362500 816656783 92200145 977538784 867678768 10246268 342697688 986831591 360895609 150018919 780656347 846762636 976949050 831683125 520615276 423166964 166023696 247961846 754568391 283345090 639556440 909121969 929112544 994729735 413193896 876466817 852358790 972488043 303428305 321627609 966358194 741488622 276432950 942429002 469120133 245383581 647573286 382873485 771163175 555220459 926555458 688259805 808688752 760931582 828883843 12392540 877841913 803489004 837611140 126460592 439697211 817864159 886016401 814746595 990303485 603110792 374919656 981460068 407203121 931355359 430478855 917474035 829456127 984723520 800973163 731312041 876372001 820413403 766784448 909673452 821238088 152606341 941663565 513360951 791570332 472647561 897663390 783612398 488467298 340520145 542701389 794824435 183324397 534458841 305824052 81031750 869693169 345487775 754807781 940599950 611653936 886231428 515072458 377608056 995199474 559199783 785790860 42905870 303497354 787505367 135611298 714300882 967602414 499041573 685578783 690257006 114802494 785824972 796117495 506869350 222570418 685693840 206618398 764130056 916244571 562775837 51059292 918385625 836170328 697877466 748020798 993633557 947456735 827978357 102616734 418859366 146961408 799441817 258099129 956139380 670330444 884968839 143001035 122344497 774406001 1725743 857054967 968604165 932742026 190969793 84029937 863133331 969767995 425521897 672762442 795542366 742176307 962796818 191193801 419448524 481290033 802396396 731856610 795750698 12313478 917548017 809448649 409139845 774870737 647718500 359026793 683162686 61741692 982035364 896108012 826712101 771297996 743279235 958985915 915675098 915462750 806320530 957964977 385545185 899056362 97295404 962177067 309645821 913665563 873524235 405097746 321863234 910389124 129299 487058718 844869131 884165908 149887669 892037812 827655473 960382830 782678824 868825345 287006837 952677727 875437211 954570682 785307571 954402560 52267091 871251234 285989462 187023705 912186522 729218456 751383704 699925372 467989329 112442708 743815240 790822657 921052754 802753686 784679434 69064077 958992474 932301244 922981855 863407062 426363357 248452925 919561069 983784687 814774649 614961757 634868079 432772900 286584512 438735842 214669420 910453183 877635710 729933988 753013648 913840167 183617595 720109280 525876892 782778672 751226790 847361718 401354893 794004434 990636402 971485262 596391931 302015023 782965305 735841129 319326409 772625394 473056039 787960825 833326935 787797693 978308159 621188745 467936259 635711427 806575207 878073889 44841906 645182314 923706748 989185482 164614592 841532108 224678594 702911125 777403248 697350760 873631194 392986943 48377952 749827282 741608677 712475289 359529129 973993070 801178936 825055315 772787262 89998968 897784798 260699496 786398228 421731841 517581776 842648800 250097318 982545833 168779843 981848457 929101265 871050570 470424699 949607586 152913910 276494849 847834627 954240799 723775631 449405413 419839101 16282076 766986478 778137810 192533373 770856710 581402030 521206641 70628805 534042704 981815095 954574395 114725071 985849073 890222922 423483716 973276398 906031538 692001973 233949501 962621389 841270432 807635448 4004765 511534801 985353880 11620380 268882688 964541018 781872528 919093073 970085108 195657683 247931326 850722949 763536397 821382015 725089162 786900265 616213334 726228184 27802406 885067478 997194453 409792278 322715772 949748157 870004015 969967898 66126474 555435337 563193783 950820291 869358680 388384739 113863351 956001489 210605501 727232547 905287741 882737508 495258846 412215758 916968926 740285132 211886669 762221560 381650645 24470587 874888395 868742598 205681240 966674433 213429509 662721835 703187565 730501488 152830287 345160623 806634228 948100799 465300969 34821443 765827483 869533555 87306582 925527521 222760703 379909640 338622639 623054258 971800509 147887947 761786802 922119590 135293754 347836431 35921130 90542049 870812256 797016761 996878185 759444865 624092546 80031967 593763174 173742488 919325174 689862714 186568040 750312267 23575709 380319139 900277461 989281128 673788241 266218637 767267838 188899327 584408 178681327 775358114 805487556 276786765 559702719 248594266 572402844 738428138 954885892 286756169 885638872 818324457 988478021 771868179 3049217 442334782 869001874 863518482 867233972 618736743 580717085 821080908 820545471 844799820 300358953 496378800 954332721 322896951 46054075 556059251 87096304 952897608 419794450 158460101 822115477 514396965 757905589 605906648 993130569 620509317 878052682 542190626 817812329 477338681 263610139 833195607 381589918 100483671 884908570 963210538 879597126 556348772 691826585 482301976 603822806 830669356 921428118 873628263 272745126 938020027 796398475 931664819 441368430 883981397 150728303 281439529 827933324 133566502 925785267 953055983 585374526 695807314 780930322 914078291 720670420 818521611 799403823 471417361 725785694 851176719 754171519 489318282 802950675 152046309 861366879 406395506 446682098 741650888 707185040 941434941 64300499 977422405 890706253 378229644 987068250 989412202 857098723 322062469 147040777 778962549 859804913 836341638 223359547 773562331 550651522 812651371 939746840 829913868 42343831 85186621 798267631 386589319 875266266 974154170 987032528 218571707 943252504 984329884 855246073 837743218 341268905 883917106 955280601 833485527 737072834 794170222 272010144 862700707 822716765 945031013 343427635 538940918 911279857 546290909 76753626 914419303 40180797 707300795 925256363 284932678 862131181 320013277 855168898 968406006 806378770 390351051 619745341 705117950 968447205 609614507 402855245 100546455 975549370 823505178 77883013 866309398 339863128 317508725 955401899 644225303 815087413 78202254 397981661 912312741 806024447 857010084 217596132 765030260 642021155 858379678 925704851 698209307 755798774 810991522 764442251 143996887 246488485 410992887 836259340 294562423 836306723 905136119 814327556 968010824 852829015 976303589 431288939 795798483 789673647 385488125 749906393 985067612 508521432 929507944 179721294 754350360 385738354 754152759 927882284 202899738 912806528 857733591 342953707 935995808 882839569 398687012 937243554 86401728 228664178 396482328 705104505 571346201 604121441 755001628 356252424 402694035 144711030 22853380 307004006 905380505 364613456 609014604 16813144 745172131 844643498 902115965 118734373 431964119 901573591 299212212 765170353 523950478 804346406 871251920 933769771 615024211 415103384 972920429 999823190 855998181 834463303 845699623 964692553 952061312 490657023 750233542 879534895 901195127 158278276 329319490 598198764 80039230 765851948 109609957 142956733 888543895 39606005 694420152 811688319 368523607 863864847 283278208 627528722 409313923 897323745 1016371 266952152 522421510 854024277 771413075 876319444 803398281 747122919 437476985 937360470 837465905 236070713 718104154 994657490 131536768 615204510 124131105 13564589 202271575 118252204 639961945 879190831 108907515 74330844 208235070 473567031 577173297 427999598 793010189 725312292 106502095 801245910 956923569 249962285 943560301 450174796 950717350 771133754 879612265 595319683 593014647 769167345 927075974 915511949 254182136 411469457 405722062 791034040 909785137 860824701 653238955 481081635 859139964 793120242 391327142 154009277 499521601 670862357 954873294 952617495 512279476 925863966 989833791 393399165 400952676 917526935 742507635 312737225 776444043 72171269 797470566 265375798 551395112 40558909 962993907 988032649 786952963 423325910 877510027 980333389 861346856 992098917 783459665 887209950 790548743 973151108 875868237 799353780 869002580 205600449 100328054 935456080 780366457 759974874 834018302 939821072 760265223 896697574 686067730 38848602 801192624 176210589 921934653 959525894 823350753 345179771 789736110 772383394 935558612 823869565 559790092 873475658 163978423 858620236 324279099 985094605 104133242 432583058 969852031 286530463 872936439 765281318 505489639 305606990 339073305 785549961 261122248 870651290 141819058 740724065 601556108 924833289 716056537 202407551 317462068 369769437 301456507 455119645 58428163 141897191 885928650 273991075 882979021 233943953 822919726 937574909 826430912 865824845 940918109 354759271 952727736 797740226 360041848 959972381 707706557 679939520 637461904 911258956 804687007 184947445 179895 645526387 315897420 935485963 821945091 510728663 933566147 355521393 516281862 126618292 766616563 851016109 499352353 911727631 953986450 599410581 740737727 392902864 744473435 707577913 508543771 872493556 733926925 705385299 264683780 977545762 885246502 561180107 308203775 371327147 970151885 981650760 473913425 722381994 614553930 909423529 810794413 251369994 823572960 269897781 816021447 814664132 525278 981071496 561248607 997731026 854900195 348350638 983425511 338348420 50517860 839983548 765039039 864129840 808466945 747922728 447193942 922448311 264470070 933414230 673732449 838494127 862192203 62205582 998297 404262876 816944827 799869900 296104807 961975669 951032935 29803795 134133445 761670372 625110350 858204050 924774374 762787851 914920211 10033604 384782670 454719687 975797192 767977375 996236959 337866803 928393018 405695962 590384280 855964579 820301007 323684408 990527668 768430909 960220306 743624618 719782227 682804446 878944746 889614772 252086446 270944869 20314503 846286811 730061118 653229539 158894704 334164198 737020247 518230950 824499324 901643193 703172693 200815484 905994630 442073302 911939418 321972917 813035854 587549948 791393266 633965724 854491699 881817391 869645206 899319865 220357214 3475850 593124349 195270941 178257853 927696581 901082252 737020247 800829669 830929696 984731422 379149973 125666191 350888726 894187063 576144871 543817819 794120957 187788732 944480353 796382608 844558925 874668754 578709334 495579693 663385804 856192560 841004714 241211215 489977935 989575307 699876559 921108109 298830989 782697755 305852146 718901128 893496317 391121421 737020247 993113358 296227018 740659763 900802120 554310209 877008285 983612250 780521979 795081881 914849368 863900349 336406864 911967739 180636659 12642561 321124435 804562172 796287803 837814774 526942140 954608969 35011134 154405704 884963349 991868112 777560182 916391842 804154610 101573379 639573683 475260919 953682870 824284634 85604892 347406205 789926554 761309039 215305428 845110696 837162001 863148644 382904725 538199549 843032869 776228925 866116259 930410899 789639244 317388330 90588220 538751066 340680639 769973491 751301495 56050858 59864306 859558570 970580988 876222906 457268845 815331406 815482267 346021667 899431749 976056208 471823005 856176809 409393673 666555238 52109002 902497988 621144039 666447152 54551033 166125048 206310015 686964892 932122764 787141627 758521997 152541614 516630986 814241514 821669023 999012117 27083360 198672337 934687347 497918007 810187319 613020809 527567399 785575373 826339051 280415185 906320437 834898986 343998973 373215013 791047736 67381415 268195137 770951495 654429900 341718922 267318272 891913857 449861639 915577634 848529671 914244998 271743677 990787404 969036937 725992413 731881981 516677387 35625329 760767991 884461356 398688155 127833298 909443824 412520054 832974176 406757189 829104659 358482467 742355034 160406712 453215318 423059080 876447917 43440208 887808807 918956694 766870100 944445299 561614601 627314836 934851476 374977605 953269007 893750660 764356736 366972069 184284307 647953681 862078337 984679823 309183947 516856656 505879482 975686178 856060268 990043227 775620724 887824905 205250025 776510331 794687136 512163798 384696815 933613822 164229142 468632835 820784674 947179282 755459165 343988859 855486265 778381270 558687390 753787079 868716250 986815937 633457156 474275128 972261389 852264155 782414928 454491320 135731112 982434921 749310365 948841861 99893866 823505924 949636451 260351953 408993017 692079355 972764557 989828503 685255917 875650189 346413380 196095806 786532495 94847729 816901543 972739190 751445984 295211800 783022322 923296534 108415251 988462981 841963286 861501657 979252185 966935880 969052252 939779969 149502820 800503014 853061559 269441572 174318132 749094518 789157816 753419200 931802509 832811922 897708394 889737707 78189405 837258285 984957077 818017883 898595591 776017030 725601813 3970290 472751039 344439797 622461957 182592955 978999258 951644585 435840434 926740294 509800996 425479443 891386496 976452439 803621786 885336996 643209203 914196075 726008074 803843270 744433794 262583646 57975901 393570191 117675429 371096128 771769043 935244226 808132387 885985200 353434823 562842601 804197107 990605393 487471016 81516253 606195569 314155809 858035042 788119293 820658574 99977762 933516359 374430829 125219336 807264103 975655047 890257078 338743545 357639582 999429144 796861507 711642408 917881857 990729677 869970307 900052702 224731547 9516643 823307815 399131335 574766211 938212661 133530854 841603380 659343272 968880715 648706643 100600620 838533580 718041163 155499673 598360616 90368845 807628899 569015950 187506674 615539870 126945168 732634619 578312254 786049649 225669998 841814612 170657758 226194057 925812578 847171854 83156109 72703155 877010701 189656700 927686326 515232789 577670668 967514639 724660210 677330162 943606049 813022904 906763415 338131907 869290476 883411172 387268588 871277772 655610124 331792386 884905078 194051729 847891716 572174039 775004738 522505560 849635834 788222622 516312197 193875985 95569701 472936448 183025587 312407782 563837473 960866141 642564029 675238516 452948601 478354248 34906118 331717763 812970388 895982556 390138387 764867128 980063962 927850378 523792105 861625117 432309236 936802650 775734972 760051580 294153782 894580602 75519035 737020247 814097153 944176380 891357600 316195624 59499372 975954873 981334154 678595835 786349032 304231390 413919787 285757551 994370367 15352925 965522300 891039871 857909864 918566663 903880738 305361167 27683207 516317108 218644512 551650525 165060677 910604526 766627056 921755320 240842154 830789920 924295876 193109789 597307638 864183793 803679893 466403657 835755216 203509437 249438480 979489100 750917998 945581571 911538198 970839696 659367451 932061738 937785138 796286615 916929285 850706676 32893688 437049766 163607423 291189419 320185631 891863102 601330148 126067912 936636016 33016078 975949801 680129246 766033379 947479767 953960781 27996319 427781051 781706726 849227442 743962294 823675011 696013384 994250591 391430049 751675054 357764873 883344122 742936140 967726206 874742121 577490109 953392296 617720424 788533685 495597489 124327475 352781373 915967143 971124013 922153811 661241329 771984700 542040384 824220730 857344232 761491957 964743701 629241755 488657527 937214454 22523671 542826310 452241997 123676622 437071832 195548673 905543334 737766697 946130064 256587821 259839817 784973204 884197096 658143951 715845500 248521677 801979795 583029144 962057313 903329344 915649360 872524674 308116079 496700672 867861392 495066743 333466789 420746029 756352096 795444775 645106859 229276530 516863777 882490392 995672213 971889579 771335645 379325150 757787188 669004844 892012603 876622005 389740767 997692509 181806447 411094889 367649375 143408248 760150615 738687322 857491611 257184126 474006666 783832245 40177738 956630913 711197429 741106370 911328019 883953740 951582204 287112724 833463017 916820582 927535361 307262239 54112383 943785163 90728660 856846046 260695401 137195199 849427391 728446357 910429782 284119714 175842236 660529401 900950607 270125024 392851600 197158304 153338283 820547288 852249854 486588768 256805088 995627568 614086884 768751602 869410153 251248972 879050509 843412385 945761508 911176485 76107732 33534451 98945971 729464015 621187219 869976094 959532046 879797714 953126745 921584711 178727004 869849054 375157585 678349304 294980271 962668291 296749927 150317493 866268567 917883755 919326513 765807666 597780813 886853550 547175467 767933303 168015017 110588429 408127480 769506235 936107311 949197363 196722042 306388017 22494157 995292505 414627465 277275678 256662677 650003437 457190265 358700994 336566874 817180628 765286386 437893692 170694425 967109750 254508169 818855194 195347936 204236502 147870459 436587922 893117411 771505974 467330196 748926599 647047993 339721613 455514538 25296170 398503618 789318372 131583517 908970208 802488185 655868046 893249407 547378330 706233428 602496916 425861088 115776412 34402587 773328007 674101911 520288036 161559350 907783258 934871855 996816543 883334420 803826910 872663344 991856150 187486665 788028802 121706119 794737832 766849406 759013813 590294782 784167958 219740720 737020247 928640396 8704783 147806221 764848118 874358653 753164424 119903753 274865319 675548419 977070806 625320869 662462160 864568158 550265997 312767482 436949967 804937337 221182255 977450176 705261972 39535135 928535460 753769524 525996468 591298207 279674406 278940444 7645438 742560173 35793093 2670410 983755350 844633849 130858469 596442457 291162404 999596262 782627781 771705403 384750745 105259174 738845712 254672095 153703615 802842155 995257757 761699605 835840693 369414641 995716131 830841613 436317031 420310959 413613851 969335691 877426314 21745249 582293348 90761846 993473667 951913771 861897189 661620306 422946793 917964250 958148931 554830032 679625487 392709225 335977418 791473779 982674032 949494469 293283576 744436889 249691317 348397215 520322971 706484345 797860123 457335022 174608790 541831488 931736537 196415627 35573429 34245316 875510044 241504289 624008288 153140500 844005179 613248227 870816558 752054157 331101014 895824128 161170092 351388817 179125490 921562955 987252176 431965392 746712959 826663854 810869884 964871855 996980887 211460215 775894242 748339336 906009989 38126458 880166758 383069463 273350548 956973621 990506347 186233522 925288596 91444675 944463253 728868066 438943318 18193013 723326484 606681592 713943850 641355939 879683399 927942443 806873594 53335961 228307285 816902488 415311692 620582713 371129573 838765106 766145297 17619420 941084380 491158821 826329678 526774580 106164244 798273409 881145328 55641999 240546183 737020247 87624005 991961367 97900922 540410491 2316164 259303381 917692252 951772504 165309599 894880590 724406028 10175668 961561151 783837268 315453914 519986464 550525011 864051298 863022423 730746837 624601595 793825647 165274762 725444337 868785751 591246489 881520348 916921041 625306185 348614567 847942283 955656380 587684447 866791863 876995275 881877825 277104466 70658868 869677452 910141206 758945648 900097104 875395328 370548215 908116546 912855053 221259878 993953909 560145226 944456628 259524763 651764985 803781520 871247846 784235289 825250236 847964666 671116618 812436098 824635617 546726231 751249916 987867060 876375308 663385477 800226270 910000207 545696640 975043980 942792827 892813902 542917775 412255538 797106860 950866645 987080421 957928397 787023446 782504278 949328333 854406088 776262724 990109259 854319594 931888228 978953661 862068432 649566229 959136419 985559593 805402404 303809376 359384872 996655512 497608117 762353765 371779699 391895682 855066902 506372389 822077940 128092564 337264495 784850406 977638871 843793134 46087631 199577706 869068121 833922731 802090367 367266179 993769024 111403894 764017618 65074347 991648403 567433746 694059568 900821506 874150828 677236500 772732656 233417114 399257467 750732894 255500286 841085498 847821400 42265898 819951462 318251782 943238960 394759599 481575951 520965561 680085885 702299082 883508736 753559011 695414387 749175038 10174401 813537355 654841468 930101197 797613176 973932047 842503960 146089652 933251012 928190757 228050040 176668072 879276739 978463035 523663990 188304429 577804508 818799963 322506757 805470887 792281504 817632704 719753386 448673644 659143147 941649147 887495753 315663997 828731186 681178037 625839456 999590928 97921004 953592885 141992506 828107198 174149911 950619287 707842714 753950498 677061669 981151641 555561170 905821689 439194411 115106301 958212879 785910306 955027474 872447610 956292182 783797538 308690014 489330183 582005313 892823711 504009985 484294577 947451813 808912299 756960288 821668148 552742691 554485455 466349056 111195208 806542838 117622449 887893490 819308705 767722257 831386199 722021952 693407929 536051403 28168484 938706446 494836393 754924857 232380689 100936525 141009807 80582385 813938003 833508274 784774742 952624329 824771408 850160849 14805977 418476771 661555117 662181802 945758496 863090756 929333495 269198642 654094673 916825266 788296938 832517185 309256005 801541554 769681553 430392511 783467521 720031668 628173317 997906752 842391455 340377888 950877612 866125296 806327761 197588522 954125710 336150989 811075380 244801591 837541406 989333771 693642348 766466852 846609456 307444624 111070805 786268326 792876488 873020195 885893699 809242677 951453963 751939158 480291425 939909265 470700299 245725197 107665391 979478627 112467004 902735632 83492143 978552558 129792166 179318119 50905039 35857695 834814221 503666977 895949274 479412218 945770804 389489263 154516744 987859330 49833272 355590995 631524920 594042058 727292217 996748086 262071855 683287170 677753505 782343601 137067338 500421653 256424443 811702048 741465310 380342071 842486192 623400995 569199821 830775170 604387277 910928641 470464562 832553866 84877150 959522277 23685470 551369102 245226252 32455201 738282175 977690731 599647430 993888017 996514409 748171938 344035145 780771242 15015222 808829431 976261699 833750208 84299296 839327854 231914505 148164687 119533846 818890176 3955800 40630690 66193688 910611388 598321120 786205047 730786305 621484855 749876391 787432802 795711417 328164069 92752717 878631914 783581924 88597001 727592168 957578777 290251743 235122363 907107338 815248105 558946365 675963538 925977968 740766709 903314510 847099864 968968698 807350390 985653819 183839095 983070658 793235321 973882565 329984965 818890232 195257873 555596341 561782277 186928930 961435162 482276777 810560909 986901532 955927643 899579925 173937272 780845839 866497235 921147486 268266155 910902549 816275547 380832221 404432169 53411083 387107291 518083268 969496531 700689275 763824503 987226634 760963108 818917179 120505087 793851221 179391836 986872716 845762976 856017864 911626090 824383380 950717659 938658739 929763873 322873116 976058357 660575367 683203269 916973809 176904280 928767631 116576178 893663911 812508428 882864813 837251250 746555336 944558266 909654505 75720873 299256498 564627860 839261845 689414976 781701042 597016953 106348322 979702659 956200651 479599559 848761374 207924238 868942916 414656190 479452332 394268706 763167425 882344382 822229339 2274224 769493920 283192874 569682167 846598340 923568203 696564939 977882468 522481538 834488318 363237548 966039179 894998968 685270246 860120061 644887985 228161018 202891341 785644678 839261817 740182624 924842650 841475820 737434310 434523910 925884526 156181153 343029488 634464972 854579545 235181582 631060398 587183417 289606960 875486546 566991786 382156698 34394165 94416841 395662987 924579625 259119572 971009151 991898476 877304654 524405459 211177584 994606570 758977398 903970538 742367842 847253454 544993204 636162071 96144630 956584063 15605233 912414243 84354913 314621617 669297593 877193227 898930135 894885061 189529427 91584226 683996265 559947239 606382794 903425841 903021666 289430109 241658357 438856267 936545864 914835824 909118140 401109128 238033724 882816323 283782797 324585033 28791222 742679968 410703663 829401460 780137093 860996103 806447121 754482765 933408700 756776785 690376039 806387243 802259524 950560611 762701687 46670286 499296764 385231808 33942387 80511092 426842819 557830880 946229312 701102086 702315998 757741414 979289054 228410411 850240976 288158843 886180381 764048405 240215296 959824727 860925542 560716347 950188336 914381330 824111408 909526751 426928585 624569164 537530695 164611654 811664731 389285344 476899595 915894874 837068307 894052427 951070470 314815378 44648459 973592840 543258556 269185575 894876058 316571259 66665892 834011736 941628232 834256 671239211 810177764 421693163 24376623 954193242 186352861 470722144 816161092 825677574 576777431 768148195 624584092 749994245 268661763 988394430 767615549 775588009 890484099 109722984 67941267 922116296 936786494 390266633 523369482 420746773 915588897 601829894 973479705 782154186 887574449 439171924 774032499 742902312 745029982 250085917 26477429 882282079 847137818 964004065 923637401 906029602 802328016 821205755 12574254 4727965 72867678 912577804 674313196 89117802 836204107 813029259 971398663 994995132 810866037 927244851 506821337 413541776 901515726 8456352 905265069 2817676 737020247 356399144 974810354 503549155 967836086 339654573 321405588 929032757 743482554 538085233 996193430 841808398 839649875 927600514 969283176 773038594 859698279 807021132 144629693 417744730 423285910 888132326 159066382 543763650 893075686 941506211 747200630 323107862 418678126 737917105 816126308 793824989 632147176 313207350 869256758 171433531 515176997 309910805 972291163 986115444 743896065 868598625 540118949 783580721 164988613 944610144 698451289 388244365 205885653 780881383 970009862 831891146 986473807 350871221 527547143 810115916 307219234 840442722 394157530 987877995 661884612 782095828 371495007 890448185 170488094 862212000 809652337 276082227 849487829 737020247 936349625 550045184 760075929 780896795 360599698 176480917 950464132 202525424 905851255 820213117 528773324 479445014 386084924 596689089 797667635 149871103 246229397 34744567 504682771 10174378 343346212 885612794 435446113 812137569 844051786 839030919 960392438 788439774 842379602 778812149 210820787 583061737 693890467 118849398 968051964 841444020 901481094 521942780 936750427 60805875 87074172 499521472 492200947 768213201 220903547 944001277 769549108 899198219 116169860 22952002 409584440 136709557 871339474 12677788 733128090 36880727 557692222 972471586 889054682 839802232 599287548 943335164 95013975 370320952 96344123 529335850 197172452 116094787 473406229 668576906 575274160 876690964 759521155 950528485 58310911 434971841 870609694 954369886 950306572 520414265 30892431 189633126 26615245 39027975 171685160 830392555 945608308 809801117 612091992 980353253 840254830 453059066 829009521 630517600 737020247 836168532 232806576 535283001 948264058 265267674 566121670 270351027 75828800 663596276 240469564 811913293 939547380 353318133 897503408 748952805 115483983 46718131 485303310 727463506 218422727 751312486 764870735 288296640 684815974 285435897 296372745 475585697 974505588 15383955 984450582 798726199 849594210 292767018 142035224 270138900 737271598 801348555 773213862 351994965 908529287 529453495 756737631 899788425 798242050 815834654 549148356 748175798 773882664 964860764 796273312 809067934 225367955 576670918 756304190 345927826 284854236 632899926 775643492 549075974 577574860 813876746 788246414 219679040 749670884 996892790 330501250 740674593 620254591 458400393 818927766 874795049 107682475 979996048 910350572 211812941 744298284 399175878 860908646 600525493 966422307 925439600 947741037 80301740 703013726 256324396 143740032 968210880 301248612 633264572 766915928 60738281 33912933 860043199 847851050 946352680 46515546 547000248 709386259 752355323 211104655 956666898 509128222 775464888 541894185 293185436 750729232 822008583 889325534 884494883 409863124 933661240 954677693 833899074 784963840 591557935 244886517 594469137 296498593 991498517 763846134 244431103 737020247 48999926 274231964 768037654 584345604 797554045 467003974 361864380 713881023 609355247 917841329 493168197 857417801 579902732 112589183 144162973 436078308 819939398 825227312 227649876 364503970 969789578 11215192 820243266 936951083 290224148 165256008 64265536 621110601 846447602 736348511 3286246 817744443 284836104 510458360 142880394 955656451 248269969 957277992 651691197 774412692 573769047 405525637 294768673 676494785 819449932 900904590 617679517 553800479 809372726 166918787 584166103 40762197 979936294 818960860 617821628 250899137 839503952 995592117 2573095 865373414 405673588 929737873 830200500 952736064 12510019 908968019 982732518 741657741 805152109 979010079 974155261 968388434 415708200 733647378 799779145 339673276 258077522 520243652 798743791 775855738 740841375 844574452 355381704 503410931 946313360 954135479 622098295 197304276 453421580 737691150 877829584 750041142 366823141 940978250 428736951 802553204 782546288 976270987 952485281 744896444 860854727 486807519 659737248 505259586 627869857 781098382 913026140 937515287 918971224 886602029 926666563 892290190 958157441 281018228 309593810 848397148 553516810 691956923 586397644 781098624 939173022 772185472 854265111 411685576 108630748 835691062 490970171 813705264 972972200 687545825 304204255 71914523 996731830 914324962 942198235 945901506 668178005 780738497 835547057 975334112 461101238 760475917 938545248 613771842 319721349 720522635 56953700 846973253 698857380 910873787 936334011 167948034 232338876 886998740 816872296 686211718 14444342 583856518 843247974 626085134 173825722 880926510 742976611 923315248 873105454 988218432 379891818 23403373 267591835 770230390 987013155 813071291 517943289 124863630 753337294 30387197 962163669 190481070 316323713 658239654 953388634 832696827 497868365 985226940 255691818 406166382 163390774 369009338 741959046 817482096 490063000 83178062 965780976 854779801 213245556 843071508 715315366 360647395 555270609 54969474 238715272 737020247 7843871 22019111 695880966 295602717 618890425 259221028 894207886 380836324 202784363 81316686 856590262 399106311 315397855 685243205 816424646 795166474 33385100 788999849 948582867 936585295 148956840 778120527 203696675 739629119 493246102 766012248 121473341 752349173 769591284 75698625 986421772 350499373 773909366 813053502 286649798 394852528 724183334 974341040 893043041 958866001 960557700 594638959 635902696 127819340 805541256 810417501 471019527 191013370 89962555 732435524 160738146 45414700 177271393 350821255 934152960 922991370 750690639 588977999 535669530 596893796 354599942 791307072 296387870 921840363 24099963 896113357 727074082 968500054 845720274 725327130 79546346 774227433 339603143 843730906 494770391 180447445 809578691 732168790 397904850 179693602 315235802 844856469 380763938 863964128 698047430 290193635 565899478 905562376 81914374 598418455 790830104 892210029 151665116 104931904 646233185 784299784 789070598 809808476 20861472 698446218 678930294 693712331 821922999 904719380 686909371 395902862 506486586 915937426 819839871 108795147 703433030 727278253 879121915 956855300 969426529 4207641 608643502 742333862 102997291 294497342 499507136 913796497 788353411 388755234 937145044 779531981 937282258 838937709 484567792 887218935 17728018 871708341 956158445 972924034 545128868 797953997 755152180 91571305 850698292 632121729 797877121 816580815 879855213 495703394 348838890 912935235 279988282 736630870 524493667 836836068 837178661 449912213 888886955 159495442 955753473 754996871 752823908 778072238 940657160 886120599 901107251 389752623 423307530 264080399 811297868 516231026 887931122 951829146 240211689 706383014 157548290 630768065 925035010 599338882 88039083 74363576 20429663 24400412 978566834 12999722 48816619 645514483 776385466 131540477 737119781 108386296 748115009 811675726 593151927 816847234 288712759 737020247 169075636 822552825 863656020 364813850 856334823 632264629 488899525 944836353 469335223 817203026 979380966 751242825 979652009 35202263 535819962 316483627 910107580 910810305 617264516 266464088 602042873 739124387 791908975 329999233 988849998 907521866 148567009 871671484 201959882 657976533 116105759 824751924 932113338 939686775 526887841 42064780 741606951 981682083 132775177 818699471 905069066 86670483 409670037 863901396 996939346 485233656 345807443 919017857 450130196 988449915 749988489 747789684 697567231 757784711 824735184 655204672 896537386 91779942 199327587 768554483 979666659 243618809 997711709 418153396 396932388 908963172 960551915 985447940 847721299 918855826 853768399 990337003 921781741 762039942 116393289 31136871 870410728 766494289 750678223 604088777 771682878 742961390 701940958 705538972 737020247 178522770 881563362 489533265 619481011 441562433 605862575 695684773 431545959 806155360 527464384 746088932 439602203 123921864 980473244 933019030 775819653 786581762 273484667 896841702 941381993 974627820 679193444 677638738 776188479 769777139 265977293 897204960 975334791 977011512 777567181 88586484 881819376 835564052 565270975 875938527 510411195 970798209 28882138 393103029 969335110 415060977 377852375 613876587 549261595 596756108 822932842 561725153 811334920 348748564 619544302 895301639 975402678 919287462 988458125 705903135 128170421 871322933 983897935 732398534 844085889 973706937 74811557 829033617 84229459 557059996 747458076 641518236 70014486 461593755 863929811 176752642 661424830 808093258 353827041 778164553 940235162 530518468 159033654 978879799 952947208 783063488 903538325 765319139 217682118 46019934 178659235 512772327 736653829 554323954 719650761 690470812 296420366 943255978 962400903 436192452 996394226 984333126 986463364 90445439 886015985 166069881 26295508 30447304 909460967 896371082 696852105 864093376 114419054 940924630 620960932 333640066 400898493 708886551 42629012 984227353 814020547 824353628 976271077 355099881 762750390 344719338 322388972 775017329 451986509 967356528 296899266 411849567 906031816 925524027 891803263 892067494 791747674 720360726 858857164 250778019 317847829 743547857 958415717 904165717 512024550 958578541 870128230 821727736 742966277 622215222 402238272 458160349 793338850 813439712 289959003 68746854 862023230 242989133 100478626 136411528 411266339 953448922 522831897 227232903 920997506 433985850 252818592 124463875 483142754 439940270 833709313 928775179 126500119 693295079 837932625 796201579 410742853 875330930 809279483 995539354 964862790 419825086 663924982 441167774 477337675 898476888 907320823 843335290 883709500 893931553 764590844 355529874 808776179 880526960 968370577 825354816 629243891 834879658 36820450 534433351 855586064 104789285 809965657 818187091 732319803 333636546 848700856 181074682 457188436 777174641 262638724 743676525 869991376 929243048 987858589 780975353 900565525 717698447 921400893 808059972 831009547 885053465 673966204 911767436 745454733 836988154 34966399 433188665 774086741 852819536 609455972 970998186 757799294 182201426 266486728 942099372 290772701 652211453 310665611 744522393 4258877 963140374 939607164 922849118 797701051 146162416 506734665 796525857 521149529 153641573 859501725 391203367 737020247 971771430 662181867 50078745 884496797 413287217 935362751 775681819 972453531 759536262 654207452 801975446 34526194 762954591 653653192 925003784 674665624 887203128 880513794 555641390 909618280 845842276 987614722 998599330 962711649 599131217 857349978 872458237 809585431 852065329 253179664 869002793 637140327 983843491 327968947 185345473 892111046 797533624 889293533 261075687 699738045 724087297 421871132 84265607 933600629 935604495 856899530 129652969 391958081 266190058 211468159 400298848 653481479 926741892 764679550 433839906 895240125 883593201 637268304 766738149 617533569 697568096 197792314 404579031 486166641 777303056 136122996 221456668 983131853 557782324 792824983 268399729 42189132 819005464 48906684 573711493 822051209 496202490 910868034 474281843 76148979 178505756 884649913 846315097 456616443 5862830 151149020 831919871 515301831 958879205 83348081 982710121 266398354 392072696 838756802 769865185 697476722 795618156 775343379 747727508 775771713 779685561 64760721 674595549 640608243 110577278 137938241 779522735 249645611 923858510 780732315 834548055 88150606 768457842 879599757 747160903 366652286 565339254 631003688 197613530 495912247 865650314 919560918 899065545 810555565 912469369 798907838 552699892 370690792 871970863 744832182 985927446 870501369 738484752 277439629 196859511 693610739 887805302 503055568 574181410 368051959 40186081 931420488 46511620 248307769 663761007 604335413 325667905 751576713 352691902 496125766 862719470 984333102 656105209 879043187 979102946 920649920 198803337 612732312 483257428 164510019 344985670 325496177 325343496 456392377 892925613 193821854 238234398 994584906 135951615 761541762 764500148 641856497 925146504 885438875 386729896 915114741 490361963 157881103 35809021 964767113 874686495 919698608 736361291 878288539 340317940 935650834 66429612 810690312 395859805 39531757 34405479 719610966 131906063 747680294 629571604 749064644 866835996 756195389 44153941 710715553 942161144 868972463 32086265 934049238 160183655 744856303 843058957 970956727 183318847 750408313 338796554 327203174 224827498 443648078 902860103 652718115 865548476 866366742 598052401 701425929 894000645 701491506 156609208 712105582 748902132 539533875 911505131 915408710 722464721 893013758 769350310 737527264 907584224 323921729 533439990 886631102 334970038 14288147 855267921 57766488 441611147 746656707 33585021 774453775 520841670 785481210 191687953 793713068 737020247 252260242 898784441 268834411 505618157 985152408 188820046 751191071 92424270 392365688 761269677 889567411 769512425 442694808 985710365 307063628 386948556 40745007 733627471 853154879 760628851 889744860 780682291 943015528 674267258 98805350 248575309 674887045 769867058 805777290 902509792 749436065 279134348 891129960 292334367 885288814 796661982 946014245 562841863 606774436 640036702 847785822 840825832 863768244 968003693 648618043 753007202 889948754 15461964 881742244 526873377 310298340 374538318 842917741 166056525 857484907 920925350 712145047 542201540 871065627 590059501 45317623 704649172 988064467 563499999 466276976 122925482 874624347 592760933 850969528 985993441 956790696 588964985 483156398 614673439 608075507 413066170 14010932 214941140 837249468 776473990 765558561 290931024 573016049 660982111 863490108 604151001 555494429 929024275 345293029 150260840 249150953 762215095 274571565 46873784 843487548 948997352 971224401 566385537 54718817 718914407 262761904 914039044 808833386 393676960 72680283 44246106 286019194 680787025 881173253 923360105 188782035 7355197 260904631 229004198 823452892 920291465 891154391 648285244 722462626 932362664 906981896 769591129 279019724 785237249 997840617 761804638 138207899 838081331 304628883 650105989 89928842 554304991 812984940 937472114 214166467 811261826 387426668 878989792 328571755 345253445 509183550 913678791 101546671 227523251 970049945 258403978 758009692 24484976 449181007 924601801 899035654 175882630 879654601 726897462 908448503 111324290 943251602 794082604 649185062 539531007 410457075 765721870 392763605 10271694 50906216 268894621 383838018 740684990 532696395 227314685 628147575 434884381 122073066 156754304 894974443 387369584 32447586 751628616 793026834 766035900 875899081 388624574 853187288 911731973 310667014 981141220 893523600 890031617 459808339 954660437 959018598 803473455 138773804 100782062 529244259 287774891 779338327 847056353 796131793 922296819 747232602 285415882 896413134 342943100 57426014 754080993 525464822 887175856 714234997 789254107 803251289 856104736 670906539 27361323 772844332 809631013 940977524 648331448 824778300 237163010 756207703 906562597 22978323 841187679 169237552 675439455 455120556 961698908 533734642 950375553 742125956 209692300 492359271 506633872 756929410 995796120 820864845 652347106 324825090 997453822 943951519 748228022 430493147 884786474 906476436 435472259 821205647 185073659 565330882 999657063 207352245 964868416 762739350 480661069 197686933 860251499 912378112 902105396 835595912 582713901 752203265 757453868 757561404 451651 832797177 909691569 493035552 381005947 268231640 850762138 872917693 488564792 775821021 261940515 805179496 54944694 879167626 125412306 468058358 581305851 62751406 610455889 997558831 613077888 213179494 908254650 887014967 140332905 367491616 470021126 215194891 480597368 467996069 91246555 810593032 995809266 884153444 448997661 596987027 837396800 739289008 961713916 38952544 552917159 792913485 337896470 804971539 895391952 86185244 241617767 983787077 898297454 6922513 862437119 942219394 925308280 769563563 807392676 909707528 137405583 866056424 695814690 436004925 787210478 887245637 815693700 88067610 198949367 885226800 878335802 862722865 818471349 106284362 927300220 422856472 844513466 839024017 757587723 357437038 975527473 785309356 280580164 970291219 799497971 718203266 151606266 567173159 492587654 613453795 889103273 188996345 970801179 308228562 601552918 885622270 917769321 828940107 364882927 942167600 738775593 989445521 946309154 84768731 406119877 430975852 853976019 113230248 737318245 415406991 315272348 129987983 970370897 361801155 357062266 975367848 858806520 189738259 837140746 599338290 932657799 289462816 68230632 164939886 219609118 831374183 799521216 448215711 230454235 928859810 154091299 255480631 740700833 206862393 898730301 826104685 369979678 753983055 667633469 996036138 454532181 221529791 959964974 961319387 774648126 612198956 815033819 275285646 530272620 965730869 342863175 880435118 894944084 974677909 995815280 670817524 971700717 906989052 601884532 516007375 747007286 323173936 194815281 839817089 56602288 953959342 867343385 748395845 749960096 825094066 914498367 983993692 964900260 73009875 23669172 931395913 935121541 224572839 33814243 275693084 755817647 432438785 294505968 171591855 67400209 580155866 756621439 861075545 882631685 317357904 92128747 799844327 894728501 997321284 368049003 888324611 381254155 970455576 940969175 643855771 133251193 841746426 961983353 817853420 777856330 810478173 898955050 713368017 826169008 871401062 168765403 904027743 922763874 639101934 377441893 377452879 835075307 855909637 438051036 833463761 908145228 368122018 831893934 854279763 954520354 854184460 333582305 753564889 964635046 945286403 742348742 870048473 816912135 827812572 15511479 794781264 781040888 4912757 656012267 842655912 926341255 297296757 754390684 470801966 54426857 563793762 830375542 938691019 31095049 206921614 916487086 913552538 255119637 793167011 796038448 735762813 888123175 34665523 867519698 128367067 176200603 200421949 428611577 838368425 840856196 956392500 940777788 903300516 849676186 675511213 634076200 550379751 756155429 199998134 482400767 835249884 595508830 543335658 865456287 229456002 127328421 216953020 922988823 346782605 875554197 753923253 210685455 889528294 874618631 754537343 785897231 897815858 886290589 42056557 244902535 913013821 811979447 115863574 58569621 869831261 860847913 796569498 801226380 606622015 793578496 133134591 824031390 59166186 176402956 141782219 788616168 723999281 777525832 865396440 959910100 599322363 993845311 126957928 740952534 116460418 759264497 921026747 902773700 792925144 727056348 955896214 965212842 858146264 934496758 802429801 952281078 281805983 852856756 775682806 784232693 873123226 52551943 688735008 414843165 526890377 855539235 46035535 530557885 200479350 867529238 103886297 416609528 814962980 959111575 925875303 963666728 920070081 750291897 907380796 862739390 233176866 819582960 963819728 61059927 872239935 191744227 700892499 427509968 993581282 46404173 921595350 525486930 803956666 417756609 810213246 408937975 573201832 105693429 12620080 105419902 979834562 946117034 189562755 885484530 893248326 889223821 931925219 195208251 399374623 457238287 750181696 971157856 420355410 727077284 614608427 832391596 42727276 891785802 998939737 55932732 443530324 881833113 348776167 980311141 894053967 531025578 983422706 940930124 275265827 183213550 35209714 80202609 153431428 138425447 833156016 799416568 460746848 24356229 338229211 182213361 880124577 927139151 401606542 338665537 913889690 454674641 693685175 912120672 978920026 779445132 17788827 628254323 306583571 998987912 784087992 433694829 834619832 970686877 881527082 599246470 919801437 768592562 429617008 550654583 241103052 403363980 401272789 341096894 839337933 108668896 851094281 350618884 198737910 764275178 974919630 2346023 661522650 928563851 799630898 765358933 603782544 314240627 444738669 314087825 802545814 614234116 887842631 949551207 571283144 133571924 906561410 928727239 853636233 804074084 643290194 783071591 928770782 914979933 744560472 141715564 746787257 773978663 247997115 365755636 359008956 840754470 865831165 870269787 846235396 871401529 52995703 878455229 904281709 906500513 315005955 585143358 660909474 655905565 781267576 462748099 746541735 924588212 922921977 761680801 833686476 843776660 737020247 764115547 668936302 423647273 816787803 226017401 271681767 800772278 574795203 875712224 51064198 468826316 458688667 105495209 423663465 644699262 939910612 641425823 509627881 234609599 257152386 26003896 37638497 25029709 821413326 308159509 754171040 567871509 816734899 512769815 825466858 788462538 600622507 808807197 134587444 987614449 220097337 933770000 810869056 856839946 878887487 748886097 742926890 911989161 947333063 362682742 614576084 490512805 689176342 765917448 522245723 836606017 766156471 896895743 933362091 930309584 196661302 121983507 968503390 126720687 810375947 761571018 860622056 175346163 868136258 805119510 757537252 154084402 707633181 365844782 710355912 715211905 371189952 752235559 470772828 333537998 566198004 968219387 200659007 843912438 938147641 913037999 836877258 972407057 913233344 210787777 387618306 671574265 856340916 291848694 398627042 869743857 475352595 152081198 753255350 521804651 394607652 638093540 753950936 380135929 31118285 56799337 435630957 930365105 482486514 970352057 660411656 800909780 830555882 170884333 838260395 696806046 783951807 931635753 828190869 731957605 929558323 952764362 803638588 962197226 954925134 697786665 26296032 45378787 776625820 677787008 444032707 75081463 253342827 261330884 803250418 552073201 925103731 353677125 361706332 190883038 886544623 324019888 922838215 557835078 935164503 831539741 736537081 17717402 804332421 782744519 87044424 987175191 587030256 109961036 311898556 859025897 843687475 236248915 520053508 802252329 80430869 789523041 385598070 351135710 391680299 134252408 914698901 343707948 859547702 831847436 670779384 603932931 84202710 981843068 505369697 721237573 367036430 520989506 793649792 746383901 479412915 867955376 823763117 917697136 253104365 707709722 818808416 532756880 925004407 762165352 929011369 38884656 843254716 412295167 496828400 908354167 819669744 374839386 122663046 718267602 213095871 985798834 934234033 791277779 819171479 616517724 947398231 877752160 418909113 27075686 841660518 462792555 794869437 239064541 504397435 806493777 538859100 932664051 426015063 874625189 931963297 903627775 982992550 935225987 741196275 857566474 766433427 116508232 96988152 191523930 424098559 866824050 631043379 908681111 716492552 171642146 922938921 771755835 639110488 964990312 115463853 545527111 636133717 498911258 881970091 671314749 229366688 872586766 786299354 296771689 889129990 908208866 770219599 916504519 880883464 409099720 365492180 257351056 778842440 740703525 969607224 742192055 812622845 294381689 594019599 261840417 171145851 809807494 500000685 773773548 988213240 407257434 400536734 182123784 4644757 273017569 263143605 857143561 21503586 789024341 355106865 977357528 985515601 270490497 10510965 928782828 285232778 767285195 190302454 789898985 934470725 476656215 760213272 181456378 979646085 924886314 267692934 326691514 802045083 311935010 816014298 596920402 963635745 149217324 950427874 893515799 803993831 746196739 771129434 16393065 723513623 570082627 765855366 728126871 52677987 711555964 620374465 615470850 713581760 663097764 954348336 308892022 951230325 822587654 892242718 955266478 818502031 561137357 764166532 718751421 490817845 949760966 618745827 758243032 84049948 975751897 733635511 451551813 738555147 789597583 851878171 773182275 150553530 210069292 269111176 18286518 289561169 754321322 83573630 225385478 782148880 862356094 283419348 659782642 485699305 245365632 993199916 836907496 830598663 179697354 828795006 972313522 740043566 939378994 702179568 104486499 554658725 103783124 598563506 928911106 815944248 477363291 861361629 570913717 306674712 250818179 218735280 903145422 81106100 948058912 953415931 967597927 913336021 139526284 478605363 839928472 757730234 178547071 118183642 559598259 7718397 213352341 513444585 920099975 895115442 974193005 921463615 369892970 272232462 987753539 29957137 140192324 685883868 258717908 360428824 249506003 123669042 849637728 549219612 63418429 728094722 288770301 309195999 434854155 965707093 866515255 59231964 817736332 740644698 720609836 331786049 800065860 507449692 542782182 814043686 662542245 936615490 792968452 149922461 186659564 951278181 284173333 375788941 978058666 842075833 927273049 819091430 814230160 284063626 914351281 681213183 966754738 837249874 295854162 946330436 832391534 516012522 743568483 826938723 942820654 348921577 840204066 592089342 948857685 389230781 762453788 184972188 627257458 752158426 548116419 835458990 999011420 792918090 955596987 529899770 810115855 873310534 961163671 4357123 945678073 968653759 901763546 342958858 235283316 652128909 735772571 879390163 351720168 444573563 175934804 606606066 676076243 955367636 431850463 497155923 974375014 479227011 135852834 672757463 521635626 642042625 575412388 948690951 804572785 336550508 592233736 992297452 301273249 942948946 310313373 711894507 414791845 816119671 180216053 142740816 779582804 397240074 555670307 337699786 355694994 978903271 775195431 229659819 366772745 857626904 873012559 914033990 200485436 609583269 416789716 885541275 38036967 757316831 743311209 153113770 685174106 546920632 749657984 934102367 805820999 757563902 846922558 32173048 658976989 706622685 653419552 963469359 746255140 943267188 861061880 259604194 958104905 329985784 781452889 789298463 769990011 9370399 506547921 409023426 966262409 826380473 573343424 188836821 875339019 503954934 672336390 492095561 998039360 748231980 243973334 924182552 781541255 817922574 794016244 942373284 760170992 446171440 505539293 858583988 401979335 961700588 997684981 486263741 186856810 833025034 862048882 817710865 94287990 812961265 661169433 78444943 533118660 628364565 270235094 129720200 714067071 821726114 777962714 757808513 758676425 789442285 859010166 816267218 81388600 408613699 727789867 830297054 809613292 48142919 793709841 950970902 987891426 801744433 465446515 962816313 178433890 614508406 54025925 829622363 787588790 350566185 756571725 880270051 109005982 439320812 457541634 960347283 720586449 184094730 678653213 255757769 101696459 827204364 914903351 761038117 844173827 822673755 937407104 848921306 492091151 749107962 402029426 225731128 370226763 646847046 583762931 865006555 919991605 899612668 703171622 412853335 938140938 868771667 45040668 834800624 911006554 866249181 481836390 771403441 680580606 942450401 65399658 89937980 681819791 966174650 535892298 272684619 864904811 995259221 108715333 204525301 903058838 200592950 159816509 835986058 252408766 887397033 827554941 915183255 590441793 892007812 993370675 169249008 129941037 995231168 824355200 992047912 860725659 794922149 265014288 94870787 540297058 858257155 697658942 946707961 286235019 933936659 609026318 853457238 910756945 968990255 965299376 92708971 827894401 890189647 854243521 841786229 44123047 45071502 896582869 734353189 963319080 749732759 382993942 169231040 964917751 271250303 39774278 21495078 135090388 866625367 756357851 276031537 944142099 145673548 484591091 881360450 824359688 776404089 922375213 820813433 400360675 811704694 766818295 997304073 796907249 970554874 503014672 961996515 931943085 19342413 771823289 361894417 306128473 750781415 213270836 777422198 971916393 328491507 284274463 581228343 785142335 773088072 955114174 828741155 705038059 983132151 81363739 292334748 876689017 755082532 747726862 889065867 255346945 903611173 929149341 356849505 697975034 995880020 177867871 620218323 608243120 897704283 876013626 100295882 927183219 770127649 815310532 854072723 848614562 403624436 195534901 785783739 960385966 335525201 950460270 795483037 659244897 186837278 724937665 809738838 910973240 835283376 244179810 876527046 760156506 312115148 851410301 210414072 902680674 138024728 180587439 522609949 729489336 711983008 576903043 798864467 749516365 752200767 233227208 809570559 536906369 787853844 821325321 37517265 631032637 120893448 240125040 988929821 977298272 996137205 407333124 888506994 906820541 743514299 669089318 273207445 316056386 973243302 876622346 85121292 933226973 863825590 800238071 778944169 813981688 636661292 7860090 993242689 435419288 80892987 397795049 411816995 798123861 974703920 589616020 905587724 766063822 976675082 834345817 924599206 306892542 565040157 348639896 972424656 744170931 577493894 765538479 957989148 992145624 271563538 820513109 30284441 986649926 52103503 586608086 829034112 129723233 729572920 44864582 954529951 614733117 89315280 446702032 351995108 313026810 932407396 404650504 873422604 71030662 49865317 796854850 697972641 593504857 748612066 879270917 804970562 43756639 425454953 477801177 163556073 771439680 991151212 979413911 708864358 930212076 866970221 922041457 201798677 973707783 469948237 906275006 180679020 244368777 94273560 905190953 866567983 578185507 849213700 434163699 779197984 669302279 803178475 689569450 858403137 835003299 659481510 916582795 971423592 889226316 979968888 513525864 804884208 920557603 101243505 763213971 39436402 417713041 447790026 762337377 106494170 878781686 330599710 382018476 856089776 638086152 82808821 564134479 549645688 175878378 760219157 772363683 561681349 900006019 500619134 982620485 929088186 251607467 146251015 501525058 72125822 458177497 388711997 890504414 806576477 944968588 953338833 995692267 860789201 831962523 146814729 999620808 891158537 127039146 784661059 431695141 952899612 508499170 746815416 427448067 647880230 961304004 838767764 67661654 731881592 784847621 895931560 389161377 632244668 9025566 306271998 963331696 333779063 819229525 977809871 744686601 598923961 844890501 458463403 791830756 960554080 311906734 945985650 939628609 563346455 501506761 867452831 52757291 549826442 841659653 471403941 110838055 756125937 482425576 920286447 489073536 127296267 87184471 28555307 223453402 935795353 492793513 543350515 811120923 720929017 871220049 941327635 956254659 627553051 916375022 980192505 833539083 35955455 813473162 922687451 513626410 128567511 668137968 831527851 89860707 797790034 870608548 478274750 810533981 834042042 218602102 520520607 873917488 775848607 921950364 533965641 858543538 974604913 200171016 748473310 861143531 300697621 979025550 258314897 933872883 766879829 892372035 768726489 932469629 743562670 893916949 768791765 783522769 950213360 963002117 21606425 896269025 932299300 801645676 949095689 927552544 910298722 929247691 62752136 814745634 808729889 977110633 805402292 721462816 258140304 965127409 488507814 771434242 102693347 983809861 888552619 972498813 127025803 862568483 380075998 759733679 514288754 281790633 970441220 935406129 395145707 807577995 894285838 738941241 986338218 538789653 786086213 695009739 972535996 196340690 629176620 569723764 840472485 988282408 871203170 494417073 469407745 948397372 669337936 516763550 767211888 788597557 925693930 483195437 445340255 805691254 980909391 820944378 895667864 334244500 851006288 125496664 90961964 469210674 428663125 873143705 549600905 179660488 975911445 862161957 744002921 773479217 768440970 773374460 981690489 265140752 880869933 95161345 877451357 548039076 824810783 582989762 121886553 426877439 365371144 407275211 492348112 416987444 376327900 625150578 262375125 865755380 440538378 360644998 470759508 844784626 375130559 476353563 401137796 906333737 740150696 93874568 925943655 993235512 571026016 925994760 976802031 205307629 561223060 891410487 65567237 958278860 632071675 957021188 905115741 945624241 519118277 329001174 476355728 903054021 913036930 985942553 352969000 190632113 768312899 912411895 839050775 906558110 25897110 935342340 541260905 77250092 364535096 292239518 854157123 563415188 814917453 878986303 82126498 112779475 746238754 792416221 101002094 969458929 907847802 985695051 547015252 605895405 894373812 809214583 755000056 878846951 838542977 758744017 952850956 789093076 811830510 513732210 905234666 840953275 529396601 730538225 284903329 777320882 973159821 531819404 760734727 693622000 852401883 900835618 643088997 886001531 930858942 832839361 315445403 828576932 927306980 899287360 670270033 756844566 513972328 949218223 939886470 449427051 899806389 936419828 459157574 722883170 981713589 102611066 749908110 796686957 549795117 147772255 827172453 109361630 830245028 217299928 517910145 59438715 858625803 883835632 359456585 687131019 419470439 410164630 809370859 890207333 468544543 920947077 57121141 653088095 658825281 993193269 834643460 217513558 831209811 418222041 981346095 750846713 775812256 20347680 882501558 855322088 399701947 673836432 931911226 746820963 772866819 820237067 444683789 380012210 84229242 884638901 699059744 859247318 941809975 852565382 998298969 492137111 110858469 676711849 903687729 34892700 726907789 5429749 4375003 897204944 944440108 56037836 642447377 908413947 295517145 278893435 763021721 987899912 950365691 789406548 49005691 135286784 136201772 613695159 676561052 445925094 711805355 778438515 593637277 897921550 428649194 821341744 833620435 798750217 130972479 767426959 834268779 821922874 946393421 860312642 823678101 332190612 816218372 246729540 406674292 947999842 403492075 994116008 627213541 899960461 669449798 927328327 890612759 623048317 937301344 739158302 715689285 338249652 860362218 965730881 390405354 704200036 760125205 309744438 232274637 149670396 352994901 945515708 851368466 215575982 868140372 893825662 223980782 702788460 122613855 677431379 530114583 599179857 947379635 203504347 789412520 838228052 981639254 599387512 785800733 805713842 349055859 813641743 475280176 807148915 260909389 590976880 986256943 670976062 868673027 840595976 635719543 756224754 608118657 769376596 761772657 536597901 844687396 600386001 124507731 826973533 374833557 54739638 788514216 644010461 696460246 19517258 284361616 807172346 736075383 788915485 948450667 915139090 79444596 441245662 929910800 851214179 474237386 883519875 202023813 121509570 394537522 936817134 123255316 799498867 491812866 829071610 965666876 758014776 780560223 854782021 769747311 252841899 123581552 956334664 976595652 549533162 375244355 660224842 783381381 646793058 868013174 407107743 764498501 768425155 943320980 912731303 95479806 763260127 789478590 828874286 394803002 897041563 785384536 50820293 100417421 352299853 957927876 880495264 181449627 965293670 969122048 465190809 464673111 370125247 75844369 657742979 632232013 37659163 219437268 801613968 178339191 822266736 870157365 753167986 858442402 410765091 893260698 33297479 879063383 121025029 968370110 809740690 561880667 934573192 920957140 111442703 854240801 922642791 253807102 449050868 249981848 867126841 748075689 828062307 776610595 365195348 760919326 210380355 608043546 971955560 998448249 802952172 939412838 815456508 388899044 768691495 178104867 271111687 815170920 313814791 770493468 318572150 935552764 883074964 907384549 748751244 359313009 636490452 569356418 414326399 865119749 915765906 854437619 812285369 228716974 101616176 193934597 146611993 169798802 847661984 78800909 830009714 773632842 379728849 741090825 807934543 605656137 854351941 544438945 911520595 531642573 652301092 531922018 882091430 592617727 48696351 772053462 996881477 925612223 945624163 82126974 831864610 828483520 301922700 2612126 34474403 295635943 63965032 902000838 853323535 160154444 163854084 359360935 801110565 77909813 26476702 766198526 387779380 986768217 957209716 952164443 76521737 829830857 830556541 448975261 785554291 875388247 128440911 936494922 629916277 960165099 849692645 932792155 811862589 531340858 760151097 782363309 785627599 78401278 732804568 642607780 741804512 839389633 675218027 738868277 794751257 846368762 326614292 905354403 878322190 876497373 765043046 769048620 508514751 864979653 743109282 763739314 862862563 185173153 603745753 276838769 904847516 537951949 940287435 312796211 788061688 791178066 918347296 772897421 217807608 791064117 751914613 868147832 827316720 507016735 833008582 760977184 748683553 710313609 278561747 991051489 765990852 384779670 400180918 252237240 988250704 668484871 843412511 661696184 35788945 839453362 965922717 889530186 767477420 821029875 17539702 44977775 793110860 622236424 703996076 770741036 805973232 367208749 556163108 818456708 98702751 884862511 298059242 743108373 831575896 91675575 508802350 853791751 915533774 923148731 875856399 948176643 915295460 212252360 66961514 29440446 72178244 507267799 59533339 802803723 661486610 804941391 263031038 337390986 704698123 315672991 258924323 417181851 919339751 14039915 31331899 893349088 87886692 45842769 634931472 417324243 765328737 431352649 378448559 158907123 217034709 73686790 36652300 754801213 203220100 756555012 568233615 872369015 858291720 802959427 340270584 918593147 985486086 244951346 364662066 501605458 29532617 718919715 31925030 349535912 168036271 319541663 619467694 40288902 782651759 182656530 524789068 173386000 883080693 914646774 152598144 960480363 352670151 582014177 620765379 854215607 599530270 803007562 982457636 833734572 279377518 818288866 928795860 986331968 492387726 683589296 781995491 766278262 976591296 605771671 978430220 121185822 961729040 78327916 229227978 901939888 244762195 746679214 279449294 784645705 967933415 885010605 804923190 850812275 889212442 790893322 793498017 901922254 802622652 496530040 920077300 898638899 791667234 820941871 924011271 411472250 243136620 366690698 870440565 460249411 781770862 515093263 834397974 817403521 746290572 558878594 588189100 778409083 375160174 503144273 788546329 15652121 913659593 903240282 788580430 947324999 805387269 881966707 933809440 958190859 955048429 960979527 504342950 951709575 121955364 829116946 865743984 952049790 834349372 352629478 827764700 36268278 782263750 985681903 510184050 145433928 504147758 278049745 954607046 888160411 951898322 920156293 918803100 566914729 873886529 891638804 995734946 768762460 753180410 801828979 996935134 601864085 318789455 739706968 854998661 516860737 81262013 384548547 390737558 779128221 594579886 878694055 284377605 778546500 527334018 928032808 741908171 762701470 926492117 775669100 933041033 753183102 913248214 890908079 119958446 249969186 494889808 8744908 582963695 468952214 464042762 431169143 686583086 223701710 794359046 756307225 421406097 550754252 494371577 967585855 219319052 896184085 875432398 45623102 605501023 890527209 30114164 762748914 494433897 958515840 751725921 642312490 980964707 956941262 715947144 926917506 236201398 470361038 160225478 416509345 421485359 870739730 29567184 769892435 108969773 529350668 201461848 511378138 357803243 693339338 407373528 867838774 142811269 79502075 991988944 341662308 891305750 986170563 748031334 45986655 970439775 572901683 372044321 111563792 553332144 281108860 382799785 986899481 676643943 825157929 763794844 623129838 939696312 546231718 994127491 779674738 361913255 979721049 672806146 184307958 120682539 906846100 759259593 747768625 712630613 968656866 930130998 825578151 155883985 971542131 445280586 765424509 667524447 847515021 904075338 804348482 905411255 903662689 871239083 595198129 932856480 115979689 353760768 442658031 993839763 421527429 413115129 968674012 894952525 103931949 858634271 894196889 97245904 634194124 742690138 978046400 770670598 870278281 797598587 895818610 825016109 773126238 596617562 624759059 788044035 745117600 60087133 547053962 981987180 110348587 863500774 775599202 817773757 189358746 62025729 830368867 183788798 286569458 974037438 497766502 835322637 176883378 818729028 636891033 892803324 815982775 657506414 27340969 809938276 668411803 138778811 102503959 77445553 898603519 196376198 316164164 469541438 227998886 739077641 147574627 883523103 664399678 807106440 816652403 840202633 998729862 202167520 175800858 806236351 77371197 719196617 108256134 896821814 878371540 996470731 824315782 530127310 205668414 810713099 869357070 658911388 950442751 687244927 148439428 923877393 145552766 131012391 740289845 940841263 613063474 993110628 57796764 608037911 967851549 602056949 913439061 368680989 68423745 385873723 821542064 389704761 814407218 542445932 783640982 729726232 426198552 885696072 596487391 797401834 909770824 378460512 796785126 481256280 510045149 324184918 187889397 287829219 295895034 772658307 838144729 822114248 744659989 817320521 804116380 788801291 486454992 772325463 876403840 293247857 999237163 181763655 813386585 750935607 166065711 924907768 839099125 869959335 597954561 880115494 313553599 304896659 294372460 754145341 426227539 195120870 895469232 754981083 981499589 871256988 900564562 863527960 883987491 354824597 912580824 141755407 75219311 359635034 892660684 96343214 786550965 757767603 112123365 767051233 719985105 792260257 773154850 658905051 109293171 561447318 431668203 868410149 753529832 169801950 876540212 469642936 58079378 187442788 604329167 749277654 209012731 719420799 556416342 788092827 922481482 41721279 988660037 843649734 962484424 774252173 810892142 833116580 32737696 933768470 396521312 222054125 986457961 681710932 824762668 419275037 928911180 292435500 876319024 796535330 272199887 93993536 379667405 796164075 879308468 487131884 846426083 184327110 890749014 845727318 817725419 141777552 260577325 141137068 379035547 672363837 363932295 684080376 248631270 644850610 724600064 838881025 894393852 946565752 640750917 540439869 790911697 100622525 673087641 874895382 786569322 345634272 735634402 304774880 463986071 993916826 383302218 792713829 708501431 809445152 911950905 946895545 860770192 815328832 923846131 903980641 978255270 834181383 944274588 627884557 806221784 845691383 300715487 976778504 970705880 759036912 819937078 918834632 265291617 882499710 122778242 834398784 778354727 611693408 623227299 868787681 792376816 896013131 785439167 689397391 244471740 821362257 931636951 833061809 911454061 763588891 204771502 839741683 971599588 559629747 832661414 182876047 528729098 752109516 379790738 951329491 777593771 540153104 806513890 205069721 863023601 74187297 960263706 212875237 969891634 973037098 987810895 83519665 508546176 5503899 286558625 365840664 56790996 42311833 96733147 360902739 890755000 802892438 892650472 834448235 662181640 877653884 833199696 550783376 192217669 964912260 443385927 874355945 536053935 789457566 968535385 861806297 943640337 622620519 950872032 958744047 832264343 88225385 274691325 507013618 366190279 831748911 10462398 947933586 798774435 853662025 610719564 987396046 291682610 888928847 525176037 370628251 853734263 439001616 213236249 860251524 815990666 936578280 928573065 578595188 749514862 811744129 956268034 842495378 804827009 742325337 570187690 739301219 908343889 522953942 792737219 521715685 538919041 776739211 777804519 844856759 864472233 294169261 945793994 579852458 23048226 874342052 249246248 827647160 164194661 786978732 803277148 882460024 968284928 853203372 866443689 720404615 614491313 697285271 737020247 60952221 557602921 748885953 767122857 663845765 222546793 762016002 839721557 376258653 267124124 880936818 868090061 861968622 559069728 147173415 510353134 338940244 824435465 335469198 49824383 897010252 855803563 392226017 808787522 16831035 197525991 689932583 448384903 974531588 227152860 214846479 14103593 861482089 789862907 236785684 867083946 119429301 809608433 74120336 536882613 493913914 203061267 835035754 610981522 221564142 252159780 929783379 930816021 328659821 882598778 417474823 412382341 63367126 160501395 383613294 190761763 762775932 851035063 302986917 158233677 286378430 656782203 542470904 474533696 867000830 949682506 318793240 944415460 817600427 834173627 25071587 107307414 130330249 692112375 75020725 263147314 912693241 989954877 5446776 993174218 761671678 308644456 220432293 417067220 982749302 246494628 158370246 899225445 781827109 485439894 161841546 199589158 162164780 114280987 158049639 939001715 92281924 723585217 413608949 219230956 608436988 236818208 886533298 14426700 850807084 866425859 898722555 169474308 859000498 620110977 92242140 764215275 5276308 519990041 911196544 980970375 759989797 541542276 944740340 666779520 892532425 641364428 793213004 833804969 930984960 836220442 445370803 749114452 976620625 802859302 329393993 984981629 959377991 814457796 502944191 610772372 742168675 885257329 323563717 350386512 884882034 85843313 975589326 213751938 959830416 456483503 420104678 8672095 521677683 914537048 686831772 964730619 60471503 703983065 823094643 841614288 470637560 429645620 589293102 967918522 896564001 843694733 861204548 798280726 862660258 504224165 918934511 892331019 557345651 822039560 789490107 794069277 739725346 770699517 819945055 14191048 873539059 789100005 814397382 753353272 671486423 41677671 868199814 753270021 497483953 880019953 952971036 919908969 600379024 751920221 742222849 489609727 423922285 518150338 440348944 99999839 796223034 947026144 459209970 847790992 901314046 940490089 369924463 902915351 26876757 307892793 167662943 432058970 335687797 406401879 910573693 760804667 912754901 995495167 600486969 758731181 522119387 146651401 973255467 831265985 636109752 541472926 801325413 791494613 536187225 877109561 921533447 513522291 94218724 890955447 529842789 390165525 574932552 747146951 963668877 912279225 980273715 87133370 808742009 141337477 903199559 459223635 77769212 740051275 955640309 979557655 832935237 855019660 203612270 275313266 123101441 829137209 945028779 870364354 414987050 112655455 966706822 872732560 762449125 536408362 808506046 276055483 485391848 454084500 931697575 395104626 956220792 417978453 85846630 972807725 746394614 428076334 14034868 3064384 471982801 967822594 91044041 472020836 511541532 955313829 918804467 204034327 511755668 570472325 432092079 759815548 363608030 783969829 914701387 826757148 737374024 869922256 819381741 974969146 919064955 750760360 430006862 835137529 805701328 814766198 742393703 707197382 749935274 886100899 604432864 785308435 857366297 716106090 41776123 193314775 942423929 974209657 974818220 935388962 858607800 659545523 818818119 579801603 600797442 336578903 789284033 819526680 956763601 866135279 180849992 810404502 816438695 792121747 795935182 843087996 814175328 520251979 379967970 942525970 896636349 93586335 199462452 678147899 501017307 215428161 673160561 666681130 923016373 675266276 755330345 866518070 924463093 794865003 698820213 301781823 865150784 927015052 788798862 174306723 409415595 196989653 885928054 894324604 816188359 893191739 333573758 918636806 502660204 888000939 801340292 778763624 979300000 962845754 115168198 805639967 583784139 949642269 565248063 995283726 982730253 392615713 161672154 281048405 263248886 763329109 860831769 786533724 974613005 215576130 865243064 42705439 415461547 719552553 21434425 895570592 966658814 785670192 774296230 289205644 237818716 793408249 851564671 189737145 943057738 918312586 543688503 379608987 872565779 894173371 802555765 827888603 820712624 493687352 467228179 672814214 991311585 642116299 269584290 782391271 946129731 935004228 198888713 93587436 837602733 974853623 465156318 442930154 351722842 234036197 681239079 429928826 761940031 919418155 893309087 784098757 211725671 699058692 616006290 823497592 552812153 392685416 186356900 577864666 934217403 108340549 90110429 975215876 840309301 396121248 167896695 619354586 359174888 792047838 533685306 611865536 664772131 941381303 601037723 777257714 61020549 976546913 976345298 845388145 542954368 217314004 248889076 758487467 529210077 900363170 316750486 780885430 743232880 424295101 806808204 745555954 144983398 158013405 746109879 2401094 879674369 745478934 572527204 397263263 83436451 351966040 826622222 794460122 160337122 834425986 578241858 250714475 967784146 360373523 60619529 804707116 750362433 303175451 865831113 901063570 291897851 684108641 706540819 397105990 890631473 844433784 317596391 810881083 373133666 722604625 317194128 876397360 754318852 150814278 823206721 783846876 319155335 533961591 858043114 966662661 680329911 715222619 229563971 780933627 879282700 936353450 739108804 644451339 581901546 918989880 356043182 938016037 769891248 769647356 159330545 815966519 867212466 797273323 442164760 56770854 288634816 822015293 792359033 983659555 798245235 820153436 990815623 910290226 819566347 813330640 957378082 786838146 761959219 792082876 557353135 952010382 109388409 775152611 849150673 586842983 800986814 800237514 358173251 155681276 766417266 969744871 733424596 755696741 505666859 767477995 628665657 281809123 817889595 854954751 804588631 833135345 287474419 892938169 406487532 501782531 200486173 924980539 895827940 109621540 639440224 877291383 753860903 181532431 259982659 335270295 154698052 886003916 524211493 643372105 415775026 899753141 467216954 751955515 893877213 968989233 880450524 849703406 149723193 630981539 865872341 974114216 978554340 816292507 390051351 574295665 899390768 490304901 274632522 39928332 645628312 57420978 184236238 772804455 296150991 869030348 831727199 896463785 923271078 75922360 976581664 900312736 996867466 777529997 934940023 740065925 101181889 338601365 360472976 760182488 983849664 238025951 667386609 932059737 188493478 520236182 27245688 410010217 70618566 194387975 808623391 71078535 915005493 914422024 778188665 392479991 802808912 725695045 511114362 887833547 880839395 619496088 124934041 211471520 735415161 192939019 614467838 369301854 862937400 566546325 785881005 805081293 955591719 142652936 945580790 296221845 668955609 875899320 793261613 88941850 950174701 980790834 336714646 278666096 751840369 328993590 713648813 918199201 814943805 747225242 543330514 832054287 772909257 49102339 548914611 394046110 813475958 603753074 902521557 943779275 98364475 901764163 678542812 698619790 939990045 548768573 445972939 587853089 475784839 378498919 915045221 914224237 3756735 911818972 249877235 963641118 871935258 247764534 914945537 392459783 60448363 541657434 278827531 972533415 722474967 138673089 350325223 737020247 765774258 140758697 105705976 985934916 633831073 770849480 746048835 789884842 905126698 820711779 437165295 839253908 740863939 784089542 809237373 997800243 672658738 833540933 977907766 364207309 26076242 561462479 819999370 645083330 920986035 908535441 966899968 370265125 955180024 107038024 741803448 929021570 757607264 814701744 843046705 529667110 354460711 341522703 874921611 159362623 344299281 982585319 913515333 819504687 962302945 273519250 630704509 994194371 945461133 45564879 685815305 866353142 493031849 87768820 38785653 261923716 331025438 418948537 886942796 902066951 91737870 364858913 689111764 468036715 748367730 488532683 453075069 235785466 824967243 859899791 332694262 403979927 928419465 889215959 610526335 3865850 104249677 992867639 860102990 648440632 49042229 784349011 739888842 829711616 972180538 894146036 223654284 854817519 460823228 100276750 131230189 678607882 588401601 914198945 249384356 80624357 304511535 438812097 77395977 271321335 741417674 838855147 973792194 828056918 739071870 695128132 879553156 964222995 929209913 658190377 587820945 881880246 790430233 442202187 730619857 293275904 100906384 692058432 438233574 49059272 860227689 975048739 675060099 686755295 796828813 839011291 309629307 900534591 302331851 825108216 894407974 837726676 909719514 224170644 799826750 171727843 860582624 510052852 935707863 20821810 939841179 866838219 869599399 816632868 926252319 345505349 856607413 926723171 928869890 291845559 267359543 999892486 754224440 199437079 926551405 855859291 935926446 902081435 114033120 32946687 305361471 399165236 811576012 358551097 779038778 739371432 782563840 905095121 789052069 779877942 604053860 456928254 769574899 871242212 541065185 665695077 562731583 277592870 810410932 407624575 899929519 296317761 883263588 999888313 329692428 522899668 22500026 933044416 737633848 298566456 266187990 126232778 362032928 865361531 215049409 715571345 792563382 973354533 806124815 988353082 432970119 667744131 329163785 954748705 960317182 876809713 306286551 871269581 680118890 798524583 500187394 439551172 448026989 552280958 373818545 837680082 514490904 943772169 181179045 771471738 801552854 400098133 53678939 261740087 362482574 507989474 913261202 132111836 921554593 859486745 722966229 820933951 579591560 981947639 804675760 323354666 740596455 911814568 941486930 5816409 599546172 557385003 813435149 233432524 113554507 924063395 829055894 881555916 128096112 997885062 745703636 363383805 993659823 55581641 539273849 807672694 835250121 14446377 714608653 819004675 356341887 587977083 870914784 970361458 24502947 479540638 116941596 134301884 581571658 990430517 217440819 898449280 829949529 979684440 778252407 984833465 923471481 877944157 993427111 851618595 837849861 800574711 77330118 756507317 890173979 536659773 755061065 818019922 916063161 179692609 564183568 607212154 799339453 993059910 844406445 816544145 923249908 862947079 96440995 986584451 810141025 954984180 794271529 230622865 799998478 984239416 828468973 413937549 830363610 766352987 695961133 993882963 786567806 20829618 322233632 996135996 238010699 839960152 990337201 972180447 797263583 766838399 759457711 739343509 982069607 72653883 934989956 485875679 635588681 875815625 923602367 285466740 744427403 241885783 362113604 863059823 46350600 725417781 410275273 936107684 398497979 949241447 992831178 764970605 883629377 665918973 50345224 249090230 718850689 835082724 894669152 334187689 911609426 640440654 229699418 215974440 966449970 723380138 905813275 872557066 864327668 320105119 441821023 732863897 874629826 669301067 895631431 915738682 926829842 784456912 626811441 43837089 228766882 475865233 488525597 978343343 932532876 431448307 998486909 854421941 746520966 845862150 815818655 24043903 880918044 525053393 115771570 944599127 797594721 681782962 767514947 466729434 781373706 532876184 601190565 687226025 314972402 43848389 627099833 215075907 997107487 861139722 908824258 898413617 423058851 809823686 322972478 625770322 807490092 749008466 203199340 995994090 989271314 778059625 166781168 11195825 54022363 334578588 523080793 925023056 590192338 837203834 68789177 777589803 594225126 746819428 336906281 63750624 201612478 223804530 566676269 610639713 737020247 822764744 893280509 982377081 996788379 136893851 198361520 835663780 919089466 300602717 864642409 847373364 967556226 31096181 419938712 997988872 407067174 107442848 195921843 238076696 583781614 982987920 874989407 315953059 74219811 762967752 319261428 426722757 870607754 862549676 933635839 799721844 895336625 844732485 749214355 570852510 557925261 972762613 532745265 207686795 348970295 394147654 968960617 678206465 788057393 763776295 955540096 999083321 997993736 57369199 773474530 826939443 833116432 831081647 207378367 78539053 129958033 536270757 785866099 998884294 803442028 762970742 918240637 870601731 153883597 311212441 513204039 748436826 945205655 344896187 436023444 987734901 180795919 913661320 758743910 306189624 994855374 940795133 375554745 410364514 934319134 923147188 853154370 888394377 57436742 825615653 276604289 940028204 760712091 248882497 795626509 647404356 900351666 987979804 771393116 945978074 815487350 401753209 318325937 833209051 822388770 348720129 955068687 409119556 440355166 836680622 787292830 892062623 523167745 335951888 604405958 810043051 483390192 861382274 838713665 81650576 756485483 199459390 645859227 117632432 772662136 779590129 754037197 818520108 204720094 552262161 854758463 442798847 840739848 933169166 935794251 615918571 743653878 982377721 391072181 470083662 842719499 891297610 974965543 183475931 175629686 424211095 957196992 51253172 79582281 829901110 995126392 293858639 91769897 593291941 213305781 816911909 578512078 752240990 824495623 988626466 772950088 961109751 356189899 351679120 40861561 898222552 872907544 673637336 994030319 189259353 421342291 417831706 390901766 712002334 907954687 317280787 854807271 119265379 709396846 429501802 494163356 39169853 768383135 980541523 502684141 282870732 876636623 531843785 520793901 105765295 943809291 939144060 946461638 154012946 426529385 898163950 855659678 509043578 438696778 921347798 975122378 514746699 85861331 576220325 756894833 32635507 367242080 861954637 911101605 540947532 800309434 770013003 798629523 604982147 957509579 613433671 930762454 999138698 898420703 901096727 802243711 191584434 945856271 991470870 833713240 735166130 868033273 176230495 460637154 790542863 631402325 823287621 883912422 230819192 904636909 856774805 937014690 874687028 109715083 500991825 982675514 200315992 840168022 863408461 298161002 891696454 214525317 588790981 335840749 999980652 602842036 568200733 657093580 536960054 750195991 987612250 334388754 113622149 964665775 835707373 774084644 421354267 984297000 888743969 458300620 751560567 537977082 497179824 397925315 640490445 307773671 180815765 749149059 579356001 285959542 591700849 837144459 932819540 833095212 978769056 884001895 382458950 457789134 171502746 18699009 155521654 879682544 706525776 764942532 823658575 280352306 837484906 978556853 801785334 918066607 855297626 830794962 316174803 730384364 850093563 766520633 336035493 200704349 166142078 485888711 275885416 600652531 714971009 157262877 749790739 474851623 794087025 316005688 903023050 870407678 899561109 374229783 797451402 870455754 44906213 931236361 806272459 147486610 920138574 694422869 821103060 983888285 748527531 14698753 381769809 783964714 821358995 878151447 915217376 391499649 785141484 436005459 761793700 814550520 944337754 98465499 229793358 446143155 737020247 12993990 982633812 25633753 149813455 872979268 460096746 381602579 400206897 77172120 613602657 3768254 367578388 557321134 577893982 953806858 832772194 503016870 341384245 535149091 349996374 763190195 510558524 913551418 955164063 305232915 737020247 603307886 699730564 377576361 728329809 774879561 370094450 423702463 443031971 469595127 782129991 697407326 958102325 47817039 266546024 920221202 939751030 815227845 701036536 985657935 318626896 737020247 455591152 783937377 762924942 977980253 958288136 817474655 893327530 780535405 682427963 828364528 941612659 746928845 868317532 343428844 888430209 692544369 527338105 939803086 838266214 238384006 275605164 674277212 583400058 51944245 956480067 214826231 343632590 819963986 858169991 361366661 211274271 982980450 527978639 754601957 420154457 958606476 383500883 685542631 740932636 140782010 933504187 792069205 736219207 759295267 15672346 905246384 143972682 283533465 2056417 19361452 162548808 444174750 484910938 587832138 804572139 853050659 677787752 821945674 985974210 560260908 61741607 299884355 421509987 36996273 571588674 417364050 828731331 737073438 939032983 13235616 421917243 388634639 847562967 888244670 547314339 993699161 603293280 671329826 91441796 806033202 973229645 424782333 298713118 780055077 741553632 815543202 611801290 770444622 108255137 902546567 137873229 737374056 838327536 982443259 826533333 302936643 951302096 940707375 834691846 294901998 888013963 392572632 979593290 972999646 911444002 812640755 924555793 962417705 453224560 425508737 951868175 674605501 994649849 46067094 711686141 926262909 844318141 861020781 148950413 634280710 439783129 948363771 741101673 939914752 752183171 816585501 663179526 270888718 447366117 25363474 865884282 814637745 149233862 478734757 697397413 378874534 587231529 329989777 177585927 958034330 851129677 712673499 474066971 887643461 749835185 794525269 251041735 779414806 867223270 278464326 537586149 761398161 894316101 995875935 807062394 776551911 835768082 781241624 664650885 995259540 456095373 814238297 420400158 857728137 626846314 767433277 926588087 753133746 856107978 79790827 47608544 101604931 767983729 449822806 848175309 41928603 860371937 501312111 975353969 244131312 75596565 420979300 819959038 892186926 171846473 198055416 881752895 186883174 742886315 235231414 83851907 712108339 709271403 329405764 171862421 998360072 889711575 746435982 750256512 823912970 314527584 855368761 655871158 121453993 245238288 100392908 818681762 133334672 142267759 51983670 938569451 795094780 802613783 770595462 825589842 27978380 979040486 897220385 154632144 465942599 741334235 584375847 739860504 413083093 575039107 36031545 801185572 157856582 801405056 776633190 793953026 424831685 849121979 893602560 437107829 712965047 738313211 161186357 661892144 984157530 574811185 282667317 351435209 795380360 569709328 929178987 690378323 135301101 729624293 786590337 946556463 485031783 649911147 633039338 607573200 1164704 864408085 499659072 844414856 889346564 469187072 612041633 125024764 194815575 322152266 164311836 254496216 980789939 490484187 989193310 719013373 775605753 883579406 852144873 873343660 985146349 909252536 970380269 789997923 65356715 385143746 511983527 987804168 913724598 811933895 132176429 251298346 912009211 287073642 979476428 659725096 820668057 666860977 190282684 963098362 98905924 588101009 753582763 852410010 618660888 176370541 620160862 885554934 54594115 915081268 970331121 770428532 630968421 650540431 929171545 351254239 996602318 340173585 996375760 330115143 863143125 40322438 831948595 856235917 525068527 561104783 260125590 5279225 359493761 802041468 909420056 849236973 615142710 475981821 30569207 653918526 454909918 661868994 384960676 958344845 771165295 990390410 137456928 811829431 842163909 361876687 680484122 492822123 576201317 755334180 901603884 386638244 309415848 46209808 111165171 926018833 964709907 828811294 819479505 202200555 759209295 119889574 745371616 686199118 335325243 365331890 210069992 782580084 785931826 166667216 215543860 726374679 269021920 845481287 967299464 901777021 835862929 320211351 516679187 743855848 531829349 927701705 778343910 977696578 561170674 827258548 678311003 456502672 975178060 754052859 373112158 816326501 397565535 803554557 690553586 164972030 943190183 821124345 778481125 56118076 973891562 928258719 362637466 301311573 383304571 390820968 708159737 870727502 999049105 742159281 944175154 217134921 27002514 325710501 756276104 830724584 774704185 467612095 447798871 214815419 885219963 957091459 722169332 420175365 216171143 63564389 897519662 101896740 911259975 392055468 143882227 475276733 790183761 41667424 721277992 819699202 654805726 739816381 782412438 993248675 976649975 146055075 949108190 686122973 989318911 806495960 845536004 343035529 890925492 281219598 97625581 918908571 172409395 689825243 101002219 363472644 197209753 524907121 987501679 844722722 932236551 968960058 242130639 376615369 918239037 745284547 496800590 946424910 538470343 84525230 969982280 446721953 953871359 244150581 785487598 4602258 297801329 953240924 315440632 435567060 546365422 867637995 489481570 530076960 659643338 214944716 76377931 862437797 182453789 1449997 203673594 949797442 44000983 976029103 75639614 798064932 832215843 368726228 850976285 831194139 615164208 53474895 796092337 737750125 491348636 741629306 794520772 277928614 227512606 809658028 656442200 963174700 965533160 896978651 963043602 892089050 881819540 766271020 624714297 488941620 878976415 973491029 96823178 879723470 829032050 411511319 615630028 975247967 107884828 734843861 783697320 779306363 845615705 562300917 960049895 939335558 983821380 656076367 882542626 196369979 738907633 953304906 872047359 824699614 751184805 210122434 776084540 920163356 992728633 915966131 470099137 451373034 857294544 156092280 984492772 492426944 472022821 824284208 279359256 821698875 533247814 294276884 610511966 887318073 759620062 427059775 991217851 974626211 233508928 823351296 791693637 950035089 237604885 79596840 992437972 673373773 120247073 831460062 173143447 507945510 307383477 880386993 138378371 897026821 937009601 975774453 920845360 491891895 259317578 896673920 993629748 746409831 862702601 2488897 678157887 789484537 915236957 535390086 799970905 423511329 536527770 579352472 821159123 346701294 389412916 938576317 527585197 912821468 425130821 192051853 939804876 28714776 790247428 636316116 742114776 668884630 460564372 790280363 525461860 350826835 895953855 996164338 10834045 688109867 792863664 767399365 751579549 974200433 354028141 903582054 60863851 866849779 751545757 601835587 767239404 201529300 801512575 751732915 713752073 970163822 338384384 614175788 610993562 785564998 683315645 413526191 101155179 334104027 136464371 599939416 160063878 139804334 752484017 903527134 748878680 76941043 860946640 766660672 592289981 157125311 616415758 360158463 137423790 757726015 890341595 787667757 194245112 832694610 15873148 745704661 705513814 276294914 272395797 925586672 404020686 579627177 843814758 870319629 291936766 978996909 162941217 511488925 782830402 373757874 928443706 801555026 847307170 805736013 690410376 786392064 819503680 889563518 702445719 799343917 775272426 833477869 836625609 932026966 971698458 963492576 694222043 469861854 769481849 741624384 189443515 872264357 54315546 131910501 348569381 866076662 679043055 467260353 624243793 122523212 39596409 374435429 594074350 718215311 913010914 403915272 271325966 391302185 747814257 648837800 135317844 849913988 998784997 983349249 641766610 476382437 56141504 597719199 314667605 744191223 760340951 775667751 212454709 281847681 11561220 839736795 332079267 978126773 450596216 312610651 855489401 858492022 910174428 944109329 280695285 751014508 56759725 817016719 925279929 365194997 940795795 768623369 270879473 112113216 240763040 940979187 446209253 754220398 279411621 943209051 260879533 125669427 956573750 988126375 960385596 904803402 568755365 840284850 500457298 801594228 726252777 919379430 915581210 861794090 994344257 704649418 693054135 877632596 995042726 382647035 228178940 842284404 788885168 170355018 977591837 686733478 972014787 938496719 197648956 952626355 984280427 43057902 853569376 806634107 915135005 468774194 682777432 440068156 891462437 369793641 980467107 978396692 733456112 727531250 763459606 812107972 589617244 119053409 84596355 744369339 777076872 317217639 743062266 703363178 265983399 790379787 813701992 576618504 283964573 737660488 917736707 867541360 963642912 826765807 918467779 759481675 288141565 977108680 848497802 506504025 932408323 454501259 900474463 123906315 979762504 785362009 216114924 76957526 979903099 211162450 305311202 505890858 998581540 905153532 59261302 816978880 607107391 674235203 504513364 966264541 899088405 3631003 976975269 793267132 597913227 935744312 611375946 336605927 934513483 77621042 223802926 744009210 510758157 724822343 437816925 740560330 745279641 95148038 210823091 647066204 766880488 569611635 234141575 869989208 156269238 875415177 520353236 557223290 661445107 462333080 870520389 874890083 891521170 402508871 970022067 921910431 802730847 80222536 36819040 777685936 763894121 376086660 347911687 34200303 732560032 390814239 843671034 714613437 352132278 894254648 349195467 957013229 955175215 409917358 267485265 591946539 950673993 432998816 987227294 613161969 137299039 524878432 90860181 798108902 977390155 375074757 880792990 906518892 946657372 923328032 778744845 868016098 804117085 792982572 35331236 857408600 196820338 784988794 397726906 691195710 974701310 899468078 335683136 906271247 685591476 242446649 995576519 932728761 228429717 860507370 333207062 164173454 79109781 365173794 891343926 646023383 763604752 890701993 861795355 149313777 839466220 963985981 712732461 732790271 947609969 849821782 560583111 142726156 908508967 305709560 810134171 765221578 914596061 838759971 851289098 838434330 788861379 892745823 839193778 130524975 496688579 953245630 333923369 915427329 970604647 132385742 19036486 609478719 893302498 400078757 963315843 948488456 349120355 630519093 618690253 986689483 69873151 808054468 742853010 892054379 520503792 890979039 798968570 959364068 905298333 713534327 651211798 961518614 915128133 417350499 828553059 973560018 775896499 6306158 536222852 411184885 819044817 814264537 822652822 467725584 84970307 801406352 850082995 27091608 949312007 331276934 976224901 756794935 232644993 461061825 370499224 817628124 190114328 363332684 133649651 602767433 190320097 183208186 787900142 848425929 37148710 321913845 788964309 578003372 993728875 999635409 95910072 951052972 554702550 764021470 655014377 808612487 482048731 730069476 311551259 681509912 674204173 960845273 893706876 865250105 408232214 635989467 296487614 885662596 691668176 756218337 953380813 887634352 716890746 400777857 806164793 32699595 956316981 854222378 988986482 979774724 608578156 317493414 338164420 423919170 564489046 446040243 425673837 778788329 457283404 807753639 872923959 247767854 284852208 362584813 613605205 834982556 906656494 491226478 926735967 121597705 679470000 793128653 748977923 881969810 41234244 475317016 816223917 179395988 928784589 826275149 818469142 915994701 660459263 286358152 442321673 945815063 623832500 830316178 595146159 551900453 809536553 947763022 462597719 218692908 369058710 237501960 822565179 988143864 48074328 884991882 466420509 779410511 883706158 256192051 10369997 882370979 851815405 375312072 978596320 301589923 999776481 843545913 403032133 745753724 751159470 788451237 529789261 416143856 154986347 816172823 793118254 540248705 89860442 292685812 93520256 216117723 791998940 657161697 408879705 352721503 809534239 620474878 944503828 864098090 809354115 822328859 776353738 972455471 472039425 200414717 85599891 17571454 387291651 227816291 381512438 339543834 395433175 199120219 249301596 918732088 946545738 343294194 931243735 687394973 676436817 740817261 971956789 522247905 46484426 372139697 675295906 742665230 446460992 363684121 280535672 313535610 594534872 393914510 579316556 599869447 970374558 991618239 794427481 510664234 209640203 260586229 831132623 920411833 906549530 712754766 669769883 642626638 977480937 545216148 981678027 209091866 879223815 923354024 714134237 216444915 604200325 854670123 976837429 918298652 235422992 299086626 975629931 147921148 661066265 551190155 806867400 327584318 364121313 36954253 58860535 189448666 578225045 999392012 759905519 786945340 744900190 868508258 975157082 798986992 778658556 843181892 976935910 925684037 749218772 717803992 149107921 864750932 925304813 822113977 979536775 476828200 714550283 37820169 236747241 843982177 614275966 896252070 771347488 811332123 952380281 792755435 944577371 665335905 99022456 949420881 775051022 620425709 495369833 654522661 917553162 174205912 724540375 971701715 791507896 54725849 238084251 944247658 670975024 644452458 622736238 990336422 290196286 201192138 581358181 920233961 742756125 150983213 630937819 457337008 740758399 395228077 832643434 770001238 546987625 970770804 730893737 407250205 835978693 612864573 784166082 697256506 841293302 352938894 883282957 841250215 853751059 933322327 44931134 879467310 921402782 383274657 683691920 886987631 858400926 646947406 393131810 769361944 100282314 775983559 66703432 826563431 782960393 875548443 351174591 116776651 988454628 587125765 989215172 358127962 434491991 523179936 194732861 626349989 595135944 83899225 975019573 39439098 838247615 962305511 979879631 925342838 452980875 913308637 150061009 406181924 122018632 919291179 288288492 869628473 998906263 271794451 295354047 984435665 938859873 771637620 949914271 92416195 655974811 182201655 226058965 404722001 923247697 819204027 795100984 964945553 696190442 772816258 990928088 909383269 42497595 741596298 877528855 147638158 23207246 776085119 76073597 937949457 660256174 28215302 854642244 628081218 993365886 432848378 774731410 534153806 690215743 121401143 228631484 736072645 655092623 716373785 935337310 610456620 394380358 777025264 649580396 99840201 664027044 303168797 734116410 276028213 836237299 865304119 442903787 634845759 262343843 811341440 199550226 64514474 810041866 887287614 936378832 170386537 791832458 324456685 821526012 808990837 549569286 299200441 748405875 235503760 308219487 822634668 785795134 88476068 24928812 790548311 600350158 822795539 784297626 268265710 298489077 146813263 965914323 990028095 499556272 945567992 574415787 943269013 355186227 74494660 611099923 445749208 186372936 760921162 900946935 410624346 857868085 52828564 886678459 357891269 877718188 878188421 7759081 328139762 874903974 356710998 94790222 10713772 758342989 914543220 468992983 431426995 853379684 891872821 698709913 197184339 877505839 281992629 782453382 812631383 808990875 634288641 113178884 487527276 770241425 400184659 233458826 517431522 998311471 814620233 475614764 380204842 810444406 904082427 975426761 84743074 895291706 432691032 708003194 1355502 136657306 473665880 407884836 239344522 559526737 28653011 532007672 197099366 791748679 932080343 150408658 867139126 921946973 890318138 40064211 837652787 195424353 970443036 783075983 805383086 280099799 959648183 574624851 187884497 896275790 778597572 983569974 841132759 911071541 66927467 476153267 944998869 673627650 556017291 218431361 881432435 767561677 553163072 401577926 809148789 470671086 659139299 990398901 781979122 804660564 238185040 474204092 28331098 831012408 53112554 779783795 875785478 144581262 754602206 849580711 817076993 89788890 627056228 932365398 103568206 72409600 902237843 564019085 785954354 868044685 418272702 849247238 529500842 200050492 701641982 833521512 368677959 737543858 24266855 522221366 861692768 34163057 571775768 554658046 908309614 721793900 992953778 962633444 761082360 950341864 559447017 777982639 910790668 908769864 415825388 197928801 925609696 988051750 220791687 418783405 858838203 942299744 937147179 805593816 877738777 958997268 881999076 889776859 84637100 866634602 941133166 718177355 805305000 818452138 29513191 128210760 623178463 138334981 494234529 612649422 569569372 413796542 936501909 149002621 248027342 628235260 124132688 980912915 106627505 986179868 677204232 763314182 863236845 752056319 819413680 964679249 411440061 900173451 181683103 810084614 439375452 233968610 158130127 802610768 791086342 686555800 998355794 769549300 703066644 840737596 737020247 904141198 803710009 832207680 825062541 441136889 934396981 161506708 324092274 803064829 550278206 804898084 61625876 641882334 183518893 614535198 800643346 831375357 778373811 969198979 815137483 823059425 969113549 253972182 637849852 888766792 755546517 916785095 666067888 866772684 776096195 130364026 612133263 864978316 663971584 97129851 6241107 705054693 995178775 905525220 749495288 922403691 829684209 968981919 546364080 142215538 893502223 233066321 61767987 800134391 898387771 34854858 620157479 854166961 745142978 48104429 347214558 4177599 454281838 891742252 915371907 337326760 387368907 729304679 453586033 660463669 270537914 853200482 61570570 545974310 496723467 264566774 760033817 560030907 974297494 450570853 953655320 881423060 28188894 946306285 911288863 858831476 34893039 366085226 326910027 720683105 697225771 455663047 643339076 46860241 148585508 885479264 810069239 394262316 401524300 868687594 583841392 606740512 618439574 339046450 942840610 476796554 921073055 965304026 356731578 952768429 920133156 862635032 919912209 287766926 106321378 606312790 746986360 628991804 365970218 166864576 378794512 489595995 431155572 725785509 978421417 790806903 988936822 754580289 23234347 772981606 824178600 937204243 217779044 887452847 573939630 854449843 205087982 998716181 179389632 874248885 705023596 920050162 983045064 618053352 760745166 716669639 817710837 440205913 846957194 846821758 199633241 511368724 591880779 760176168 982728743 951444354 942536648 911978967 414562144 481122720 989063419 579358115 78580464 319191841 983286670 277202602 609059795 961010099 16042014 931079913 615045171 528573300 499581898 19747540 921772374 322388314 738092661 994589556 963931870 824635087 983024739 724676964 549645838 917446762 781423246 750556219 998899739 968933636 754415769 147281109 959479963 776335775 757345889 986168716 229893817 945862081 831891861 7041611 252888106 364455009 949879808 169664229 961239856 157137005 766939599 812162807 516120491 900745033 939088376 885642384 268420129 891934742 868798038 325482558 761788893 652579186 170333820 772997794 131241726 582567649 850836884 463604065 82353670 636354615 905874370 831990900 906902534 789865867 157215069 830133088 961661912 420371857 585666408 942809692 927807568 299478040 529016016 287916228 768188171 517527797 988492403 795117773 98065841 754567577 360408032 376955364 366753487 763082715 498120616 679441086 631239284 930283700 824639388 112506640 612327275 473888485 628108883 564865034 526198257 874764856 992432639 978733467 957060787 890685713 881093544 288618915 277152687 859949461 872500770 655512657 531813289 852013509 895600948 596779778 37692865 960128804 675733022 931204361 904690675 584621879 978621916 614796173 179563361 333594758 560382977 814957562 864252038 178066456 511947372 908449611 122079411 998809076 656614464 897811102 101824923 924648060 739000873 318611476 946438639 978606007 166994358 645076161 902043241 804492564 840179846 782022759 968510647 211737718 182792716 516443738 717867275 582227704 282902259 472336604 387650092 791947061 705871857 920119625 590994580 814244519 747656000 802268707 985451673 356349244 879276951 237384002 819118143 973917296 366375808 828387602 98011748 921957820 476660491 977687488 779277447 953855834 545445064 740846225 65096457 491561917 859793735 890335978 808894711 267134114 973494727 707189276 265427832 936198465 108616585 879313957 867964550 920564389 904676293 372880276 802061706 976082439 831075433 378538229 30344233 692651654 881154054 323893187 290486492 257763071 144474944 366705759 15311341 801270719 902055484 397620480 958978172 817578888 968980825 52250970 914717711 634683537 977571200 859021373 424115621 293575840 659766587 936339745 845636249 633372968 852928478 727423045 978267311 457954381 186010147 811034813 350239431 448070932 992476403 718014399 333187433 338838708 843529251 643330065 155042139 902296781 809518393 207805683 936280764 653754797 769039746 943216842 959051091 18559072 829748745 32727858 79097866 844121426 750186873 910234670 339869483 792545334 269154595 100563523 568147654 805832727 633178270 750314599 925710060 929051513 787754702 161904555 911316095 55320173 947217589 83229983 347215335 154257749 763189700 875077657 884655457 792719884 916860954 803432472 728707772 103613640 745203921 806705284 876472937 867726855 424063189 255282285 27085265 681094185 385351665 934778660 734849294 958788763 964348561 445718288 712345788 750531943 800522035 922067988 355368804 553165991 304568732 878332342 286462093 936903841 986192629 816324353 330776003 181068619 92854842 745437660 264012842 696970689 388450644 261159261 818420801 986612408 785339792 782364949 428907396 810509995 901228531 551125155 953903911 564736150 772239489 785461971 939479258 959209992 781222736 838504579 560086024 932998666 191212556 366609785 58005942 755019052 552050169 949355206 264108920 915406502 806731470 271976797 737020247 574919116 408256301 719422208 18426691 941774555 854458562 772872742 452158688 260932152 943540094 970005063 766195837 203500422 766607179 680041660 764327970 808803718 818780016 831311208 769918137 274463551 615564894 35345277 853320822 842847182 837997230 270666270 761201345 904850925 863396018 139585434 704210703 396664127 219912766 932361969 124990436 402184161 843274846 612649578 318387209 991102240 855383666 377837372 78751634 328245300 879919461 971257570 525463568 711379083 552767348 895654227 309256374 920642103 860480445 766493501 920477185 948689579 791235623 391970870 252812170 601563256 283049644 802246624 986493426 391385186 738393159 902010966 842926792 737399018 991948916 218221364 697436432 974457320 892074852 169177534 930004745 405181954 184168544 608164283 878897880 224442379 377276808 399077350 944551843 790101577 926064582 787406502 913898866 834198813 769319877 994215228 916130829 777708605 830171067 841007615 231702213 886661770 951040578 81418518 587644682 626536992 976750334 774452730 889131789 823487637 813044249 208747811 981677696 969426745 284277802 654737021 944847423 235778976 929980716 908595627 954724215 749416356 390009191 929685071 740211809 254288381 830742631 404782390 612645519 726633252 492676966 50053719 796197817 329886264 763232297 293487082 825860682 629398347 433715381 940733402 174398225 786405648 785883244 20089855 868179416 97139064 744680740 463332958 855587906 139758912 610698917 832037811 552299696 997907601 188383290 89368908 883428032 265507127 857241564 907977665 957186673 752021642 333684468 658052411 225731333 690867525 867523576 21449316 967366854 826761875 83381500 707062654 633464140 734596707 913931102 821077914 693088346 822559204 323678647 50755893 750005905 357162298 741237275 718221037 376777492 725741573 253253839 898987145 687914333 747945882 215839322 761330939 58535437 132706950 892027216 457557114 307345333 790604565 923600052 678111274 392697067 189914563 821603280 959572614 322997355 581251576 945489391 392129220 788553896 915160458 775595694 460549910 712208502 762938727 15006396 347727177 94920249 867279922 872481760 974301207 828288212 894679169 858543683 262999713 991005187 933235507 336712653 453287165 293882669 846345698 993250437 251485534 86819089 595292364 898710476 980283765 664070420 783470650 881330538 605600966 855999851 857372626 421568995 793727483 874173866 791611032 845032224 974247650 959406628 668608417 953193472 806065856 306890464 814234675 858615664 599531690 966632856 420693246 742763837 921526606 760146800 740083641 618078605 850874533 711033503 492132003 879131432 974724558 894110571 34191593 848365500 912883348 725065429 816423227 597511138 769122674 333799976 320630906 242459307 823659587 731874907 93551477 41068748 861676181 780038220 198923581 878595497 157134869 978927073 991931497 988869676 842435674 654155514 400576453 751273617 202241207 934917834 823024010 10222121 846501852 652461330 747914490 948830811 170165216 473219321 19265760 439951681 974839560 179445206 764205078 628322234 539878972 529191292 989213253 846633668 481033226 923181453 464248172 654322738 419752987 670383640 65283394 547613648 776360502 899052684 904545346 831213770 310576079 703839978 287848466 876302222 29551671 677518149 780467788 906520616 5834934 922831128 126022187 593268709 688876233 776510495 943111045 111363624 315053115 477273906 852745121 979620908 770038347 419148462 989207373 783691717 470644497 937123273 499667107 954497942 924713411 831442785 678231280 391786982 800782724 908741603 236573917 853484731 961648118 32033802 351350963 464127552 891160024 250513062 134906554 396038165 802813973 869765412 714010447 950559739 222311834 918988920 198898203 111586359 832207634 827227708 580293053 899471695 688610303 483563588 962676215 972580703 712638403 628438830 130907953 772736267 795410559 272762650 291868582 83568420 887647200 880452460 746311010 376502401 805948100 10706889 848580862 658700612 655604748 951917778 68850401 989265204 936646491 965327429 990643114 113119994 841525195 457553710 957722558 287139659 854930938 864766670 578642630 785221976 127965582 59484945 334725632 961973521 804417581 330120462 738361777 617234841 788063786 978721572 760347178 794037985 509531956 427056536 750902774 858026233 950819311 789986726 751511254 845174890 816387792 137000054 876486737 974787378 839749915 792727555 918726233 656239536 364023520 912283719 816025837 735301581 88112419 763068307 825446212 945957194 432752103 204217915 793752910 783446588 129953413 927299514 359937370 854211480 97218772 964358340 890134471 61033352 801189594 466163784 651720673 50502134 254770658 170272078 895812992 134137978 734785585 112994713 945428722 6445322 389090994 2360756 417880582 990800530 960038163 35361559 983265998 760930374 828066232 857297318 794453456 989278744 45748918 937505604 258593389 10650197 948913609 928679957 228616812 137576554 728868290 864386974 787631506 457134126 37971244 574723805 167133936 956452499 442827702 940789475 174309697 176342920 827320356 87555738 916545942 71190591 903502942 946017923 404323018 26865024 561679851 331259939 905398228 796493337 914895248 29018170 944950332 853048829 763959710 179278348 960142660 295527955 141621318 626292486 938996308 624565163 318323044 76039810 843043868 502254087 378266812 335113063 800220180 851239947 988163970 665175314 767248282 92070068 843274341 762695514 965862755 521599249 303399138 945485857 325415781 991360383 777817018 797486419 458902180 806921349 823691127 780990240 892958344 441142773 362339116 987462954 714049864 208296166 144049483 156697771 781533927 86565092 509681338 582819426 910253752 101481221 48660761 123216187 854038460 285271931 820309307 104273263 969766385 41184 352546686 481341946 890999305 987672634 190223187 237741101 957881173 845717593 163354775 885606392 93295891 783559975 341214037 693022584 288836080 709927191 848802690 167868684 415400896 664385995 878925127 957346306 118907264 886757940 72502878 994352169 942463109 227904062 790131236 267166640 801975958 859061793 596124304 579105318 560112582 928188718 9796912 992678919 238646739 107822571 357185986 987502150 439111185 892946831 168220200 767941370 281144993 151701138 898955124 885975989 590379476 158827378 320926513 215850604 743835748 40070559 448742999 782872223 829310728 202296347 787090109 514612644 296026613 745244651 881177603 485957590 5444402 400545906 521962520 745591995 324794298 97625320 494130962 559368304 531219816 821804396 950192810 810178994 103521051 128340319 426569481 857809097 930885474 59193007 306818016 792523342 155023852 764696386 321024529 511324853 841571297 908999311 948465220 142560619 820150352 943618144 822331733 57001238 325829053 940934262 976617109 944986613 833168950 650310061 977765968 765939767 742936152 359244464 610739069 62164577 876492210 23744168 749668758 569774427 536420185 820344502 455886544 951059098 236585119 423565567 783918606 844686664 437906266 970781327 61422486 192520629 413727229 124164653 404908795 683669871 429451064 845093365 220520729 801325905 993030325 854018388 999452849 850099313 268609574 801175086 108541306 397338955 271151629 85697351 610448133 531372659 27743182 368122486 748682213 847472484 90581598 180610548 831143542 833313519 949962161 611739135 117809653 787365160 722532805 583949735 224634898 586755585 751648492 210173213 765104156 905751372 13703124 142178553 621529052 223681127 821818113 452728671 168049151 452004536 926333899 773444910 968945174 25764087 858203436 827961212 969214028 286831279 846783010 55504185 349889445 737654604 678688525 850643881 960603287 852439754 845832986 751023406 810905787 846650160 208254605 690027366 978616641 917388309 782548198 769612819 757046722 987479772 889231654 600222380 454406831 658796230 42508666 301014408 748077344 862104765 234348082 884155411 803972611 95214890 871947506 773607848 200034033 819931823 77196825 960885049 57355396 777588355 840652602 985340751 759812513 928299121 135116191 807191138 2498979 644823245 894981204 282881086 748233493 117232582 815717139 989675153 983897206 953687763 794295150 759565807 26900190 376820203 345547315 196109065 29205100 958707962 234605677 563246750 809284727 614264021 205689765 484659619 782868257 947247960 704522620 982859295 605897670 922052686 991688195 454332190 955224993 924310896 981847848 835413011 908831867 738719317 68974963 871854359 660782432 177569873 951586365 626672978 740269908 134592458 870322805 795917894 205822290 22129486 607312911 857105930 669585312 517658620 67470120 972190978 83513183 423821695 496651142 533562169 944214759 466432698 166253521 211367909 284157454 861651043 558649704 525646117 929636180 971186978 727622301 558051373 757808586 847444862 432596722 3439266 742644053 714551592 640109697 370930789 897523396 241069500 979616411 330710649 508084240 987187449 48962875 411526902 909123864 807333924 971327582 981740709 972810616 680388582 737020247 464817336 698066841 847159454 754435825 737020247 514066445 826672080 959775769 711624688 848079411 784647878 379044070 484197541 852036521 867705913 794932030 94176617 940122158 820352736 685185353 878825166 729329186 390444514 843601909 664940887 791216363 841426132 835827637 921886144 534926427 509124880 553348308 280060279 277563978 907110237 560949549 997957203 241799841 876248652 453696800 811799124 994287782 969914735 843317874 878616629 737020247 372598219 757637853 656045822 746048445 906430985 218599355 846604372 536677306 139521037 614037493 813691438 809289658 937152757 845823851 410041821 596687238 863286223 471161001 841105403 893779298 103612512 414302305 719230780 801362215 305162519 832970494 41916472 112411606 140579989 717425215 894553417 815382374 522193516 103445562 785556420 861467277 868879106 359540329 247645246 940237925 965094932 676393391 741996282 271231708 353462906 937392292 391418259 524222855 491862744 915740678 857926576 924934190 786835475 652429487 752187989 46166334 767922438 926131798 306061832 811690875 589367056 755952303 259866577 407659783 624806489 753225602 946489434 888645142 809512986 788417739 596986840 888568909 877603050 820213573 966940974 342262199 749331543 264267944 899414385 126817475 764110827 953293133 784636357 873225188 965860597 254261599 898621052 971396548 918561492 933358583 797332272 434776660 315750397 541347408 76850441 943676089 427445388 51999584 635607882 815502693 886627645 338297639 640834797 419186235 789608551 566001282 385192082 644297082 960387447 96329556 364987294 901882275 943712316 100741846 753346004 176936790 802930103 140834662 916524519 477360387 167479848 918270689 991225782 910248246 844276519 144118529 453761449 864100800 310944906 33286207 923713857 267299235 756051041 878116944 982236332 850402 827827684 484998727 843332367 215455439 847321193 935571959 802291059 745334534 739366567 249259964 187199185 994298330 829483583 867162734 745872477 723681065 521175212 33093540 895563405 214682829 944655624 850567026 787919500 808322743 771763892 596725723 708356862 446377258 505623569 966172412 251659669 987096152 561858755 575964264 816150212 904134200 768506458 248159213 940718546 917710490 25300682 832097557 390816638 903523776 856396271 741560023 171369 699755519 318854319 990110499 700696905 905063646 786131944 214111027 686574191 366519337 973013892 719847854 485415559 353361332 692578688 771223370 70599156 765749355 872858972 220895152 147121423 985639235 983290363 785683664 302138711 587141380 314539170 752280274 598737634 793895970 348270799 713036631 748415843 605903887 811335328 75067862 920438969 450702258 446245370 963590090 382805488 761109192 241706550 314950199 756186829 778905375 51436945 891499728 940293391 409496613 217125947 10283523 931672300 612692402 749259000 842645833 850722265 790584456 280154138 749532145 809532667 374611574 221376644 589670226 885947397 864435110 900021631 289840928 842493373 121115984 754530020 983546115 911905636 291038605 858383130 873681756 943357636 929668956 398535241 557923524 264154170 462375858 843971439 655667604 900602589 868189201 593353676 300360018 837735258 867386413 762571814 801157725 441470592 948568836 968129492 90321426 481197146 468905703 741373114 800739686 445309183 930299804 763427577 460270544 284239714 269443873 118923450 980346831 910547804 211366207 195440295 891394299 784356265 955526464 844332835 852392495 851843519 868926590 867446711 772449782 569244631 813380312 322068006 861389607 690964356 889796674 772672271 22578573 163747896 776014708 788358750 782415192 880551994 680527477 311061141 743199871 627912654 446254876 966693701 112308408 174378191 851298534 886529211 968228378 459229920 621740390 905972803 675908052 579662353 972742617 929655909 679817460 62190537 588360046 789872537 198893611 758493719 434673205 846211671 392139100 363468909 184753602 415836970 953140262 816564606 11739628 786609429 428942984 914819888 445818588 488332853 743473968 468213297 880956644 950584455 69586511 864379300 387401045 875306164 973157965 260494501 661451730 991599546 425218066 785060095 787110277 683158724 93026375 795539420 799414139 743409854 987500819 389922946 47715916 182261219 810113163 146319583 822815763 934496716 877064741 966374167 555478178 259700468 44479177 209202844 856025201 906414116 630823081 793288626 338223432 641293761 567495799 479276569 776970956 299744846 954456184 371796924 629699248 903760674 735527706 826200538 405499028 555769164 129618790 758784581 569418012 247013542 738651067 539030734 422536816 878708789 157658990 163371539 72799224 547335513 522827475 473647764 748733354 899850458 229816360 264636718 307233744 862595798 871362513 807666153 292427491 904961021 313959955 698492464 870558489 941980874 929731268 612073079 739569736 916116547 211919026 848733906 904628592 40874816 883498345 874037692 979395336 708670834 913734689 992764386 951809951 944079848 222003226 918719616 269609428 419742316 53202187 489287848 284244150 835903581 101425566 819103596 457999475 551472389 319585783 177652831 221026945 993878066 301726036 130009277 758285905 348172444 705094542 781894920 396571232 847820129 662410563 549478018 527822100 970123063 595581494 941269358 614519066 195553293 576107503 836571845 844309442 19256189 43435731 866027202 90619245 941921283 45485923 726004583 475569325 875452526 994066233 892184503 854401398 277083277 424546061 906953844 627519983 838235044 708194105 834126955 999673920 874238917 657444914 556926033 953215268 690359607 689621176 934518769 888063734 989906090 832375652 784925889 91019737 518035578 829352037 321562318 962478734 954225636 157132053 756420584 762817087 453676150 913024393 524978434 455599995 944214069 901057106 258063292 94618820 614314894 920697354 312412656 688011557 822930207 978184455 672824692 417076162 349553701 328492735 742262110 427013939 40381708 385163887 801636093 823122409 963546362 860324971 269346158 658831265 139576663 591525814 917360605 906255135 742021547 737623996 658696888 598044925 346760988 533020331 981638981 338928597 976133688 796327993 945168015 831613640 9681893 774659982 776573295 933395686 737020247 937334889 857933640 304269220 835114186 326268478 633412999 757041530 943200400 131174156 205693677 856933905 943829201 312353183 852476077 791381311 803193916 959419019 888817672 978841954 836530670 261344851 897893770 142897522 759962355 919517388 476355139 821326210 561754323 714027090 799351785 942976006 657392011 937505224 859249666 915781002 839990265 75011626 787591621 936926807 981050814 739617414 872485386 486358346 890257582 889366767 658248507 861708038 402708651 807065792 774181326 482153973 869655628 866583112 873440810 678076592 458214811 452935825 775891547 31893009 715881586 762657061 705496777 424088725 718310511 831389423 871759742 532496889 297961224 167716696 49203898 107877412 850917802 779815068 850465856 992245483 67978327 919993820 776610183 415622301 91587121 896968373 928945338 41146787 188767677 416384061 906929680 492495113 900225758 806675383 742913914 936714964 810553105 833624642 8997083 495475620 959765848 889063310 793690485 517469648 976811848 987712727 116318564 216801937 772677230 262849305 640302086 417494865 891223134 590946231 851500554 920259706 320172 407283967 371412940 816799671 912369073 936353845 27543824 112324893 892087280 831981043 777219442 743608707 3774424 315984879 945728983 846130157 114000130 995244720 799867881 610688343 788844482 878651967 522531510 948496166 343723567 486138789 979833707 760119831 747624558 397864265 876943020 960402254 902352314 380495929 355905535 615833806 529369315 752040936 341667506 928179412 859539734 519731647 621443237 905785400 903797936 263515542 946644708 77817735 359034603 66157348 610257145 597692725 996912506 836446708 346248358 40342076 855773205 896229516 589252780 150744385 848602522 895510094 807901345 857354686 181436722 405958995 541369818 625839314 142270863 217511511 851685412 278283359 478557714 953688946 989696344 812881120 358241935 195592644 99585455 835494415 834285922 106140097 878762520 931454493 225330259 910305310 827729466 291299755 838870539 972022116 398663280 507052316 39080080 13035824 588602730 657096354 59125527 160049023 799585195 435059498 748270532 732238128 445833865 418048941 849502302 581052050 205383670 845254927 318061112 974798992 519782950 143372398 728139836 21212335 733393303 773943949 793996990 495058311 177841113 695401496 814787585 887023086 27837190 20145381 288191421 386287888 986865647 836266754 558080642 820822968 943992180 846603675 768451095 503770837 564116499 924072537 759824455 962288132 946049086 765332751 97651233 239583018 948598506 451925663 622596007 829451210 146707350 353877645 766770753 217917604 40079367 399015100 883579236 739206964 366497065 164068079 453320497 358143967 232755125 934733235 951452500 883032655 838123287 128867310 855669373 256218768 789357710 672617262 737020247 766774898 263238249 887878615 547074030 771113374 821472025 51794118 996062569 964521088 545560803 855401852 35343837 712373687 921203772 413058573 844418638 895637579 50556165 832429841 776215068 320538727 812769485 816509238 347923779 406744014 260324992 801017591 756825164 954144465 271098142 592269258 21165556 566327646 259169859 754520733 720558316 397907030 628389304 132532933 874833502 636795754 875650851 482372281 237295868 133284142 982429216 327432001 976032488 72252267 870208274 946437386 49676424 812645533 107886736 847095300 63992119 962780564 214185298 793065670 864147810 830914588 952935720 417830857 914227306 750048337 847539238 46932335 465449383 211431172 794764320 410335806 939437614 546289474 147820058 385670480 928926070 332695096 335038335 220697137 444918930 175708530 581426095 41118858 270155990 867984097 816932836 518855161 111028596 920329041 15762073 655964373 100662910 871613386 797651401 759712848 887557631 888775445 375533097 793768140 129314586 975030458 530311464 161045334 916633033 760528990 490355541 242774330 265182267 824115470 740180177 311412492 864805893 243589481 65525904 485012284 792295233 905730760 173835666 613016950 778460299 721649919 364542054 810208867 607806188 70341001 841169313 835052173 392117587 981386641 788228409 828190772 275686763 770115812 73379924 673079658 411891003 429333095 148214925 125347412 751598907 297830881 973755268 439181443 752085390 986393674 497601850 734173563 985891934 850010847 881319145 742019065 828582710 824975651 981104500 693400670 833800934 177174874 937519310 197664436 314692611 37206361 857926900 888764376 677110351 654781245 962727206 955764498 837677589 888024135 383255667 640655818 562630610 281320080 239666567 979481434 942457181 267107849 87459667 833910134 433918750 879108674 266247832 785908457 807008127 754064275 761386762 135641427 922843728 39713823 365712136 960719884 186508738 930281794 905743224 867517697 435569876 676531564 983207947 717948059 496927802 16653742 570212821 574402622 466881145 990926040 737385066 909342134 903013779 875340404 612862494 749690172 100009923 881106083 901817378 264938503 395574637 382354260 817153659 749089849 716444623 300179220 683349804 144287436 515986917 977907877 777025041 269239414 821720802 203063344 481193329 956537313 732339985 517523546 991386934 982843880 837286720 898400783 687403703 615271233 816663898 712177159 792582931 326001829 960759843 938613723 358255488 735315660 930287942 794813839 586618576 604623962 775682287 804214036 462036037 789591027 29316329 776419727 902074993 684033145 914589298 182060110 844676927 917168924 805234463 959973105 142097587 261474295 899049617 925386324 802669700 764722541 610875388 832055740 652457024 341220101 859688564 266399249 251905261 967624750 765781320 853309931 964872543 47862351 591223320 574659712 289718654 368119015 679626250 889274790 564987543 729566146 316139200 381304028 482880322 641958424 1443102 980897461 238881761 323374509 64309979 101880743 873055934 613982726 454032474 106478340 259765339 208165338 473120147 838353168 871767019 673493067 954894458 873881083 880914457 177119207 66890939 150972317 969051261 735768182 993861430 811780134 360454739 977984313 116478053 589624151 249870975 746006360 751241841 568180144 567289234 849871288 581182676 139076393 624828398 843227045 886026593 856493390 255187356 204936054 744530378 958604175 865340116 823634526 827961476 942969909 346486511 865956412 851686710 977459932 546513468 649321406 287315908 335547230 384994145 237745001 643991455 356524548 377747832 938100053 917048051 380705090 11057171 235655778 830633678 783371279 826942091 747279841 918241591 593737112 162831692 998638804 414786148 223515195 192494494 275821705 144322184 754810141 505864863 842183374 934280793 723645319 345476170 790211373 749871013 870628425 991875354 181898781 952435368 939296847 279708241 950429182 911290372 902212718 363738502 904030000 344847447 303720163 833693165 895513436 15352014 579325944 438171686 63817034 923495182 211866980 745999591 839841548 593265014 498752327 999831302 534021275 705588877 642303955 763541803 709287068 631083868 567562982 877126810 956004405 306576978 276256885 974236234 538536253 932977809 894431247 328749234 792569160 823490995 158805778 745289342 82212543 609246675 301448239 839762313 116389517 323259129 3643288 989508917 841755777 217422263 852203860 868017331 801147136 956818080 40723176 962646163 460776313 290252514 346568802 824645253 906754055 849225696 569846673 455502472 647241961 773147300 871152757 829067968 178038832 779582344 408571457 985727099 746648702 180744180 89601074 131741522 645200099 917237589 949687739 282998022 844790028 166483489 582809897 671222351 715429863 546995402 27986093 560244917 416819001 830354182 455711197 847037009 336658127 833141804 728103398 880380825 785667015 538513700 935887143 972941281 889733141 992358507 882159016 464339758 744934248 885685831 353982256 925743994 784734525 564106813 725661236 771287242 745591485 853621727 151493964 939797099 244494530 910433546 194290577 819318678 178163280 728885700 889763399 716529930 904755600 908535952 980958046 716786544 101701726 744087006 810740444 954241714 863944509 740582999 413811944 820638189 798248406 943072858 831376101 972679970 968926740 786909499 952645031 15377384 792118693 953698634 891830116 608125316 936328043 765808914 960534119 877741053 983696830 966742367 577672991 728736623 936751761 779328744 853238531 825953843 880645343 172025901 342568405 638764740 826216178 754281753 915383135 133658498 83653120 551692691 863133976 267701740 788640699 461738471 803277015 549884654 483594953 884500487 929109786 927885157 678824173 704964700 380793855 304317778 222989310 973345882 635316522 499599878 778782368 475551058 650591126 233506181 778950401 173189311 349857406 335110239 871266232 758832318 980970735 878719045 251022008 925781794 750047718 462124830 781116972 947561010 498234407 873249538 965752334 585212500 744217158 999710046 414990358 885682097 184641339 831538548 995706622 193185451 406750629 274568901 871649131 965691691 938563298 420502256 859621276 954248373 377557732 885570961 754048633 821660503 751740080 688867897 201323878 797866288 118374609 81313314 959353337 892704809 450719206 548697410 182121670 318311598 878857330 550605346 978376124 4616957 243976333 103758597 136955396 388634356 957549372 836374684 877485863 402844102 627924689 102230119 794929882 761997285 111299885 918737155 223243239 897488783 604717166 967357201 825127132 963863694 923080657 391133322 146727165 450076714 737642708 969068841 787223455 83282172 276619398 995159340 912669629 564415941 757649207 13707502 766814089 69868378 108364876 291740787 389342808 461931022 555580030 927071463 271699853 410802361 244724552 291624470 287376316 965044946 537432359 865529258 802775982 246524516 870916096 157425372 299845862 767739498 950316099 702028826 707728588 536785451 820566576 809570960 919506561 412281340 670033628 844467537 89034044 975050916 443995587 901973134 983030906 842191422 904076989 326848949 569908112 821850526 760327409 771339200 666046263 564704789 878680811 35772526 895265754 987602077 322171193 199709908 794189598 635756811 56065851 877691599 876550634 146437459 446434838 888168479 685664393 383906607 837817622 791888559 187944989 985311897 179911474 461212868 778591220 404368406 827793527 644762283 348302943 139664382 387034308 742091463 963521607 911413656 897261391 990819136 803785771 927278768 911558095 396748234 764129570 23929375 908705296 867559738 576649374 844138188 234784642 87040673 967977793 240999973 731232315 448401370 622061920 901080970 777986223 245855570 754569043 329622268 910741547 595817222 463652099 47015578 79788668 228345468 342966151 918431821 473068675 980871511 931279722 363175933 552455757 481554906 801919344 996090650 630958748 806619941 467962338 311132005 911623937 153642112 25557883 747416123 913166134 822373810 924871129 505706837 854130709 54223634 15142068 876734662 892630707 958050446 776128375 185714700 865115077 240073689 381488023 445552704 609234310 885924318 372705884 889924936 386921199 791816549 300749113 978418579 814393988 858561784 348512779 905169772 776598248 481032633 809630376 178619774 708199475 806043100 28061675 510608206 926602801 913569247 932652536 873032250 837670680 818144716 263685892 953633419 944412563 964571970 900249430 940747848 807129838 744059050 511595383 846830383 941316934 457349246 371632482 857287660 674359673 858633960 750404772 985832589 81351550 813178736 880722069 324274145 756404786 906216855 887788467 990199676 895259906 874454652 134187339 922759675 717863513 945127226 679756582 889698859 817698798 774954765 597905818 858192032 278500730 539741573 865205254 597689113 177427855 374545333 742928581 176328833 830119199 259544276 996389492 60187733 86811718 908950260 437803449 308312549 854412324 54649801 211634875 494185639 224265865 785282447 268070399 346690257 807740379 305252746 931816154 1273899 447228342 678526445 581571919 81465668 306640721 749741505 635143316 996406455 125239132 872652164 382484426 851975270 984126150 763715664 733229045 962499819 779773886 971155081 939758669 592399177 949521394 375816092 196010770 189447721 287346559 682229212 251099184 708103166 673390978 259122574 906161228 991965874 244614071 164683853 870191149 811688309 695299626 242731533 395104664 855500772 795544609 876480215 343249130 699360 922291981 971246735 376139521 878691801 842325186 769491627 560134946 777277364 789186363 870675953 563672711 921033217 792803818 616431034 144876312 309496935 821034650 966013127 353319981 802333024 883735539 974147436 912912701 555954792 792711477 511776905 90391278 370097062 933941597 840396884 959121437 844687209 474138008 276735147 557453573 243694669 7315013 104576416 786299878 784171945 742016583 49295926 140125594 692123583 480891939 618167286 951351806 814479195 959456133 176550774 878299093 339155623 746439623 239593774 439301503 217852294 582519605 230378466 546958188 456905114 997248749 440309483 821147711 227249664 937506668 100722199 788861788 783392308 880971501 711531545 864675451 956697904 178413975 748094766 372589253 388755899 444821801 457619836 983992827 944837737 851342339 911365176 559239412 403196336 940394711 334084572 550242725 668439548 389654178 408460717 780624590 793471818 823887641 433105386 235468038 861318363 933316904 39758546 654022912 646156153 320295793 621192812 369714565 739149457 387012468 645745378 853461929 26788716 594764343 756374881 781271580 881801507 25375742 846168133 914913983 465263803 868265844 60158580 4626815 852964931 663059825 991616267 895386967 698264493 197454078 879631677 288473530 965919128 784143817 821464225 753993869 449986728 793976032 951077192 26492516 844481288 823769077 868937699 6517756 81996098 927901500 105768545 644804819 815216743 982042854 290189001 177040548 993671636 961215308 949180456 920927315 938629123 875766762 585395628 348321677 367125788 805794466 846863916 740022055 822267551 128448215 676973740 817551127 496113996 55375595 192599909 611085630 276688655 105841935 542081137 775411998 832612209 31380172 846332634 938954317 245935051 489841951 735959589 810774222 941949221 857615878 297069029 968736269 854676306 908662175 482078192 751481533 576054985 758524649 153373291 271688137 923338721 829155397 923406612 806046206 828449863 981998281 839877302 835311817 269945914 173904811 923698051 737020247 615146763 784489395 923297064 739864999 450318840 550135986 278085812 145331912 714528526 882938559 575079014 763436096 887110104 999945958 389133359 878917068 143993487 127002288 843961637 465991387 969194461 861357880 800274631 396065031 989304030 944738414 874316502 811577969 988307090 890844509 984829259 486245919 377110883 887703209 923735650 787730924 107993363 831349699 868528337 824771485 307302846 878090118 939513767 320198154 183317024 792268925 243843212 993225589 909431959 561866316 918146611 890340700 317153016 824355837 947236147 622876891 953296143 111760570 615967457 801413974 455767096 534701697 740383320 161541531 980189576 78682675 818260708 48315022 817389502 900700049 750486568 739349737 81000658 740815000 473594767 983586913 618697650 862639234 374444574 800934005 426500894 767501378 623194694 883897398 795496330 346493506 66904760 778274675 244568082 959223270 38848620 797009563 378180066 633147762 862938070 529508576 642600680 898613494 982209776 333994963 837220788 918242778 868274548 131334198 890437715 869710368 743380911 122238600 595284379 363402784 119822124 795429655 826327273 547610724 737020247 619441740 858030730 366863400 837654731 520205974 526952040 941168560 868028824 782996400 970890197 353245921 270410082 151672261 396497330 982884396 894774199 789945193 809555727 870693557 746051241 616240438 378175725 826146115 631299933 598885483 631601128 948994386 89403420 247660143 157888851 735975427 85310075 341944513 714995009 911026736 124542998 828604696 343633195 819374603 811657951 699737407 930286469 981445543 830071807 576440518 848836876 344103850 425791892 838527759 420610238 857587121 83157607 739729319 813787691 570129439 49596658 884079316 868163305 312405362 876024023 705271556 7153166 762072726 214221276 742135697 550313818 867198139 817758135 564157121 436828018 748291938 783615645 488421445 49010774 989447443 605145952 967838137 671721346 257336218 927408891 821090388 898372772 711252996 571032950 566395161 781214211 785691247 798988672 349872846 186438523 893045080 23939077 418053692 202443946 413112082 840016924 415124467 824552677 56198534 676068663 699562625 718795227 843577335 595185406 732473535 994994520 479490643 357827030 765291893 848497579 390508526 83017144 306913033 633733997 172173882 430129417 892254422 757301298 844434695 732007121 796691669 581744286 755365421 942527012 766615338 851831128 879157950 615369759 324194980 18729304 150338548 904337276 736128278 904515088 990953886 118866433 33606128 884358620 155313859 930217516 991736713 976976018 480830441 719276202 839757271 905207929 525420651 973939182 252973446 510202038 952334057 787105018 954046766 570824521 195641428 697881965 673559508 330695082 359155900 879650044 17340816 825318640 210546346 813734426 17587767 928245127 850944251 583605392 941502516 881386565 724031693 899310471 710433695 752924806 907225940 755542545 920251861 836769360 880678614 408142746 985907186 102976051 622412046 944610616 118158453 826180213 780504989 815983541 232295284 802124716 147166421 912558997 997927295 177164533 805700735 569734579 994505995 936221209 836295661 613105153 602480062 993449025 961559349 793000362 717962243 117745197 202372930 752031128 318982297 325668661 725056141 786277648 971571604 405519131 199420144 871780987 389250149 207902705 723932778 430413829 172401877 981106413 798063488 476217093 499683305 488614834 989772229 920205653 952278342 978376851 187766403 929667039 867535757 895924812 403814176 927523970 963587573 291508464 750751214 712554500 795725909 670470479 812333818 246993203 578324629 300264522 515765035 81966653 805413442 932457693 819590344 953430974 88536930 799469061 763183202 750821269 166457501 986992554 941323111 720795598 310695445 202809901 943958674 482541779 867733142 738856819 495554539 943145529 204381333 805184980 784528288 793844964 975746387 111950868 938151080 733156981 859894141 16404072 908643351 97887642 854658104 350216636 557884396 3367179 852729002 800028178 911755136 244375302 780059256 870434508 908208173 928419334 861957822 789638017 649095874 896935266 72888014 910726060 285466282 119568768 287450763 42969030 624400450 457018725 609797252 800907687 800854104 565387432 682526320 390141836 11369716 98036227 188033427 850597583 896917290 973258319 881543609 253783955 966458852 871823511 399977177 714631980 967414570 769550337 779441096 120961178 830910160 748311639 971074633 256052897 458132831 925237086 457898955 359731557 346498541 304369393 3779697 885388229 504790743 340999061 903659254 262767112 962280744 201873985 474081818 871865391 806876005 235776254 664399907 203924164 823516037 657998907 854006917 375734674 825007796 821012232 397708853 754127265 580890771 933197740 564403311 889891597 277098154 961934414 221674801 948482971 88562962 889699099 802429524 111405513 343771095 535585099 542145713 118082016 591281302 533134528 580951350 893017386 276260157 313980660 162342423 49242362 836662472 306309889 907629571 739094692 881522981 909105702 905625510 25907041 671958533 132471985 74567080 14035808 810881052 906614475 126838143 782286675 575095280 778624457 873592170 358613519 261674599 829108057 858650578 796459588 19979177 270519006 157751668 689194071 883493693 568766824 739561035 774805545 596974744 825554491 539287585 922922202 419556929 990415949 719400694 367888458 17894920 107010602 949009969 817020926 216632517 257106272 491843422 744294318 984630880 957865174 883698655 958249826 910067937 395799503 90820641 373570955 630773770 955403582 937424572 951389550 783099779 320710368 780530025 904847946 895573635 664958387 942107281 287962784 775878835 812781049 738904981 594406667 839874147 965739344 447230259 70076187 739293893 994144559 924034910 800874694 976030322 402013088 929664237 945592398 789274408 251041336 890603455 493686969 497783641 589525024 495437216 578911201 651553064 967426057 441034468 898380453 209463785 959193810 832305667 989511065 234391809 187999869 185687485 217480104 827983389 38685184 984966490 613355291 26985040 357529976 847835243 8967681 798888382 639761337 713891652 545237221 704952515 979582976 334891366 160679746 781048675 816213770 337586806 835300976 784601522 263169432 844123117 709350493 613053155 799560952 93946962 798650071 189614631 790681154 224780686 925314912 526142958 243908715 189307946 740930894 983788625 797784235 980487901 889308046 820843544 967856536 742740560 622863124 664070165 881368776 846825351 462807439 32947992 2334963 767743037 839010412 752597978 766328909 548389228 850951357 244539423 679610697 921494038 343676744 935983454 756154231 851816127 885928970 885798196 43377057 267283655 583481702 897848932 996255183 743483586 770651694 148070447 791239726 798315791 617356185 751920256 167258697 984872605 886070198 988767743 740312266 747203234 888313919 914760465 422007239 833018501 785217118 999780948 796524718 829737121 800805374 135263609 878644131 261459212 387016461 151923382 775717267 937653245 268750361 768719865 995031595 882809154 361418195 926087252 525995971 537840123 231326993 990714398 971739539 414944190 887129549 791519244 716766517 937765844 134728991 981527815 797996758 992659138 947140314 831457866 324324863 198117159 689003941 946611625 179564218 818608954 550533344 396388158 802450650 156110509 344937795 125201483 996713226 779248869 761082451 865863419 928509433 634456418 409743229 664662596 878837850 322934189 75316878 455157793 146484882 706324423 253056594 777406281 785275233 923848566 187861619 611082341 628941527 915853400 890472808 695984294 807122876 803156688 368454726 132793314 485546596 546991789 234762793 395432781 761338214 606146757 314755125 81615489 942418160 765268417 841305215 152218633 966764498 789392027 444801801 747873710 864088228 254259286 616550280 879301027 885226219 781119748 937558500 945277429 819101895 824946915 145985166 583125356 485606821 682824635 984814878 647030889 936480952 764099746 922826801 282800039 911572167 630027458 634713332 561661169 889800309 963912720 901913992 760272076 873629527 831166440 946593277 701690986 681719513 83868137 857508293 675507378 911615945 803575319 824620983 679727645 212483262 810644916 705694825 52065841 778633772 840147519 642079834 380235120 814232320 111443111 902167039 680716036 789204865 875682666 807773492 16547145 961109296 972092104 851444832 848110734 19298448 953892903 244143715 954131756 899614486 388260074 930115486 924585026 419012099 993268167 796270544 533536813 480140045 310256715 836194514 254843521 949473026 42497836 537455869 856905716 885208498 841420556 536534790 860469508 221970858 916180917 752327313 800343189 883587941 982487874 997996787 959466822 933316277 361741107 52445909 758743858 807320529 859104217 836698706 759469446 230055972 746072388 571540360 349292679 134785257 850251393 660572755 314495892 747120385 85921394 827673586 74760084 727452298 794727602 570586513 918040855 855921731 937581105 736195912 797040481 392025136 876260640 148270998 756718376 838991652 932973696 653935993 376214462 356770001 748352639 922845538 413398000 813465512 119481429 953823400 188519166 755363663 55645613 68761175 911946431 932465582 963603834 915907062 869112445 648045547 860328099 811087462 895185051 345210423 142368282 384498629 986174454 759802454 922282503 82001774 848987614 837670515 51592943 900636861 848873165 950017060 343684553 889815384 817328807 996881193 814684372 590519288 980132856 908354830 73766208 872444105 285259900 959035870 465565632 905376557 127313070 207211744 472409005 815478436 134466109 885677885 500413017 650876087 415455196 441952118 741836723 909418177 488938361 26878451 570972045 820862464 841912307 997049346 730493446 775500235 28883936 831807880 757169613 760463756 304090680 383080615 476187696 129009888 663455857 921360920 855114291 198483273 8745748 750621030 970904367 325059972 7113523 809048179 480970109 786305902 856299559 172463414 36700478 630645050 458893844 951623409 426712050 792062295 251370729 688973304 855879997 956776062 820575714 852131408 353744613 869779962 286695732 363529966 350822570 863076009 922446791 817628985 898971410 185920950 382136323 838442514 786178181 283733794 692215604 208044241 212138816 896738822 486720687 689822760 860081602 927720392 880286340 886733944 936890377 779403752 33809777 867045399 435633028 755430102 837021119 714309866 388429305 725996082 854332327 755734918 975746008 944162444 204774457 751979109 214283443 707370118 38322285 513873493 851005537 87880722 902166506 965843865 976202227 927301625 456152720 578006922 686886584 241423521 399022940 826309697 905394552 376441515 931897622 78362168 451120509 916948271 808138404 77868368 932742555 35885241 158503599 983736773 40924311 794986838 563449892 871814637 732477305 326572408 823332730 736329541 183095307 813968166 662809250 269608549 144145736 438599130 807970267 747807112 783434277 865618062 936731414 394316100 873534144 780733038 685872232 148003958 867270509 807494213 316909168 878363656 24245622 593103607 753584730 935762251 799968207 591754887 905649337 836122494 215040204 580216572 431626335 953801573 933128687 860044113 907414251 111957868 739687825 465484292 929345934 255564385 732184601 942581593 744055042 935027405 980183622 101026160 835163070 991133935 957435285 252268828 831754149 761847761 708067479 573107538 599788495 429328847 904933320 980606817 276536311 808292453 764179788 111373180 118407605 969314509 526394584 30860023 997556530 393762498 427309558 53545747 793494241 775390810 41701878 486065136 686010535 18407949 739102137 882307367 802916767 57380092 688603627 808794646 486871074 460338426 274418083 870882870 955747761 226060691 853899259 320658927 81940937 135667318 726385433 759236678 243867220 320573132 736761705 328419588 642156877 975429224 993409966 865007076 79674472 212199 863524878 761998274 820757036 893635188 170327878 16200309 811869129 988512067 940230073 965931202 831716533 862019224 816925264 879709228 583463804 321536599 995102163 427835248 784517841 859992336 961881510 844429883 860729144 231623102 958680727 320361116 150193104 799985421 75163238 852496997 136269434 927448009 828533579 467809029 966691822 866304106 707026304 631238790 955923755 798703498 60042667 394246934 980156610 959929055 242644390 936856098 737818736 826495966 19772063 257715936 199927152 885242423 757652909 534704536 783355874 713018322 924815034 175482029 375315763 325088977 132215301 931626918 263346750 926039935 812426653 22762888 517663906 710295796 807636847 943085032 769077694 267200885 192689488 807023512 386036499 567040524 884494229 818924105 355832242 629260206 780317482 822022733 886283805 939474529 921208676 583858448 980359833 803088277 774221321 567148838 186696260 69602712 745701599 467811289 984277601 164050093 120227078 110664193 429774022 999246749 900905269 827993844 651455248 458418142 934287059 834256412 458587682 810976238 268977030 895430461 657509964 907605763 980948568 929393894 109374749 800104153 547350888 613361323 686522443 573348615 903063868 405834817 923598510 946884215 434725947 203853 935122844 698124189 839351476 917871907 951065939 608832234 421498647 995267030 866468562 785087087 56651099 947087073 240170389 80277029 693670403 100835518 922791864 435052443 995463599 570749254 836714770 557422985 367545087 125202853 810661097 845340594 700919062 841482308 122005931 886449395 825550189 551980238 998114372 665530847 266260197 355223808 818147169 303533166 778208940 886276029 957858126 157402346 857915610 759415770 269533364 235253483 757529664 822652662 874546543 970476259 447489936 405218976 366961280 212584727 507355081 403808244 996991788 812568519 450633386 205150482 903933223 753925513 586570912 795412785 207322771 675709172 762940694 341159653 463206164 792767877 109863924 761236226 13706692 873125837 442234237 887728933 778628180 790216551 821732439 290665823 772153716 67054625 819628186 6323751 843378323 194376923 491753085 119582475 920043655 69323930 871336641 592686913 694921077 89471506 543604685 948615244 21638928 853873061 818854305 150807153 643790903 126711784 873214047 655830912 494215346 810928439 617327537 622235811 917002909 945583862 690051284 855651493 988996912 642420271 516800764 815028636 820274172 304696427 798177416 920784668 790394252 756566602 872253026 766458582 961276241 838976025 642218816 839869928 342906473 56456062 587845164 560397647 9894378 624848905 962583104 771474029 884149210 316938680 200751115 109339901 32556543 657410168 712594666 675443930 877352507 797392712 992926964 787498562 863511501 354093837 849301068 804307611 849508191 783268969 983011510 901719879 859271225 915652320 991659035 63000317 654427362 818811122 975834908 830443198 72992272 797457329 1229330 975328906 778020474 951564489 782811557 482211892 969263609 274292669 11527116 749805906 821858541 784081619 103008879 753712219 909731575 784415042 767975827 883478466 956577381 481142368 822670549 538454183 438093912 803815712 746569953 784460827 247964149 383704551 140174676 92600256 991289194 766478273 405434389 905536977 767057032 800265428 972719385 929574179 964126919 556633157 809816026 57484920 873260570 845183746 573049359 516783969 975809490 165599859 896364260 672568606 173093529 926772513 563988270 732627228 201712401 833675468 305252319 924007282 950936491 188726242 821815352 992911377 843027773 452506931 50859087 850496315 826984733 987615640 975349275 207348705 748879713 741503965 956590778 987354845 993662259 824167434 984146164 667408022 372326762 981324704 241985478 402761847 975675817 963168985 961985218 788007596 731702947 979165118 913508530 587875453 448018143 786625363 179595204 822185190 579597404 502294750 209826976 91413917 114427820 907797708 222046828 494140181 614090390 870299046 749688789 212452191 324081251 291078243 899226360 960067493 941901882 794858348 964148796 772023632 466107945 513744756 389758190 837161243 754969528 880027597 934180684 262685718 79302878 892739038 488071448 55133014 976577958 804520777 169013785 651789081 980182907 943291068 694712947 764757058 796517815 591376873 924645118 827164745 498326562 998456076 696615621 437597551 577269697 827305756 291219969 247368646 344003473 982410902 746264109 152801876 789108081 957587682 618607370 894967249 398473916 898558675 652941631 971015314 881505951 2541484 160396840 747959767 723732967 955610653 662796884 384759506 306565918 908998018 900189975 507128823 211265914 949108679 879328391 916764208 770416092 183098716 838474076 220448495 803624627 778659788 509620198 956453052 806367686 31842562 844173516 647539480 574888400 795543624 170978235 870008012 955874559 991741767 390286033 282221383 974675282 325390334 692893725 760603490 960312783 891740475 37590687 189219891 506038111 232078207 913868641 646971259 210359694 81676964 937117894 886106254 119666529 836418919 958164540 194702380 882106949 910167264 852590393 980718070 764952590 751629023 908704232 847335733 59390291 438120804 990071470 927762630 463041816 779088575 865854823 825261515 657104758 388544998 896323052 416386641 83672468 667277051 939031744 687531794 638303313 416576966 806709607 411620534 901125560 801052430 259202755 968645230 908544339 866843574 996983068 797016408 666779800 621706954 651108404 865089939 631097276 710887875 790880407 192650992 834710830 813527520 249322777 813815119 882229227 838034803 939477862 379052041 748637257 797725622 222940302 842953643 928812508 973230054 829035164 313998865 114659199 1551935 800108569 630530559 856447695 962576005 626835867 870476154 411832373 952928809 310457141 665172005 330393441 131623611 506837056 36927048 357164779 588601617 378950856 252731080 413658128 658186957 47461807 294281354 555545603 826990555 804653055 841222436 238016708 767763846 745329649 233674370 925342941 894149112 843163049 433381062 470932907 949109642 769505457 464527721 852391178 853400806 23105282 852377099 419622388 272268450 870324845 561966639 744547026 910307800 875509547 706299906 693376582 702605355 389584753 528111659 965584988 891146271 950918088 31045794 654091218 972340260 730390698 642903445 990694565 596608515 131931094 569881698 926912037 965313635 735920840 534315164 66769407 747085462 404753983 242460580 901755929 727019767 423682834 997849146 540269123 815953428 856577217 52931602 152621252 339940873 823479602 752999905 780825830 879760633 986394773 641625321 342900405 764106956 903618018 565104813 875261874 812688690 407815198 490596711 822749322 620894651 796765152 960875767 755042006 993545970 810391996 775906747 887785548 397479642 811592820 536048298 715336914 823993996 813680639 929585428 972643762 493217460 143436468 904887843 950267939 627639384 37238068 759549460 354830716 903098230 711991380 35727562 85340820 12453161 759733849 739863511 498490415 174318366 944971545 731848321 785064129 50475767 154548808 449165871 909409504 900570859 768856081 274035587 339297879 535396545 933017613 943428376 527828174 940185507 750965067 918229815 567820354 391098203 832581934 391785277 961533908 601342219 228072531 862600122 253205734 960758270 781690644 907201225 851733662 658350344 496199801 997848067 440495548 307162355 803048621 249187097 800800401 177175257 124394078 750270419 76745096 402101700 36975290 972567869 889912310 620724617 901536238 852882222 766196109 545545086 298547116 846945381 429332238 900018304 951160545 461615742 569253751 240823331 255848856 927763435 889952529 663017397 769223353 966515880 251415448 194415844 246650516 627253276 213226283 566980211 30127112 815939866 441053281 235699235 33641353 776928660 747717385 312026696 815151259 50057289 915920298 918877254 627320288 945176839 3065408 772234668 859591177 294997695 990637248 986089553 931009321 888402518 540394650 916994558 419991194 987691853 777216337 751745606 985288058 743835982 923535459 83923639 323751295 358621507 744052385 629723408 798592299 234719310 661741603 640787201 996467751 878300101 804984220 741521177 996658769 157549672 794462255 388853852 625512415 797259504 516988426 944778228 687545546 457668986 647050507 140186100 509910283 436842316 183757693 568240263 795119385 838289463 651627915 627504754 388516389 206178004 239942227 595985123 943916985 849699429 481048377 775706221 767566698 741274583 661053273 967111508 849314949 829937353 743522243 535318041 981736234 759506992 738045764 887595202 138946909 295287423 872159823 493365183 896907300 771563 474743943 977700828 183297089 228750804 865756732 749039927 654680306 846881759 22530008 331334093 280372513 953498230 308489882 990053495 938629478 923035913 911269250 967910855 685751461 857178649 971408467 79965535 552437812 582179931 557170514 419142365 386897733 762280023 629202525 769514875 368583190 848118310 399117936 269444246 219971903 830186249 432308806 841231190 220366454 919737331 463046795 368163963 470479347 869659544 257396644 684644271 617488012 823431055 219421446 895133719 813190685 836185147 71547566 540044862 832079339 775913191 47219546 936816826 343314439 286025513 872966857 383227918 844681363 610539302 900139762 653200408 497889028 929233011 914781582 830173095 605318746 181711379 176729528 791229738 671251340 197150669 544065806 370231992 881482298 563818045 221500830 697542511 902419236 951070957 75584664 290524441 751954264 563245972 760908380 263341729 667393143 14326198 540455273 686783978 794205871 891269626 930776858 642501966 241006734 871779344 461988077 572074510 560750910 507262137 669033424 820935073 476732396 951496936 808986783 538268342 739031869 761501474 219930964 835070242 817887050 865582063 487572456 624910043 177480841 750009785 738704569 157258427 446690246 819608577 808743419 108553694 284283086 809496080 936717403 173958813 708764493 792771214 384562653 82066441 542847410 36126494 210066164 946810905 721918097 892087247 961100228 471027373 623624963 827330878 287931658 721618818 970075514 795106131 260077806 875678980 922200914 988729088 742279141 165477417 235897154 676641049 927714440 845751394 453596376 146245733 821396185 585236520 748571312 824594654 747337694 907617789 711636838 803728144 78531008 884395788 499106000 559429195 147922059 866268430 925802505 779678959 978785441 145265341 954565035 592426981 2202370 729274219 604432391 627062672 208959500 750854855 807031344 777938412 990979364 848181737 773057452 16202548 224800542 12091334 485569399 294793756 798226274 486360833 736764008 435356082 908400590 223775535 784306221 760249326 139017627 71858736 254270514 764295025 6996656 895789260 844577099 839546314 469237377 957404899 438320971 737020247 444215120 504545250 450198604 358069128 904220568 987683291 847166300 574196265 851253909 932924412 406748706 235523549 234252792 642068314 500586535 831058698 745647083 753971412 542647994 979443195 853479933 726358622 630927731 645410928 787484561 847109321 954964312 779063727 677236840 527644338 977089242 344210007 871557721 387842818 878359937 399107115 492794491 989634263 775501115 26487404 493856065 893264039 417861705 831967318 707986827 787614509 527407756 854342680 982337996 146670502 803763605 920154054 728104063 956503043 834808980 827562384 499267407 995517257 151128023 130224415 502648534 749906462 5083512 810731766 995493316 742350620 300881167 900280389 149402851 742202116 993529070 876354816 479821121 614131606 291245269 939958626 844587776 981224205 994229878 865388313 456288671 939194689 593221304 502386024 511821645 398505695 311740942 993991771 94193508 826969030 147989465 351032531 752521785 234518384 961659024 946354318 503043361 911607518 420969793 903709409 176898988 43350547 885549392 758901830 755434272 465244740 21134446 887966630 979526484 73695561 367281746 189100638 661525634 511269982 262149018 780555757 993155706 403348667 369547781 982833519 240036824 540612168 983206910 816338273 936772189 385718037 948850643 332218191 591443228 385395636 841302712 56389120 99160849 467662251 817186450 605969965 199950485 594626746 226721093 350945363 819259647 273482090 200398221 481656659 491572815 657499647 467694710 192580252 996200814 851149010 940509211 826308311 778026283 573108633 843960253 700354083 881448027 205378171 723942882 625901707 955813687 759640035 896986103 445877553 283432833 788061675 442659271 901117965 885732643 896947468 612489305 869324549 934286944 41175378 470812616 836259649 390396844 117378639 900508334 867361749 130782717 335920502 758904021 45645210 940356194 908707717 523896357 266154996 231628507 811575575 944579080 676016544 477872597 23763499 885233598 591982862 292944779 789707485 343669563 849950522 547205524 787832949 946405997 877457411 782213613 66034524 897152576 646027180 572372970 417973458 886485349 189177773 885045392 760118855 985434996 783192604 990427365 776590247 613278474 542764973 251927413 637332456 806157662 265441332 891641777 65891592 154974065 293888515 831962555 761255259 876311487 883687066 527960088 760405009 941913600 517813357 377554976 923596788 244818236 882579342 255563513 745068509 560510049 514148168 943447249 852206661 696895461 957306556 131803981 691372364 747521206 933152180 773393007 18034953 463248403 52420769 610316087 955078600 444060769 364996699 374230416 817006106 592744188 491087682 178012499 669224436 886986264 996816807 892309261 262488101 30619786 784709856 91570345 542257863 201508571 769821260 308118829 900246521 928538526 23279761 497647957 956882547 807665880 856708946 769677794 839082452 502290135 771748962 391567638 896463 739562360 740211036 682907253 783757424 61109056 973469440 64800602 486247823 227433408 940272498 765058230 864772614 948283903 66011572 886819379 820413534 825313181 941262047 836341773 955971949 796268 217862503 370736110 911894272 707652207 380376628 441699028 160846997 756073788 903634895 411275674 458696515 60545219 917170087 633364539 747871703 891036220 86546408 443425832 753721712 543528157 495406306 289290999 779424258 872741033 884662078 994793734 916305867 435879558 911772530 773795922 956759618 850426138 855458282 830271834 335288149 845022561 80063801 885279645 931217142 448759429 999128148 484607761 218033962 472460121 995172219 146864766 638996744 403842471 739436196 926973847 876265402 840122304 255959159 3749801 305568729 295839272 604246841 564767825 868294496 186531495 980467417 88470980 432149249 784297180 818059740 395009110 935060427 450972811 988348537 842505742 451719231 944903509 433521426 391949110 764079498 504966566 805375179 855034637 525112528 864197020 741911498 642847717 917467192 264766537 737020247 844501012 552486270 825304801 26241985 39831787 772624433 977092987 704491144 576369676 565936385 402785955 58197052 862778346 984035440 713243951 992982076 20306804 835671687 462478688 676867300 778341280 838594494 73235725 789189447 901383589 738079075 928317975 899567136 225020503 925044728 82922085 991927838 54408355 255785160 956840164 842911182 954845988 452474026 354630864 814774259 151576157 570469933 550633111 921966671 925114470 154654375 70457938 136624280 352216345 323226013 937271859 77601645 501228231 815771791 912457344 851843111 197382221 196577218 530106211 105308088 175630890 868351305 443501216 757399173 895621205 768482669 737020247 232741419 897792579 745272759 287924761 438382139 776280888 849406197 198240594 986941352 848732334 743432134 596554603 273316474 69212501 750422274 266249291 581012490 641858161 548435636 813090506 981580888 560817666 933036309 767117379 240457279 964162545 644437152 875393434 137369853 823233059 788274860 693294574 859559990 676442102 392835322 133983972 423920600 31005892 508401733 810152486 962609425 81351035 347773431 783428476 792148463 294033121 765677353 93918575 648404480 858224490 894796701 959203260 910157767 810474210 624527045 340566463 266991757 901913698 398132828 252353330 132842065 992203058 206841993 40888207 824128310 89190310 737020247 509491739 147267621 879449297 919078820 215627833 662755977 974152304 191125000 746198888 550450581 760697442 737020247 10996931 956703256 691332183 713971647 907367845 811969974 93962480 899061000 850945273 616230177 557344532 993887192 348241146 520836063 976352410 430531653 825807406 207229059 304665241 715062007 430626271 936377232 809935651 297311183 790134515 501559997 913501112 423588089 793888909 880810292 771788393 713728533 250203871 942512690 554525348 97166203 811541879 486120433 782647459 723329057 769137984 769724971 280736076 451809268 497022391 219286804 785315051 737020247 918809028 875849241 531541943 760628649 994282626 535267818 866824289 974389813 115401202 957686284 571655852 221816738 969222176 720004979 921309382 949412677 342865171 789782424 237019584 881281862 826977436 964382468 690938692 679097998 39165147 588853669 386191421 419107513 160600690 874048817 495646116 831546406 746017005 816268498 641892456 594846902 746304902 260631927 933576093 84058052 845360816 557702620 763176971 821962701 782851395 285067258 958231897 986302047 270214744 321013036 860261050 20550953 953609355 151821652 186919699 900221152 952233658 397532560 993637298 483646200 918558908 793770666 74152421 54981688 620517470 905794137 77866719 40318791 797169659 134256581 588243324 913316236 58515330 810605292 742595322 739621776 811687479 914240330 952631548 407729860 243278299 890154224 804850539 795096472 959728322 447954311 958757484 936937467 892033202 389425572 816739232 862979627 973630865 696163690 339448205 768655850 524781037 309773432 942169010 930528827 45901915 737759117 95840344 142710427 566687005 420436852 79258863 939969702 916042499 820179214 954055968 903633762 802309965 781527920 841909925 430124230 998353717 969473240 676980640 819702163 174353690 830847967 582578516 224052544 844232938 947508084 878301705 891323034 112762008 424010293 990147927 563212365 857235949 849693739 23454398 832697311 857141156 688632382 765871019 648163523 266689141 496713467 904879195 941031846 839182138 41011849 737142574 836278356 902347697 752821686 486046545 931273808 742758976 209677183 736416218 376305422 801166263 117561788 469359643 755500640 235825832 330513774 724865973 342489492 895598722 310942443 618222197 762034984 742033261 766503365 568952202 780465287 614229563 807642552 812306963 782835688 834505690 660233472 901528370 421382417 529489004 454541822 404575015 86676216 995582349 813706666 877432508 680360120 484537882 888610590 218114055 501030542 605918233 760475324 310335012 150752797 205712930 972125308 814469781 571864655 573649194 289296929 880508332 715700439 896599611 260983804 759782562 808690177 268276114 599253061 888077781 977300023 934082965 937717903 940524822 962090708 512896183 554626584 428106079 959413554 947330061 823285761 791012627 813163787 965103985 748435598 872589653 7422507 786786871 785342524 850247669 729305695 780313972 741412545 399162836 874387359 983515591 116549505 826798384 801176473 174856469 794595231 95780137 54028329 237395486 777911489 93503177 383274377 972129207 995135188 978326104 670751787 127268993 770035726 137986556 458241757 108487618 335437986 911746822 789006482 970196490 823294598 78168292 960976209 993477916 900348619 795918977 815374987 390366882 869309399 127937135 854156564 714539100 737140329 813801961 271587930 55840847 549339676 506213403 924432796 487216317 561985463 788202998 903639368 745436171 369466987 249396131 856005480 721009492 163312620 781727183 716540510 892527203 916852821 818122907 613704947 985157725 910495175 581240331 64132454 577852804 808565803 536700460 839824031 713036417 891533671 62231542 732519859 936048012 737020247 826159643 597140453 65206830 460163217 852081747 738703645 851722222 529934646 950133692 778768335 428882066 866617651 106027192 800494676 312916484 161910334 832038682 627359805 820858345 573579885 466006125 923014148 419391472 838004658 367171257 672903924 261461882 90660602 851219880 951139218 63672337 613274730 492032203 906164623 963135434 998587878 154736346 30840083 220799681 858002904 424095652 797095491 547831457 819372582 742895223 685574613 923995330 89862487 546926855 851405489 84362803 256550816 778606970 884258247 839344987 878147822 967480555 887527550 926013444 511854939 995687480 803241120 285894960 160854376 39263962 151909381 600254052 790175094 977979318 284123771 907820192 522643081 437614004 969414068 295236499 609988628 878472588 175971255 823104465 940600814 615049658 805060683 798348160 874982894 433518682 756020023 494033491 21749709 990710357 481466123 762852937 884873394 634835988 932791827 113541642 491604804 469731767 365728433 893274865 750628764 794988678 750836121 393392257 980552127 436205436 48517789 930073016 720010142 204050646 743156667 861861035 893411612 350018662 928050814 781333775 404921358 387860461 775156038 762082899 547291190 9383036 841381411 782019294 737223545 645908580 892216969 918798087 953029826 594260652 752240712 77855225 166504759 780037262 884283980 923421012 813679671 306962127 811802507 422108746 883657835 51649772 349905443 766240792 673926705 72861714 161380444 862590634 855941400 861703291 298267018 239627034 963006306 88168593 988284757 626400458 570593553 823456583 703782576 497285235 725824648 379568876 815972566 760352569 811793654 322355822 592513276 204689817 628778047 503195141 866585418 441515994 607843241 529638212 743667028 382950704 39935219 794500626 111835961 548735186 818796351 865431493 708134096 476195354 973668212 829162234 518111427 736446099 542485697 836647543 692828208 932290884 874303629 717728449 768546050 835210355 984904756 847126876 701745585 969269264 553937628 757450861 758010036 918641848 468114247 789054599 831396462 115180121 652735015 199601558 846333044 881437244 417981091 836175682 772878720 468402781 817188203 637227588 366757092 631709032 606718428 869901785 805387789 871006212 50418604 64680147 747517470 313383484 661243338 124420215 708412219 756079695 564552110 333700208 139943824 941615755 320564292 249937205 925252071 752220807 617545351 927301265 944491182 911436532 666994815 986838435 818614876 635674272 972058722 130613340 741980168 740726300 94097715 133933962 484700412 865766553 899721384 737236133 769178596 960208601 729939329 355188753 863772309 889553319 983384594 335812334 40730797 740436576 517511251 642529517 912622337 565054908 802270607 373903352 337142998 980276417 62031555 772525103 997929346 855802442 142181821 266793318 841216520 39646737 821927778 700392711 587358997 771033522 925408594 767390820 346154895 474286560 277976084 975071745 720955118 839612542 198110091 810039001 206379379 798318191 378851403 783372902 738849400 461559193 970228439 973141742 603327031 875775652 792967196 318183693 887652836 750963564 504567039 888119778 79672567 637045740 251334717 417271610 101172681 948262816 196521653 761608874 976637153 609633527 159764922 947038960 805987986 98568358 350632332 988513472 766747133 521807645 469083102 822082567 13702005 917259922 5003356 894457048 81674569 822724436 647425571 512274291 984014729 96531714 927338459 47249403 525989692 557898540 885154713 786875536 979877490 561371039 877490956 360594134 806949697 845359852 152111882 864400924 354033410 390935695 78723522 902536470 664661313 440471063 793990834 789135343 442475444 542474764 990787798 970029745 920828077 908775190 329263012 300222060 866829429 870182338 666280207 470460718 561342423 741504429 242298637 817448574 873344285 960598692 132619641 828462024 793890396 20307030 168687839 872796954 561245149 511918717 485665601 825939515 884157971 919266370 872290659 873119999 985465940 930529902 841313054 990856215 628366767 26657330 803846604 941080296 909145361 750059292 251799658 744087366 848001141 935718476 449774002 737020247 567126813 385955955 85826219 324003744 871504253 985589569 989322180 41829411 447033164 698530594 877630852 25564924 917874461 756828056 134616665 60920208 750020257 870852599 999797818 335236344 844358147 232392443 988456220 672929485 374652712 158166836 615706278 886372744 912841595 948741654 409946786 430061918 938034734 275517881 634846183 922831680 85881832 618782052 819368993 783893450 881422413 765102813 121866413 947242862 816855170 436505481 542748840 848415254 712674131 774238606 949561769 381431430 254510447 792204579 735216821 386776250 933208237 979661893 318638387 749898925 857719301 647315665 104796975 284871174 620624061 327597568 408512987 75892346 142455573 935592251 413811455 596266695 87800629 88472716 895668911 988636638 814731311 721775266 968341543 997110917 894819794 631798017 476306058 995518682 294823261 813457117 61763693 621660465 900366371 198903444 760052750 819658803 246366882 663841256 104625283 959335702 945690671 144519836 988336703 978756082 43360996 184250167 433389672 126218191 895910045 204355720 845333473 635045829 912307880 647596452 680627516 568843898 35072853 213955566 753856643 263392190 867111884 430726876 80236791 829483718 739622753 437566102 766210144 887490747 881804411 752885275 183075855 851026455 936618171 798722138 978166192 928724495 800455896 292163811 48647541 651953561 765875076 824022165 366648682 781665669 744499617 307568459 869570173 444757938 878814499 201707398 897130896 298622174 884086381 444350341 292764020 284363643 972809081 479814363 868931608 212583232 283713165 248955669 774486962 812106683 570075587 237897022 328585050 171096248 413395798 692993033 962454899 620205159 759131869 826960350 815130879 883813383 278957398 955090523 916712187 848965764 915307441 462484866 703005740 818876494 668262166 902653511 905710867 514458868 565880690 522919165 825793591 983224814 143778246 785789433 396739992 891768402 945428616 675774993 563020461 687253231 965301923 356567173 180476015 829603751 987576589 409516041 415576963 887601348 825382708 945364543 860945353 929631735 910524137 256669472 760919658 895584494 810560331 912958531 280775249 366321084 872178634 397523675 296821608 314880089 134985551 814750702 930397989 421778827 255600022 992252837 62433116 921400200 386204683 771632899 866117268 367288007 814044699 918343148 170132232 838870024 424522745 918250680 221826609 861592320 10917590 910364606 755775366 753304253 968792516 334870971 483002327 248593969 966266717 482737076 893897412 621847482 812761686 369911038 795819177 711336919 700847887 860264360 755428315 966021457 782367049 995075601 744727496 773687501 793248441 934113779 693428341 925937887 666336650 650298270 796307953 967103645 966196158 193730959 763841776 815145343 750812444 250828733 866610468 666819844 193627462 69198572 883189090 977114051 903471386 547034627 300111969 913169903 909746850 934045494 787932860 957870078 830127766 245906981 816445258 511521728 742203912 643528918 910184026 748524254 944278707 852656166 817521514 796449174 15049947 506786411 684902010 600228804 698801308 893196127 611091853 771645728 221127721 818866106 683170629 880609914 446761482 552821105 107526952 527418728 538130619 748995832 336766815 491440419 290274538 948285122 728865358 477469360 244432046 447801471 39245416 467988108 45244454 654728369 745614022 520424965 474394058 938866325 715182410 848638992 737641022 508245926 45787574 714937040 919143436 781418804 148190853 789772269 845574423 750197445 914822061 338551754 754872791 607115219 37344155 121800759 211937106 469106552 947629651 867739262 290005398 555033991 990473096 557454360 59431029 242308361 806985355 96201129 860286105 151352777 938346709 848548096 195854928 629199028 786571001 500812131 863546676 938865192 608592625 820548423 812836831 238380901 809841329 415235544 802601010 866513442 957427555 848958270 771516628 947100774 813928864 105523942 920485882 42378349 903279240 728905930 884486671 77362448 749037890 996840817 967975740 875416481 968455951 934242848 187314648 977494543 732496198 247838207 825665664 871706553 710195702 1203513 861396436 647054530 936464126 849753484 861955158 977844520 882172670 379163040 705736661 46806475 797749254 536127356 66395407 899145811 560752 915632778 927715426 952666889 984714982 934945331 30497544 993788830 934053352 869629335 958359453 749709028 810170478 692733779 892656369 779279649 865031159 416198265 149340633 898509198 750247739 737020247 120261249 866380165 391236966 403216856 853202746 945189082 872420420 700839757 933425600 785429204 293151 742170806 60291374 962044145 757219689 427171777 410161788 855546565 962298300 756303809 771046462 801406770 2769180 804882552 847942093 831257231 538201533 846657310 576754554 247054526 431665510 523813259 331490332 227181882 854755925 26120621 88630955 349189340 915166797 549218351 308270621 203790877 172788193 677853404 63036921 156832073 798790854 946489032 977582642 447717048 167428055 179820859 156101822 864383892 908946959 966616015 999591388 998821019 192482400 970865469 936837043 498695133 772837739 560243539 983120989 842559319 45768918 930790864 756300462 665900270 742355556 8133990 599689634 921264889 978517147 867935268 586952109 543633302 963556137 601321579 386611136 328153614 915784219 856906742 345301597 659127853 570925564 989119784 826691210 889600505 286308116 590598672 157634643 494121124 842684293 476867837 981226260 766872462 571381711 898791496 987453477 881990414 890321497 937835856 374742095 54251344 879618092 962288873 118898704 318866241 821618592 930238440 67748725 790515159 877155719 867969609 363041340 91205075 415946436 593958177 985449900 293086493 893430493 743327431 907260268 849420942 778399991 152676356 873868514 517682536 145892907 744428446 214834432 872967323 96277862 322383191 863978084 913852114 847476640 928509096 755311039 350764751 972537735 240122870 369166556 186169781 707126663 952582425 780939246 804816859 822359614 724841987 573656943 386841406 929319715 993006154 964665593 35169935 752246117 880040268 919415639 986499875 904981305 502211886 242213849 505637665 115213604 148450753 224154696 238932902 449325305 620136196 443656919 748725600 895955311 58602096 54302399 886392987 46059770 166387692 983640795 701592218 213349955 772924783 603372749 775893852 892429805 721836844 809851708 60327144 883411122 737020247 912253117 257630987 758964756 728799623 907818052 879369983 371484454 962178079 250399632 275458002 918635291 749752347 653910944 676929816 551928145 816535118 858258319 956671701 196344834 738999689 608115431 867191592 862194714 777534108 349629958 858929903 749028281 699689833 852526910 770807918 908784747 468860430 536751657 895098301 341550768 551914361 948891959 671945582 993416173 616709797 13232099 232326171 22800440 379982571 817009810 789606033 702864631 906214652 457928708 797445094 180208433 248654894 394129391 763519823 857922975 147390027 856755032 457327612 664730359 109632481 995182162 191943826 948195627 128235742 214271686 990677870 922747264 871221426 744639891 494333367 884318915 69426673 136058666 866311623 171825096 859911391 968738161 614783490 478198196 829730189 767642723 907918334 53454296 312417801 579663687 218060997 884151720 877044082 805683698 685511150 225895914 995376466 519379104 666515553 74267912 289051269 190382420 811382328 713544324 901279134 892525226 933068776 956641061 38055888 873048906 821841712 64690339 139386901 926604318 595690844 52459105 54748761 198853624 569350409 383632146 876030631 47003773 35000332 439793737 152786775 329148248 835563381 883190256 989204002 972887035 827024815 21924013 918878060 264351151 812154678 787498364 37916759 818061452 987731772 740495528 812257112 979207521 881500926 286430473 202322554 527392990 884921374 871382001 795495736 505573649 783569059 943491448 101324661 326878885 96935303 578208451 405457164 618871063 490680313 688391982 953577944 628254875 908117793 939988280 766041041 943331528 917790578 113588145 995400618 152817771 494467946 956417322 386194225 145741209 738916111 46169998 375811563 497368958 785104423 744001786 954250125 674716192 43151438 897361374 208539142 995100877 930548318 853007074 28316112 9140838 677232832 954824609 724914264 822018453 899646493 737430151 357965307 772421305 651400975 972338834 819270383 969014684 409180352 95201195 990568009 913348859 509655449 751468261 976708160 985284118 37052454 103135506 244441796 820224123 825039162 240941147 997726352 990492061 106563279 461067596 604980751 965687878 770284833 881582826 780530311 661652483 118124456 226563667 788678441 749864560 926222177 730108136 994668388 264825095 158138081 675142060 109093761 120149812 238856559 602349301 816841916 825500779 844771432 928819943 344050501 135832869 946844218 580584566 753558715 131886911 733738222 433347821 892225456 363051913 999644298 356060868 342628078 980646069 433813884 578038063 820291914 40404899 13199549 950562622 700600321 701565609 223832670 824155111 944503694 824053743 429354737 933494657 857337025 394632515 976160823 796219094 949036952 612770544 843698669 630360235 753376350 801874562 847751935 753634533 682748479 737320264 895015062 644668647 80050484 935009374 956614684 668782584 892287391 866919187 752057345 817756325 756093477 74194221 800233632 906362584 815748515 339160002 460212958 197409703 5766291 19228497 946301932 427087881 888922107 528380460 998993356 913315975 898937540 708649389 768204903 806660852 949540800 386439720 426683353 992527877 423002170 996973743 623269530 174966850 381719556 829475043 971211470 876653259 881577196 898276597 692081209 901054156 928391275 329669253 762753216 397884695 62249452 579344797 953408244 312806023 284775345 595688395 75106733 509292951 494478569 994655774 809085654 821594834 923193720 970472380 384787288 873104421 446081929 228657169 594792382 761603780 856699932 815492557 739159626 805427827 270013309 197634536 924590331 98740921 166749595 955770662 984595488 760523883 905356555 990619247 754618059 802574293 784977274 348881676 853306038 151647292 664447165 177962768 23271552 179662981 776141064 597981996 278372297 863490330 255364154 292293734 877502666 177899947 784247493 125912800 179757681 852968775 74186393 590991936 567424456 643898329 896036321 747949981 52990231 701868583 107489514 947534599 440301566 332250592 783885984 949086507 810876260 659952111 165891539 130299694 996335385 571343542 435468311 813537652 738105972 900511708 461865172 378802329 311570114 986940372 14898052 708896171 919538306 742779732 780616107 821803992 815383684 778609620 777935741 411331007 50331767 912336405 944798631 562373666 504419562 36600343 271237768 828863885 843231513 899448904 896267539 961974919 881686968 6367081 753873341 925534205 174218880 781328761 20465599 900420956 750313590 29586368 678403831 43490512 825681001 960840889 947461039 270107603 835135230 508497690 346949504 947455244 910514489 964488546 961031798 835088493 958484521 339682270 919494491 853254416 703612278 590638833 744746658 15834001 296126303 589212880 875135558 891029507 472708973 118616945 992961996 903739909 760785456 249565430 872161145 564977104 743590513 803408962 842176505 931046016 985301346 402096063 390229920 176461817 946772527 769538392 901102280 288549035 920222041 72121759 897896122 888814646 326350506 357359401 525020724 462382298 922321977 936039356 994666848 432861732 819723112 992173033 344146406 982764849 948140347 590984560 310440811 628353629 771905646 921761273 972269341 327435863 861214880 300552503 364422566 981460007 172289423 505293622 822682254 675226710 782266617 996383455 866955923 556291097 765116041 466044581 957723972 801660293 566596059 713467136 926806510 826179138 960918425 338473860 503674511 978947814 57789742 740272621 743945980 974393988 889718510 357006298 986705847 762713791 377909640 41031434 180687408 856085231 890317911 871285409 338042118 130072609 853674070 522310026 832221268 985841607 812791307 899377755 504936598 562420563 994717065 821324449 784120402 539901129 449913926 423048123 554355098 887483124 751410019 674115981 221742064 79865341 186401922 620911324 873664985 788176711 938811935 787805072 763684314 456090213 810336785 335934216 569087444 798418926 426161341 740936308 608478966 112405966 957266476 114025207 84893107 974697594 791855653 801515395 646546604 867882816 798554843 803730107 75575133 796418363 859627965 235534857 654629196 321486541 980189505 869596358 798240900 797370034 610377455 870285340 317130854 114951068 814780960 818032633 63515232 256436101 895411167 729261630 964948267 862480618 989430458 898001704 711619955 587413426 934675598 18467779 46935322 786834276 393626874 330611478 71974355 441625299 143065402 769493719 427146002 901658005 130500865 741824423 728466826 996184603 242194428 369252605 452538274 477224965 182034974 248412396 780492672 808659177 659420093 565912277 89747054 925062177 742760797 891417458 962599268 598580973 448484346 949142508 558685380 649506803 621164668 888887526 541273891 974592651 964608129 783339695 787473445 951429381 197104879 778638510 343659491 871494773 930712552 210989918 857619871 819796576 740168473 892293355 460994562 809718688 444263998 685078590 34585450 808502167 783615846 800418713 325842885 992519940 499522832 534363814 190117834 713048439 30524397 82814326 922089661 797482567 593087300 183884874 764845035 289793931 718885409 999240417 842868336 585747471 868345965 597735898 926412739 799630590 834297909 609770336 662672947 809508856 980527687 753728309 185739224 470420509 621070244 842520703 845132795 565771318 176075474 234654481 270427977 27777941 980773714 434986839 692235557 285479393 94230502 861277325 925034868 854800445 975280228 743581879 74912420 915884254 401676901 761324606 824093384 971865037 465692087 947776648 488457594 947658204 991679790 873246260 342924384 634230454 245141277 585121078 341421889 745665916 401878667 498348838 613548132 897779154 320800546 838288655 409791012 873085302 760526105 686542868 812213894 609729546 90028451 130903588 660313138 608250146 513063220 573922771 30304040 952420971 924203655 56417725 755226945 884659773 873974170 812363662 200375326 842999584 287653458 621128197 838001077 845003405 525858238 283790007 372881035 915958559 799436271 919721298 515206317 780575629 775127091 586211003 22030029 759703147 948346914 190433806 446938812 184531226 930937700 965391617 835134786 394146441 918327656 987930606 909505880 478858784 932754928 761846251 629747228 281002364 826074780 827497453 720525938 871349658 194137605 982874761 257621566 280109511 572617165 806331566 893097879 890599297 844713141 555160496 179935398 774015914 666970960 953150400 158012994 951864133 654996577 321689449 534765640 979149291 32312889 278414652 220384349 856879270 737096726 462593494 700497118 740917066 545132791 125178050 799079825 94540599 307215948 686081465 989229301 801950285 830724923 386671584 895467927 994591038 751223186 556783195 815466529 112233614 159692383 574318745 645959453 362597467 955964773 838404639 225632579 479055653 755452907 235652336 904447434 940413661 595959321 846548987 548266430 867994788 854313849 566114550 942434049 904896865 955533733 383045344 315537023 987665737 346824 14094414 368200701 931873849 940078330 985767192 645585335 210862704 910846521 840103473 16325510 488935527 784189052 900820999 349096773 773462460 948197231 987151450 108507153 754936500 249618922 742694469 993537277 440064512 15127923 816396422 985161028 659479070 821867857 167520098 784642262 140556355 318037406 951896325 156913364 761685433 993529058 851096763 937863718 882202303 813718701 434271749 878426038 354355144 229114739 791584670 527899040 692936453 843255385 907942917 342985294 608002280 264985423 925691764 983862330 645302333 395842702 129502548 372799047 722575249 752265195 432219635 875508169 622908135 844988808 417649170 866226958 940604098 973361890 481426480 846821203 338343637 828088664 752854754 763906273 822843443 493297767 745360829 710689306 530105172 836297659 959420449 962619552 314501006 867819365 719866165 814001800 438090516 932842338 921835364 227336610 988528168 840367382 703878082 817152195 833226205 452049571 879461015 810125203 1872504 351265978 787714152 876492540 948880655 504392059 883958086 605729081 427340434 763509569 825920773 858926466 748833420 263453992 566905917 819979869 878724399 486174633 810483998 745934104 974128521 712586441 143208482 631657299 869334895 482862481 849043191 99979863 265960143 321902180 473892969 897042269 779668789 939775738 738243288 664046646 761224232 450424957 863046930 954033593 697320964 402489576 864841759 505085523 985029255 928587531 466838630 960315976 393135093 396807537 274325245 908650481 782551428 336382754 853292193 406370323 835231023 783237170 369457635 993783933 765673999 25721496 796357296 773091048 914480556 245423895 786209597 413886833 852879640 378177184 958045071 474195760 28444661 746718421 746971484 708235810 935888466 919918577 531722915 973003136 997859273 4026547 798204114 893184247 43596673 748654517 783329739 122681015 23743791 792340624 944731259 712903563 896335360 737020247 15530884 406859392 886145011 856541520 753296419 229561822 437617043 169748961 247629777 831191684 550545577 914086216 737020247 519241678 224199035 425822286 451502082 942603176 854902466 838923690 219381433 234416784 2815196 765525609 500517107 889825498 471612703 177497642 821877245 561597235 755066463 584431240 865231201 377155881 889155618 235862329 920122311 736252045 867160579 759596383 96804013 864476759 759786095 934155977 968105695 740146619 93559871 979185009 974992704 236209041 723478309 819260126 839507349 695636591 440214832 417497246 562536694 741792382 528948084 768375786 310701822 981417160 289957013 733316526 498442820 716669278 763285252 247754630 266243701 908085713 738169573 998748080 649050587 485908896 757288234 158555916 745603203 54632349 838433614 774880063 404971904 778703111 977679452 199517953 623655546 933154574 527013725 526159178 878625502 644156857 817938286 764751638 38919029 894307191 657824049 9903107 98595443 793626495 527354861 414036466 475226320 449495036 158907929 993309563 992422920 894506410 734929821 742386397 261629494 811203401 773475258 976498624 864752025 560501595 903443307 844024330 932553939 732377707 638330159 887805431 804400742 823044457 801203712 631718986 833941738 40461075 748037809 913077315 115595050 839371957 889312123 713142911 950139095 900851808 829570210 621945480 940176907 846405447 862541779 954573453 538396706 364532197 380604516 864911608 808466497 801487998 921337998 948727003 436275323 494278574 432951274 916872379 857271854 842330794 699614441 748453865 138165562 147207040 812998345 912646302 792027948 800763286 714753245 65982040 833961703 124590729 936497700 921866399 272627040 539617408 802949599 138249898 434716605 629067437 799912912 795551697 426324159 519810287 83450443 309948926 931238655 280336328 659460462 264560886 326510398 374896976 737859907 846625200 894050597 383269262 528709567 183923196 681153098 911639136 329217961 849759171 45860991 591689159 732008030 276056666 534400471 346318928 456615795 775800040 332838850 838816994 629160981 766881705 821428110 216758195 118613298 999589935 110530746 928959430 248777368 387795459 54498864 901649055 619955548 752685842 212920855 969596504 874540266 931951119 844202854 882248408 51785368 764152333 113341732 349057842 957557956 963224682 447658523 901905010 997739251 984300248 377779033 937709672 249147060 140308401 7022976 622585375 426470729 949574820 961512206 273540764 995243759 535404974 782687627 901897547 936718836 798569932 486942625 279622035 823896335 882980853 517053253 461479077 824169208 149231185 508952187 755253106 911795082 511152163 760216699 975313206 929078428 751816836 320667907 789464471 989766748 84224048 979214635 705761931 558836873 740578277 585157495 800558207 742012988 268675994 913473626 818085767 901387651 217191096 819714243 474774818 768406754 262666696 17799438 746386624 616019039 849276730 766114031 194861600 787267303 794974107 407765149 982852199 510937197 805278804 361233639 138157514 893190613 998063945 795479712 393008294 154626776 421480471 122291528 951051561 739170501 767963964 481905966 640578067 926006566 661452299 147648055 954844513 310713732 509153344 874137352 868921811 354482451 466492022 887075680 925781010 644522211 524670772 226211599 856868442 768703257 348224322 11200593 834426315 261805597 796250451 178884648 115696577 308418333 688349492 944977297 911828380 822277155 919001332 897003395 876723166 351882138 221639787 896050154 899814150 232817175 966601823 775855501 852191270 183472253 800587880 529765717 523836646 587107818 331885947 879640152 545121402 724496535 971519250 576004183 73609875 946348655 890694408 935251109 842346555 935211375 762833389 353489944 135309711 761768658 223921049 923345721 596418757 294922057 440020747 162967735 774619775 863393974 901679091 116577270 488309806 286973919 301208885 243917014 741283549 670892491 718163495 831086333 940860574 557988107 157834503 438795307 540830492 307420262 748918738 811100468 639226956 86882390 556075674 727497719 865280938 60910140 256364299 652488572 349606761 351854813 756722705 585607660 775340117 761467629 133496731 785757160 583365721 349664141 132364376 547510502 759410466 755504624 896592044 476406095 991146688 949433558 113648170 900702667 896027898 402791056 290936541 206886264 187853638 173977248 757707822 607571527 910076196 59250176 841482153 706737372 861753080 549035280 425677988 902230580 925433666 761026049 841608543 334672280 934781294 695214202 37668334 41514344 949112725 801541909 871217754 894377770 262371598 860912738 958905790 17625251 981661822 967934544 954582283 155640349 774503924 105103548 270870304 878756531 932486367 964783481 989750203 960907819 310099099 559884627 879610272 472455170 872721637 945144604 721013500 769589708 819175054 177641238 988938613 86204633 373065914 396104498 825388715 642753544 464864226 880950494 493481300 308744932 936999852 185373013 286144704 666673824 917151770 436329 774129233 278841763 941840030 279946347 507344744 963565752 976978774 752012027 774377536 99098081 905540476 572484780 975168126 28298798 405063188 846293040 408328169 939283526 149344606 974238077 796307499 260250084 708984261 586474932 743814792 857222206 991033802 919696301 737909048 204028563 927212074 74903192 620955060 856571123 725005664 963077643 699451057 976726854 261386301 536301219 393262763 68358070 183673823 963857368 810728254 864906483 678696185 870228925 739029216 887420259 655784269 991176375 246972705 875491900 434431983 999127244 737020247 329452600 656712709 941129918 544856550 967011310 149489145 286198605 90497516 990362509 828235096 541737597 790586885 200632758 392463481 21316824 393812419 722300053 909149264 93942873 130862994 182927700 190245618 655050622 179729664 662125879 711040899 741462523 880044549 625946307 183099594 788897514 233719603 663377366 537523949 964072808 147359259 466287327 851328318 168822008 857635594 988793612 752338614 81323767 368824078 247155492 173352811 389258533 466913606 679822573 200697170 440703239 961085735 842507663 983031723 20527069 275884883 905582798 726225070 861602511 777243155 941323470 3326092 944179608 802336885 883491750 443236086 987909444 438282440 450086319 989305346 840298555 868964125 410434467 978281049 621244747 841695343 510634153 74968186 197566557 302039259 747996466 659292152 89948117 883619499 75443608 990838201 753071850 853252025 405635463 537750926 808035799 10445196 77569545 816759098 96196030 817139938 777797939 604591021 234495263 330286319 778181719 323988097 499975822 326221254 382844047 824143097 158808479 584761618 806413729 658207269 115614529 41585131 129180946 172484547 478225034 820288414 802422065 210345602 658907039 794054511 666346958 859417996 798629591 958353576 963552769 182391399 787255431 978424274 876220941 841552920 586930428 889256557 792683083 131011063 762940368 776259678 982869817 71426307 348184204 532095470 326089709 61480502 865306311 920221024 108358343 895596313 890882551 889150166 295401157 489979878 844579401 848425644 537625823 512293838 770131474 845504034 347265342 630818068 424151774 914644282 352925496 677096008 709764302 19435364 904786772 161663462 823210186 41363329 751903573 441439156 994441152 157471770 740689839 792848252 345060238 354865474 773339556 389682436 203675474 554725924 31794186 923105669 892414033 943693551 449829131 962314360 44216215 801608440 866398287 833006640 917307090 349768762 862509238 878829850 933639667 927585870 980985150 946804839 691548193 489948942 841739847 68722637 539656645 736289611 331816987 127268726 145143780 197821028 784672336 154251979 744367964 329221363 639425146 180180035 743900841 863965660 742589131 907382473 437791454 102230292 887008120 358461907 953518327 610345065 851828130 50849325 461137818 754361961 595100284 846804991 806960766 320966963 69091236 754936004 882429935 915826736 461292837 781414901 954147181 981006894 115095434 907405527 577799684 842589313 719428044 760302198 475934220 445090703 203598291 755102267 876551656 799543498 827096119 798769548 975003613 299366341 932206234 51602015 475762612 614162264 294265986 939480908 658543934 773379039 246050008 986490615 936951016 813836005 949836698 604988429 549931244 600453822 491551688 960288119 262421339 779043324 817298279 899002549 445525991 579670647 903515176 677850900 992366835 378389087 997255692 114155518 681984092 783508617 745585819 132844069 630875845 937099939 432651031 923795771 110489530 944864980 147941684 787669678 623471101 488298147 816236485 718133351 466640423 790127884 840790766 899552240 622552734 921288445 246767978 678542108 439250793 825026469 5388725 267783415 650523088 719410328 382933890 889772342 865226041 276384986 828386781 758277762 843812569 780706147 202503522 350045898 6423632 523543164 283406760 904349024 221403910 768322333 129006359 958573149 6639565 333081017 140262192 993826228 818314390 975460699 417088143 572475485 991859376 154285927 917880041 934198334 917537942 877018511 963685895 929963556 377467200 964655321 995741243 737525082 490885203 555557130 274126791 891740182 861053534 843764406 517620818 303862140 894123474 951082119 967790378 611533050 795873102 700514930 760521966 755296667 874846748 17506115 97030449 967754779 929736054 967535800 75308172 858088283 518214140 721708481 245047417 967563762 544600504 691462585 171622199 862384892 58367324 553289439 749314214 764760765 785778037 798771330 629548753 862145085 889633536 203776128 142179031 838000393 991422011 339712688 368060022 864514077 295518965 975218016 410808306 136879226 737224602 838309236 714327461 405845385 779217977 598160460 412739218 211736845 275051488 824764841 849778016 207450910 131540445 768069160 74874752 756362113 147178866 357123565 941977015 939993525 355206061 848957016 385757268 628302392 127861433 919434161 767560420 947396473 186996731 435573954 314347797 953696931 32192736 755528788 934973327 787268700 903851118 845964495 144482540 728468656 398707539 554496545 991290905 823799177 760563408 879331781 892288446 626251448 759110755 473974426 632166029 202952088 170938871 528915952 69930570 175558823 694656438 857233564 935380345 604470168 386707171 721407894 879097285 864583924 906155925 256522548 458084793 816453934 917585093 111260996 794595286 456830404 884812990 526114486 652539989 939146513 710419021 791401208 998482229 582463960 725426796 220497655 738601523 867195171 309549719 73380732 864465848 588553556 242677593 60672270 840206749 753324132 864340066 856808540 260664999 34146494 810510278 969871318 811806755 356539202 503396882 759725730 689585442 829256125 879702546 958688273 521007808 811470957 830733211 882668945 146149512 993598952 720842490 524059012 751990996 497986887 124205592 514619227 236311907 912982750 745714739 841013185 276790105 997755171 255288775 536087599 174862721 965396824 950515073 777934364 233768718 906132486 807838308 892371982 375944187 500450631 968425087 893767809 395443559 711208895 820077203 756764146 814796713 26077765 682656923 937385470 747922959 126098396 77418465 95403548 924893730 914945986 800615559 255223043 954297161 825387081 778405365 22267049 924350013 496284061 977194803 779643842 755374519 439082620 915531289 841619084 816015239 669929527 72505927 773062455 963869155 985387930 327913724 990568378 899775717 87096698 11542398 657547635 44026887 17673678 211047293 223325788 360167973 423306004 461729960 947337432 818427237 959458309 500854036 544899971 269768415 538940751 926658766 863971086 52284990 895982759 847055065 48352210 817694020 912424774 947657335 946856101 257314897 181255107 909507708 883489507 181614685 826753171 149059779 867063414 926455403 674832519 822502900 88422824 984988512 986697404 933750688 478992744 932332812 935676309 889751088 803256558 389304977 107999259 731830859 322755533 626208920 808172028 775333551 113781685 790837154 818644592 785625447 966004303 663368648 760788252 778088028 905098088 191866515 497794722 672217682 597046407 780344980 796358363 778045310 192562634 808902469 220438025 919978145 677953231 494581403 942883603 737020247 902478557 981488086 688853434 326504863 57855014 843791578 913002144 951539838 262538867 959186762 546166417 741542186 146601120 282350356 489850401 895592346 489283756 226782486 606018075 906801231 197510765 927550144 874367648 393083686 623201595 471865807 411808050 413026840 565204433 972353069 599300060 804187208 383345651 779919863 255786521 875212962 935987752 799354221 849797598 901093634 740236069 710980481 716481429 955715544 126202158 884559956 927418718 960447908 438608070 839005681 837863023 771424497 567422079 949421195 791814075 389291333 493609360 518714076 859407130 503617212 695462620 190560126 952778331 132973998 505855794 965438375 38584009 595530702 986710602 182285311 41342077 836157562 892236829 887871906 77132851 729852235 202364831 770624525 426907007 828432821 82683514 945955646 859591557 673807443 364290670 505498675 4709625 816092547 611730105 233324955 740635554 627099688 783099457 768553597 88409983 96784680 760421367 768143255 626747244 193898873 787216623 292384533 768156769 837397809 389924577 200669788 877127308 946944312 875067893 103465526 752198316 758637725 823209696 747517465 326338045 824316275 972351731 724621911 839859741 43372984 177620394 894510612 568274130 927212959 914467550 853586558 447177083 111904548 512041823 662397868 770114528 804783638 916575824 789839140 257820803 446706701 495993005 946859007 230127149 346213943 183528236 868949570 833591540 110557590 948896413 70001737 309584725 541133079 686747942 120053412 141279621 809760466 33766973 339709685 909177612 949532250 833354589 133854556 109776756 244141843 977775881 914300583 218491268 845863193 913596840 892091009 82872776 54793754 924012677 609303988 895657916 586913966 59766986 234947591 328296221 948074135 527941787 170234432 403269077 992762306 676320354 987878472 717056458 768633645 185261994 995183975 839118670 877120209 869097209 403055186 100434096 985616204 753205064 642341601 849334138 918625484 319794117 101596234 938321920 789786255 841981764 109785073 782192261 337896459 855805419 970688214 918835031 281819527 590856132 949994875 122137748 162240876 158654816 936469082 947329093 284844511 820611785 320433712 801462503 781378065 537712452 509972099 896640918 952218447 895879980 134405578 831639381 25680297 718620800 496799890 919672308 110353310 608118310 199101241 436873636 864258017 182255258 924566699 803875961 517191772 94666238 304449434 153749590 797461268 562202645 375598695 434786945 122813908 828378856 994798637 145850168 432067033 908345082 926905399 409915461 231179763 417221873 899122062 882391095 8982067 759780757 300920116 570306001 108001678 847075439 880288188 764732764 881095691 656439997 829883831 737020247 287676564 932745853 774590777 337743101 688316020 114891112 835486100 598978168 771469672 137340268 128095459 190826830 513847394 836514672 951018790 555311874 350780975 868163890 524815570 991717045 574525273 85709119 586700772 464341067 359740900 522628931 393602788 349884420 649883996 229940101 578645058 865933929 473660330 165468736 577935595 891931430 786115902 4141044 872505320 439137203 539731774 583056080 806644183 755907913 923424095 589204684 771921449 302613637 798784568 159291488 199267845 838301505 102873640 917962435 70454359 664216728 317675240 95702286 149339253 889357339 109871177 789581085 985159367 975424670 107278731 37385741 937308147 301505107 791141751 399738135 695503158 845180531 25339126 408843219 69742385 666556483 953772389 912821509 379056334 738281941 632668215 314301129 772039413 90874512 347864127 877839368 747275829 949346719 816766531 388954315 381674636 306980817 255911522 818648715 168205590 801323843 740085503 297289233 942697565 531654464 738096849 303686459 822953961 740356108 220523953 659779527 834489308 918538687 779976795 957676736 53472745 125691137 374674508 10498947 66483566 471777446 719984502 931718455 831831633 768141601 916950517 939493230 828241940 420471961 966002227 769918039 837293577 525364025 902963908 897098238 882687161 976679807 422663303 924816599 908281038 798883191 524507454 882116624 811031887 777506411 841548929 907044150 972090903 932350516 742910319 293767746 377156636 877949547 955737594 941555186 524873390 789170406 848517526 792869764 275272509 3216853 436212775 289284805 456151952 909000508 26582247 363278134 633245751 903426819 342923206 491526424 521489238 763789671 54302978 96483340 407533959 969819111 645400337 912143109 982662689 28931024 443413186 758150637 164036196 843247874 918282393 618255856 228735006 997601772 384671965 381488954 817284246 969265969 170061681 230273452 801397631 206956368 453598307 81127276 44207181 784109163 878151679 928143981 836119818 451891801 485150088 95479555 507142780 762341705 808037990 13282793 933345306 611520673 416646238 933870334 689246428 693189737 138604967 226924395 872671351 840398623 685986338 844915664 35447728 110667984 836173148 869616114 938625464 232285594 521242133 749263402 369887571 678972898 612493584 823504199 373959049 455118665 882650651 898421513 109475865 468139364 669497683 768499907 974714126 983482264 794696593 161269297 219438511 163121001 135656767 908256036 905016774 821230554 197661184 115019199 362208947 212820934 421898468 384783013 878945868 632803779 74775016 908166746 901836314 487345717 436044720 98453135 254227541 885871828 601389951 758700044 849922927 820799289 871392481 400359881 976564862 810583704 785917901 933027137 268195105 909991468 970147932 13922089 868450508 874600864 795360797 745077936 540019598 546696082 340550515 473176625 441118943 47498200 860423027 826148381 937510934 244731244 969188727 485098021 490359754 165342363 751127902 544240362 875957146 410671537 871398497 853626387 108000061 740692525 250474209 750048579 624851397 90266288 154837143 807083068 670927792 651145840 129175621 951590318 229727991 974346078 861536578 477554785 271675119 710916017 799766794 753251851 138215944 927278064 978195570 971945712 815569610 486487555 880049798 341579175 593279272 554049092 887529072 775171288 827017591 939273615 904043940 86178267 705818743 788810323 899352859 859867584 105570747 984864150 984248606 755272472 227592544 789167346 926541435 741009637 921123159 914569896 157845800 701762001 874987826 747520871 564542268 942788176 559938122 672264812 917205540 119120040 648950235 562147286 947139508 952819142 779300184 744251071 315818538 14813270 163289316 575164338 907788559 279278637 936644899 874701555 875220910 835855630 782477992 126352778 765392174 816014844 402330902 597514535 964333122 918351408 520250415 897625710 967505209 821301179 911499774 559865785 869180685 451592129 270523191 819352828 203262810 695345817 40467776 243554304 953889704 973721630 477185800 980787926 936321875 323131100 786994948 122338889 981366278 881000870 515171751 786646370 256891074 851357074 649511437 980253324 902513407 861034634 653323327 891510798 548403824 956697632 482235021 318725290 955007678 778742646 753361887 863834365 11683036 428503019 863718255 455304782 44480879 158947990 824249171 941507117 517289148 46836269 769584516 956702679 598042244 957256383 983749427 575169573 737020247 885399982 79938189 827072214 965761469 577388967 803806320 57978136 753928629 990184867 360572085 7105559 753881913 914682249 605117203 201796283 688490018 743696694 439633873 834955253 533419250 937321709 782472409 420801407 911083588 901199466 680768522 853983171 803965195 687811705 335035051 532347142 983237184 130665489 786840408 484033738 942624716 667440417 655892564 940465443 962841113 847760090 946577814 865314135 166147528 782597407 834933698 469475603 563432150 933629937 832785082 167305667 82174809 639900200 114436167 346931103 915340835 975038091 951237456 959377108 336273973 652118145 100225316 173584523 935581578 137419817 755484859 963858572 849787186 318569990 65984654 173755882 959291783 349564952 227511104 184752036 532834047 181860097 249895538 180302028 946081810 203743755 827920788 915383000 815228620 83461667 193453902 902771092 92002104 886958316 378262931 949980968 606786177 362593160 955167650 827175442 361571440 989927096 808026492 471117271 462750934 240327096 354864819 941840748 78416586 873653817 886114586 725099059 717259582 961838152 766401960 67849826 169116856 126450986 889376150 107710025 738098441 919179995 267403018 207299704 765007690 64635399 245313023 410878207 12939930 22764619 353588579 906538160 883972966 780658704 69876744 742797293 748624264 21315493 757434877 717386187 898256345 867786738 357128733 625376975 208613049 606424211 802092613 950650803 943542036 446872413 70409590 302899651 561244128 855461601 146244971 887312298 986035597 490335790 519918029 995276394 759308610 879912202 896684543 899490366 141915911 263027205 70995723 539700148 983868152 916181067 773610465 918716091 54814430 327961827 317170844 938816484 963009824 908352307 103657919 804789815 778220824 989244951 830932858 954175791 617800530 925542850 263692576 773462353 814376233 814711017 840025115 442005981 737920761 964601300 817320563 992920507 802554429 42671081 905839301 701945050 30707553 207037717 68297735 994123683 381868074 771776749 417331314 306971795 15983274 861230762 224619552 337394927 357014229 896933547 562406230 865482422 110499888 758510550 193275773 198405000 232300021 229975365 847772465 186080128 905746006 762334380 795539960 257844144 185862524 400934721 53291545 943661854 191308074 804706857 763607150 296586046 306483482 772808077 619955316 163106570 955072477 45720336 440278289 807400938 934428736 877271822 275555097 150586340 819611305 953142125 636827951 487471562 78229976 812776486 543454921 668222798 391865399 322175656 788468906 357258689 962534547 672630177 412634747 31098760 453177708 752667703 999433903 829283934 286362640 776249161 685347361 6541834 879357676 948681788 590789278 345586160 443024428 323870521 585571344 981310544 421379279 751698876 470712233 929532345 913110075 814789337 948621091 999099314 647919881 822772613 982286935 180128134 753023631 87313175 980593400 863543226 198717533 262267588 564882818 892473583 933565729 439774866 955118845 749387414 443806388 537162413 939059676 355536396 636958819 786454439 463686766 747701811 857846005 920311614 406171655 172997513 400339909 571439947 805740307 793005791 43443527 559615044 242139773 903033735 132770884 342102913 877502963 145751975 792988726 862660631 913912783 771619727 942773859 950661572 41189091 805318504 58356083 968441876 804602017 261740244 873419086 50447147 878759267 92592364 192725091 835992606 622115298 525865831 843269499 574847268 814579948 925277940 62012691 595578922 785459451 561919941 509549117 706654914 874958624 327080983 852242009 171379028 670236861 324270006 870536841 751994101 995124446 299178836 476262896 440542444 866454477 811886235 484379441 948403792 258699949 91577566 880298314 558798709 812296309 545164228 495050064 896327029 94460964 805141994 642231067 963925220 919546842 127331173 769095959 119332679 878937404 638520739 458019073 29720558 759138048 967575346 250834741 339695491 309016336 973074929 891067186 190825200 616198298 991160039 145945730 827451649 841597660 833182716 942655532 742975767 243613823 256284081 849968506 868774370 628501585 779776450 778810175 652260096 741628037 942587419 837192676 508276579 803869705 807013424 813585592 870717594 50137075 78806913 65563665 910201789 372615537 280924249 567167790 347336323 812589094 98926542 761172188 967444474 956895312 944086808 882409493 774290345 743120912 778213673 819370925 985326891 101501733 885392289 422727799 831514900 897677494 890008900 69225486 16048638 21466845 570578208 410007686 947089559 82267667 753019512 730340306 161589427 316898622 827456567 666732402 208035612 682908582 872830118 917795664 221258224 744387603 789551544 538539044 270479614 811825340 303556597 208281696 925534430 934716595 875698714 898943896 983290218 903614792 921260009 27192106 243550373 907219777 286190928 805233866 825190260 373453986 858097712 706924433 226920639 225334080 302012940 26905612 663193989 339156636 721374907 741044724 300481789 245315518 517923883 305516257 780012411 1986738 838647622 231628362 667969066 840730077 901773558 27382270 62992212 837032589 201490724 871570830 436570769 993023870 977317998 528797208 521366752 742807124 470484256 375316788 776753824 555524713 786928200 307305095 258698135 888256728 757790586 878793110 9452789 785936736 762670620 526758871 511586992 740566819 999839419 957491605 835185589 359411189 716522013 327666902 542516488 944225238 178103288 737020247 989857099 827965679 649743356 558527853 13738144 3123130 918519432 882800002 746457337 747779694 881610886 64551421 77384706 353936236 609208507 579749691 369259098 836748697 522782756 847439269 857632224 460457617 599070283 749429991 708305661 235106352 871170465 834053954 864341897 836405770 973046241 950379581 469708825 725470582 781862849 825665916 653216772 844800674 879794453 435631710 744163991 667654325 950453051 325910791 875211955 874144137 969749263 427550826 872412730 846631119 113253967 236625566 732656539 737877183 666605631 30164564 834316138 829280667 367663532 169559258 847949378 392172785 347724815 748026663 29576038 483194780 140974950 783398209 264244438 538379886 549876330 100616456 152936745 73163295 888915397 968253093 975367746 6763600 59401894 898808777 590391665 220905023 786194542 880008645 867222347 867665970 79019611 29548544 234777053 25826135 944163280 180693239 540762060 337027241 763412633 640493916 862419904 194284182 586165745 988180469 857186467 783049088 522584411 744194162 99046852 962371520 682549028 643208299 309973390 621929065 804484641 863402593 740933435 801394517 842564143 781476031 970174070 358933522 830354315 227180590 563528487 794999721 755440108 604866179 781279369 600275752 136140880 715579762 539346417 698018524 701728342 794819092 465499724 943164014 259951616 448772114 197193987 620518876 479727386 21892955 758471171 377900177 309998889 836108285 802237016 103885976 810108489 74839689 996445698 971643237 248008318 27859609 956830022 205041687 876386768 864404992 852460299 489983158 327812551 979313314 590305305 665842244 957113221 830398413 795499707 734358531 991953015 497562482 919441888 108335849 863868555 532436276 798103619 595079017 360905389 193844016 920459774 391874857 202634730 852055690 881909686 764054175 841788240 489704038 872643089 584744738 928485345 569123698 988176573 156436301 946402850 62533086 988240991 857522110 371977651 887026722 781014572 38131576 938675997 573560614 785301716 58741963 445011590 588673851 495093795 858818462 981626894 843777467 905690221 915878658 238097101 943266593 770640258 691387277 985176322 799905810 846744655 809904441 687690194 381800116 399106151 877067607 966052948 499722946 485997923 751605515 798462667 775891708 470568330 891295533 518820075 417935353 823689601 908344017 938599152 790895480 617904812 123072692 882595800 140451395 467244673 895632196 229065070 761842248 764078945 830201965 4675019 975946463 479074030 349138599 451911992 356813478 769946629 941962095 119228622 99335055 395755913 120457307 794325194 937248284 289215400 769697335 149213819 806272587 834529133 829578078 451670949 890771890 771429959 979772306 245274637 186380053 859273428 901629232 578937851 909497824 119581387 655018148 105631045 536588657 362879221 445179333 915599512 146477541 751987578 218184619 477005366 909216725 819910736 463070545 257720325 669790273 912678246 818200963 928344832 907350262 553873442 459357477 743365423 812629275 645912736 182055458 930622572 952216302 626308169 831169753 973712983 972128794 254116938 803608192 823591687 886534498 624895214 868186790 921149425 908760919 973945363 188219555 986162520 361740751 872896061 724975780 648474660 888306839 509751218 894949047 768393964 857502072 785866498 904283927 624276161 617997615 478220440 783058695 751616880 826308101 390791899 653319451 799912590 874096778 474139701 915145578 752100094 575222680 633326517 318129295 395120475 98489879 752654092 175901894 138916881 895474286 873761667 569386090 60427643 817237033 521180440 782848141 101688994 456855149 786324804 386462290 560348987 319821520 56644402 911691071 857105933 936422382 832241604 982390639 879039891 879193016 864781471 764303298 969155557 699263420 874369259 202619463 770038586 935575328 46010371 937231735 151950756 494933934 994225691 847067094 639265043 374945264 192772400 61051843 873428724 30621274 160017910 905741608 497394533 123464933 337877310 937674421 53987235 957081090 566247622 738737128 135690527 461961780 435869373 518619704 357583487 689674066 279050642 494730912 834111814 797709375 57324197 272674670 894706316 866306921 742145463 528218129 852144270 849293804 899145514 678084756 920423603 887166558 521826800 181353313 343379149 930173878 375937906 832772965 977192855 230389896 123999935 979950394 811475435 218239130 665081333 366922414 968763535 889821698 193660904 649839950 27293503 787710843 286738395 449579455 240118678 864756827 296645792 789545144 464679911 278968363 61522174 81779542 826037735 476008889 978201291 291073948 138467928 773299134 820428723 683846930 962068138 791118204 834249757 614496468 510224488 767994563 1214022 137045281 276035787 831694963 997500531 760116130 944778241 844347090 452189891 961165628 819386458 37201772 538227154 190722328 882994325 656861390 753323354 852002009 292394874 368745837 604683453 356906458 321565988 830869962 553829832 505139358 280217793 743463018 467688507 330926903 153872938 751852794 898563538 857444189 474516360 525518542 204973054 342723887 170725863 843340882 919086099 687413255 649960894 452836736 117384291 446414094 780404648 161601763 875454394 851470973 791503833 450721686 704638105 96031960 943816324 576362357 859647594 895143582 386969236 954544328 782909274 528969626 548406737 259487286 917396345 879438765 149273890 486241905 353233307 836278340 850460178 524100707 552465096 939433436 778132677 862461087 839427399 945948227 641699334 975060406 395014885 315793374 322034689 973553469 838763688 871343941 215437014 293651125 231918882 261108099 973859778 469265623 260309166 864706495 658167333 946180174 174299185 826883727 952962587 959272818 126845380 756299360 797594502 922722785 336890257 869766375 774585367 738525593 478388783 424173591 499124953 326588061 750904095 865784511 335631411 822136886 862830610 582751837 519834100 568328033 581646294 915327426 200741634 865146321 508620017 596794843 865583865 795637502 585057423 186732941 406534214 931947173 836205407 404210642 997906275 204436898 754412911 853204634 895175582 852783969 887801348 171074175 705180105 829218769 769250697 770197255 830881119 581653554 174851033 543267617 223758299 450396657 548779090 824761166 751956364 764112404 944322313 278454093 748820154 996635468 733422572 803041355 930648271 598719513 942740202 870644664 949316991 438744727 680784565 164002385 436277094 7788889 348424659 615154013 988343053 114311908 707650259 890129657 828963852 82904830 454541367 183759179 802183139 675088202 741089418 722223841 772250100 92947613 666215035 192887449 926938268 34032718 375623310 920573996 844771132 909820183 442060234 886854542 921863143 399339052 719547979 561012647 898354299 901394957 798396772 556367177 817504498 912802114 934628832 478061272 60182162 835438181 274734489 970691895 490816274 313035712 144199442 988108024 964246177 857497333 533154145 792081705 544334342 619309473 947610463 116316763 908861190 860003585 998710923 867592044 918991336 201204579 69710187 394931340 956549058 847102020 590116251 737578556 839647044 913936016 940467065 824568396 939023783 780469376 172769214 188050105 449076440 925971813 721214448 750696852 384848433 12586225 774262214 810120784 982006596 295667978 61564905 800109174 164595902 925125577 872639655 729035511 653250402 847445662 932898587 769688190 580928230 118041353 720058701 299921251 777767455 150574115 220599605 922318641 883279305 255669659 438779617 584836182 867846231 628778896 442182817 870323275 524078345 869068387 825828181 724268735 980904864 294551076 768669312 526955011 539223791 966226066 204029747 368448389 569448101 492517698 486526639 837385897 707194194 697286846 514770225 827699300 99752374 32097006 969367801 77092569 50117885 931631479 148734845 378491732 807258467 28365469 912521293 977425243 916666303 835898512 811693142 714616359 556791513 657320083 892201088 846756593 378430582 486786991 180085110 895020005 883419808 715108732 589491146 844692375 750208464 569194870 300515904 738927768 903983153 385280046 353481809 318270563 127237008 845592422 895114096 814852746 21657465 5144916 285649318 342127960 837983406 836336118 781191179 718942868 877990237 790759574 908833280 398236580 863754738 852553153 901134897 993939412 456376008 280836027 772459063 761825522 864995080 909646731 876580090 478972138 767975558 760021893 378463427 289381143 75485283 912958962 761612993 805324705 702619922 948920025 754132129 893264797 694241842 899315321 451164828 290386478 897199510 968812812 821724408 90384215 963760971 890820851 593890145 875890705 951048377 192856781 756608363 810202488 731616962 752341454 599625570 802393928 614009177 958811565 189517283 616693649 997529261 260179748 718793128 927397437 843322142 775559128 863389229 888264516 816288462 586558131 26976939 325899466 378632349 198538255 931732539 703496298 832650292 910533688 857456951 855401346 757653086 468789852 303772105 96600995 354895861 934916919 556841099 311009755 993153552 667806406 786040021 384760219 503002730 888033306 809560660 78884129 968949783 773538649 63746393 675240916 515177532 16176643 69092265 785190622 312986221 194811294 537007452 514695440 857129840 706400402 859968275 802679622 782270729 923132535 979593324 539946740 408521468 751809676 974196954 832669050 669815838 947963438 402183760 580589147 132477988 996057300 920318908 407657059 874975010 501352561 879130614 446755001 38269611 994981694 964545420 899557555 54291551 332512428 740027435 110491084 705985715 12003979 298753284 981059154 140754352 80692922 94330453 333026208 388199163 914407938 869604590 407197946 275277865 182346739 199006651 924819943 887320243 620680617 762684818 408311801 758977320 957285817 863819158 642929446 850061572 394058774 861084234 949141036 766470221 974232059 130542525 650638010 543302990 305362289 817241005 929840880 373270696 986570242 863164387 895594581 748805972 780795947 921117741 60204091 888532083 850479628 952877409 934481661 982695935 533230919 839681677 781495115 294349852 259962515 680733899 556213353 939542722 807772982 213446950 164325880 722982695 261001800 821288957 77201177 913550766 747264336 807776642 762501282 539694165 126357155 997960400 232626075 539412643 737020247 889796495 657299172 428491818 466768878 8208613 912395771 604193198 987669639 484377577 829076329 326689843 408763861 983311111 584341305 19524546 903019185 579235290 828334017 486529945 251701137 296689777 804731451 587820375 224795556 43277310 418426214 526914546 739368063 837782600 521659408 852234581 944600758 998740191 425049993 848998120 526392474 824533414 805524047 974506899 924266985 241068770 851792862 914991608 196416512 386231865 789123330 918773576 30166851 960716367 460455462 313457399 858439034 764230317 546914510 101400115 367705362 955698992 818586370 519395461 973249157 894516351 789188725 509140578 897345083 737020247 738758695 780508635 743523585 972648343 921992008 520767113 912221473 812545696 864586817 973328485 838873381 418164789 928715227 961018156 846565492 947663827 190662021 564429646 785558484 887259681 756207163 957424303 943311914 789651543 386818175 589075778 962940555 33888526 857494728 831902325 830708903 475886757 406040549 978301109 576890083 125697644 912953766 753857121 789747665 330906450 811854915 119376488 887159879 467693133 189526029 937088596 746629757 995038199 858712702 732994970 850660240 570920034 737543716 890866163 471480440 872894202 592926390 201808301 475146446 969243818 966300747 407758745 275979776 990231272 465324755 304582409 960905198 815118133 815975484 868028018 307552320 626775179 216057507 262748846 881745294 633764530 120195586 769583187 266765283 750091061 670603591 932596223 833011413 446352704 652690946 585081437 383571909 739550691 406958612 737020247 267185201 805759831 314408085 850938395 852851208 16319582 760364673 502453178 955368650 136240007 382574507 114174878 427654845 741395808 966894185 487005114 815932154 858264499 324293837 847177948 467747224 720961565 932774575 294011709 790926196 88652566 339459093 929315081 861330085 325348693 649337042 531356167 195784256 845601740 651216895 823267074 646956825 323205232 997215251 76919990 236088882 464554110 888417203 820565320 803750801 830710245 828945190 850697063 901674574 805015304 637034146 280079558 788533672 285719747 252179655 339630564 234892383 930440332 819775406 10490350 813753111 607940957 944194934 741928168 788560305 769928926 903144070 697416228 547312047 899595934 790293702 375425148 646712567 205221549 958183998 321579975 248058744 93356352 74291985 741922878 986105462 269294431 467907694 741323435 925263052 924068240 738264754 152006309 779367882 972552842 391083756 925039507 623998659 876167121 262154262 131804295 376416360 140960513 787026270 315922198 183888905 182077956 394920696 984540191 344713850 913605442 33722194 623337244 923521627 769322547 952760180 5004865 343407434 800133944 492323053 424728283 232594076 794540702 849330064 491387489 57635610 179080867 963190265 803543932 179030156 661324449 30066157 944986682 264458409 310829927 241006190 233928069 955382115 409633701 894766594 116173387 545065914 810452728 200564295 188351091 737435229 99433019 739858412 929208851 940907120 477717510 695527133 605128339 389347085 843848410 97737765 442640472 907023179 72648938 451829042 717602030 480030279 485726196 678427280 986281349 292244213 600870564 857976468 452566364 68359272 195682358 953658249 792950441 831708808 755262119 260043808 185182435 993165764 780501847 785708900 899870437 737748006 983074283 10986699 733090206 840241890 991024486 843019118 425777267 775258729 198794664 800034942 849552526 825210577 849392276 170372114 995674243 836735119 854547785 596631286 948049383 66621894 625960156 262691244 963775268 973440100 991615715 776858720 995209257 427792630 852910476 179905869 688484236 430472413 425537356 594664841 183900578 943621867 700290999 368003162 959904707 233387115 199576800 821742529 198518991 100125421 874940686 659698318 515399665 688876424 985031650 866361570 734739329 915051947 295155700 783431949 391923817 561603227 672944573 729560238 59234820 376731353 824065181 867355070 785064440 350585160 601383450 781354655 833153741 809552229 948614269 972049757 861589339 49282068 887348428 800192989 999033966 506261312 249880327 957445779 561383514 194403630 624681692 700876715 761867590 903482939 978045162 862860457 648056072 821033434 235373990 442279983 531979937 888421465 853117126 340361727 654173597 214048363 804008381 760141487 852418500 925887841 737078961 298086992 758213327 842590605 787914387 156210146 916811769 954521398 448798037 701672230 980959257 330703364 919193130 935552109 864200224 937318832 881720406 748075254 789236167 770752592 366378499 529945618 997083613 939397623 875478407 92145506 225291569 309811973 869855145 955626782 839070940 75771572 724489308 785768873 852924249 157240670 798348277 943693689 946513171 762960382 816222750 498611380 308907768 24887767 875088082 987209069 957257283 184557640 807040883 205176480 783989237 836280735 857886904 923157191 379118761 783201373 960739074 111051302 991192384 440515291 919525839 685858843 135452126 379555445 29099561 750519505 852126475 921673541 766276749 902668985 953922498 661643508 777020565 795307043 944834818 634008206 340158360 778222904 922792269 806340191 91946316 345996104 125630065 394572599 877963345 966735265 124174467 425287194 798138148 786312635 191912060 208767526 670512125 911099972 31038389 312809580 911077656 934762243 900793978 900435310 644945179 129110860 685947374 950943113 532425952 208754732 829543342 649611439 90238927 742877906 846278960 105039836 22140723 647671922 741515116 951312974 191903870 679642075 251617084 986932860 614914161 529034227 909838757 388134990 131409847 675567950 854112067 932266621 436202375 169319430 993474479 994206310 299988441 713154733 156160469 348057072 385611852 822436453 407876910 38885371 820359548 460010673 998675155 647843116 913300962 998907388 781026139 110111630 876105108 924804028 993924760 662771160 857861509 88223061 9766580 244464864 359801409 996499893 421337590 726001074 654039714 632097819 388290582 204213912 961345458 844215849 592015107 188315796 745053499 412464987 940348554 982566683 952433555 938786699 814746621 813961187 977123313 895876570 978987534 848659948 599212746 50236109 350213652 292900969 701243475 516730832 990279335 604817582 343443052 815383725 868943257 214698162 755280479 795911250 313303035 372598643 883322034 979413576 782503973 582702122 992608833 790042265 510353206 157016077 390509347 956198274 852915091 232601241 283788925 171345784 900988843 81690352 601732419 832927042 531782574 233280063 382671189 785957608 782685153 454765579 437490781 403897449 970819596 36220878 906979726 615549690 24120925 822015506 425557737 889532467 241328495 483046755 640789387 993467027 790024409 223948349 855677276 75512310 967734854 170694455 289339425 173411622 231080334 913231076 713189474 796553906 778761299 998658136 830824700 185786633 194588697 143316133 747224641 762605503 880188744 771920377 483804659 768617343 953297784 282385638 136954730 780976082 708222583 592637120 731144231 179373416 841324604 226004282 741255842 737613106 252688836 813386137 771508643 402335058 872956845 810695666 990370503 33905928 824130865 17828833 14789070 697519268 974711646 361699237 775549899 822634811 113355280 765651849 832423582 934736531 521074254 647157330 845449030 100034480 773391451 777044016 45791897 786609808 899748454 997599856 345959851 193854792 929755819 779375258 896682080 478846962 135700385 519005935 518696437 288917352 944401787 754874662 182974602 813299399 370514664 712662047 734753639 373082826 743954189 774471195 777888896 564144650 670537829 342171009 889298798 895796754 522501540 488374898 874127786 795220860 852874255 25854618 593426230 729994046 336411392 650106481 968208355 876296887 822168697 66824430 623862410 107158759 763635933 265556909 781798279 885548571 845378608 590411253 948975039 977505831 622557008 835803914 914821209 812735944 779023423 948144007 830266315 458997741 255622806 285791716 899046669 925462247 944444353 28697073 184742809 996599195 901389136 478197143 425833235 415355862 770552528 361293474 108150209 867242242 267233104 802544218 180184546 893700926 340530452 506722244 885615000 988894912 876491459 877891985 978299268 576038932 672436068 928694489 847723075 7994642 558126232 940500013 970018030 164881755 343983919 877815619 786849255 893833791 593229632 918344584 949021542 492391542 986361241 838306561 846125764 152870692 943013196 386921916 144610738 968549742 736032829 777430990 887681978 825260661 866443830 398264195 86186665 326905311 706118715 584114997 902645691 275405771 464344582 952017974 993519472 947292545 744689369 519907119 193212533 487372039 156483996 609685966 974103997 418833536 788127234 569659823 982451802 884203491 540099267 134225047 867858441 129172287 516097281 383593773 428071364 806925190 355573100 578452691 981665787 588104872 806665856 851478669 130672209 195341089 934031396 490828162 171003804 901076921 206561220 696005216 976136063 150696973 320522166 885660079 475225246 932583928 971058138 956673409 317000294 883709086 335598231 335243941 875428665 866540372 743048961 748532473 855693127 649885442 399805396 108567387 849016647 943889328 787277829 775531149 391424622 384543810 666304714 776749707 967653363 886133904 887163224 739701397 116059292 991489112 819329018 929278919 436478519 897452613 268385802 464735257 145990213 239793481 112359069 368463740 699311298 717147106 844637041 11465973 488860752 931008144 793976775 767707236 902067148 225578512 921176615 170288690 734545557 765083611 57895511 950134126 755317669 749330642 909056424 921056372 939025795 967698080 286854434 764340864 932068379 765630737 840438074 765469195 262406878 898555666 381599619 381145814 322702890 169946083 587586543 932881030 929966227 997953414 234308681 866914968 288582996 995919100 471936975 837240388 529009679 569824118 994688735 676192917 845751462 710508800 895656586 865616828 569362612 564628091 945196351 855142714 987694488 295210800 475564341 936252759 999661736 189574154 887704069 128792336 834965677 618711232 920941938 888115817 756271246 84161965 629054044 866306519 447372782 400429800 886389625 600118263 981724786 888836640 954853277 164248798 846439366 455199731 974427923 738734594 916459175 994428416 707790885 472077853 980814642 898133944 667073270 306900308 861631073 928792868 159166643 967745591 863161328 858901397 115463558 976827655 977873710 954849265 847731558 966089874 977236599 766865036 868387437 772784102 841582753 859784038 768879184 791058629 515173799 817810044 955953128 858279386 226978454 986642692 800835844 883863059 783727318 921749433 871504492 943978067 545268926 778164309 990266800 220734661 568463648 595018502 49368629 384153103 919268109 985890967 311157044 474635412 371384017 381056501 458571493 480621242 208345981 596398938 23207188 601550269 803386248 270567016 797550210 802192214 186649614 882438578 983611201 287195201 352966393 87092184 927494966 955013062 896481216 785288131 741770613 83948278 300805762 880602543 949917413 456698581 745958151 420076846 907666911 866006056 662221965 761521783 157240623 755477433 935781770 882318524 471628659 57676219 936466884 832092669 422367427 894833004 955682587 1103321 670944371 182750122 901768472 192441702 681494540 998730557 279412101 147092408 360442417 890159836 354967819 188307594 248193361 853002446 322908795 949008539 836713540 158115204 885221178 884220022 883463059 710301459 836929234 970654376 369696859 872621398 911211574 919470428 726030636 529519715 673212865 496701920 536016402 578095123 490557403 727681703 332035573 816945731 861696115 940531905 161385846 676837943 330408767 214807886 413515756 911817591 235324042 997810389 951206151 183245671 367606629 991735322 613722827 580705966 570548225 306218682 391033588 227384326 848140558 807140675 318990426 840965196 956453649 797980679 994842128 775332858 984972191 650606632 957125551 2980911 686535992 804243451 552692676 781203914 777587767 791469306 284095148 986260960 433523848 693578102 593018021 890777293 201325720 232151651 42313053 869343065 806481110 732495259 997208798 437550904 797410876 889490908 755036072 904718076 874283230 964812557 71427919 844111003 763980921 768855060 309431692 751626948 836599208 19090411 163343710 944988259 393069734 144008725 407697307 944122714 924720592 105551952 499455601 783640907 883193173 939740106 988596366 982164578 637546138 739835822 586936181 58744929 867885539 155285987 350900476 361331406 635989604 88609233 125986907 913481070 580144188 244777776 540716854 584004547 279193944 413528251 33218875 836433102 767264821 305551110 621825219 500280968 83650437 132120201 934453507 817115732 961995426 945974078 491000976 868155566 407496250 670198698 853952461 768613207 737020247 862648784 749817127 632627445 358808616 959251271 864967010 651950095 537224919 902625418 992332432 740866775 725774651 976941552 120893961 968458850 846654837 923894654 82116949 961237194 933861893 531787668 759645432 16520078 821657086 281169465 713712256 701011910 823529579 974645820 945012419 984865093 73024551 180856632 991971113 68861762 344662305 59603120 222403404 973305871 929276604 878842044 300688252 335335053 979636097 740268663 246047956 177157326 119250227 185564458 122072761 887889293 876344984 430735260 305657180 854328344 827361187 366418303 866791000 470598009 231234254 335613560 706725148 145561517 708807728 743168696 869285927 100265604 880917739 572066815 91356607 593447443 354665809 650575596 275543686 956036218 737020247 67299515 646673617 15077105 932602098 625475071 251924275 812252358 816837699 146981909 493236313 846685071 948031428 710461808 433933462 876651110 950948052 25132230 264166098 881004945 235038801 220394095 803816753 988068323 388018039 777174009 26669906 997505502 245842934 776871059 19405464 177437544 228965090 33681380 510916062 393308630 573851502 930462977 234715414 130054365 89311975 974208380 554292974 869286346 932691993 879523093 345328669 214284476 442950345 785823118 755083875 49294546 495686708 809753957 987139929 778003478 282864368 367126655 890629709 905645022 878776690 17092724 851490003 618041816 578486760 254194846 281002352 762557830 143744284 837410346 988301123 750960388 759036988 316285501 541806677 451547063 861875965 756675139 366272261 532342269 956988862 954382740 448152889 864214088 872311690 52878592 130087888 802253120 520485615 765155161 944505536 867872159 409584255 752761820 941556291 980491373 345271284 586920925 554643720 795099256 797598292 808022056 136155709 850007491 396831338 32970903 151391869 926149977 625617381 797233227 738025713 545613749 523938405 740890170 657449550 230952248 357399089 828170836 835748586 305483224 878005990 919886802 380244425 752320780 161394956 855718767 12503729 103463916 675542662 737951860 857382187 793716374 742365671 274073103 138424061 899766183 814368508 993494858 753645767 929593536 761003036 554889742 81743972 848406322 586063494 544238111 654149335 425025512 728073262 705694410 439486743 596317474 995011840 421272576 774715720 928694836 950228568 125227778 744317251 662240514 997418895 896412503 158954860 763107344 554552382 72921533 436603805 847985768 173512968 416286713 130494996 505219500 18873723 607516317 281994080 70510985 772856869 907280095 760919399 256676002 394047089 238390481 221455258 823416742 996353895 295315839 332927502 202411430 447431528 826317378 683700587 420679840 173985105 633646839 895500671 880825415 179433048 505377779 665590216 732585920 894805595 839097036 514264921 842914309 821519803 882841037 33485808 836552567 860562117 581683301 320731796 537981427 811120745 347218304 806928585 773698733 967343160 322832854 738824874 410141966 950585977 976561182 6069695 597279629 856014044 893470683 46777398 987742811 708400474 996956871 746298360 415278638 833907001 941652069 713490197 897508755 819302076 347479667 338703409 878109465 257219510 767839715 828175797 702303796 789181839 837207326 342384016 736691402 811352767 924569309 114444001 114740255 666486030 883218020 603124308 865880771 313891250 916806589 485474650 932446755 774601940 649763461 985802001 502093065 328908534 340241088 12753968 708443304 626832617 494479941 240643885 117516896 653587890 799873175 986457618 782893540 737020247 344304287 158784295 186057676 325646361 655886588 780772278 953256271 188904532 953195079 501712165 389910435 538559401 182554807 872808374 17072730 942812642 742006536 253521882 247784700 519718971 707795094 68107682 805905308 210619150 851408530 717913714 881884602 188525255 860101979 50276424 343113193 971248951 22748738 664324140 64993192 439525609 956104178 889804943 947071832 206134718 421433999 740312968 873683528 894014993 821268815 661355233 741905144 737381116 627999923 325084594 911821124 540509235 970004806 796081932 705832276 841715752 964669526 885766153 951650296 324805672 887075977 299231404 876947565 791898663 747867470 759494924 798445550 860264026 401713328 979645882 759111313 819865569 351355937 697857767 412108454 246631011 834652619 791306010 774221389 644562440 947074457 604656476 588654156 637143724 104439266 260142994 218408775 431507886 919403691 343458033 656864646 361165329 644220373 866446780 927980448 344500071 465709463 978466219 661396660 99720242 970633949 869226789 854392983 837254974 908505791 82266855 761985422 169421065 860805117 501682136 22634375 781465121 130853829 259386613 997373261 59446191 922728330 339454611 133968191 804211292 509341005 69785525 84937586 796707052 685536325 65218468 936393938 251217476 397484584 891854971 397243274 517329584 993596038 947517125 705206204 738187534 159080033 129723573 781594283 768293634 972625465 238220023 53037911 959468478 780541521 990558190 933249480 961752053 948112394 755803668 738484344 940880777 963732871 430497953 201893830 338066157 143787764 359290466 772115910 886639329 904096266 477893819 616784354 814701533 362804454 658181574 711263352 986604463 205713552 980306056 989201566 675325768 156938453 878788668 843545675 270243345 664292142 110210369 421949691 266694099 952458361 834004516 741179669 158105357 568318042 832925786 731526296 712961951 655096755 253089355 758854229 23472141 924297500 937355563 988497197 572426277 813508011 281101143 310398182 668404665 979783800 769270725 822047807 548811674 254705038 987709151 772789481 942368283 582535393 940742556 635789351 210710697 86308946 278945326 564037299 764393792 564835012 102687259 224947089 239885038 281476073 811910648 554521762 223410079 996825593 329880774 848382177 823351556 80673285 716931282 238442656 92817259 582683495 758264251 582791272 788952211 917082657 285228772 790688165 475190666 559791922 710018861 951281653 83635603 649731153 973153984 613718136 795618986 598307016 490716794 730485850 767176655 941855294 23266223 122056400 872294831 748038514 968735093 960078403 859240536 450224313 595447079 975984068 936021269 519617245 908894869 920735620 351445519 71392009 215486150 97191107 250976382 780887956 592959233 541050149 335743486 918032505 852628213 745705112 606007138 913176165 815976314 882437550 956039730 201857571 743799973 765918233 907895411 915486011 929677291 629953867 653660808 744386780 909524865 975156935 5959009 732009725 131961336 523988991 850439676 631223620 655389765 943090657 771142307 767729237 773765728 777883862 16054119 831599579 796834691 933156781 963165555 750761133 843296798 970624638 861101294 764123883 812885787 131696777 817347607 15198947 652321836 969278036 984531049 755439934 186162593 792462690 795176633 440462059 328299097 978545210 975183336 5960134 800592781 299180785 609667162 700985062 932751011 915687861 363991656 812539247 786914685 502916519 854050699 881413428 729571673 86215212 996190881 384538 453803794 873886369 845104147 887721442 901594445 610269927 678094163 304709486 972288647 952172944 873822120 523194290 737020247 947079165 190558022 820569015 53356923 668433970 774176631 204659283 741210334 469411338 917756877 879191083 410068723 904283540 893125127 887087858 780493685 67998729 951678190 778342182 332064234 311226744 279197746 215206286 810880695 342090166 101744139 987525751 495758995 559291589 740421881 771169826 962737251 963662620 808870850 324083136 543761377 208551055 784160373 926712681 996383885 410299873 723537765 909244120 406151691 817793924 878713962 744760364 742781454 330588069 871188561 503685444 992521497 327369692 591178809 982557233 391800679 898889201 358198874 888084930 593061104 843903986 999113079 974325476 491153670 233266830 413794383 159914006 857360905 50178025 860719546 729262900 809651642 987892459 725509852 777715670 87639326 761307548 977860976 773684249 889055728 373273580 98859827 893718777 910580086 999410964 800470347 893858719 6323091 135151506 184958459 265885620 676729458 988889435 971613147 774308251 396724480 463567532 833267825 623389369 973049380 222325552 962173270 393325457 921785924 785777889 851707958 833071004 949070922 916588698 498368516 872743092 801845440 918514811 745992162 801474651 352008665 922546861 614766634 923648746 679701937 345360337 675025236 395799110 13094464 738101929 629901475 783797857 5762769 826303452 533130140 795310932 409811434 128313372 217266927 661673326 776370765 774498148 886185021 145819889 902565415 161613577 916124008 948971204 962600420 855265252 940156594 844941384 294636804 894660043 925319111 337971872 739969167 578368361 660264550 311318392 435018274 775929038 435130362 352464441 765499803 922344604 383738709 570620755 651010355 924706301 874767284 894760911 948526865 166398523 521342030 274374900 880278820 343032221 8466495 872659758 792730803 182764114 485653533 304264185 888702731 205855850 331161421 832128772 902205153 889634685 759960919 622174212 297988655 986510483 823522833 750916218 752946252 286920072 363046760 834568445 841305965 975637888 752168456 439796885 373781204 935717476 134515343 746723431 638494448 924923252 441969032 638602813 757041516 834852374 817675958 901427992 862213452 623151142 569655388 423696760 867845979 886994194 888860865 457000951 582888507 890970182 765781850 526496884 595641130 982750684 159109157 183188080 899177264 767112146 884224540 983605071 497534812 774624863 355070477 938072628 934341556 30317974 798726636 801370541 997064448 406169815 305532921 737422788 313427978 960519143 342680961 975959695 823544623 495521638 809966183 508723224 922170993 917124974 329505334 886015778 798961070 807987247 409783199 822072883 778854211 919466369 481027137 507033928 966833510 231671996 751003179 48845094 915959849 904182432 939609320 288663610 214781200 750120235 277088604 224979641 807778687 305575616 79166214 887295432 703468761 131656023 595555502 938352168 351401621 490956228 219554764 946093404 533676959 708480779 786270518 977437086 154714323 870553235 945013668 681224990 707319817 805338053 309094365 892847806 951395302 939187086 838022737 53862024 361045245 638069586 922954762 333696924 742394757 792378534 787664923 100330234 66968929 938779433 976643614 977523147 766253033 916004330 76872238 492850414 177693045 951068321 89100310 447091114 542056545 803147862 913078584 776385423 652569049 456031155 950933873 865064742 199000095 173854325 274693608 795309076 589704675 999232243 752397605 799568240 763550080 310485234 952382779 532524293 862368914 952715406 710715622 191367557 392286853 412167202 401159731 434636025 585934938 915031517 922595492 149475006 189064351 960966338 829916051 925461450 168256681 985212908 174995744 586965177 396391434 215637038 828439589 706839559 154592581 20820323 841019207 943667285 751531409 745370716 449437627 117329145 992302081 868566778 869665787 896821527 917114422 872839269 317562080 432868530 253655314 879133875 797457722 936560420 669474863 747595343 599176485 198272842 294414745 892000736 206813140 893807481 858152036 267881806 693119499 41334789 144333628 854003082 277954242 835238308 852973322 852320714 520604637 409282669 429609234 836451651 943704380 168130411 122908006 683962296 869364985 907337517 954534016 176079762 994906288 795783346 851422187 958605483 960077438 905146737 467893853 772778764 244681165 964535419 584820174 694056347 813301443 971607046 52122510 518723422 994808675 833912110 879760250 187724032 754927089 975947006 993903105 205133100 620383982 771229105 929346292 833382250 221116140 774250028 807067829 139093707 586394183 788651774 805254720 953778162 333940667 320276845 828521872 638901186 878732515 534918546 529744046 380989519 51631151 905494356 909453795 143173908 246705522 844752760 959741849 881683434 805643123 97085002 222874051 870321660 786106535 557853769 861274317 856131962 796559409 798085465 538183141 416545699 205067918 322268223 942859056 637559952 314158592 956082980 679324078 853764844 240724116 903173595 807509597 96580805 389033560 951092762 872871627 605625943 961144434 839200240 887551514 15875737 957237684 339509900 889048730 603413056 762059002 6526694 784154851 815437648 887503360 780101473 616880387 424677643 131872524 418926348 512338265 97329000 250696207 262222419 663186754 262543906 398695646 441998491 591146803 399713765 864291971 685165207 509642383 962325906 775030783 8532462 864195334 815657590 972805753 476106310 145197483 963172055 62559081 937117484 179959854 135616686 373147886 895624884 879668228 617321963 24607917 749687162 407554512 691780717 911094294 469747228 943944548 931201340 849779455 64732554 845404089 404455679 123676316 941951831 873128776 510319230 665124268 881001180 938600827 923876459 378994567 362040371 307303408 26167640 714342512 243136361 816014411 908731428 993932868 952591266 372518556 762495409 898365396 482744774 502469104 551283086 253821408 940862966 912318498 874823155 796238660 650034717 105020519 357113580 945872538 977048215 469109959 624774734 174650615 856289091 763556016 605305481 406012465 425650851 865675640 257115695 626406224 816701238 453397524 609387333 540137366 950872015 336700955 48939308 587969134 826724623 150821384 961986943 695644195 821449017 874786497 864749757 248468696 28805843 89181900 830352234 649940866 351296856 868222838 673908045 912926837 866859912 525305559 977243541 775125609 946696553 857690626 953184913 707546224 617843241 961081764 878006070 34039164 910681788 887165727 873801751 353327090 851318442 868874869 946331161 622073735 529817138 196669664 377325404 766698279 56879318 326860582 872031999 715722025 777349671 978500228 963861803 809380535 291190232 733389888 635207191 870429076 813015412 470071745 71721875 348223754 460405775 941797803 942890374 869862493 519622045 1366917 408587978 744133469 175423204 881103367 40942513 168825358 828196260 455639473 764572607 664037555 123375711 872985934 765185614 663574886 957100223 973085774 810575928 299543295 836753419 351016583 56629124 842878406 481820677 240524217 442224968 988101391 918851239 297920378 21551941 916491041 785991079 668209033 340168356 988527008 144747585 766444945 373469302 569458880 199744025 364812995 641658248 407009494 840538366 869744997 823216951 383713235 426365825 773089594 842743647 487804959 352438103 957570559 591787564 11380597 146616048 421660293 103435656 862285914 163881571 773085170 797041500 13921705 737893753 676731014 498735908 950148464 340198798 346924272 698378731 219122878 840490196 729447400 309923952 847715979 438825848 15803267 894229764 998206216 239875746 159238793 765316926 925020497 920773318 483363639 364919291 395194212 737020247 990443325 231261635 668030157 206769445 987813176 256781880 150280861 941702740 747203910 228958407 612881016 525440876 578235478 998812773 38828608 774380384 81581985 764789453 452101670 617995145 780132980 994065823 844824256 28685232 79668767 417626549 504949340 450123246 639073540 860055952 889410898 124775301 603482439 958501315 899153303 898822517 169050635 780531838 928902023 14619733 284562978 691344691 101253780 775324996 882460788 794478574 958995179 986359561 448742439 337718742 108041857 349662744 677469876 833707877 56275054 833238701 752791896 372408290 793941708 771568662 683719413 913765107 157409368 762059842 921266629 26149826 357810537 971619886 93576071 25959522 112937002 290817979 874128676 992474071 865217838 744789740 624515800 43909678 398887709 970766122 905851597 822589307 693297687 903807714 480235672 782896901 212078935 867370781 968889274 879243433 96693480 845994145 990644480 132663194 606676572 864638364 671030661 962349358 763265647 767550738 953746583 839713180 926053901 129591588 79129479 890835820 174119 721344594 407416378 914811313 740893649 783915493 343984644 904558117 175773439 418203819 732362652 44704514 99139172 124139195 843658303 808415415 775861305 637486634 33131838 282100406 890669323 895207658 877974385 762486845 643740402 58964523 859520120 131477920 612069553 911608553 809474857 718727778 830112212 953133715 907406669 698858682 634599032 961984510 56551401 380735477 254734176 933401891 960128259 98916291 387956220 618026383 659685136 890636607 3859168 940338512 841108945 911471852 934228649 826389327 627403263 188775793 833327372 881394793 645050533 708167175 907393238 345426438 285685355 257630493 911785440 819409546 924694168 973619492 255704407 982864003 506659499 230224748 466472667 105916543 280602022 938131759 850052750 268339890 683380337 444349223 500525408 805126161 695069245 663031629 673685126 892451577 573062667 829854104 634998511 818423610 800998645 731766008 984315850 361380417 653300776 958793067 660150084 344176383 54926623 478632794 719610200 394859846 836620445 94333313 894038141 982716586 440302403 120664675 66178750 995577722 260799096 748178883 415679637 832054831 796627100 828827928 238447714 768982087 170586960 563831313 426963023 937509046 957870182 291864574 253760355 354811070 983095742 335819434 727362342 961408869 363240882 811492258 566776390 192124119 766562112 826746979 337799792 747957978 153150430 15688892 672878404 473919659 305217157 710311661 297817109 853801453 90980965 787986801 741072135 221888420 685921821 827960291 7033502 915191489 121960459 824257511 957361736 692646636 838105476 922165611 873928248 115119113 756051339 720252018 19660595 781623503 77849027 983551159 759645940 526213300 706975794 254690426 935473736 759993137 978738072 843320242 848527831 832958558 793772337 660372689 802287661 775548184 830519153 97629805 863215360 767533765 757227048 477086456 940644707 870432064 825849362 635535690 466101101 825642281 397793307 863645645 243474881 715889525 181564441 682601502 352141085 746977806 921690505 328627087 491166635 87869119 775426693 928494754 65893242 106272652 727176848 371670583 474895852 920964423 166253161 973025265 782189585 756501045 873075731 392503194 318909533 909789503 370164986 826657494 801622631 384159640 95594133 962257644 519107780 559499101 541291401 678191640 235098516 496717189 535324418 905919194 921090875 486893361 730517160 783991982 847843709 840483588 913631633 692262239 131692367 927853415 334151125 887386933 147708521 912274750 893135817 673326155 419931636 824486410 244207967 499767312 889808962 378486481 774330095 539111144 342880416 766532034 127628046 802921415 362663161 878776234 781298380 814185278 700183965 553785822 563526651 58784396 537430107 596242155 967825722 814721467 916506850 830257904 433615280 919984654 580770805 683963912 901579602 264592036 330719840 810121782 711928876 858468892 792708399 967957434 26023483 506815142 752587777 527527250 814696382 883444747 815112120 698977124 958797710 874032160 956238944 715957537 40308324 971188870 808844191 532543085 605614537 799806089 130731259 708023243 880566971 105108905 355856178 932905162 869530888 807295250 993371860 846182486 731671758 560549699 975433369 878899836 905693865 868758379 930993556 194454698 427099894 409445788 861000834 872637621 474653838 976595136 669575991 299777604 230905549 980362753 279061306 72743738 300327758 984107832 834744049 886721195 910531862 805835543 416750706 814457621 32528310 305704547 336395288 402428541 794589682 82947441 928572245 829773540 834093292 118583283 720304954 772988211 255692724 22527669 759035355 859634977 724623878 60702768 794995748 891421002 846598205 724126314 838690236 385755882 142178921 477719653 281819312 987348497 289088999 352867053 408257809 777197937 808957163 932978666 875985823 540802160 213157710 895341150 983791189 256299558 993991721 618662635 452195060 944566592 69196104 68619865 335601113 992404370 761044324 974114073 593617660 42757941 713889506 549545543 984175261 868767233 861108967 507498950 931694901 144932771 813846460 933135548 194222293 719206344 907416898 556179854 996035170 796764697 745873082 527557598 969827133 289791284 586359454 737020247 908811678 682045603 783828531 952864989 147171214 697355434 814441542 952196233 682249631 760610530 550445581 945043400 459034624 845524672 832739016 985214399 388187204 464585191 932048459 157706935 813295303 58842818 898733805 603536988 112915859 392661130 248153877 986355990 772901446 901948507 847857983 607562044 755117836 413785936 848880407 137010745 492437088 896106056 364298802 834693520 917510656 758617874 268049484 523791703 383165118 661721460 738737888 837115199 523631090 993398998 559861489 558155749 277434144 908381724 817349194 375387851 822989755 867537622 593706357 913095768 737020247 934337354 968210982 362144329 898167224 880243497 961695621 886675848 806313427 552360552 906062409 815799733 978416273 923994474 462563204 103827095 443978013 712690209 212011135 978880356 378520970 948330090 928989411 686087655 450000070 249660942 963421286 375854191 233221564 249044056 984954204 962373164 775360591 179798799 407814378 178411020 960759588 886719310 985198262 280469246 109886292 748029198 936416143 879404914 804343384 347684129 361379224 179997138 800874116 325607464 864942111 186744717 631595375 454953481 889889052 859436165 89218237 843205453 140927665 795219544 260466684 930685733 749002107 25768153 208463571 174506554 622759269 787800184 165515537 410982975 420143535 61764827 915017004 940657584 567801880 120324833 933538248 963570444 569795056 869482757 878885355 721779688 236602207 856519575 842202530 205292297 794162132 170457022 257777363 219556823 692631723 3028342 971505456 408291574 758434019 405402445 816527379 755138645 855382138 981415608 980149227 801216805 938476102 868110266 204333966 624761427 746404546 863554508 927881013 866227105 701519732 661856018 489500428 879525034 44910695 835359092 856652251 631610975 64252514 965338047 742197897 324072162 139134467 792506014 328520371 658434917 846542150 502410554 774976009 744561927 536275284 75725184 90803868 579329982 478440073 130868334 211963775 888891284 354997689 758833466 901107380 169643934 130223559 231194076 859083703 479520456 681724650 640707428 250401000 843374074 826663533 983095867 584605979 543256340 842140761 810138013 200777130 927910459 776312773 882155593 924058839 124926871 194441514 744779362 308137218 548241809 918879461 478667523 17418759 753178012 163261757 605836535 223394642 910936356 357251432 517556056 522246688 377385391 860552013 507497701 795506511 634654459 839251205 934189114 588510606 693597715 902059340 246031840 32416574 845993778 984436581 423820595 219244320 455548655 951653222 578375564 974827729 753875671 646690858 668137602 516958682 190206320 281320989 883692865 82306692 778320764 15269816 721434002 741154845 386791000 949397003 854952057 776996980 976993745 912474748 666921926 785260329 225290323 834681722 68244489 970922205 861241893 388123370 921622438 917813037 123516267 872269999 235528739 852927974 816236988 224928190 500522872 947250281 650471533 953485602 767952767 800140914 132454787 815982060 549523231 46077029 842094117 669308776 943191293 449411226 740669074 116605972 862055233 476455054 919960214 477855398 533101167 792865187 106502648 854180240 576133030 692033205 961269335 657567967 890566991 162245534 961476076 793095954 906330670 674356013 309820196 765971457 563471472 194238599 910272342 795962978 156913839 494606028 166843913 861581416 546479100 984933925 206995884 499090715 806571359 418262073 806126665 842860964 641975147 675511250 257673093 595143826 241766592 417148277 403650037 614221693 331015590 766472623 154776548 883590609 601061515 666596638 518964982 851526714 672720567 597320362 770180160 929369015 896699222 932142088 832366549 904518738 795737900 897382626 138125462 144015503 541641200 882436274 942789193 836663485 336376762 507779775 135023229 163995503 330289398 965119243 261097304 198394607 132928314 812537380 936233430 105774459 871217289 826636882 744894785 516311135 385243269 807034695 955103462 775086134 862035382 143621223 779494568 159518803 867703938 637347463 913471375 73588748 762773698 986906368 279076959 953344001 965078863 979462725 934196113 482585316 473129565 895552596 851520944 341930060 496861423 301729776 976612851 629463985 898589563 914180278 314908326 459081705 860019586 946764715 74408004 856232786 829925698 164065069 737064206 856611646 691335639 630495920 685072464 55380228 750707068 199305286 951852420 873140816 864175067 732938233 502416031 260197823 999921118 790366027 920953678 206511237 901896315 911939894 748426338 170829223 944351495 932608402 780277222 901156055 889496568 926861045 917867782 921165393 331828274 149052806 917352100 973051797 356104636 478694912 958820153 782458482 960667088 49591315 875895220 754646381 359784490 241845561 851922279 96277666 970497937 162193630 796485273 945087803 866142574 794989425 883133291 818929968 205565158 825581098 848471545 955633398 501282606 597898851 726664664 874655061 948711619 769974184 388285105 650985548 995835927 945389513 997028397 220917791 860273536 291348697 389257156 920152564 733588203 647122419 301537264 184094177 400269524 884255154 639883921 971097588 881977859 317352975 969874092 239304842 682523500 809528030 447924416 670487025 939263518 919979847 569724472 518920961 872780590 66206263 938613950 132521379 633382083 372125519 983927956 157918170 233146320 636485920 843573276 695859470 810704156 102909841 753366570 805192747 964791944 213768962 707123285 980311250 909016375 668174017 2462899 768077025 343469746 730748034 826843671 683781547 158211699 14533936 619354351 836603619 562573220 406409171 780392867 965530966 802632006 754687679 609933588 570692828 443947720 433888727 918481925 775419442 927399017 798904288 953236514 713656274 988290706 693751979 566527768 881378965 753934576 780039893 852734347 962343089 675907443 884423944 976809326 200844964 999499700 213838808 560045940 976011692 7216604 756449843 659415352 606333004 828745191 267882332 952018801 988998935 945553909 777870145 846583029 191836882 113604539 455121698 603152557 997411546 967960706 737854947 32439485 750381577 963070830 756586796 846047268 952514783 723363197 665380151 805282943 833544062 526663080 109461323 810975953 859751504 992655439 40267352 683722944 97235264 143580374 900884051 734951906 606429026 407270674 871332711 197648312 180020049 719738937 700909035 928184353 472091149 738087012 392781325 963807513 737020247 986065818 911759651 827425924 829393309 957545709 538399038 374292800 753256970 299226027 313626598 907384579 158862327 685830157 688264425 372199128 418392489 749772807 788134581 208282436 892706116 900655374 19943794 984627005 879329707 885875918 358762844 872339428 559113489 493303520 789887900 836092885 824968604 802902614 199724910 93625774 721270214 14498425 915118725 917108524 803023255 621381933 70157957 828780872 815726026 709566509 920098661 981273314 484394927 187595432 809560598 841903336 757967162 904911092 626709246 687922992 232872761 300347102 150989878 856842531 388973572 712621390 897825815 304606942 455297760 939293424 875948406 742525788 935534126 656236938 243036385 958202822 142765028 931443720 949967719 202133587 802999760 679390425 759423491 843996976 586435410 585914895 968403602 328718707 878722324 733703997 518862187 177262034 698586230 837077441 353200058 748650084 368553526 590394720 765630622 255054148 755842270 830718718 220596618 898883961 375970015 817373469 282946495 335665297 632423333 622499835 23812488 804254236 937585773 829267072 897208923 928320958 19792507 85445469 918142736 318298463 254430224 738296293 956055478 302185112 489084113 891995548 968166336 838169124 129224956 223695880 88711935 783326774 39619366 355399414 941353288 912114752 765398437 622745843 930694662 427232127 932607842 302950021 262145959 201122810 654651382 22693048 746586758 524260894 77767560 797641641 974985649 925156569 550651940 148146952 262238230 926810133 233401547 20839081 844878169 523529431 307183479 976834005 833410254 740216978 752489027 612919595 481294275 892292239 930574980 833173335 824556949 776850096 886467181 784876967 852396733 550896712 519127845 53488814 986347940 592804294 27866228 771381499 331521803 844276719 800791935 777383672 46874414 775517296 551284220 816550127 768947353 962616065 938212512 540397284 943158139 778570810 756430924 25774147 737020247 579012334 898784017 912251118 336416052 663656380 186357491 78455083 504355754 957481842 790122815 57942544 215840620 433013945 157238990 697608287 669298707 72338552 397575821 69825902 695266494 752175185 65369566 38237466 822683605 948012102 879104715 753126516 858727169 855124507 850543624 745924095 529368 939757019 580092925 817031662 236060591 967046342 810374552 498401805 805680522 137695493 950572698 125193807 202990962 769685827 98485591 892110453 971866644 939192150 415262524 418576491 794018459 619522889 766474877 739470210 979048943 617854536 915587174 146799154 568715841 503921341 749837758 662734453 960039850 351347042 896612084 739499834 347899418 907646355 408945903 739578950 999773029 125762729 396579300 236256305 887381755 510743590 759551757 921631436 107167051 973861830 14160849 211199080 614131412 419665158 255597566 149269375 854466283 792872626 737020247 766254228 485010563 120672654 867574221 900891387 423994242 766574611 398844114 883440594 17481211 482649286 895947589 827871301 734242609 866838345 720443250 752133220 823325132 976633605 368617290 765517140 421314800 809403586 336648397 654610585 108758035 86446797 347323062 864454436 971815793 229875287 924074194 230197681 809443130 655729675 775644356 753484986 971347372 748443341 614311371 762184989 420649299 754122791 33169076 896837557 248686616 238044635 66340148 927129393 728816836 954689405 817570029 749616302 408348391 639267193 922040149 570833130 500176322 456151869 548429311 820267739 621313956 750568286 886712341 268156670 800077996 760598488 325456540 750471796 407295600 981620905 853840389 206887652 897345227 557484944 948321979 683437583 424925772 703430241 774696946 811019431 211756135 168512503 210301545 706763429 957602512 994760982 743674215 424223099 951173876 866312437 896400140 804359057 103533204 859765943 891821120 758048497 345637945 112770555 819256024 878328655 568028835 681358201 37177088 380878976 302091828 745919134 361152740 939157454 400079041 845160635 241437606 136487277 757577620 599053555 434189993 919002412 816923730 810263275 676901297 655825934 737020247 313778838 755176257 296538775 594072980 237115860 672732005 274612319 468421282 48730064 831956906 929341492 961732784 888169392 347828672 165248143 748154321 999916081 295015522 738024227 514231618 996531132 763575947 778862257 739339735 465707270 941843273 908157381 313199482 295572259 892395833 487591299 813694688 950805014 892582035 289233467 209830186 686568457 687822298 575062369 780269304 774310159 903387197 909096942 987260724 237845090 687151889 831234462 456683478 249397991 571595891 652697799 361485461 900453570 826290309 551102307 435752177 970381316 460527260 148861292 732474517 988632574 840507100 695595974 988577639 45426384 905333136 126415845 212735978 619052791 23002029 797768776 903538896 360108538 859843042 846306622 849158188 991922470 673848478 759756296 202504734 317194861 690201306 351102428 779337935 368361943 578117122 930478013 19244765 896348350 725117979 697565451 66265727 787229764 76892604 978294851 58874335 828804008 878447199 889268988 692595612 750293910 784756348 783433444 874990003 606149279 828356742 514545569 841826543 137996708 820598210 527055058 331782475 830197116 536677135 853169678 361615009 798728573 125712639 145727312 928408544 921045676 374408067 797610190 741791862 974482676 430270379 877514468 188721974 807910266 578230203 35230108 946697423 498106894 839653468 236401907 825907267 45718855 397708271 913556288 756171310 826312983 586731582 994440935 847421425 433636516 905513989 21336724 541128375 920433110 929672481 810508593 643396653 361375987 18191243 864391066 706586097 797280121 946583851 363354681 921188789 879667592 77420515 485107872 46955684 996105386 908154278 296683787 54295486 930495046 947459323 60945453 734840005 41721653 812764517 837881709 815889439 185833954 444486403 913445866 797406565 593052419 575041927 212054230 159485703 698787449 543414306 351789174 256898200 663778503 629047658 728429491 676780948 695356253 947002613 923715470 961561439 970029781 727904845 487943677 759457372 189079426 896578295 251061016 179449173 864659753 322372464 12385982 12070274 480559018 837323053 609253152 758824666 774543189 739550054 78677880 53134584 144999123 885317827 666617581 981695742 760076286 759289842 476762527 838069573 137948125 876966875 695330810 551489738 584918221 994268156 785978750 744265663 748375661 954172102 186418771 413770383 823977445 957135373 821382506 972465812 81701701 11406779 379430004 890866408 741965976 518435550 362641147 939838619 794687421 867027310 505660617 673230517 507461483 6760645 825451765 480246539 150514757 391042737 872492307 771394446 714032775 624727703 925196454 70859849 850707977 942325872 496152054 470109679 340417855 570863343 478662373 887924842 125207685 465856061 896663639 800938474 932103759 846975751 926636532 971517790 977540656 476975570 742974790 450037339 638870936 152422904 878544317 468810038 814772073 734809755 790832475 601996808 483099856 773442361 747455596 633254029 65384489 525126007 989831444 880611956 946681758 658069570 757965964 911307256 971359684 332532247 678362750 863586752 940031549 836547322 636017050 798538435 931667571 485167443 438101675 934431799 67245753 788404135 187147362 874153640 789282564 865134931 180773452 806301262 801941543 953381722 914518195 736506227 171251776 552109809 980687816 769406742 903278300 579049805 949019969 46551910 701622577 884728700 950818321 430833795 36336316 249161636 789218034 811405050 742172670 947699285 900200166 415509778 922870491 767734217 939691714 358198341 32957264 745948626 117119099 246995027 734692583 858381943 994701469 842131921 801247883 74201052 976067511 921370753 295702221 312646466 987192048 791338318 802461334 863756399 904133871 836828105 592253307 893300273 594083798 328716090 870964863 951642093 973516984 108323869 156200350 65857164 380505111 927824393 249412758 909580958 239221914 254952192 509892327 805578637 862018610 853646743 38016466 760643350 987463891 906301749 709360257 984149185 759709968 385278173 783916885 380318135 7818002 903001114 975403019 805683327 192672712 657296034 628485577 966225060 299401012 824863784 932477401 710910129 346402286 371098260 964533294 929816480 822246189 300986504 745796105 927888142 979478023 912203169 492576791 194049331 816445536 878353955 311767876 757817850 497856474 976976497 377987088 782387270 814948248 899973984 826043658 864225401 162532988 942273217 960957937 727309809 87830329 493082981 668009571 229670388 964001669 494982071 551086322 985943978 744735526 509259118 280945859 936134143 488900825 826118928 948784437 195479328 893766066 126021219 980288554 512915738 397162410 286370371 645298820 823265775 278379566 858405076 305352230 607178446 826072928 891736618 880261093 757558636 993843787 937684155 913321369 309446428 747863798 118291138 747138600 725427592 437027910 118509968 574200553 863709606 236027627 217956416 629473701 877329566 430566818 804553232 847994491 772263242 958641863 629646542 768986218 24335702 743293476 834573423 546476350 427391778 672640021 972370486 951680179 785425747 912097946 436122181 839160820 914434073 515592749 714458491 409590670 217729541 904933147 951142010 317478597 949659919 801474691 966464755 535697346 501377509 621958541 486877652 87630923 451963451 478580891 436829629 853999012 270055223 233340783 999775629 479957382 254934014 304636024 390532739 558581893 838446656 816806141 854755219 997141576 967825161 80982674 171625426 959611224 159358073 926168039 207449062 208854102 209002662 332704032 963795565 848812386 282619252 966601124 854153656 302187828 257086461 920571003 878612035 530875995 472448689 989603410 889090262 796432409 676481830 346567877 775283259 73392600 276566829 747501669 195485586 768973301 486820606 243233628 679429487 764148424 967855349 805769729 166861836 770818737 815925185 507018331 829562866 641055851 174978310 384180539 891042217 778828478 281969337 964136795 347612261 214057119 144787265 295040939 4974764 790155293 644240606 109737763 622762175 35590460 889659047 872243997 408643275 887606038 901013900 833799955 796242264 710990546 598422767 855828773 563500550 945627630 842769464 805465875 987114149 878203012 888384190 641486612 897515619 958293101 923678523 235934396 806028266 729577351 87697925 563260317 984598384 22673188 825953628 113493495 71680409 22572665 674093845 49952904 982253383 859760268 770209067 41955 744570423 842686254 900042442 195184001 539904197 492968646 20429588 445184292 756725880 751091561 471888281 330689791 903544601 199868527 190399746 88169486 923059470 819185920 861302655 682557421 15576239 812175672 135312373 147269770 701946519 824217013 248444841 596301504 559838583 624499128 126862996 920741911 738258853 144977857 798137343 195034383 489301724 73219966 985046442 753971872 35885906 880592988 611655329 163566143 840211589 715553730 173474844 879867741 763297955 778852547 843291333 248485733 803524032 353104192 756714587 976049257 928403413 934108991 754305295 115889800 146333 244586819 877084459 113629824 280990050 978592981 248564474 910267088 986234517 941866512 485567235 675484855 784616816 20353648 996351981 612488527 881420668 562802098 11569596 987183455 394703060 831488306 977203797 339472234 501188062 538765724 801589365 937684935 762486282 833465967 753813661 900045032 347772524 719329476 981226062 123995869 432623228 438741233 910998421 672617152 744677591 403808895 64418497 206090027 96719198 167834219 913108951 814085451 781947240 868096241 208209423 701832881 215639091 303511091 358544386 167101206 134668391 219671329 910589597 365038518 936107956 330935606 137429943 176040275 934917893 839077461 438703072 837990028 999387536 28620784 962201587 271897609 997223007 785188957 98666707 24242128 967130737 40980386 776378444 256891427 164400611 831124393 737157284 920634632 73961460 631514112 922682407 134144462 352488337 334755734 535668526 863806818 673416038 997878957 225961764 976237583 656587232 292341694 964182048 36973056 915220449 59356247 846797601 88814078 774343165 441560427 593314707 785827600 836231790 438025774 993699716 172868527 40522420 695939121 325017458 737020247 506910980 495879345 808743234 861318862 751491505 851997443 437751186 402623949 853800441 573203532 551583707 955573036 985309190 344678015 468292449 942419137 962543937 494130550 828784808 478450863 450842427 157633071 291417231 775979349 885850628 352175069 211796951 954026237 738370111 791182166 966693286 723667719 776712300 963747690 71050361 610875681 966221713 610063944 936350494 160822057 948185831 910299214 896912561 322519161 999766147 787928317 700530519 192292684 869756618 288735563 125750136 964348310 47417514 868501206 476453490 137901706 918508869 478070632 535880462 828515368 225157480 438476457 119746224 217919251 77375201 888551183 745402660 846035517 637748325 492751046 309850302 294700819 616840288 127882966 737020247 964833722 706421209 867728584 954511585 725455162 883051578 463528397 923455006 822723913 214513058 678746748 966485585 109781735 51811532 863705866 747554665 807312492 435899255 325633561 863859242 595241170 770663291 981043392 746595090 333976691 786574266 306160487 59152509 857131422 975167300 252965591 528069562 747410759 909358909 760052361 964025849 658067657 753315481 607018726 175561245 756165064 295094271 797745739 318153135 293173311 756277439 848511712 31138590 284314025 744442096 832810499 141444247 822949057 506362735 933927059 404409531 774138457 981968071 780711573 780035558 926075956 490779871 899080794 808429264 868860438 903160637 8953203 998642604 498627464 393338808 700293738 216326405 940137765 652059139 415450307 885378343 416031689 382884444 890699618 71223476 356224574 371391618 862273759 700883995 866033984 353827844 900955548 479381112 754133851 828804701 784657934 252433896 547670739 947286235 721523925 723718793 639344981 825356681 815692679 207518396 46490050 812554988 844379562 260365204 818538053 803517805 983438699 981145914 672830486 870472219 839984985 13185382 891446825 760601750 922050475 899404861 750678062 773751986 637979275 643854830 818105048 627608770 957382589 231855147 986213634 898023982 997582412 748312391 986981308 890073687 360418805 505080616 767476593 764215995 15550546 528649785 133890711 86096189 515172981 757736992 27624052 836349421 294097892 359775415 792575054 993760571 973390837 942274319 772564731 218789931 543073375 979261946 656102774 759568523 266115979 954739662 34537433 808459306 792027550 848575422 523462195 936755067 528580017 331591797 744863288 954414368 837645317 915797160 134488848 869303432 364788751 297516521 303569648 537971037 920138171 921569759 955937033 965279745 378502828 958117340 716088753 123721667 767046269 435705157 674748158 318931670 647469972 602359855 407235053 889131632 485853616 142962198 433291158 924570190 288552390 860214659 402080355 452803014 535584749 321931466 855264932 105204698 861278092 753614168 868165323 176480063 462888789 852585303 856968921 827913749 750605122 892305120 140223488 777094715 882255133 953842157 163183493 970139416 888809527 46628629 239161347 134213901 808992563 436958225 332969373 499779562 947474481 494599294 150255422 172148450 459374444 818016024 878215091 589819688 967899897 720001939 197693794 703078966 147455205 800741755 493221299 549422726 30305656 179061499 862838992 994224262 955758636 619636810 664386539 872392985 820108238 145416612 901076234 538098571 902069737 961171407 967347526 504925471 208308265 652204614 813900315 813637042 215621838 890934123 241580636 153305638 304510412 737020247 38836053 711728814 945008955 460468998 795347905 815383855 335816568 392593325 167689340 752494691 235059433 45663865 167500419 898084251 612267026 843482693 161938645 762657484 827694481 922205218 975543915 816984867 309532538 33095623 751008673 749862825 206906884 759705767 380153136 86584951 804149157 291267978 844823951 321435952 110850481 772981888 49467929 92626830 759275539 899349199 986982837 989427415 531663608 796812124 431266076 575181681 352168515 863380263 385625493 759399716 807720043 333060954 786967977 749743545 911768383 375545139 856746872 894790317 814347836 325480845 868647869 809231864 936537729 218742323 174508763 858915462 439604481 764108051 418950850 755791744 274415057 958822793 425239609 765585399 955459074 666499058 606547762 894546282 779650761 815281601 833587880 798054571 914473427 634695257 788765475 505676140 577602489 71789673 924660696 898141960 705863624 889663274 158857856 768131140 210368639 399399603 899764541 933250710 487906493 776406211 306219447 790080613 29366372 746008420 756345010 535517177 187292100 98740701 153869361 925276167 306369807 994794711 855475864 805924295 667283868 762375061 787018308 759904098 651359893 890050988 143878023 790216560 324638486 514495635 554499023 328923476 634142467 554170006 827948163 127014454 853354293 7684494 848390451 798845287 501225125 889616825 562900654 798665191 558201908 108905139 932109578 863681361 998084426 295634058 886789342 415765975 813164238 203445985 862016187 821711840 436783569 819434 831186654 55650651 204492716 51613800 166032031 892472340 775728764 832365368 972972350 751527209 837877640 236993056 910003733 668524653 476481041 893332246 593089996 737829392 25795944 243225390 996232188 730665028 877211144 15159067 871942294 298915445 340429507 35550016 785101488 815586027 424054473 809700149 951341283 334344518 847065389 916037911 815365489 794426508 768332060 27274878 220986170 840279877 372060962 49405127 11277628 167082288 976858273 842653774 813527059 356730792 820744145 939963467 966061927 421239477 411941621 739069611 307841267 699057522 928479590 777839968 915399012 491447820 947476877 229081369 460651462 95852933 621913477 239653177 507524196 73219884 680810227 174273956 361513495 888193926 851761966 829378277 418984247 808067127 606151931 353051854 189627986 908094868 16111758 970040014 924289339 854099552 525042219 583898799 130444330 115153721 911368544 531313305 762916918 132939324 31757465 977445775 114251159 469453964 964344721 666665879 359086432 453419443 789426066 683772788 899014741 228095838 987406316 166191347 997033666 581614437 25028472 913983859 203326800 856149674 775404771 912949559 951084054 718975590 732373016 204233391 237032720 213155550 755131996 958644269 491271612 410094301 121709316 183309162 44131344 938111888 614054122 790579188 887146243 765693499 624985140 668118890 968598181 668564021 958073698 795080232 962122261 768774631 847641208 926522443 769688750 395367749 677764325 56369176 902498326 907291980 518960295 73346800 920402461 508567072 795135949 834604777 784440326 901652897 539493549 982412363 172191579 633291683 915213519 385112953 128635589 875352853 954761914 98107381 134467388 956417980 569427879 821404917 737020247 826160740 340102534 992665283 717020863 871551118 799846102 879340042 131718742 700647375 989707956 701689201 485301631 576023805 936683045 39668684 443287394 967706226 395194164 484150612 758075941 803992714 939853615 680938806 270312695 887176137 531565671 766497104 843226743 789654011 332472548 918364224 565652582 436911410 764084512 14436141 914789806 859730066 320192498 847207895 320315384 46592962 735577376 659838474 720559382 944758847 752405604 611669722 259363596 153052823 690865405 763669825 723362786 420111258 835485201 782627046 980441254 942715943 878543254 230107921 298372266 76563945 778567922 940338574 812472721 867554754 532533056 928698360 798150930 895449556 676810548 386537397 953468154 745821954 888994149 793975225 952559087 741782399 968734612 624699868 100173867 190533666 727409871 981917861 736134224 956057636 500398020 864788133 524182032 966808420 715201073 856857015 586521871 758481155 920582791 786084914 917344203 858062426 306160284 998187725 336627582 958537515 444928950 950815609 993937067 749368806 430398043 875505332 930936063 330386222 440497513 412174542 896355601 739279004 297758445 900572536 985268760 594343547 462211808 153395927 967618780 85954821 77968173 900592473 846146276 468714507 68221578 675283033 816802340 628197101 854998643 743654987 926504858 328621849 825521114 834616583 965863222 485811627 233286678 10818733 790002479 973575231 857081805 371763077 226087921 272358596 740597541 218312835 462483182 231069811 818414619 821519059 370480842 219501915 792703088 606270367 239764000 750835369 604298229 749625727 763762248 516916317 903707172 248145560 982449083 796401357 885442426 810599028 894279714 392809337 900480412 744041653 140126782 820757255 361350490 900468531 952317980 748547977 394203691 963698354 688051980 894274698 197668345 266547858 156427100 218530164 351790583 838503061 999134354 930271784 931869626 443502660 817324645 775132630 8460650 859825778 789929277 767076456 584564678 42725808 410019846 560867130 783696119 52177497 463859114 931916298 750058465 324849140 588001511 758568506 792472020 866051884 434347447 772110497 975545230 849771048 106221562 353631737 70151035 829506252 910663725 967890069 322461344 864170848 625836800 891788570 865636699 851398758 965483073 940290084 345620465 447573789 579849465 906504868 857636857 113890100 598196492 754819112 921799047 877394709 242505658 203196361 856166085 745446040 934239291 820397846 984156767 923434924 917004275 994693552 958502500 394868358 445653973 90066140 623088182 846849454 592248656 207921516 366354594 37776155 950924841 654174624 738401347 489188149 968298685 827314410 178571548 250042155 104832154 413756710 843931102 727363007 580838519 308671564 226621385 39888259 494370544 294219366 508479883 854617224 367639316 329787237 833694632 265576350 990525746 846385173 395417788 527698571 794920386 909215 844783260 585878007 289266184 414154844 855693849 941645078 962500626 842545387 513874673 203412390 708470715 810332751 920153824 892047998 835914784 919614214 677855908 911668313 756817294 975746124 887433844 963825070 109777519 711263352 701806234 451850895 85896194 767617448 575213816 151231569 468727328 811989858 949270461 665704957 790015169 638664717 735623198 753090841 642474192 852135856 581143470 931935171 767222518 845629968 725924278 877070150 811384968 175884704 130839931 742321011 718804306 961586726 875621913 931000303 322115951 944793058 526851219 137980703 922776895 165253683 165492303 859735816 230408158 890247927 956185865 474826454 737573152 699656906 21079523 336349529 914011140 659936014 831225441 631597827 65187895 673156957 162479622 680867471 598024401 840300444 206369670 294100948 184066412 561277038 703388700 892479468 791231028 790103818 287321350 917172941 478173245 837978889 804419544 80900505 716443199 603014215 575439728 520121169 679764918 909964218 961783858 749257880 114700458 550737743 596459277 71657936 817096162 971242347 767338292 876469564 558115402 829272332 278625060 999944620 76401474 2521453 594112747 11817222 965417892 128660660 976818761 106667504 770716332 94001105 567109560 525176868 921452145 941463515 987383374 686181683 949570176 915189316 806628009 878903465 641599614 946935400 807735993 474781907 794381714 365181812 686372750 423861588 911156651 526696684 41503168 435947720 929740324 153980071 809805687 843322227 165002808 945609166 499484082 155447985 46698352 237982067 975244346 912408329 259566853 386234461 397341704 99198674 586048951 960473877 904972536 533483767 954081749 833356061 859304789 559337829 490586787 191839356 123375096 768755488 782686561 863238261 977256539 796108638 963225391 362463796 750515201 936543897 835460488 87570845 343110216 783655882 745193093 638992077 800762755 737559309 916540373 177902083 98736541 362585223 279255224 907915523 76963588 701621338 780785681 306090348 356400876 157182446 3427607 972872685 159909760 716702076 664918853 511494747 557206687 556022753 938607700 735449260 965021890 781181341 78865304 229583840 981655232 941218815 972389448 785913371 925929553 208878263 840653075 101080759 282585764 956849755 789647869 267978122 591613308 754521374 990516525 834505165 938835105 650177185 89138427 735445690 986931848 172455611 765022634 530033086 842796470 936764342 995025173 749817783 366884503 282941022 713596042 801652813 344248338 34635029 621112271 484848115 824244559 172651455 539135399 155924760 926002873 731832736 583470188 406188298 192826792 753884044 786239984 798543340 263688143 227512800 791923610 741773722 886962051 733522982 42174449 363540934 750762015 763058695 430582569 902243522 327524791 830120815 564751959 459990416 874432123 976297205 603588995 721745989 726279534 768142844 467423711 844658842 773812168 737680000 918429441 587803678 882679025 286523123 918398114 779927331 345434405 732123336 281880485 515225545 728532868 845638408 209088264 389810357 872497091 963328841 586859684 153006132 908177832 836136589 650715833 956400259 829745540 879157868 351243371 834395829 459002881 379508230 825603736 957709948 805213177 892139340 958654309 914045655 744729134 677770284 551963373 372428191 744132256 990042757 477021041 435542044 890637327 742819582 682182127 902604535 816428637 656171829 901321930 834941285 904561752 934221008 544290999 863199302 800375907 195948774 379669342 751389476 79405729 630839272 852885152 147173888 103079959 595338323 783861179 837578249 349507135 123414472 393916826 998849393 110402602 160636752 963986474 871476945 452368700 915020938 82322174 827195658 854703045 981142497 140699799 952168011 951156429 398786289 822459463 197782748 125334052 335580602 704862292 905241461 17890508 850809917 920175363 877019250 181974521 812340165 271116816 666120673 48201235 628624641 825971369 72641061 294305470 246058936 407525874 897063235 690010857 763153317 977525254 935048986 795862866 13924635 42572724 836415465 132405079 501197271 311694541 349981370 938041107 365370936 406825122 955323910 7127304 893408305 588625604 951582722 346406121 24732579 945435965 377158644 69147237 814878191 558465574 763631699 42897918 674943880 976327574 237311967 315244948 316335290 886553039 325309767 802699465 130135835 231924892 972515683 534401046 136937622 284539743 772252447 883107236 556939020 601683818 358453567 870069493 761737914 949810005 38832099 545456135 728098207 468002076 134723517 993664034 779022825 940362927 829126382 488260384 598742307 782145300 93821489 296163358 607936285 922538672 474968698 692248184 773510091 388327594 885761700 804115560 783211127 911640747 745990653 563977824 805874678 703694324 236404089 787630142 351646686 419075788 54123485 149533452 829348683 559798908 962877874 852109837 807996206 751711673 627173376 815786337 759770263 389317500 101997965 731793378 372026728 299259477 824464122 879935204 522914301 869963249 830309172 323760567 364641392 862476770 700248748 878471579 757414514 344883757 47436163 845864671 583387354 297632929 904265530 846211743 972675179 751027945 695232180 825566682 498851264 779172560 869797893 765007919 161827182 435192740 476568493 964994760 125886170 942150805 565225835 71287912 903442302 866268920 923505540 860405932 940891770 167127623 425157410 19554744 872623407 920543068 569523740 979232754 783377333 149190167 811705137 330756289 612844808 783906108 831517817 843077026 141491409 667840688 72383594 214570018 223128478 628466188 795585587 797324591 811507804 445415923 886455556 121614869 702905380 737590199 835489312 876974432 767487547 930842993 811467095 811194646 205911625 351378296 938847089 839683998 875243022 93903600 978074165 124944333 480891666 950697348 670508285 90294171 683944113 997550217 793142092 890382639 510585256 934380904 749307425 899686653 776681377 795599872 755685513 442061658 679159538 363224276 82569013 642690410 894654127 945001229 31446411 790083827 993079418 209704450 739283482 303352055 803524508 955972616 765422573 815143333 456765693 854312694 799531397 358662799 473072605 547223152 952019052 968425496 862279036 396622265 907773970 612949491 476183945 971031700 104848683 901824791 829541747 614730048 60299489 108550888 73487379 885922963 412213272 958889710 947580085 729197375 233736358 894048701 999455426 992525981 468297212 945678199 947915697 460943686 103584346 4513203 472976395 787411102 507547153 573610733 954054857 842800054 953976162 419048732 262507463 910851040 955788595 786465738 804622582 905505558 811065178 128405721 406419630 900902421 66750095 922681590 636250186 970183695 950490128 768211133 968421530 690753617 862930189 221083254 996512800 803347840 200433083 931466709 253273573 339622069 134873715 598383708 913174195 796818601 529537742 525273756 791631349 356141152 758890585 517362189 792095283 945230607 409094506 291783039 301573021 753235954 3662882 601766469 738485861 250328402 642209916 832900466 453875294 481157950 766572308 11416143 404350253 719330142 515843588 565443933 821526707 952785211 547729612 714485156 957408342 593589455 874895162 838072035 554411097 869429325 867881672 250400234 865265986 558348181 116777155 753501463 972223890 908458966 823726165 938925009 485919847 820974118 226746795 419447788 788393891 20363779 626787559 247398691 787976260 82918941 224064691 402081792 91960359 742240735 561272653 994107296 116281090 319412323 968159981 764952335 938560354 492447337 909400497 143729724 423178342 137129307 851880705 834167358 543274039 593177172 998132711 294416844 860222294 946792171 714303143 484368043 647399229 980696030 425394995 945708182 648672918 883979886 747639943 704763046 927278759 782649913 756589945 337484171 271695390 952247377 970477481 777024534 396432286 357701800 773414604 542287361 520123434 219585289 904147541 1478289 864683544 681364927 304387438 919281039 919614997 889294251 795301076 986469916 934400586 346420906 674344376 158583290 996924180 35766470 915691765 168243664 194025504 699869814 52792879 969464858 656133560 701803189 634736682 977562558 986822267 533905870 233106622 824197444 876345348 771165160 968311939 270804523 877281730 860328235 960476142 884790830 852078403 101510372 619159175 973586646 866291508 23618904 234048521 901635887 857981720 302120143 936029135 938620873 21870899 98101441 867239609 999957141 745994148 969366409 280317570 456672678 868136971 758811001 648453421 845011151 455894358 436786497 618883336 419368674 441677070 763689213 81168044 276181650 773195913 927016901 851485166 435977270 856402759 218129360 758568903 860318559 525924804 478644126 949023153 985024289 864049202 827746099 843779308 809518247 289782513 893409083 527240128 216970121 412451493 665850785 831411621 265955529 944711346 338545029 423202972 5619035 769361698 454282677 949230217 459814109 920753792 414055486 929675816 286204018 112505714 458042177 117557034 913157006 796175875 815643258 22218406 835585712 811840530 314717561 424904609 677474552 912820170 348798180 425783312 432082160 271353427 527906825 648857845 840887876 847067958 867563960 834817265 908544066 279839282 274223856 445939629 692482596 528315462 831476102 791300411 447960500 987417287 188640630 120587765 99281569 717280455 508117036 943331328 953454441 824513315 322374066 527108826 992807263 859949887 23468557 904822638 940292723 817733600 772236753 859940229 611711661 889507285 874238426 819158452 994375569 765302637 222645595 983733364 914889830 818861145 985791877 420957123 822508751 790987227 841562911 59932427 772258811 777763280 906977999 828010535 436693949 568732449 331345323 17285793 988428711 433972513 908402959 192015981 972348739 876700854 253442747 533979933 454621270 949778284 189229422 938015262 395388768 742402320 793187791 491223053 922871553 962393245 909146558 105814243 663329280 942375212 746496112 938869666 435857070 963265879 182142957 642516267 498645227 999280302 206568475 630703045 810463621 784643423 237504394 917237556 897189920 782578087 766757631 849419928 768691671 894888604 935642380 638717945 841822597 779136007 986547685 281691893 667075532 222932245 937962041 853654702 450482800 84103470 818426943 810833857 909017758 886383519 948597197 284087496 594360917 850074324 994828403 243770922 822508426 866975999 999876208 576614034 651795736 940640870 498904521 224220025 930183774 494509915 270802069 843908858 224974968 874459847 397413204 914823457 905034010 958368798 332500332 445177775 631642231 465392197 956285082 643381237 875460346 224187675 729936410 635891706 466250989 927186199 772018607 786101594 903169574 941245860 942800148 995073023 81139355 645038709 263043798 969347676 875157238 877223640 363223382 889984958 910005098 600663058 852235905 73114346 467548222 876908291 427176083 979025305 661518030 385641563 925709101 998334219 966196730 873224728 525414978 199487265 457406686 965327324 796995984 140907204 270226047 860585345 771024050 850699784 871600847 854375493 995634902 197463281 698635322 623092528 801024870 457109897 699936498 907255728 901842249 852133667 975407559 769701441 853271765 621833516 906858628 16849508 948808081 317290915 731284844 341432004 710448115 913647249 895758428 79038612 69639283 775227300 810050380 63583726 116842541 302936677 618755070 111830733 717234398 890294998 847458805 992414263 217227917 80267797 238768439 903147235 748808450 905405289 595604985 208207884 774245627 521894586 102265185 267793914 741766294 630850114 438457208 905723952 100659890 955395733 913571766 516377110 582748099 873989096 868468409 961435484 859160178 852098829 741704077 884998997 784807394 52997930 841400012 812160649 934373001 478683070 150388027 805723197 872919125 159981939 309070727 924026060 935641859 858470285 873466423 826126596 970521338 943554034 760402042 290287086 891502845 264810215 848642249 410312866 955531744 131433884 336900746 720600419 913520796 162472534 736044298 322783587 576549252 792658320 733705263 978155226 846144652 32776545 954152525 768148800 51313757 327896920 684366572 865156682 989547056 796627153 259849391 938212158 470212246 319311638 988038338 755033812 902891202 678023539 602073861 487375312 807759607 785853759 17832612 411862528 717721578 953407376 417141625 363095908 789670200 256548990 353859864 682410096 699162447 860493475 332075381 870279363 188669922 905664067 769689818 630102801 781648200 791510753 859094491 689686096 913131748 432910029 434636553 615859035 20019242 100913367 967232515 586009595 82171789 778926943 952741868 761266733 84494615 785625168 987598204 461746272 582429946 951330601 901626266 881879893 50451451 492483608 616061169 587379117 332840662 882264605 800648249 415685088 868702726 98269605 909383418 79503546 883350762 847995657 887731566 554013597 734017915 768539925 823654662 929537741 933630455 745015702 826060894 251764647 758757099 869140677 877059632 245742217 391950889 989987196 835161182 880087927 807694509 800401888 842295742 901513610 663539102 90101808 647200672 5052174 549068736 737020247 774462738 677195473 500102364 951787114 715069735 927385550 932949306 756879181 124286078 149059856 976893279 417465372 832596124 787693926 340424902 664160 803545412 455632076 964787838 514257668 576551161 679518648 810195511 946792053 899388858 335858001 943066608 884825243 784955736 958288506 869417246 799861987 502063006 485441491 611882192 859138227 650707809 680357724 197998037 717600116 527018484 780657871 262767650 383223821 580607490 757617961 441496053 36534745 763291262 591871199 500392060 256515677 917453237 936444973 678751396 382356525 903568828 788691137 424550614 800908906 38029176 445881138 451780248 200667148 413962216 804439148 912258812 807279061 341669842 706808321 925560150 70466578 753564131 713282685 130885884 274825534 751123472 357521075 92265991 30754304 762532990 874737349 746357962 778046476 899910388 534126108 878184491 292740754 993413915 947395192 770772965 451836536 953553884 904275068 79368795 104689626 908549748 442093561 849901335 352475830 790873645 801633162 315568730 199088637 39667020 876997399 245888363 380326406 805488168 825350063 647900254 942231623 93051371 805988206 885956429 961954393 495423154 79205653 834906226 368019815 428551466 831778970 926645470 475178038 748168475 812244132 974189260 549679784 890880281 825222585 780066101 911654389 872532153 540722957 457867110 115190189 641232959 986420867 513797776 324874519 901697974 263247152 196839435 769552613 754974765 981346045 950672642 990986787 819563000 418164924 240789535 354393014 786288670 740407270 40774749 916209768 343509885 864593644 776065342 607550731 816027672 282770285 737032094 975230361 738886700 651304639 734775400 826334249 970787450 746858584 805891882 793057740 979751829 689797970 768709747 958904419 653392673 616163720 818460105 363432914 738954962 290278232 290047754 472016251 981259046 531763057 213562871 521435304 883407823 920954360 943605448 64301095 931641654 199939160 971664158 346987094 902988342 191592009 328037355 795820891 914990973 898806340 567237585 810525805 103008726 432466919 148294492 905474740 537220939 8666352 990549848 207408423 367028268 525880604 912243932 536363909 270186532 450791627 789928556 355154572 390514164 885630241 310810617 743605125 462962241 442676219 961019632 680936174 996979115 881993470 865796049 803636877 866916574 864449237 951982411 917507974 266089718 69891945 619703504 649258613 131289935 890671035 498702518 284784388 823735876 242120122 913051553 711155425 782286454 836853552 563144285 535439417 637040972 574325811 364721087 99877850 179603079 737020247 832484171 823182114 602900874 860949971 770679468 196582810 879688501 663474765 72288017 992458118 427336974 756128796 886603612 437953916 568230627 902958440 769724185 916735153 850017027 908570828 484071313 493417328 910725875 434701624 848273046 975368127 176767680 999914775 859678379 77558908 770518863 831020896 162650690 796056501 267767249 735527466 799517600 571653858 603379782 542286928 780087957 61441269 828398977 379084164 703098835 82489320 874116816 819422604 970311327 422960626 592414648 971071131 820866643 542918969 355799790 324371580 908037841 651820736 833836644 937547105 627646284 202344490 770672490 396089414 87098370 442237983 708974577 391183682 680574610 946091424 765944798 226705968 948222057 78611227 331841780 118622458 979732743 773917927 928299596 494269668 13596324 96574244 535247352 797527978 710442173 762359035 752630683 252315895 605434710 986856978 24419636 304686402 913237685 956785456 499967568 770830899 968975528 966584196 889465793 856606664 808411795 206685744 687945084 181047073 740738242 793777746 773303046 602423812 799186800 856572629 72162702 390940641 139082439 127779879 605043399 990004239 921808625 561929071 968251510 370034501 308878380 990644626 763896463 804692066 813993721 185403663 998364410 489928824 963417907 886815048 988900104 532855694 981848806 810454188 841745647 950087741 236000330 831845071 428252391 760630030 206198047 738959655 541680236 872492056 805714641 820877415 984880631 651897989 93074632 52822152 340454690 269814148 337522751 729003699 964313775 978918622 698063656 806327322 256134725 343653506 748016951 805619042 745969700 626949653 987367957 881822474 909904685 322892927 818088542 908721620 898702826 906003905 859638136 854079265 918885566 807778818 746296591 985046026 923154419 767902579 916589065 499652718 324340209 946243359 77279706 960573581 901303697 650917399 569183837 186287948 260789290 923929132 848573357 996784168 995525030 754976122 874926086 463662364 72153535 132850224 916245094 244037749 745607062 513774878 59135026 836553292 978193660 594966733 493776597 919205390 26663556 303219273 905953166 927966487 529347512 688319616 776773377 266837933 868486995 872836462 130504400 939885872 918752119 904338956 862531301 762179491 731663881 941849397 739916606 926911398 774817795 114450779 440627007 64824202 769914279 412350888 975498631 773659564 150208857 446148337 979768271 870533343 664857618 868088368 380429898 950709877 703435467 731326842 285211679 866906788 995098635 133844351 830038805 787157074 936505634 724161119 416617260 741312367 427394533 817005892 676883621 130516823 223161816 951168849 924075379 597826413 935176926 553517680 974005364 148239499 5086597 964653666 60219606 25320028 820521953 654344175 319568251 590823859 910594149 737467821 962102912 840953260 744987322 586130536 908982965 63344497 790516840 197264469 193100968 965576579 698304859 830894477 70445114 968525387 525444006 873807992 688425676 95076059 215214380 795691177 293318875 79518212 942796264 971393393 226821040 522796052 318408835 806866690 42148235 840074476 757154952 178176417 793857652 869239508 53785219 763730582 262258951 86890027 833934141 382090020 522074583 961517478 386593595 275854066 592948205 811075471 170165692 648850184 877644214 43202496 895052225 936127732 778125167 737295665 992157357 602224892 761060970 843985203 879600416 791326011 300152001 494239756 459785682 778830004 202569705 940614346 434817128 717198883 260233854 967319217 573311882 332113596 912056203 503664379 903241581 975515901 228598848 368627327 436215195 945448306 821065991 950795148 63015767 484369394 142843978 759573261 781902690 751295672 863599725 285042124 823343384 418572621 337156627 881078727 533824694 879787635 836767760 72778563 961804764 418899904 156598524 744439301 796742099 548504165 786845392 980878212 760587651 909127266 159004483 949600906 772814400 334801201 149244355 858063825 984602228 299752425 205039422 438427562 892763817 744851957 367560407 141594494 870189461 869053980 738923792 37385589 942661499 993124526 923844309 968005864 419251152 413566584 356724048 618792947 399257281 745283800 767905387 634737801 229634942 443000836 421721077 785264135 316350468 679557116 520843796 926190514 309922937 671213239 77609503 984106337 46898594 965583656 334034262 608288926 718316697 470503448 898926242 871186395 563985662 936623899 195070886 882753419 403948822 697894944 875997107 910408514 832989657 767992370 174480382 790463292 849393562 943059222 328819822 978630001 254728136 601254564 232495333 19567854 984525400 755685596 961267428 994044803 455971146 145777038 252127867 701225762 775739654 398166742 944316294 979949803 780864473 269075058 905744824 919641677 587071335 147205139 137812957 286884817 787905054 823793164 907426156 941752596 908518024 764522275 313554693 610042992 554020169 795717443 945322261 189185054 838646536 746768688 870500527 53458078 298246832 749084166 51109394 337702770 65851262 913134599 869489444 233613027 3270658 44213007 547378801 599645957 509434178 936962235 164767729 767426268 362310589 930812553 440191463 770902681 216561586 854351724 66702231 794162910 778454407 899406807 570407708 971710768 986015392 310403204 832314373 162451527 811196289 991239787 852482015 964520576 311433856 558088462 96478967 390379856 812899195 959665718 360234389 172843077 936135893 37423381 790805820 885852202 889041846 832738443 89553600 664448692 357862320 356524519 46822888 275540677 452340392 476443381 944725492 101218045 195211849 977763555 871414236 882102937 373912366 947378998 54876349 200151088 192838551 201379549 663118689 965301128 408146073 318942178 595780079 284466590 837407183 991672502 903260231 801179922 516885886 349448833 863517665 28090365 927234072 50681024 271917971 932600657 226780608 667448261 852153192 533666200 617278719 768948447 886439770 982385104 125407752 152274157 963173421 550201647 786134344 171772943 760014968 880454553 422917671 844567129 561491843 760416298 437310604 344478990 637488146 805862602 651094923 876479438 342090826 737020247 845149343 789943361 575688928 740827741 336528834 514348937 528380591 931493683 356114547 197714238 378567904 913170777 767254705 573730521 957486449 746870829 943571973 822997364 946574686 785610130 980838702 887889829 410276155 309646100 889904210 811614686 984742517 900345347 969398231 166076847 754623741 99572664 66152935 591436346 406961074 526775715 800138453 574947187 948966268 154813152 861412831 29709555 256169537 582153634 829466451 831216225 207645771 746347363 966145852 519606189 620253320 918257430 779225081 853880905 759345744 173955402 882329423 76413167 934836626 793352243 446597758 571765329 278147268 702022716 559219203 235505041 454301108 960470096 552513610 518178855 599238492 768886069 918373762 947058713 837597038 879557019 347369744 886816107 758619400 905295419 104293362 944997614 880712753 175412259 433590340 793128335 555221232 737020247 63165734 955580806 742870217 83478740 349818987 309932854 781355283 52600640 869719604 805956345 780097929 397227448 960965101 570186781 338651861 427211074 752275071 775224501 426875936 791405925 194204280 125052768 609702883 466074696 871328983 872503385 897520244 644508828 876212833 82089581 745957712 887209238 905790769 601828768 208331185 945785783 235411762 939628287 363081711 595002312 577615881 422493669 903778654 26167717 216929026 641624143 58922576 232343476 799025028 614626138 870135101 501050045 909278606 757008396 290319834 402680486 825104269 866119748 915660559 64138260 17065693 592096967 423648563 804442994 16943366 945204431 698927874 360321986 238328046 795394678 74352824 776597685 975638942 822589819 765900228 784559340 987523025 522854406 950112515 333284832 987587494 334915249 856435361 78452998 21408371 142453427 711577044 666215495 58974744 259785837 165257822 664566817 761851894 929339143 664231635 805402172 95012009 866383482 370733553 717295779 310622363 312647539 935783333 151897231 795650799 750233262 750029505 488703213 457518206 898385533 420563547 912781528 471228303 314372543 338802772 755982168 779890318 642332676 850841514 306006302 826007072 387342135 971234195 982311139 563206169 978215117 314151428 872814752 684609552 804696556 668972076 814648192 747124938 891320308 368529536 191454944 188088307 862518527 814107083 870078578 997941721 748651849 981750620 755520186 36396584 857362479 706256929 299993904 81147661 996204857 478444720 33946436 650395152 738327272 760745395 24673809 155142041 787626727 881774847 968410708 523054259 240084157 779527094 366515104 932475839 412495926 926085692 187271575 793234686 41647783 910716557 679715641 960572941 693252775 784322636 891295093 908583324 601690561 876415243 71006358 986048615 839036705 311652382 80498036 187267750 877757330 678484351 490479989 577338134 944977433 55656109 952321851 348855892 418604588 934085224 59123721 767351989 900843757 238471781 914814212 958604138 954885335 712478923 26035280 592335505 731154410 62102588 976782379 210454001 642272333 737179910 570565733 830590518 923423329 918914558 886584539 316376281 211650533 667994649 750141870 210514086 869689962 947525389 810385693 444300318 5004549 742432490 117045429 119823681 630934041 803447782 85169597 252685788 307429804 773477727 842167286 667553140 73862088 980279543 845096651 881453811 792595193 772640492 144071194 764495072 86141072 956622029 881331673 981020036 822977852 186571779 570301599 23310920 824996226 836325266 800271450 713577097 36069750 827219805 192354540 974688350 703411546 188098412 949411228 278389669 35708178 889670337 564768687 903749398 383840147 845217098 881045210 770731018 145816294 102624996 807399872 189697437 762575128 973770837 948950484 968264329 400884873 275612645 879397903 354367203 795634966 863268595 454047708 31645234 93622634 772567039 963103499 958297486 934698824 931255354 241340546 157345590 235925507 860295451 932685012 545983666 673751124 330996666 327231604 684615829 398928358 56804745 783555799 916903590 685578239 961935985 162550582 339545704 529323625 562891786 479111266 960399860 300923184 421437763 898041548 631115629 767346030 575787588 728668503 228463143 722210989 762019891 793677433 915237662 943502770 882432095 53033365 995734853 92564337 910615227 909464622 947183024 887380460 523013202 932628000 620132439 973023019 808584117 989798103 752134783 366763461 781244143 808279754 338010685 935098667 448851495 874876100 369696160 737583030 962391279 122476639 48265089 511272605 766233425 325247936 710885375 379494812 672278575 403580453 261161613 787424133 657623439 991255260 897096697 430764407 305765308 804776902 971202208 239326803 78387769 870346839 720607061 763447312 887797048 146594895 398743456 59792382 169518127 747741456 409303670 574130829 328317807 919352370 716103455 979218367 978485764 301507069 862958832 893789126 949875240 958362673 291930164 90623209 247052279 277686229 874986715 250436882 975910961 748966132 321852405 390199209 77819627 193129772 575478344 744801590 836106795 110408213 894365707 26458692 635669474 153905356 675616898 430576722 738377228 737020247 817863857 535074756 97248191 990945102 663392291 438096879 848100113 521839794 122264399 929892616 777310170 389029789 52434728 764925790 764382097 899270021 672241354 44005555 925358816 953449896 866342940 957248148 763497133 355979607 628226620 620298076 174374280 437460315 916891258 322685792 644836251 989886291 922697336 495182158 349619330 803199252 352828972 900870622 829909051 847876597 107005489 84080677 518487299 796561203 611790070 807309089 715210815 284526096 938382779 86714618 429820083 646587425 972457039 776331385 896253462 986868373 954192654 461159790 787273693 140091916 881353902 820517830 248437445 242181911 772129923 923058233 541635424 789586807 869342061 820301959 789148718 828465319 11898455 31084961 867781362 778146042 972505067 426044928 257765241 469347637 695429045 927738712 884628158 745295352 77188955 976800120 339966435 983133200 885300783 916829942 830168461 34116162 462459636 966649468 322151570 856073199 942329290 967976871 368471015 889118559 829916641 41043284 526239349 311424744 871357295 910533856 297406711 622703348 799939390 689166791 689972600 341860897 979200158 897419693 918252018 438418438 46779647 565415607 984491879 874244066 525630854 869555344 741330485 337460807 217193513 912589052 249434773 391258259 55079257 467583706 511136367 748234037 903001232 913276395 832180808 249564418 370422667 692774859 919544099 163857240 640982571 236705402 894506257 991235427 231133637 834403840 388071615 69147946 394667052 125113066 774399000 216736825 475597589 861954361 966458799 384076328 164679722 767212429 279917641 98370471 974710673 771585345 937577441 211002680 388075710 701695359 45206495 398313730 173087296 818628427 751591593 77048232 689507762 301097631 711823618 255231381 172299482 761981301 893008759 130854983 893426817 932810646 956819275 888422644 338952654 12453468 70195521 253493085 141232179 783374876 960191014 933339466 156095127 991211319 722148708 889927183 952797991 208396230 846476107 757754964 307967289 941648695 814974249 365900978 561152941 934303576 943290197 869476782 523684472 815159674 749054697 791658513 35741947 952395114 104330370 831170198 808680395 826370004 439879106 656662661 98562999 581526260 708206038 743749987 510356428 913920680 775539545 383768468 990061678 678675337 879199061 976460501 805912372 965596889 977935848 647958503 361407394 968040608 765957219 918813386 927036972 619827471 495343726 72604916 85184749 80279757 873133504 817087647 739719671 991135356 849591518 927079699 972497324 296067577 459835811 724448984 577012756 823414905 51958671 342159618 910790233 100696801 830943007 780427455 613246372 922289315 187257461 949259517 809188019 648852498 827628675 760289810 525357894 875844313 688339596 321239959 60548958 744438664 967785006 686298955 979296971 30258262 929058548 754396127 869493369 866801081 241252375 456894192 78628206 944370510 812034278 963571749 510725950 162125072 894903757 831366490 148980609 757304302 733338222 781365911 853951885 663776522 658822099 842525699 824641292 971190244 799267306 289472380 911933544 207092577 838736239 970142849 766080710 265173264 987890108 966861719 974465248 348018306 126404393 357293978 962456779 991842927 196790880 786374700 928181757 519082545 843604716 778775432 552921248 974372622 812453183 452996948 651122540 443435718 177070156 831196396 873002002 935278577 759568591 475011783 917977253 943463619 85708325 296590178 173738629 988596451 698359358 276147121 444199753 151091960 343642445 822076286 954316410 945903887 930471734 61749127 124673209 782744109 557917874 220876118 162760629 738330224 424978639 454593119 692977751 765313628 948048116 623655950 732356716 275396888 271298277 582064359 609284476 768240225 951876194 779547438 734555223 714779741 180020411 995690600 303796219 28931470 978673007 904014333 184435782 594692450 901393844 665584769 709219076 895568700 544048265 869721390 714298931 1831806 810556831 678461997 167823116 787066552 271828122 555556660 806602901 860355480 8246447 783108755 786469655 319753478 468666327 969346390 245566117 475944787 921910286 880918411 415724995 910086808 425199944 138676652 836080365 933291674 924999307 86243430 597447626 127721724 613195922 234758741 101895788 864434266 227760019 127086439 800886120 175977175 976901385 825243436 856735212 883112043 875116078 679785616 892054934 295353257 963434385 337523150 451193370 972279385 464732394 986870399 936320773 988055256 874294774 60609547 120117598 243722476 908731455 974689483 438267073 458044864 834474389 959870308 312555722 876164364 981435057 95052264 950715020 723303006 173481579 26401521 998439048 335052613 705320983 412787159 914858920 88520806 980538004 933564329 217637703 814530654 830805230 564510476 629448168 860992837 902794558 833453696 655199706 590540166 805828398 952383428 695203070 785412541 990453417 121916913 177495232 649015707 743842869 932855539 580491363 771878640 810831203 129544975 450036901 761665055 890995512 735672556 819574915 868906010 927787760 436565026 126521849 414978880 871726617 483489866 929438958 418913720 961273085 717588225 570254115 511420999 986886474 50837830 779827816 861475688 752500684 120804234 258459425 914507297 899264376 595902539 784088203 947243177 790096845 534940662 750793040 967132801 873912637 756318557 849529263 319149373 144886019 755747922 637777971 255152207 822768351 82579166 21169977 997307130 885588330 791417533 799042649 412610366 861138068 380716156 898610838 511034772 819655277 883224120 799743993 927992688 754067499 256794428 471479109 864416469 181669446 33889996 746179039 499910903 803102411 60124176 814058699 367372269 916832929 13385330 63617727 939633191 866832392 837444018 778069105 841368181 816266330 313123272 466518637 935767723 824589259 741082799 878557448 14070786 902909437 881592037 963078128 857556066 755783942 799753713 787631281 997014097 590791846 125947581 37515458 85080835 707167667 418069020 855635894 512367810 721181106 999766405 969498970 267297787 807054550 971085683 819981993 970803823 3087409 676977761 165320281 5244986 760433817 233668750 14823898 78619775 925483733 755494802 605251339 463111188 698182676 302386 594226429 607549644 812150046 924482668 156425539 986776330 910891189 826341007 95210842 632846730 55036697 379134410 633222824 344872234 785837016 632285595 690600802 841138161 914804042 762095952 913114147 34560161 799603451 941620731 960238174 318876496 903931191 513666400 503226763 293714313 819348280 804324208 667352604 872644096 812509511 907362406 783645689 393649719 751471346 328460488 283937856 780807459 626147658 809832013 350106863 539275081 921206341 877019070 103038129 779971299 5783277 327303853 646740684 892681764 51344053 841283403 641214757 931076211 506405973 792970833 193237072 939588922 936129243 925589868 59392933 748111228 420675682 325375510 227996017 483217381 596902675 866403965 652271576 880849621 897931648 786514254 896375183 804049311 228503579 997074689 847650239 778141769 973589256 716257841 980372167 54864858 764589132 892092203 979636562 911793081 742658247 178224826 192914728 650171621 87671091 541410828 351607198 165498762 819911917 967015240 765675883 831423081 635017333 760201208 144300239 432118376 876066990 638568822 750782161 839698512 768589003 50448851 938251679 93710255 430529589 379177114 220304564 759591522 444000122 597006712 923624175 303736281 954490530 647293411 261393273 392745545 837175604 989854495 990941438 287714116 946625766 888865969 898290634 941568577 4745817 929116951 935974267 330796407 606407594 189743138 608680404 998067653 703415973 462713599 959540585 737020247 719669366 68547653 936697977 823676963 16827359 898306648 656968294 764587746 829024596 189157694 774718644 149496761 3633990 845112298 539240530 193399545 906936144 891946948 97163080 924418194 823200639 763736276 428547595 642729079 580231791 163018203 470645192 204774981 999552296 787057298 435232607 314867456 798533312 926741992 193939398 836845011 859415694 737289378 752120677 175082028 310149802 897036731 595485328 546402973 479927877 278116542 9161950 144011460 343179652 129421172 227510558 281291329 388101204 255917166 17356166 774412404 938087087 289813454 284545750 749034506 773289954 827928690 585159758 797065754 778580494 985370550 900012965 187912915 683076515 275480293 991325331 870527261 463108833 447178059 553781295 815684197 791713766 635060800 468496268 204050236 984375710 902631445 409575386 876285392 134387504 90444176 716523864 634933851 872108526 675320628 742832818 591311865 79534299 96649961 838948009 868981403 833772672 889096767 622254000 83002110 190840802 925857641 288217417 154537641 299722212 675644493 852230743 254836875 839954437 618488380 855879845 239086111 107750435 13311932 770799321 93825825 587505254 912417528 670047548 784070969 878540076 326552903 425380918 619419580 621569834 827762983 658908581 795392781 786708036 753980042 995401742 171365719 969663547 784614381 429416062 958537595 209096696 960124944 950046333 788399034 220129574 992710291 792624993 327896731 448536276 944313907 925284108 540992169 546351219 54214229 532597002 434453683 874475828 839445214 351283591 14772326 991423908 830915205 30509807 435767754 496346188 371657056 949850158 859433545 943585581 288948631 937017805 157864382 302080134 97172203 156915887 915967067 83772702 326613101 970278540 245199689 818435473 885492424 857545418 67519676 881862401 592989397 994503850 323431730 191036152 549781489 4634951 989205692 767196043 302001692 131862185 87068383 551528676 545382385 524005167 668062731 827037947 329039329 998103975 11111952 573032612 696389925 241101919 883484946 156611153 891726526 26852175 327163552 709890457 947408924 837695714 913795411 769733177 340768229 162117649 490030456 892630795 446698567 114289249 991091189 989157394 811727750 13889607 862419120 561127119 788795907 945246966 589539595 845010033 618015755 870364856 111869506 675729275 798869022 73500834 315018994 74344701 991653806 235100665 926050325 981720681 762680861 552844251 330117137 517971877 965567179 752336890 24139091 850536253 995361465 39514844 815307046 938514382 102900247 174405678 455611370 983307460 443903734 781643189 792992733 796724464 930695416 856873491 330412700 417833647 834344385 695072661 110014039 727326515 426811571 56636198 285670942 979972822 870045483 960737226 873019615 685065604 907018680 385733707 719208214 795912318 3951689 74026033 300778796 74825535 945640074 964965569 969902928 485283527 795095890 230311558 932520785 390845227 791262536 912454772 670285395 10893633 280747381 56098390 488114772 847592210 941236665 582733913 867565477 562470710 879337470 887857770 977947431 878914874 812056479 986312859 930778190 637908041 571288192 608595806 995110700 946469077 570365373 740685625 872108689 649334026 436932681 857252523 393892346 828242272 764031626 74872520 901125109 823541738 197312623 759400529 760252306 115432794 107120852 940020042 940829649 867453288 982064611 936711962 260754434 815598523 825591209 417389909 706643990 797132544 465429827 319747833 790393558 673247242 564629346 467405632 782119645 785155987 424599188 840268695 585567525 876417775 582224627 969834758 850191001 61722095 640381859 938510425 16149741 760550806 560863699 902771118 929726444 452421026 845048647 721288406 193998347 110492287 669980035 18890074 894019373 990386585 91730173 916781701 915209804 832340694 469784498 165331516 946355471 874590752 777757281 179822339 247284607 961469249 801477397 794266610 946847347 621639197 456806439 919222896 969632949 936003216 541063626 279527997 867572684 593081023 892837391 594524319 260554666 456008439 731295605 785747574 867193124 76788491 192638262 746016708 518188513 784753641 313056545 38970069 445908583 769471659 631419026 405554710 538857415 923238108 862049578 754638797 917169529 874433424 538403357 868375947 463700746 926012876 429473206 922596929 764009221 991570983 396582365 554391203 961432444 922101560 325020359 82061316 901030059 811620151 819596272 821687038 945296380 504524891 438029291 792890808 954039770 997834048 239060020 892547626 521034717 683504304 231867671 753853189 78042695 954217667 574715360 745746012 198041767 777913325 834130247 785620787 487068509 898965515 702686301 982462644 961799575 890961556 69097067 68942889 466480166 565542490 377380862 940687832 608210251 452443811 752469506 11171404 991553787 207189956 301582739 755414100 968461735 780183476 932400941 853395078 929163848 901297376 78437294 732551433 622671039 292200997 294472443 963679132 548098736 621808482 921021864 8188973 103514138 313871720 897682350 77114773 749247587 921141027 336004047 988671541 372851732 859602661 759285642 825928009 465638030 774910078 306423722 555807376 928507455 713586600 992562528 961025153 888831895 381933015 790567419 877932310 774088119 883895994 790182609 757679754 852524256 118701477 165934357 749826531 985173852 755843837 337087166 691655108 737020247 749489195 476194268 785460880 879238535 600336632 739659761 627448879 512123023 897383696 907875328 898983055 792353130 906955979 665334223 903343018 617718511 848369425 998194958 385709560 495394960 965735462 965080793 549117697 301981361 289016836 162685837 408177108 117725865 729096572 946117673 828242682 371694031 519882426 996913917 121740714 249769463 914794391 795669337 819858345 985684679 814617236 517174484 843477041 802647482 14106810 812590908 490483321 845303301 959939664 883130795 288324581 837952253 920064257 813788975 480892022 197057591 989001395 463031881 878194579 785422460 483583793 140839130 122978195 935908357 755027146 806056288 879736000 785260314 89278926 151106734 11433228 949767292 201905275 377814385 344142217 282146067 848756601 987112953 867672701 956102210 235289266 986071929 939835233 477182697 635197696 738128542 184229256 588867668 942947030 53777692 123670681 649281030 807621045 894913743 98333957 808676879 921939588 168624978 825995418 813039714 822013384 823573718 147728419 965959908 883293075 956939454 784808346 175862881 841970914 940557470 306526483 218211607 26448308 798411729 17270918 942586723 575484630 831250384 862294959 246936894 939162477 873103092 469190517 339250875 135614423 921359995 86995621 783821783 785788240 810288396 788985876 848126262 972498347 732313727 940204386 896030644 594525782 480787804 875333446 755731679 147271913 76719404 325598160 759483581 940943433 896741939 914011293 957106883 186944913 816517215 29420745 897772407 761498140 392522248 595723949 314744421 163556386 799782917 822209822 43952469 773862694 894382952 374435160 814698750 388783760 959031803 923183708 876221053 808094317 974031747 693848241 7072630 927925831 160480900 518690884 563644362 284055401 851687813 88777150 22460962 791689655 39784612 866814827 317318595 569938041 893333374 997505641 992175395 949691709 782806029 365597113 10306028 361667411 250228722 490438686 538156433 820100595 807473527 93603219 509342627 540325074 848772572 242787847 518593608 993420007 438991454 849736373 948950204 836526097 505559678 374972336 891901411 272610361 878301740 587126922 832295531 217236271 363278526 918479998 944075154 947299371 386735624 850590973 866613726 800870653 394363660 954211904 128914646 857940289 690138671 35900895 918310629 468029391 621606946 362449574 252948913 306905917 122343141 243376479 876837684 917299135 360276464 379405423 771430086 992120568 72344765 760936372 395748481 971829572 132854869 310014968 562235754 918447820 972147133 892580650 347521120 936220428 963618874 879701783 986692891 838589362 348220049 835271744 308351847 908445949 62904343 769796181 816686959 34853853 265300610 138145166 803670206 44487219 477664765 933492908 691947849 847102676 798526836 750104241 412320270 598475395 919924909 247979242 975215131 860399066 277014891 668911596 175856024 568442961 293413942 272832450 861586603 513648777 119986036 978608686 379971879 893292583 876813435 655151641 746928650 804128528 694140602 942366801 849597988 750356625 105191014 26888839 256767178 909662024 433981385 365698789 649129977 480877034 559633120 194454297 738516739 835877614 913417586 400987126 838443427 518004618 883541982 829214246 793258565 211755953 633383519 790245007 266637980 951870707 167939022 746258733 905598959 822207978 995492221 375432004 936813852 297187686 700210501 747727699 438061675 961617311 895421234 602075725 647960168 147833706 579283463 904633630 566284856 221037436 410348084 12361386 815046871 70324458 218125168 805846639 856275182 869966066 902633678 377421835 175100927 763417404 91196873 532485039 158945918 949231185 483961442 620602374 913036341 853834607 961094842 193060230 876002234 17949269 720633946 33737184 94712511 988020684 539916574 834519846 331619240 704846104 985954848 866765956 563776165 847939135 759391877 949031405 503571114 773326836 741248138 862595047 652643995 25339958 858254993 826309705 341783879 993146211 921838381 743129230 791536170 258024618 145869523 801400050 438261667 365107405 549597415 686734279 892347298 136021249 264873865 141905154 820974497 814115598 629156717 518701259 976185381 781952116 593835754 138322734 8894005 614844317 601653585 50778934 333543313 545291630 220005557 404524559 959341145 849526340 935320646 799289437 483679607 270801071 946872510 937168128 844572120 992184037 635624136 804149752 906746867 342795211 224672885 339948017 844398009 153331915 779435139 225469573 796199802 180240465 809306335 542535634 10690232 63687999 10810271 962373411 468927394 725972432 876344151 805492005 110980697 797080952 581459163 820388627 776385264 620287005 797834092 811102863 641131702 932407788 887219838 209744037 352099902 794377738 884021598 742164904 702038943 921658572 814612406 969229935 684368462 984978917 810483733 331995330 661990566 804221767 156133347 788776185 177318387 198228705 935213728 802772154 847404318 841112369 793448919 448336763 905289875 725435517 984545840 264790410 206473569 910408636 66200629 553878262 735136815 541599808 773734004 854324666 158933974 985688407 387501442 453487126 928496227 976403771 856247027 573938084 122998328 173456260 443601731 980598867 4352715 842641465 825202123 810893042 359748223 587982811 888394157 772211076 854125483 62810155 933166835 852595747 862964676 179336682 501495401 26272022 342181585 738212536 931571316 874778110 98442444 118352633 118189206 87346325 574140944 423559462 695653281 821325674 802990625 843368566 744400741 998061573 853499848 305606816 658650342 784158389 920590953 906099955 696001089 140286511 138395464 708524590 899709681 713768422 903927166 385146663 258497408 867202791 120626869 407448223 979448000 839042502 63268866 780936455 694029118 347784377 989986730 105145696 569405093 565035833 857617021 565299223 888340397 838843051 750499839 5612313 884398004 923044261 248926596 947318361 991609067 831825256 945896468 961914093 727600461 246112025 755184077 19623807 737117376 30323957 771716794 620627604 359552851 946240182 907947540 339674050 285663033 851928820 695763456 639608643 936325022 646975695 677583122 977225558 959949539 791373589 899285960 550706876 927990199 669308515 723492973 558808673 734030689 743919057 282709108 971626835 469102570 442051681 744767307 928656754 26508460 355296177 626496085 113630730 383160787 795549818 13601599 395002273 295628280 231708201 571797726 701629264 322729430 430320232 816273527 756298137 54636619 841291805 645715960 851928065 837521974 106777012 977128141 973422326 620931847 86501686 913878527 808886209 405458450 827107107 727760636 372870430 993368743 811652718 945015431 943675527 834325661 940880892 834320127 331313733 784612296 854708583 324487001 763531603 905141667 927613083 783631791 981573466 417477484 718390742 982155085 39972182 989210395 340911455 457323731 849794031 540247790 981621841 851825053 995598367 303101937 886413303 790863621 306984998 236506576 596554166 932675816 855493062 52104224 912317898 629821676 856207774 992691156 410997148 695543465 883019021 506098362 770767761 869506221 78921639 276842373 589871970 857916249 871835203 35943606 886890724 908791034 133675451 516285437 104348596 245277231 738542732 997631755 912745556 734265052 733161845 12631610 764297453 555975941 198332379 610168685 230845164 246799729 856583998 438549288 835264945 854699285 299230999 712446829 851742165 954583622 851435988 22319520 475719428 321014956 420318781 757612430 381833085 491177626 818238128 440974082 750080660 670373048 746414487 361808707 832654743 14072364 824980616 935585057 804500006 871330199 421713413 109937576 785751501 492576024 921287482 856737297 720370216 893132499 962892554 836887291 847942670 983692995 67570024 595508052 916732037 789840913 291538642 649286919 971710156 620672964 868532354 776478769 761852122 942714730 103702609 794394655 761808166 933988230 392648048 38750819 962786958 303219341 368312046 137034050 620158076 626579655 131474557 503432009 903774985 853388883 853180031 955986566 603034997 909781254 933256706 132635660 603825873 616690885 403886920 616549174 986378911 18902789 755147971 545386782 952051406 390035567 989860111 859461797 966694236 963992448 982160065 933185988 851980517 598103785 990052400 539058186 65141926 961061066 854235184 752617145 421708912 739168585 805102656 388315090 792690990 866610194 606122518 904259067 22382504 273708671 558631937 121818678 697934345 821151292 956618456 287265209 840314732 804473941 462723422 793409525 563987441 378363181 844356028 98229501 456369279 789275201 851260664 658541898 901334536 263147332 523983167 792222658 143928195 417413295 877583139 448396835 497276380 745248926 425566844 944181996 839792968 674015581 117542063 914441010 689452127 968079359 544772596 211396936 639773771 351099389 735147250 911746616 572983239 857356143 502715745 830495036 407882039 908314911 74402056 774705020 79266244 472575916 830178250 957575551 982351525 836545788 776487504 848909711 364883560 984522077 898380224 806365419 818734151 888823125 825301273 962428460 986334295 244041960 854281623 354067579 221436189 480211495 274161540 889230366 970166232 469140713 737362796 169406887 901218635 29507321 646026822 149569250 778152908 741977016 870585278 214049747 459577122 445174335 48879705 350569421 168810375 44419797 792438502 865782637 978339661 780081234 748197627 601780483 771841923 775065654 831046205 60953437 224276652 360637014 926751422 868526889 482935825 925093952 863410187 958206774 538877955 975707552 744289184 832520576 217274093 621670266 507843315 224358080 789896631 224695813 983992478 468202298 468182470 279450428 949449304 339173905 592130849 191297109 597823929 831362684 500365455 497952087 336131076 723629243 849674266 258745325 5226612 884858565 985466034 280829715 746899739 508837529 926630857 880671037 437514667 755209920 77255495 736584795 479179632 757334352 813735142 272177946 743460929 994403335 751987259 314524792 76343799 767017977 242854346 159701821 711087259 974572131 738806592 223237340 921577015 996779197 926739210 813881159 158660630 304204187 859309105 460374291 990068879 609913194 783475275 940511004 856620703 287498221 50245078 585493882 855096329 479511548 261119927 23337229 204920411 291282501 741024151 683161867 931491653 317234682 764314044 980183087 806973105 384415650 849784347 508926168 771267833 279111474 858150835 605445815 663563362 437269403 825626148 774456487 867137629 998741720 596420399 748559085 954862258 895833794 438289793 471753290 120197069 459754080 879588499 824430954 875065610 460720785 127637039 179882584 798476449 818720342 605992143 112252596 426462465 131528462 402946058 785027884 451687499 554240202 817979449 310565716 564357695 166925486 757502481 764573490 394217835 945340833 432004172 961877482 286059553 42552678 805010603 960683022 868984592 83435950 747132347 529858402 623387723 546976369 618617367 958394716 998325153 942471263 327861174 769182275 571753026 170608493 160597729 721469423 463876790 510457335 793405223 981382001 971904660 820386332 7301800 933460232 588966582 793704994 665905279 840127481 333949803 998754378 213861288 917164826 558817551 858209007 678535485 528597806 750118153 481495966 680535492 496563670 10007893 467811661 305851076 995828507 385764750 695748084 759966617 11459988 911071493 815217337 292688589 822963250 879130226 844727830 950654396 882123462 196153480 862358355 803232897 548765933 563092438 311505115 633448840 129787252 928151540 845777010 772830659 88331157 705370509 505484740 206307117 572350530 388578895 272940558 261965175 894477239 449915728 783107860 153955500 413082792 137083805 959941531 381501543 714264671 764231887 479038965 666703206 568557003 478793199 661192052 811394260 893329701 29608770 878255079 612464534 320805772 611919183 979999034 805665268 801508157 98096194 861102649 977943084 805915706 64563387 801480642 140381538 855412642 81872115 741940212 23840110 167505720 40037114 721403277 677949738 661342064 379217567 977507576 257733630 19795883 883494255 858598871 211809386 902541474 757003751 74133155 98040862 789035216 388812371 820863232 40430434 18406841 433253036 858805956 661983759 872638557 898979334 57677908 76161739 960277277 830691462 832372724 460916738 556597868 778039428 826148205 765977636 777557414 980375419 710498578 764068896 286022585 648767106 962218264 992904211 897171171 319104166 53455360 791003284 238396553 751924591 767364962 692161222 278600646 957785528 878911250 688895233 927317812 936706692 974940552 174389570 798507115 919361467 847160316 822030022 958581761 802122811 270447284 416336903 617494585 876683569 897739927 447924044 772565394 781190109 872907197 107616484 86457342 608005639 888232489 669508937 240075158 785125624 423972226 998981403 946860905 845574416 723729771 267196676 740209130 925611300 862829313 845624600 160397084 184903618 861993131 791316172 796172548 785271239 909687089 786669255 737020247 907886030 127770642 416457516 111756927 898166677 830151480 784667984 873634376 669345733 798861620 819705236 857141900 766668173 200233090 936184211 891322828 519336349 780138026 737020247 817310550 472708207 44870277 558433225 671300404 507774209 991285478 892037127 45874845 92193944 749186569 621554123 899316788 92375340 18844740 507093995 776720421 921819573 610233521 925485849 891616120 994102419 886422707 136397649 75748916 879330568 888676931 742389860 86246404 765429193 464431372 817124206 23015612 491465082 103511068 64255679 665857625 44073177 427958999 707707688 446644474 510193171 478980417 86126222 928817873 968832690 797857356 917411366 963823496 109514735 839794117 208611055 52373874 880056779 949429201 390029140 196564580 943199817 952699377 886055382 803661303 784049768 893450432 945275457 68893496 797089819 555476725 755210115 746441879 756617061 524855159 54066314 883589661 815189764 374607962 169245637 742188400 650227127 293474146 923383577 800943940 912162310 45126425 518989439 883538765 586687658 133848740 890183340 598693302 978239967 251642066 202574385 790838331 144978849 779893812 991997844 746972128 853546448 977245021 462994729 952681043 904805728 643999673 604714005 624224622 427609099 758226977 777393553 776173634 979249310 993016808 642426934 963103528 914025957 205050738 875489476 824946446 567869494 838748930 420843984 920943842 122455363 750346182 871836915 825197567 429087302 883225125 979242784 773798557 741575312 805325971 910864587 337742270 196211274 409844183 714170404 798179064 147084526 834452690 883636440 766937749 289954287 553993576 771596173 757624261 919915170 453283926 766057280 972495232 809347174 373642902 506920354 282563561 843192256 980579237 776685121 859820676 979896705 905004791 596816354 534030227 573297526 894809187 840046715 251245437 825222170 987167845 90528628 828295189 758469073 112087421 744274848 932190596 943094968 983421211 758174169 865518125 670648455 853311432 771884936 275677466 524263318 613349877 63345376 810621404 968303693 240003987 362199552 330504117 155280919 965172083 751005788 677433800 890821359 300363790 8808329 920210339 831084030 760170659 782961244 586371198 62360473 865185917 835764573 872823404 752594206 737020247 772960711 622475152 910798023 758806128 807704045 59987391 655944412 930187677 796183551 767428376 735890946 488474426 843040102 180212754 862490714 690623339 973874696 875284372 748895616 459422808 940543549 398505369 431189818 777006270 750815395 461927316 846348557 148972448 843091414 826108392 966568410 947229056 750808568 693485589 28970311 895374677 247508018 859794460 890241771 384315341 932555148 697399069 506790030 649622240 285844045 638224716 598987433 951130304 303918947 963632678 400367558 76878455 780060055 496687841 744098606 947561791 955191585 344883252 703045053 160828625 655060700 638878710 738146047 462615445 299970698 140292371 921073277 398825318 838889937 992166679 140505644 406649351 913084150 443363823 584890486 756368219 634342670 852657674 649992292 940849854 759056222 290548862 853032854 286077947 195242230 968041138 325575692 199420742 405156601 907506589 875224347 913499200 895487002 79873395 141760501 987819884 911937081 950775282 801262959 861313207 951011497 997315254 805102535 954775544 873286001 152849047 765012245 283812376 78053251 649034751 101326557 656964761 517991753 969098567 84381117 944149352 818104242 622474623 920285961 971823112 199135322 533105230 26575478 766851617 34172576 510779306 465678648 560019692 724466861 925894196 847612238 201701661 792705211 276664050 833761948 452513091 990268737 623844707 906806448 906812091 947855390 620309281 857504143 775670774 73043725 280918606 279476899 709945250 952678636 931241853 796123928 530236494 128961597 926662343 37050745 823158576 930252804 844535820 963006006 479513440 611267015 931285434 780685862 956924366 868688421 608672169 812047507 976144665 887168850 283757531 566112717 751139545 823065384 414424926 605376306 773569346 669883445 71265071 377073401 843967903 774332557 703821874 886172272 13686642 614513242 748960502 65651863 861194245 503857112 384468430 687797702 919044766 785232330 920278887 86559385 805963348 271811324 507874497 946947859 915980511 846926420 492046966 878128712 425181130 918305496 744739698 959031100 829747483 769689523 457787110 900070764 60497822 737020247 10565820 554505774 854263818 825939276 710362735 882322654 569622422 341375574 58105592 862569908 948237748 590240263 982164392 419815753 775586681 769612445 34319026 840625986 829957511 280827692 574667641 825415401 492737817 795764753 721171920 135241282 967859563 931938441 33553661 511442519 828867383 382033753 544471776 998410183 767989981 614311723 880813231 939630162 946926365 990267722 782873560 716485033 301429429 547253971 179824987 544104488 326301755 760943144 538192934 731772729 851725272 875793112 521486225 971758952 45523003 523475660 933674889 256200106 903549605 146447672 34198460 948086203 780111343 850032066 98126184 243041698 154485373 722898018 959304110 176543449 518010745 943727757 140896432 695774874 811657660 781342016 829065741 281159918 758176208 961601962 838213810 933017290 59461577 816326148 964035417 429362776 343232418 841259716 704645631 627733727 963983337 42233669 429440799 521676035 754564429 687208880 281556627 979536200 646574081 859002109 784837577 271165194 196820372 811851355 989102152 204683864 432017741 899960455 470643169 955105542 802120366 467596062 866364321 964136759 889476188 318112297 582009863 160566249 987234882 580730630 409885649 164504690 824874845 898832221 959604952 14951406 958525717 27382952 615324547 760269168 556362412 787456619 49360746 150522973 196455364 462061317 766108851 523685228 976177938 395193231 296626388 325318939 661103032 817754113 52782298 159620305 987620634 8712846 864812654 778682765 169686968 593465154 540695528 788630331 876167575 654775517 768048867 515250693 279576108 784861974 747298789 976503543 55820532 204290645 602576499 766024167 813542542 491940640 885338393 262787966 419905029 832921494 870870170 805714920 890264115 557276423 880067402 154625684 827869779 961484490 603191380 901018650 513379681 875470340 959554858 580080328 358345341 997723501 524712623 630470494 733773150 522256964 898490550 806225303 239444751 307367875 99872727 276981301 749704569 108021782 907284933 742608212 841860001 746591594 326129215 362538282 737799527 913724197 467523805 950095661 943743012 538319111 952863443 634046327 827115217 630613061 843354461 494964398 702263673 269947578 496468039 85852680 796410265 330277274 901699328 215795604 436558106 937456373 563537886 917888827 389745515 883550408 495776378 909054595 412139447 758341213 815597607 887182100 146029068 875220119 106168726 897010429 294376754 828855409 914090022 327918344 782625167 766279385 876030254 839939495 643060879 932033415 737612990 913531503 811971433 841620795 937248524 567967830 118659152 538133111 826854452 862729235 878380302 194033958 324952413 237743692 962018822 248496106 837702310 565182825 87104825 153158439 779806506 648319643 615576887 988950912 743020805 887985209 356677173 323072976 270935960 914955525 857664504 165511013 828932805 186710869 363739087 321874011 805835588 964263380 828719406 828277418 507451201 142845427 361100045 998723162 58836060 986136303 135410232 828618227 940151106 756340146 360743731 809544894 192336086 866399236 824016432 770189745 252295019 198913978 759586346 706469522 722732597 503780438 752364071 120960424 806364591 244817510 740344286 439842168 932340112 953660567 821805286 777322833 161781668 848895542 504778112 442770803 789977184 839007734 920112629 191874441 130334916 715245296 685997363 856299054 799291311 186074582 978505453 979205891 946510143 971274431 763885782 506854433 953951327 872900085 977502922 742598707 965946060 927351065 886860049 684233556 62395133 870279964 530909145 735078894 39327906 894624319 119817704 292120470 302806509 477406876 523886178 601569369 996436725 451542807 689641515 104132399 932247212 232483476 47271571 311356404 944657634 617972781 773697622 803306728 729414534 711907126 302382153 831345320 72262118 799707792 199686249 248351287 990833982 374824649 846403305 837480933 836461061 903644758 994129025 526312158 589741724 80262123 548427790 164294499 607813013 646002960 314923913 993119044 977323633 738270394 240945069 148346998 560373177 779430296 182457624 830528042 935490572 293298564 383500022 969957463 364548600 560642065 801899882 834223104 716066509 433272652 85666639 38849090 223669830 780865221 759761126 408707503 382852629 823700520 232947771 255423309 961357564 190324833 364400266 288786605 890716968 809901707 873883968 890848828 679246036 278660330 890114494 520370739 316699104 69549002 705022403 703359046 509011680 7294569 766215511 648684839 518092355 616630713 199294232 945847299 885642781 532680541 985267761 815318547 538554745 117768499 714125563 833431282 795455062 850146337 509029792 508822306 544782872 953065213 941766462 876630308 973018923 751397642 804402144 637198162 789104780 469667239 181242153 906404951 898367128 542042049 892847350 769582385 827823570 438311403 450049705 38633254 314926529 263007350 511438654 859428875 918646432 43476062 963001258 874856457 145144871 92238678 894956865 268550731 568732520 898520769 866933312 315704064 735727828 754855972 610148056 466180289 957907759 284540737 902850336 338051761 166217376 762341138 568323925 289220918 133923824 617980756 588464833 494226943 138938506 831650721 367658302 794934765 815614182 813036929 540085351 627858110 869886963 857834121 796881086 378412135 276193240 843854802 814270455 789774486 971267266 782723273 209702509 340097010 910426346 735528164 487901936 284213338 738979225 129457481 260461340 192560252 924683273 476807745 830670360 963503520 678101727 670328833 269470706 59499156 313783487 723128052 741423948 799817615 143416559 550146493 461762884 527013503 822824321 431159276 923360673 964235354 934441229 915590252 678473821 488567806 237442399 968243446 321085157 180541050 935271033 958273603 576052370 870602327 594058321 360461975 827006162 625881363 801550692 645248521 374872845 176319033 547050427 558359077 837244341 953771702 503242903 633746681 631305326 801113286 686963030 199058763 797461298 283923883 988965355 808656317 795248016 919787349 999096185 930835148 900416458 946864458 180167919 122357603 738328713 988818882 805223098 534204738 946348482 598886161 351233022 77115199 712777428 651665730 777685303 995061658 476855864 556410726 113471470 964194175 384017704 511081505 201467673 441774371 805727315 908153798 258767749 875631145 840419448 749351095 396500687 845930853 873390588 859221320 304367282 474243380 89070311 993543518 794514106 339292633 379464879 660217422 330715552 940623519 775985966 32234652 310765416 583005451 529105662 854287865 175829555 790352790 899040827 260261005 21318264 989929337 958069146 428503831 152062790 791381663 296226500 965717471 992775837 817608443 977135014 774409161 755787659 830073298 297418863 807928703 562180002 498587718 323801389 741325762 881726952 479270745 814133749 821600091 842291708 519545534 2266509 971449254 759670604 584966680 387602278 930268315 278205175 800045268 832818392 425125081 943022231 487223943 451860953 624144904 539734200 925625307 782418618 921170946 302983483 2249931 792165365 906097313 541746845 596055569 730261259 573462718 138765378 195089692 12730611 816842940 902249829 880455647 847343502 96058889 781714391 655026443 787562116 251132709 675887764 425955022 922664589 483321281 935349085 807821372 846905636 919183246 830302274 660970652 131624823 502186241 786678909 912665570 264109781 158006002 648661828 796306626 665510446 720900234 836663928 844870067 712023246 738347731 627066464 185274193 578890056 752990741 748941510 699506221 863040813 969635411 685440763 39976687 107325557 772995801 28435994 975702918 915594454 888824260 437946763 306786515 775111560 618195599 497078827 790962393 867268551 938613850 86196204 77286875 913526801 322917737 958220686 911155790 926702448 941832645 880540341 348463091 38184831 661146144 306363149 817245808 768539811 908751984 773267118 268462451 350363261 823929161 919997214 724368691 944822369 936291465 67162648 611084734 407803991 399114 81717174 466280585 9430395 763095286 806392276 590142928 906676111 968444873 842776579 511493181 363441312 441138399 270574012 663236321 793837158 981190003 851955756 655666052 372710917 463334 916858420 887904442 529783026 868600739 894168705 983997087 951019241 913537005 767088338 338676178 888252193 907377889 417586084 678377348 97661832 877303419 447566707 194967232 500680743 467715441 275253505 992110932 77683219 980473811 803511204 948834038 815825864 374336171 758411422 834840399 680736301 489208588 741515708 870730938 250663637 824826766 787904893 617333196 566454957 903786887 12964748 747389841 797790981 36767294 607813187 215661499 908283029 873960752 624427759 993885058 316468411 377395404 998649844 277550282 222241392 796292026 511765067 813483684 961108024 910787131 635428270 453922891 481474152 285701361 765406720 914567038 851867114 971975535 858828345 823947313 38440239 466669196 95301620 816641833 920854156 467945039 959299945 391348533 908640663 298074807 862919832 115530972 846454047 922856004 153585663 872637734 627065946 619266144 483982866 837509970 295713582 585540336 739610541 979455982 144849998 796402606 208767479 683216662 829079249 70768243 350445072 643390361 915609604 880583700 909494303 110940872 898726383 838215053 975699461 993940096 911564820 668957483 660887758 933995150 747831817 802402862 316545751 41487958 175115892 607555105 239817079 826890461 212542334 65862501 746309572 664525546 87980180 948491437 933333716 769210548 505586357 817637741 570431423 961546960 877754382 872117572 883708284 497560203 987602065 698252238 824842150 950367683 172141979 358203757 964884314 826823868 678989559 742641430 584697202 569661642 849548009 948198902 739151785 249818728 804336246 438774326 901462941 787584160 519744941 309339784 742077673 470186068 819837138 890150050 483801876 987011539 753669412 237180559 874238303 937140174 118649504 943669367 910997756 281945962 746021206 608912736 242824486 921869896 915236999 146998669 610098253 887088815 238849250 128769072 420922445 232763201 676287598 415012347 788165978 970661219 131711543 773716069 956579941 179902234 773485174 48704075 735794330 274756586 972377800 861736594 450351876 352669536 943627871 843805922 497596032 218168137 152153584 354863402 782082441 913424883 710898084 642573857 996975625 68114042 999131223 825213301 747370870 117737877 147391823 354482056 547640172 378168674 969157001 911142119 772028347 323601490 760114574 885268431 441737177 558538873 95302831 767886438 862101705 853267135 898362294 103473981 805317351 63545822 857173319 318694208 534665565 799149077 813249161 911580253 654401497 913678751 916746686 836351084 913222729 129860649 779343554 147358409 252383157 23930631 565998035 862061808 140484924 781868014 810426182 456666322 860630801 541084332 156982412 353391006 936212595 341183342 184837723 780068386 780090135 269385178 499071234 806385456 825842640 996466693 922220974 671546455 820286768 791594388 587740526 498719012 526463539 975122699 737869452 821583690 858521341 132699633 591073075 421320576 244153736 7474424 941948330 298569975 868865662 600363088 738622825 623264267 564181929 975193672 434288669 821547837 770697139 416762734 628759774 835631024 630203657 379306895 723799153 896600922 953877234 813299643 982811170 584863661 562764258 863574719 727233853 13819964 738143030 843487849 744558462 864468949 968755881 108471064 912385065 773315425 737020247 529938598 705726646 631637127 726801364 599977173 429673741 83871208 751006755 158290200 909225745 971109782 854684558 744583042 824876328 793702102 8584992 176927241 649414624 576459138 920779087 663664858 952664519 218738664 656533461 848093483 528880150 45383012 807257562 825723087 792382400 295225570 932303798 861886806 785334827 841948787 873484791 960866923 998587060 753868535 781463129 996729752 528059331 960082058 635886668 462873541 79372309 950990200 857146637 478041161 290806665 805563801 27943199 792597064 284661182 461179565 892247289 980411031 461727907 836079626 913862061 814071327 89683531 432004035 924847327 292801029 981426138 640719281 39490063 929881484 834743589 928266555 755021514 220638349 832252098 650175030 89203288 843883494 746910991 567311620 736726745 971334933 991749808 874240942 959832074 943999185 528492294 60854769 715866205 707015650 598672398 903666747 811812232 711992206 808834296 992779806 834633317 272660879 898670768 928180231 237719694 593376341 216329158 751177434 937647351 773124028 639272648 397589226 737020247 74893787 724082660 823427697 639747993 71700635 343384263 405817761 890157591 793453240 241765399 375383002 998475134 765133450 4482781 519018004 761734124 426079945 559845507 281418663 860907902 131311750 741725539 200655118 945402296 941873247 446233476 6108960 746677871 712509999 968785286 904707480 267665507 433161251 935328410 435234361 482512523 669053275 139462412 21092370 125451246 220503186 867179495 433070358 939093327 470420708 606111299 9969206 844710907 984787751 32485418 965248808 376098442 157497349 798309657 389957250 583514000 941021826 898178803 805371255 724482201 349951350 933482442 681229215 201414514 599741128 788347888 406278425 742011247 811809095 657072617 594499380 860318151 593813750 85993417 625162249 771312708 801926399 216225694 911605319 891687414 484073902 17225176 855985829 441907835 808543186 883879556 368594237 964445437 353510043 893928568 441601599 822381250 753047833 591768189 835316754 870314998 858875062 780021535 890497006 446472558 543895379 131817940 319550954 189793641 966380789 430149520 412107513 802038137 435613505 809018427 302689284 757079194 162044549 964304618 844102838 342403019 914584617 871350405 598671725 292957023 697302204 353342850 803597553 394522764 968884796 126880968 489012740 25994270 604632463 638226013 42715219 71907687 66554791 474652562 138731672 966490339 98823434 841705332 587594448 961845746 281164672 914957201 970026666 110744883 177655846 524570342 865289890 351899945 100570495 956616930 807543531 952191773 453848727 747401354 885586701 751611464 921894354 749763197 590243087 64387368 524382266 402836789 581840661 442983647 655096270 946553099 27567004 131692314 760632267 853910903 404282964 600405071 214227211 31947903 900380234 877033621 985577013 833035174 328004277 698239220 137059020 915179449 847582759 160817736 313121077 997289993 984199702 75362850 708320942 987724517 944468562 766494460 836552200 85564014 156039554 947035262 808492448 119731146 350135341 279396560 911882171 741341852 692943402 735598190 957914217 289990186 943152278 779274855 599602371 935217994 772960026 241140011 370922779 958065620 245341403 181607103 614441876 81144218 987918397 997060715 822622595 692566703 974779744 805765590 360986242 922068936 823467961 926802209 945290334 798533814 580220984 912672271 929540488 267803153 168736250 760404841 942616134 114550865 857848087 969127406 384959799 622462933 755981530 843053209 996935552 664668594 243254954 952118408 825847609 858720402 882225099 853337827 662572932 740515484 624820976 989605746 896260584 928217155 141533709 257800098 9447807 459472170 762514767 795107637 117658711 355096738 67096963 791618383 244962541 808306251 703965827 835251128 56324120 180739081 806360647 63975527 780521039 721269648 522699967 677808870 148397607 267667970 970152377 943269375 792183499 809789599 831717262 770280023 705170171 840487399 851168401 782958825 844671105 275571289 279065155 131273736 343303039 977046176 772287813 35303120 873126550 851071792 328642278 984002441 411435953 790590542 219021462 888983410 280993141 192872537 418582109 842092360 548787495 321812250 996722221 866646933 405440472 471613504 362106178 96238421 864957246 193033112 947185613 363497522 947922966 790643882 976657925 780368080 502290506 801445525 560266390 68771520 820800768 758230797 328444441 978622582 961695035 90081850 888169897 444223430 928902640 11664823 908661060 809400833 757344287 630100396 750314039 703604058 441002451 40828952 878481347 820220493 912810726 937276485 433715579 818299457 933201020 627624523 840609462 482470491 817359221 294067477 927803412 972433540 268085374 189243624 591488637 355784818 967814793 926064122 934182577 943169407 908636297 175304386 168226026 112503010 848808079 268267454 486401545 624643498 55773882 40790511 24400697 234894977 717904576 108375971 876851066 106026367 680208592 799897894 979474601 27164233 294061799 996715911 862442727 862399274 119051375 546317761 900642393 898481601 988198921 334312659 179359686 451688861 515591919 778390472 758422896 639343130 399199386 804387453 787778507 846734056 846068811 745227900 844382814 817009034 40145041 281109131 972163479 726966976 847299699 648756690 968625378 662882654 782388112 305670757 133829177 952825791 998273656 809087069 968903663 741830649 775737402 931507673 278789150 129414857 825843749 240306787 726079033 978793618 361008392 936382817 550061855 690900007 250284124 326574014 894170938 807188155 851147625 874092286 472857844 451622417 193665603 159014916 818092964 49821995 200608309 945617873 357781707 378364024 78002581 155151841 246886540 378283372 644000485 974791127 930201558 407171107 696928149 804582391 972600793 769470382 724131416 737020247 737020247 847397646 264997196 413479051 655106614 774669419 294323014 580254280 292037302 385708803 883067564 375551032 232070548 35794016 363605313 488956869 835101827 710130499 745648471 874909055 770394195 203030772 422354784 977128838 352578767 925859618 924046617 865713516 864731720 80525700 782064478 797917441 905011464 456699772 611086622 71612670 750725628 420248276 119177844 952253182 993977188 97014167 692516046 362891540 854652734 744040901 417556506 791686685 985438834 427767286 445689513 167260757 576081678 846168673 613948653 863663426 290618263 590736289 813894008 730400027 773471552 449647807 52388043 602405775 924953012 276635966 176115968 641724735 936965968 325922801 476129649 562335300 36619745 758118152 650993799 563459994 358206042 747237353 280083213 626820295 757920711 995288770 516640116 845284569 283522125 181226596 888542136 211780236 722101552 771583234 945540473 858331718 757868625 67482360 557354832 637393707 257556412 971566430 915244119 395760282 841340295 417023739 248770857 718927729 821876781 971103573 251930122 445619676 599374483 65372141 187482896 754085519 812168845 572904199 127816528 323279844 797135160 646721127 777793531 760082269 851258175 626532627 371141722 28506958 1173202 933071724 474148495 397529587 778242373 319669127 747398757 23219352 863085026 872995109 105017601 46339937 983626189 142130379 259671189 975153618 406531620 33693454 327793515 924174392 802486942 201462381 972856825 904043391 667648573 968103788 155301411 952131284 807864717 663605822 570266141 425219623 784173615 792907782 896604005 907873353 378902807 763901035 738535820 164425654 727374595 745548631 766360728 491946730 513912134 636484474 445532593 213767805 834233839 341167234 467008407 719982549 96050664 689876935 614586244 235167691 940954423 95764241 843608671 36847639 314178295 68402530 838521009 324832253 292282053 836232621 878184745 520181576 832905046 231066771 339773028 892916553 780193818 137984230 306233848 557621676 334301463 60214657 423804475 663198496 296491860 898554001 403977620 237542044 834813108 333999713 817205179 806943919 927145582 799578904 904457742 517158142 847073255 998231580 834347535 934617547 849306354 831531461 866213893 908576073 385619614 757277348 486241249 132799590 234548412 751545071 844175809 23703895 365710149 636456840 853452725 753095004 239656250 466604086 837683292 627677297 257590341 972435981 413252711 896769615 814108961 985147971 915337542 919034084 992287288 747646015 545263004 481768340 930975761 898112467 996278763 971420749 237692878 788225065 817427654 807081595 778862004 985346220 856948652 680722987 418758006 661042258 59325850 784595399 66187543 753265560 132400432 752208502 204705420 730726592 676104501 397431665 476010738 821196017 959958849 780373608 963700977 292148151 950769116 940622052 748239477 549549303 311713305 851155844 283435007 904959633 231732977 758993879 77679003 274746845 515010071 832478969 825942545 249228000 902920458 535742771 825674062 914681511 673802492 927750405 820581192 205570679 965733870 957652660 831099738 238354353 409227639 999794382 190553244 292551942 835680510 766840014 446475904 137827972 148038133 12390407 424701480 970362022 711316889 991723131 220214334 466810699 574030981 894588662 850501653 346060370 126235863 815299166 834706484 781390960 243373830 427249005 353569415 913238060 836296889 792416033 829682529 638546819 467278251 862453035 863449238 660212503 299860037 802385750 303817696 475069996 870617425 896224533 829460123 848246295 998193985 409327850 273906440 40255386 852386094 633719616 533717463 550849986 970236001 75848491 128799706 976670750 885460582 234792643 754664301 920827443 831625147 750304597 677257897 808419371 16299771 156684938 974948008 105952559 560078622 585869595 664584999 826228788 256536636 767435157 73777971 543883877 743358051 762614103 591675221 435500979 605209552 940217817 283393513 956373125 656760741 911776516 550463668 248384164 484098236 940802166 182727186 535080931 573633673 759349809 781498204 104808162 760723195 518591963 870765163 902372404 24302692 877575536 154065834 154186072 380119164 17732249 99468104 904350898 526840499 428676788 862429443 628416508 675910126 324294548 974573061 564453362 960553501 414276507 642839743 707361632 259876768 107043295 440170661 836381261 21060807 805847884 99046454 859654759 565104036 327737237 893213307 6479015 432293206 898490060 101037536 737020247 436090560 148671370 876017115 468161108 310145545 862621541 902990064 83734323 993614974 914437302 628680161 897837745 841649579 969884489 920899216 254714383 823630389 833005793 641097783 305402691 171420200 346793234 930259487 791241045 726724742 986050933 191316389 973818776 970759180 658821146 581385700 952034141 527946674 673198042 764783015 873213568 168611226 733423266 751484877 912554210 477137542 863579520 772597237 803274233 893879190 517990078 989921245 822683468 673016013 776592170 674310550 707635180 254270848 966994112 779913296 792177324 896981595 270855261 524542999 887213010 351595380 420803155 132084608 166627214 803736355 801319472 852391603 828098731 72668891 795768024 723347214 784227581 879931173 746893599 809038101 724715201 133296557 886144229 597402509 198382687 955285138 228480939 745278906 495316892 987258729 77090895 805669798 252034055 653184069 64648977 86967813 976808576 795943592 392090807 415384158 270487213 439301395 400665757 585074103 984267454 781225650 90578745 935930273 751509152 961772524 934257439 985346904 672196140 417300357 79275324 939813218 366411084 141276260 744448517 828668328 891840412 775238640 932321112 693044784 62494852 853396270 965411960 774356059 7522001 206249931 937122914 827199984 43250747 689705993 836556432 957564854 215435120 855127141 448455952 780695249 33897086 798325172 375749784 755936489 772157911 844662389 20611947 440729249 100531373 759344139 886342368 233880942 879336009 727069228 944325461 558558697 717461149 444192514 221781879 905029619 828252942 824347263 460136828 747037940 485603890 625701087 549095891 932246881 912562429 845731006 203228443 605419390 945135440 840087425 935922062 942519614 595952235 973578984 913037229 34915012 909932803 198906412 562468011 819125833 456679645 939901247 767593567 853607762 971848124 848708615 802824399 529899844 782336526 486841537 544993068 839694099 826174388 777885347 557720410 896362299 821364787 839234389 984129499 896308106 811307826 901197076 660076202 227937267 814142518 513832335 996719873 745199395 492552269 222907237 913344330 952362645 451007639 142485610 955333924 892890458 790974232 398332813 885028287 323701328 18131096 427686765 999455559 894324970 857078652 751860303 432699151 860208819 930917898 770764296 707053302 923025019 664346984 197618116 700766199 900653598 927279259 752077242 904469060 872800049 836030156 652773099 767147936 848603867 816433887 191706945 851216012 145609972 991546563 161395689 841434214 69654267 388686181 190483568 128558245 319391524 654719994 525640550 182851074 90838762 949931745 464655133 943923596 732764355 954973910 719887365 564737403 149786704 773826355 568438514 817951815 261293013 843835601 938299232 84495590 365616011 212690842 884800219 928072120 948633648 910249228 441951936 499201643 668828460 343116375 687787453 998441958 239415595 749751644 298738799 963193056 688056381 679553365 783509370 982231857 934852004 692374399 124878062 899199301 762468881 923310582 155505844 737370852 818756491 494670191 765958387 103331775 898646530 819090429 798487167 524044433 338986129 921514477 153048297 427731728 61829548 68933009 935418550 889856764 823506756 764822801 787767272 182967242 766107729 807564617 814468479 449986341 49842447 600186291 989970153 396971296 976153268 956845633 673471634 993484313 932257446 957789883 655453168 917625833 212810458 904915643 402004014 860106146 898712497 752189758 128122518 822763918 142413299 866016846 279813293 227043963 765676995 776723501 127313316 613368373 975634384 839615354 653856659 195129463 653994600 607902717 140509340 45347691 624616990 958921214 991758378 889995420 324833402 751271262 930115057 813576731 838370699 810859208 774360134 342632836 879670721 144496907 11572195 902633473 806435979 792118824 836174597 930346692 829735225 868461592 322611025 217501395 936212339 888079725 850043442 942818560 898483770 230745739 236509953 2026971 947872439 885429783 128903853 7405939 916506595 968222821 800255981 765293188 643781288 259521166 456798141 453942830 772661392 473650197 914427766 904944076 993787619 763402283 413590031 783258265 730685473 419611741 976559156 767960606 826478912 470966452 24157736 474477541 895941819 952514690 289902496 774500881 920189224 378391719 917232300 209136342 955446276 721286053 467815246 781608738 737020247 74215143 802732371 856251875 538991802 210515929 104302992 946315095 143101173 740515361 531175443 811812847 161275403 999120584 352962667 508565653 460200124 977411578 155114142 936791426 136886793 88343274 670174776 971960670 856042739 819243099 725834668 951950050 903345120 900672793 786629932 777990291 731747881 790927627 900771748 993085919 782765000 764567056 979040578 487801574 884130524 755336364 973648041 853140169 290776175 168743535 836621772 974048635 823792525 349626341 148844934 134357659 816305468 507983022 556317812 731939851 871189615 123142410 198500219 553281496 337934021 764783980 524092965 982861105 859118597 36461715 801765752 889873559 117967229 874597001 738044607 395541296 248163183 924791080 945467282 635024883 290922097 112442306 601078024 255759878 147139735 986495039 810122074 127822775 242132626 936203357 862547591 947925734 505831299 808797091 793178852 66009440 776803869 171970068 292751498 905228574 837501791 758432909 954482868 127156105 616776790 817049095 750515562 776098908 529608911 753152999 817011484 542755206 887755999 184933355 693359576 407600274 66203588 874470788 898376300 318628296 735140599 736795617 940385329 972952095 237595088 480162596 568971948 611094424 816340847 827393137 816783705 38048904 670948348 797463617 720845885 957119253 3027874 442264173 343260959 54631246 602245851 787757222 419168703 104284790 901295174 957817601 893584633 378606337 946401482 869539935 230814629 385162196 708966582 830099139 717940379 779551738 479608564 927288787 494933438 63013159 843424818 557528658 880171722 649475187 108260255 545969471 540092249 608839783 282060086 345221418 370829648 418622821 527586956 781103660 426847822 439971415 233460074 808937516 170797947 504108068 52487602 158673761 735986398 497934966 906856823 930168353 526917768 752732258 934223163 214441085 122045968 383935739 848750981 737296066 910466815 14834638 970291077 894440112 107106918 368756918 669172359 311445077 346803854 755373800 975750870 737360208 788513471 173152398 211303529 749487978 977002006 351950745 92617068 472288991 859925919 866614296 845035113 278684808 731270277 97818951 759453277 897762734 606840054 563965275 371047787 898487963 490647610 848564922 518650099 787843085 433338189 956644629 352469354 834706185 357048812 816051837 373605670 811093402 707239645 747084233 862941561 778985367 117422738 459378593 232730003 191313757 54392824 877566428 773521543 743275005 164704845 877132540 698959476 689478684 278229241 510135557 612675874 940609140 362147056 793579947 489514542 704036291 851202834 857042436 795982138 931180122 939846522 272382053 479130352 893857861 469485273 692471747 951058984 197160753 525858002 653423947 766058003 775053549 94889678 904403866 112737081 974557711 107567353 535354206 739483754 884995975 79815762 833904368 953894887 867195733 292402021 860087055 820973375 458799858 622157258 966918964 819513239 856456569 32208882 831897426 748908314 529894002 913596596 873458408 812351018 768820274 341137821 851741043 982492881 174125659 778486808 164262581 735494759 124824899 363889953 223842701 553057755 785585052 653819897 588287442 909705718 160159824 748633793 953498965 911205498 94677451 939855463 283309344 883898485 851354836 845421410 851007020 409588495 293176984 988203837 820689309 349458508 777883568 279277381 910755767 689722546 881819171 693252660 720857864 111582723 390119558 365611733 540260894 943274290 681013008 361892571 644415022 335462859 35556742 313071547 4912065 831023810 673423264 907237284 213583497 124702458 893208983 382996211 948619070 846209662 8135720 210162079 775466431 561190955 239580110 903679460 721819075 933859645 908892147 765148677 636425485 751615856 759514504 139820628 978775039 978609739 13597296 86223287 366541585 577775350 959176339 784856386 809979156 134725217 547256830 170944259 927475139 481660180 952627851 979906620 826635822 347925652 941836859 837836420 785167683 780844392 930864292 617985249 846018651 613412363 991535947 689133303 170998916 696800748 904736591 931092522 334203561 739273872 949407435 940338612 926393308 965416758 830430320 765093662 918064934 753936081 887632658 167852485 934434555 695172797 893956679 22265111 320657999 9492866 548395104 135083179 332776622 137512306 65947601 799803860 810146987 234470499 827561298 831133177 987106982 968726941 159148421 497978048 46457914 757621561 806516288 741492548 782807444 401957085 530124362 296131449 693463854 799862708 207219463 394351478 124226275 355854084 754185441 828411208 532933719 737020247 860159184 694706631 210899925 280096823 968144825 882192879 97269400 981780218 262633504 19913283 943667900 853349442 926094106 830301953 903695103 811849624 804210520 879210552 107795099 407502363 755628635 770196103 586242978 886179886 431194998 974663328 565321558 468021443 834250220 122702650 984893881 949187142 54059796 847126593 791813480 34274384 154384401 766554732 95593945 830585520 477781535 218186746 850936421 237536677 918828873 570326626 967423163 344506335 864531382 96029706 794918925 462695881 863938527 824777986 992145510 563777515 967292690 809958974 392695852 220645357 246132300 500532589 861076104 299497053 805249489 607765736 452626414 605545068 192350514 414470810 404311448 31436280 155065238 612195551 822531971 36678692 49735249 382123100 213691659 578452373 869304519 48661647 799999937 483086024 323111071 774794035 763165090 824465029 292758331 963464576 130529016 30380927 423487627 16818364 208459420 979251707 810563469 610427129 459845435 51736411 57714564 874547800 811268140 853837125 589071742 274900285 296658124 918183733 564297126 856766766 95552036 141762467 899426759 838277581 456302696 921369209 335167388 752636341 126025469 760487917 394769267 811101512 353428846 872700267 596543192 844195103 848866143 417968348 902320701 456196397 230619922 237186825 984034568 980431693 898936900 982080959 811531058 948753019 314688962 950356333 885557443 513086371 423132318 356982112 784322009 872723305 820846496 399923582 770195271 192839877 706650193 726376497 249100448 756795650 53460587 630401004 738181410 834766540 756882260 850985283 849814931 877859720 821002464 746710172 816617470 835063520 267969508 877830150 406279327 808060901 887188593 301583995 711947079 451467267 473676874 860339642 931693571 821049684 842076219 306627996 497506190 270099503 277640101 926740827 836137124 830574940 175466784 367627292 748120066 125986434 562008862 263534810 61135126 581701939 729728696 513596919 419405249 272391544 366464274 433369927 301889995 969557862 891969905 952733840 946926207 428983979 816773154 795142720 865026354 50557276 811759362 69402181 794125418 446459803 566790889 42118239 857829172 661186450 707695465 994505780 273871376 965095145 33103279 906284204 383016005 574552359 394913145 490494998 877442601 371194486 719263465 444682993 98482547 915430321 864887756 575698185 77004541 968219865 797497245 820623584 109922552 992648443 226811945 764092540 863856396 65021404 697636158 737020247 831806510 541766565 331398480 514464829 257484171 47718475 828981051 60477266 432204148 744404003 990944195 702242475 796642245 905990602 392525535 846586243 176223572 800913852 153891071 65975173 726900303 960285371 971213634 992096288 378494943 118302572 208345418 308665654 188837806 491834932 616271296 909847374 904109927 772443295 916201310 948462804 985773585 658786378 11779938 739586903 153437565 377973042 994640283 824731755 760375022 78843317 829132332 970044486 667605269 795504617 964849562 969751690 866675878 950183378 385596959 753597139 690598495 595590945 603971101 169689454 976584370 749541155 659638568 336134954 846159067 99791489 875448671 955985843 55674240 190592161 946913946 900703577 505614826 863384246 320201268 903444754 752685002 924253616 899943377 794064613 997736615 926835286 995670331 977200614 28606482 618271530 983719179 711146737 144246490 241535621 934695014 929791875 859021031 990233006 937146819 344370776 684286026 765402403 502223668 748731339 338528828 520169786 417356332 357532461 829824446 89311094 889342167 282473232 846775882 968680802 786627615 139905795 56967652 968412619 91752947 967811637 528105491 792456885 650312805 801722184 989931919 944390827 674994171 965643394 815619539 327400455 45630587 232895321 737687770 804017759 811848664 895986249 370497295 49706486 876003109 959469244 449109983 956498604 871264767 787071641 807167953 853248059 997467078 739840284 177558226 234419925 794527501 262697995 676323484 428998716 743841312 618520182 896048500 780316818 285283291 946682880 884904660 869818047 269610166 355339888 476875246 443759394 639849850 55857591 875923470 751906552 678033375 2594426 699224533 79915393 552766198 709624642 481940726 245876136 695068086 474236371 880842712 999363809 498487507 887957794 165231507 681485499 641622146 653293999 722501641 571769868 787878097 22296864 896775315 649936946 779203660 249161528 825378882 682484161 977571993 893003694 968233333 200363132 347110161 234409721 693457069 51535409 127582806 815277692 803393692 738795734 858130049 937033175 983029736 994641502 169298578 305447278 316239990 429836698 995934021 379302430 842621 288449993 966248135 35330318 969110822 97111484 35815949 496550723 459155097 783148784 981755377 867011909 902029115 923492728 557599468 295021810 931147037 873092864 775877495 155429356 792886323 897871556 774144097 891309129 914598944 844784706 788386873 988519531 194388675 834519851 900801057 734230265 509950463 837314416 930229033 444600406 753052839 865496853 439590177 559222717 921729325 885941025 541012181 779486448 321756113 620048992 825276649 72511761 180168427 823749806 741315144 958895248 994906095 889345816 836856486 875707400 161419075 877549460 894547452 37612326 671084249 403012477 743979361 821365008 691582139 622149063 938864502 936451605 984382534 141800978 896742597 17293452 798838590 157233775 780505783 938896520 944034728 854950892 858998434 571232726 220489735 218986132 863462140 537486645 10269023 965280352 442421955 841107337 740887016 369162241 160857465 874607757 528752934 480211548 750577621 559097365 815134447 631487446 327598168 508248062 340445505 251930991 998646233 958291780 499994027 804831978 608062114 990399185 162438906 233225859 252865155 161234714 210172284 605959981 15005143 992840402 988838800 360164094 219414526 535617359 258351211 676411001 774858488 703933997 713074307 945942271 658250796 635425174 307087600 100487991 130919655 960963104 925712000 567258323 20205975 783901360 296003993 9453013 113387157 22093389 298805884 476286517 819201968 715774540 33458316 650069216 472534017 297065926 472204145 394686651 726853289 132415683 163085076 975312831 451537120 292907954 110338017 111596724 960143722 525232378 911763025 902724404 938667587 817047581 965708162 833227219 779707145 998876722 876847488 844123318 425137116 725069200 51048867 198848047 33391491 349732795 973922185 769204975 676559721 791383765 255086508 893250572 776157246 679502272 421843382 87073755 159650140 980420727 123152648 656720057 910084694 570707093 339383990 815291374 284460765 207690920 6332267 470214815 932555712 227091379 441936678 936242591 776434971 865236138 921183755 281604664 400862987 842550900 825974329 719209172 362505905 210443950 362844929 769877463 496732302 907542348 496847732 346019725 890326137 719292647 938279902 510301714 921928219 489854912 595095061 967239427 897404721 36556749 941925997 927168695 787534035 182520296 973424035 305506701 900098165 739410365 668004019 752910110 521510211 747872300 126130238 697216458 888309855 417703361 377991840 719888886 540923438 958847830 833089000 70584060 739874086 984490088 901038102 932361803 871586634 627732224 672649344 958558866 924372694 807372882 565561943 726607998 77350472 664447069 810272725 915270312 782824232 379600961 789646127 361557359 818801944 77774110 958878450 743266656 923921671 285669346 817529046 859097701 171750507 831023690 407820426 972188386 831096232 850371199 912756123 788000438 119687831 944667893 73654778 896828279 260407046 341850643 290495189 365346792 151310091 255852043 956069449 895206669 507136273 753202519 567185752 407369032 950273591 452330809 745812995 370418636 427620811 630235755 724255599 669204872 199791063 843899362 885343818 124915185 248269817 31397803 176023193 800623575 827081289 113414868 979112719 611819553 848981340 210979951 828336168 888370858 44481512 767866329 442636607 992697068 801492108 787139470 164780860 122171737 95999263 877486399 947677552 616560040 185936757 669475897 444464536 943889883 810185431 912257908 952759715 125175982 803974863 998295789 831474992 902312187 965487535 904510734 137355508 171254274 772820267 67937410 311695311 702447262 230683200 505646415 993981329 808050115 508972476 132016330 999194520 120174991 307661197 139585480 947669721 772212900 589421500 778208389 77584856 96314042 45650232 919253033 76693118 543649205 597282204 649344366 898247544 311219315 146273039 670029245 343461744 998309835 630508041 213540655 997265694 854472182 132761815 42533577 348476819 862405131 365583260 999317494 142899708 917525076 708176083 18190509 368045679 931018463 948112942 286613204 845063873 374020293 281986099 923065419 30601548 783258916 16894048 898316965 635175874 961442639 807326825 259904554 756260126 904516792 762245732 86225642 761583448 339769366 447779196 870121706 814677754 503139437 667005088 413994007 935224360 815608315 815990094 76847469 865497923 799004487 904323104 984144781 840552125 508004828 946584891 865288516 380850809 520004655 936336984 835989525 940602382 902270546 45807354 977358532 883070068 691737358 153738060 989836239 941717651 838078616 893695109 769418049 743097104 266919520 933711947 781320202 557886792 532797879 826775388 748346363 883325220 34803282 837537103 983724319 80086824 723873849 991734089 652586026 70168978 638722284 283527314 855406584 808416998 978544819 933021844 872295313 478194321 748663187 859823943 522908515 922179556 728773174 700344185 792574849 766805478 802848425 173603399 626042536 217546839 634295672 533912616 493287128 779626865 458741964 273326668 116542744 751096583 804834571 890401647 114299994 140939835 855755440 637750173 494074644 732670519 763632260 718455638 310629089 922949539 917865400 733738916 856739884 826138911 986067635 822000963 860430404 952900557 771614057 914849483 112438184 17268239 378284736 80745213 841239016 959801613 942651305 892162053 882726671 40963745 890424919 825750658 38644654 855274916 749079649 208654219 512517979 866807423 834842791 654337769 80690618 317640830 826405514 192210654 476462213 688300780 761604066 934297310 860841399 952395646 835679750 150399983 983804930 844090204 864602348 641738745 30219958 253893873 517758096 868044414 860993178 72294350 695203225 931944080 756462913 817266233 790895179 221595203 880104562 40083343 11341010 844603760 938284817 295639309 112172947 732731008 671549251 634942358 565860945 808801942 828671916 916632328 808501456 397472113 979289985 948787839 357632735 910300250 476609877 619986614 556807319 254102389 710175305 768177695 76070379 570328808 848618877 466596858 230160508 980515692 595767729 709950839 45116944 999063175 449134930 246232973 818545619 91137376 182170778 814992891 379974688 656373388 987572301 525840055 873088210 958656076 994416011 635980027 995842447 741879247 328242884 103874397 768854733 57623505 773171996 598511905 668371721 760596847 175959033 853265198 9395505 364663317 985962653 743286894 278615266 938566730 717679355 516517937 641918748 2783808 940000483 902876511 189904922 925560007 932959885 297685151 535684710 672475473 997049352 791130128 267347203 686829582 931170006 937513079 667500330 496301857 824003894 943372432 75290448 763861727 339557384 584686010 878064276 246787273 524693956 842353591 964986206 893112409 871067182 233957353 224234073 777457282 889562643 966621202 258267714 790353994 226014363 102140448 45625319 314988837 508115149 97298557 737112495 755137860 748556073 332323895 36950923 552313451 931153449 902025143 999768543 573850940 805252652 729277281 320573435 431935696 761113627 286322468 787992019 900976778 170135715 50207366 946303056 739235910 940152339 21230678 68228377 992802299 859882753 924551251 814337272 482523363 941673067 302102582 319367840 750660311 890216214 18430510 2448057 810667597 271499117 880298916 398441863 402100565 791949424 817431330 839543369 824265451 975173848 189765680 796344957 970006413 762280536 881602315 756949954 734477676 933708234 220980866 22311464 407695404 88844026 823658346 774285725 248184614 112508283 738368933 966094953 353651365 951097981 314443087 893253354 774005085 984659109 954040936 887982689 324801492 313364228 628839341 947464179 870528303 266412697 841926763 594149349 48536331 972156534 910276813 800704727 693410934 294012724 922645147 980709158 107703395 322503177 445335316 777183964 44069243 897131525 957373940 662469318 536187147 912261054 48195428 969636053 863968362 952117981 51172120 975566318 914074528 467374903 789244687 954688993 592513000 17050890 634520619 134360285 974232844 240832239 524468819 346538839 986577629 940897117 593360247 349098471 118605254 961379070 966584094 42469947 901151667 685408572 908526626 294067278 627536202 988471278 859357403 594087632 759089416 314026721 750720462 124492109 344823716 915454857 353895421 944965144 677492967 653795494 882597466 601631562 514977338 691677626 353216232 486356642 271008708 842761016 1438319 293107819 230998171 188328052 19985034 984890317 869829675 869119786 789900983 957900023 918175610 932609440 886053451 430857375 558209565 866187478 402200840 950978421 677717994 20735552 811465610 985530551 885221714 174779262 782211139 807126186 432353242 702667250 481034913 942114133 479505554 172527420 937435020 941588263 867671083 741668397 330626162 960872560 955093723 968670836 273442711 825715762 795411214 356704539 669860477 969223769 916944801 926375154 899220983 847052036 862453254 673981009 692029795 134240066 583452161 435959208 652890381 714019150 62585425 991411132 133228009 265562365 239129551 897051585 269919433 228393628 289169244 763887750 692308365 996364366 69737315 931658253 702939694 743725896 432539042 400115930 789222194 768835090 990102775 969593692 947448899 891955377 726846595 905243982 198210889 757200493 952901523 381487424 779918420 990505622 783023100 730919227 45938006 203234947 45406974 765229066 535276240 977412059 675804434 808005041 42156086 771670264 887250811 151491970 918057035 983602877 983833175 170324794 888003059 53063624 759116150 756579155 618932533 980771772 769522465 638352621 757829561 897859594 56765471 714449905 696781759 748513946 494922920 788041967 756333673 713408215 915198826 984498811 407488860 987530830 146748477 919629477 35737934 883046422 885027552 518988329 692626320 482230415 935978171 257150418 866320896 729747917 788699428 497741198 957362789 867522450 599727890 772564468 854763208 640717822 769620660 801966689 971128436 41739455 958932160 289676637 660603276 350339468 335253914 107761760 771172627 932923199 366341799 959522458 946992370 971456800 125042884 902040475 931791929 982258 908749484 825759651 86869887 217783159 260615091 303768211 240426536 365425013 780390288 391772803 768570165 969861166 462597739 774740177 541448252 936776430 770531782 550907807 2444035 527262634 121831481 89070144 905768528 917777772 299055203 373955393 324692996 656219464 873160217 922558541 972009548 199291026 140037891 603871683 283640876 397519074 796007359 978472291 909749784 826390396 96611744 639938746 952761068 657219577 747386282 105296163 24649313 949572736 931243769 54808917 823548442 236712996 783668285 942167232 999514396 213342540 308629375 101683515 794764506 901723232 706914237 770263931 840395325 418200724 84881727 813145073 484656691 437062255 955374230 52174676 427447451 795228962 394564612 926646120 795638714 777606376 956801862 258417742 258474816 798531527 34630707 364516005 831945546 609968053 659149543 306435568 214957108 926730059 704702698 571919083 886077937 745490589 175305445 314375804 452595880 833136547 415796936 797333138 585050023 425195742 925612473 894432694 955298551 743232125 907779070 678052440 870914535 394278937 980609459 976363031 843603996 531849147 817569571 175198855 78346384 390910420 768092219 877952866 511656146 874429223 827121945 593968386 824673121 838820722 465925398 982300446 92966854 983503086 135808926 177819819 933139928 970989407 217244540 672095000 128030539 256191613 872102644 14686449 281915847 954620316 671768521 433446885 604499981 505716890 171834119 960494292 910121872 7701291 474525175 783235228 513337594 769861439 980142058 447232801 479020872 982884199 285085986 986347173 5497853 200839017 949524661 620922677 281977647 111206551 150319535 468461753 843966965 889172675 787539969 984693255 294348253 628726830 905975257 651097025 899196838 137292603 617823322 828902804 848365415 557251238 818788683 880832314 244399611 776523086 75424046 749677278 824564228 406486877 848323172 994027203 243262493 987852809 869371441 638435523 698138469 398547128 826896701 405612488 895124380 996302942 925474233 787274658 986706412 107317752 770639871 217459185 7803804 750863012 346540602 895355364 871987249 578484432 18804982 55941852 227002713 814751441 688677077 896739601 815985251 803131088 760646177 825970268 858770606 460384598 39901946 636731335 990925145 887152038 449766168 183833843 332847148 918861342 144967862 228523389 835690376 912809384 191378404 728361258 741798465 961243237 698942252 91866013 794583533 916486411 771652988 997245391 193170322 823455817 761144803 668268309 806187108 382596934 960532475 143490094 54575985 9146455 152371162 946245678 886991244 90567406 237913871 265357158 891865331 475291038 805909387 724299221 880992819 75878166 817361688 518785454 950481416 614269606 884032403 572234403 930466801 6151672 522163919 983352639 826050540 762181826 277729229 649004979 504246166 297986676 175526890 65524278 686520738 177287684 748440034 894423012 825100461 355728552 54762892 987513261 558060527 409838778 964095199 915282735 286588939 760595660 421992079 926906198 510276392 773198739 569896450 273358819 961926799 362780815 851778017 744192000 808308297 843607417 859508346 66750554 588206243 415560757 432766521 720370985 550982597 866678239 737770996 318562499 757126497 871942675 314735315 847095375 795077856 737020247 394900849 941950510 764468847 279127038 942743782 712008002 787302547 445949364 806889463 422003099 161609358 976055377 953559326 622438399 656436406 870753240 420641812 211079125 861662305 773678879 461299867 931332490 485509235 675390342 48249522 46761780 85329301 640211035 901194525 457659754 939837416 143789833 957498355 558968544 747871061 889248657 817693753 722999764 658705913 833173105 813294629 791674875 927206890 341752305 788594623 899985620 8584371 513869331 537458145 231731883 381517437 381439850 901859406 983053413 744776075 983617154 844668558 842518553 290551877 822707206 315681854 254491359 843502212 751064060 329016085 816281361 802198924 901026661 968086863 989456939 939708578 907379115 953605264 812561819 780326014 992890907 772073799 389437003 19684770 460373371 931835598 457786284 644492738 398927921 976198715 308589856 873408802 988530632 472028084 752205817 357226802 921240117 76742947 848586565 737020247 216244463 932345123 834816787 166635107 997381922 877226209 805950971 770651748 359958768 801645374 375462614 838305745 418370329 923331902 285962695 988019162 836022542 147593376 781494532 981153639 809721702 45809514 935528333 850877310 881783500 939371268 809598150 648161468 310771816 831029439 87376801 141848774 765005893 165557280 661780121 205264022 184449932 799846260 764716122 837815268 930759995 20232885 892330735 836762752 44410512 779106147 774338148 389987331 150360619 768431530 805403828 568167135 424819654 680139385 181151984 969545178 751760556 149740671 970099212 119421707 82945067 412456035 14127217 926601384 561346219 888259747 868185623 78529103 651796300 886143376 506552289 379748686 737231542 890693164 54518271 92318836 958416448 475860910 810012326 993327979 826344840 452159056 999196201 996079027 238830540 886416701 344031659 221002966 275893376 984637065 912837067 61491203 843672728 399929886 785224602 92298754 719327232 866283663 561599146 742190664 633687949 789038592 676074219 735117955 105530912 821632580 914023325 19196991 893306626 777820730 562389304 311561231 899947555 246699408 57752319 867588835 40346073 959702716 627779960 671456957 558448604 979233695 836434417 489411369 255192415 844549309 828526165 502530542 257100936 966565472 79053508 788133709 515430970 434245591 905779077 878088674 673132299 898802801 405544941 530145707 816851667 158866656 345070918 965594248 786848839 879799632 823194750 623303814 783473773 613270702 890654594 850836672 893323818 404043046 31015361 632657685 742410172 826317408 123931579 868144994 295536538 456249810 547105419 368639291 990505414 816542020 781087233 169810834 717992509 939048315 823011808 155231493 89382741 464294837 235627321 873906123 753930298 853825502 737020247 527243487 825728706 625001735 306285067 140181280 972651711 864677688 960475667 892259069 202232108 889234765 929887266 334301198 11102031 281581971 839241045 299658071 814191982 647836862 732541761 802097254 589296732 972770688 741881427 12182181 848775508 877552905 950626187 402984168 119878039 896974339 445793355 917736264 927309403 908074370 943655719 60746174 403904516 249070601 180778095 862763614 755966354 819544163 709985877 309749750 789116258 472359623 145901048 948657783 174085056 900075268 90343193 767476648 217034532 351112667 939232770 858756206 580155296 488878028 998378628 770855248 117229004 114383552 433419175 814659481 698841470 808589918 61692013 507752670 758745302 181754543 240736520 779471860 193830684 834417153 909039012 151946476 836448394 330075204 321983120 817609981 985466227 959085524 862678076 272767074 986893409 978530839 856311349 790525473 423274415 370353978 925656099 537336937 41459754 884177913 777178925 776056873 181672667 614174520 236565748 977920361 738434944 453311019 877940690 219862234 884979926 739345675 863449806 918727345 371146316 96360473 220507403 213085373 444345086 902228548 92780253 946247921 739128091 301277106 28186442 96764478 798589798 890394747 404928770 228716928 888864322 194563701 525061717 798163346 943142270 405707227 596018970 659969749 934478361 694601131 38389725 927078560 781860693 823564146 629515496 950754182 948288831 646147766 886373131 738950859 98504361 200873095 37456865 939419697 917248181 793962433 963897461 83315841 894887327 807969322 849324874 142074865 568499802 515310121 387445279 407521922 202505966 524482416 839773550 824627196 168375859 277030591 952845695 959966555 656466193 812332605 784960748 685135868 126680843 570452090 403978980 467259522 634131091 77310754 803144854 154011822 429868896 921550042 744253409 855374001 934746762 657912494 831702191 909681721 956222331 594543243 955955051 888444972 262455339 26984599 974665106 279556826 313594118 874231910 877243222 751386329 926209328 980593703 646703804 986747885 744130475 787088315 769837655 894422004 706774584 593085964 999031387 751598230 248006626 778816233 883875208 995538316 763711427 371300627 773772455 716803912 857113550 843349270 852072070 944775431 63687665 554850406 431146554 823679565 884311609 756384329 711985864 229980321 822487903 853221316 922424675 169044227 322313007 694879018 802840686 785802246 775621214 752615822 415259869 561840391 835102608 650382263 136425468 721991708 339463055 920078407 179508991 157882773 743359922 333206653 783930627 117880388 949393457 690251327 239381057 411901091 801111179 941617773 567199315 960336961 800318887 811904568 849125249 952114809 689729135 889330237 800640668 809087233 823389423 993931560 191973707 961680741 555514426 821859874 737738955 792160670 754604049 803420870 550749547 236726969 533107294 55524629 756166920 897136643 253118154 928162313 531745957 322722832 762831020 907953413 595052135 44192577 737175167 497750764 165134311 16712545 982822657 833471663 800162827 785168 691029328 953486518 507029928 803994298 229199963 215788366 926811836 712955017 595732806 574587020 476794593 367268873 895082731 274931172 740442459 499976149 964113185 850695776 918752866 276538577 563236697 381333818 921796429 54207101 518684216 331917324 851140500 892204711 418472476 964104611 979547732 859874492 710005982 965394043 905322835 829525981 542397956 948485093 395805771 558295675 43222644 784877953 784549322 575973093 761848696 952936952 872783873 318764405 842105771 190836548 637227180 742421766 988063576 797154145 774420630 629045415 821485919 107176541 443772703 735417358 244100102 111654944 629711796 609026550 803156148 655933875 107624061 395312260 883647931 867288050 779896457 84773682 745621083 148922917 416893447 730234608 226879836 762193388 464281418 785338751 755553731 403189063 592460908 653873917 60298259 876978391 83231220 730758944 795702931 893275813 741782250 182343038 293986176 586428240 568687695 17302130 890011253 972857978 910516864 939031454 883291065 909285041 792944728 212846861 926763153 63882227 805468808 463774156 891280688 264848930 814280577 587900385 509161790 472441268 188889278 860351151 738108429 784124180 731017942 629734461 47289428 5290153 792813744 810310049 999924317 600914990 534180912 127945344 758455065 49995846 894320946 212045305 506178532 907715408 570938901 349294529 976270067 978264341 886654104 914010102 226831991 621143708 13582601 690022885 777991244 899036523 865194171 856895972 892764451 295070544 701757383 957098526 782843392 192516499 274557690 738266244 272934920 145669158 471645718 16064137 888134692 641326982 377736473 989705997 275453911 866436668 43377071 196040648 272629708 905895890 937097770 675310605 779027975 797079936 563338667 141570969 877905191 451133183 398906491 417307583 659426136 416066861 63937597 622541846 343479459 679993642 275101671 892245389 569730325 280193349 159525103 807708498 976013342 742774532 603792152 321831067 31757941 704373034 874167545 836581234 775530535 529082840 981138478 906266803 621078527 951015418 208738439 308431633 823499596 294156740 894387145 734505899 852718007 381924338 199527604 564458285 795132228 337893452 919901689 660068039 952037737 454689927 745221163 478431839 854301283 896202598 35852260 622325621 749998556 925345824 760717848 757516498 798073602 997733580 584327383 866135124 100804609 863789943 782692614 840623715 923749236 995906514 954929406 5103735 283607049 334222287 897075220 821528765 857078237 756309311 551528477 806053583 39361356 765840716 580983357 434933410 339958326 870003373 922161612 912494691 815158859 764378919 557067757 972861801 896972218 922709734 566309683 853904824 988115388 495809600 816823688 157960609 818724360 997796141 15704780 953502563 857890305 841352091 198073858 883908189 765622449 553545439 243673286 878335008 899831311 810840863 920363002 996589553 474008261 463213896 155543856 655135318 968791286 240561043 885269545 31541645 417866504 539196607 658150023 891799385 322787083 471457945 37961840 820092756 824258861 997099381 973614490 816387853 426874033 800386108 907124923 986544428 359616743 616553081 953737066 888348372 881601852 836238025 8559262 5880194 940362840 370461608 982260618 307190732 913963279 263550235 268808510 997001841 469633529 197811453 865779502 892484930 867929162 868883 609968483 987987981 710517590 939029817 808044343 850787008 748621849 732202102 911186346 326668223 361997870 943318391 941877343 661621134 279330142 652115135 788136611 860166031 845454599 602187991 683701076 575145811 961959051 771586517 995749111 755019470 438596604 816228142 697275191 840061305 378681574 892847192 819456675 765972450 768080960 770681659 949565083 281477383 96506118 750946513 813464300 877244194 841206456 347192960 841260603 856184156 546245079 910393264 568357978 219477342 224145359 720431260 163476478 281226240 938492473 596564684 362609072 922145443 356638129 550426462 46390381 27170333 767395535 224363762 764908571 893916051 700657653 814616737 699814291 733904090 255947445 842709238 854738823 815405419 939880401 824976853 247694438 26384651 737327373 742909752 703711809 977085884 855118852 897870774 795460730 367191693 751800710 877430718 209497242 965732695 578789787 755089345 130315452 463520530 303792573 979533422 935929434 446934659 797018395 883445038 174718612 896102654 418799399 55418545 145280842 598911096 18329875 949127806 249156512 696906089 883010563 783853028 186235300 921338559 624421061 908976725 612401127 100681214 892126371 912259921 907641865 687092929 982053287 527948088 403532471 775444861 778928558 584449798 961838805 957718486 941992825 842796255 910899008 963681359 971360968 158447355 857144263 938561586 897320744 627541494 817207294 982985646 185225691 465949850 922504987 954952755 365254883 42186147 778649662 810786150 529038345 776018007 893396398 948355970 122717095 642424485 751049214 855001948 947807593 176647223 879879966 386673263 754849357 782172143 195420177 817619901 907173033 788908933 673659210 965877798 650627136 487829536 896707895 817403362 150508133 84448023 533027545 587157371 388861007 11435631 537257271 448840489 137836380 880339183 92197282 936222759 907038297 539924105 370094653 907223705 629684465 537577746 364842928 262158634 294689009 798378953 514670255 726651910 795009561 889538280 805453731 775068485 190798223 883457962 923525726 996775131 763027612 841814417 77750388 63608201 991409571 163763738 975739915 201254820 737618476 768253549 163976228 660236646 53343953 982810260 270311371 59074802 801424482 586310850 806555150 953999022 223300738 523029961 214869600 417244877 750018596 600607707 613161269 747472146 699645959 125419655 984795361 994679142 704671771 152026490 490137446 663531297 898354495 325773549 846424254 961242104 772027417 734200794 975488447 216193083 798613116 299098706 988259110 858030138 985629527 957448538 899517476 791568240 739474407 939563836 586313444 381595647 793665958 761139981 17528529 699491703 10008694 44009998 746157629 746344698 384657277 257372282 747836315 909742649 352523918 608831256 782712241 663926602 911295392 790277045 560222170 484255852 150300173 318377294 238131054 798238716 317565462 975843072 997773281 397396993 626717841 383203961 978954894 684125964 790072083 843299738 699761811 877728188 864598070 124176117 941150199 925256903 350712126 305943227 898189752 811576645 514254340 810939909 948595753 840432081 344897985 820594989 945360837 218919116 887579848 701669514 999738366 66540736 616306083 74114723 174289102 22125960 763134516 119074596 545528543 123246264 407733106 849007292 614265922 271016745 972784404 941676849 975474877 777795943 911763767 379072640 769401686 820212284 520698744 996700018 821100860 169195405 563821725 448695301 909150072 858617041 880680588 677321678 709951367 119029972 985945126 987668658 817519543 967397938 791366498 858171600 971230708 337119220 910755552 843162587 905969359 513175612 691708154 778714778 600046269 794515100 818084355 103151857 995559224 790684307 883558484 217833330 896357959 996116726 553943130 151405964 24509257 715199868 579145529 559672058 763871194 128951902 264712648 655340524 296282491 880997390 937918353 846308528 455809278 120778012 991712195 163382999 153777401 828255086 896704849 385613782 999201284 87249293 219536750 171010205 696323426 517496194 78117596 374719769 303470130 963661581 531112039 677720882 479445105 977443592 828448834 326340179 319061224 868914527 830837535 535889820 826092586 827813273 511383140 34742904 922939885 593674649 882000211 177675423 999254729 180129222 868704828 756041942 397917677 465607876 987856173 758680418 643554899 615141016 13734351 896428365 890265557 254520540 168880201 986910933 530791855 840200251 623824830 966906909 592912223 673062513 787363489 583235180 981063186 742121682 696764097 913940314 710922697 513770513 326271199 747165838 311345048 872856994 332854896 303031763 876438577 263949323 769739685 793788091 676490938 213969484 793260471 917952950 220933664 459921159 585697451 963542238 945812029 628419805 283335176 921542438 994982708 462644072 541490375 600034024 930451994 336242741 937019971 105793224 565747479 945209177 498571074 930779720 31089396 808563144 33294139 970324467 800809546 733325735 954597157 205179213 899995580 893383591 387029767 888085902 479453750 153671235 806948460 510023677 136904645 15298956 485345615 800162648 753888773 901330315 906794253 927354285 963472193 61815052 789216051 583757915 66467468 202058257 791950086 936858561 944918365 800830773 527114199 730838007 829389276 616529725 446995265 494005772 238182768 973968682 863473754 350931858 94243466 660115528 294088094 798812895 186309296 183404812 949073849 273603085 362718094 179281226 541531682 439930223 823938325 814376745 347632009 924156585 860881346 240222384 579706533 69480735 532605784 412146549 763693434 48694666 737363263 884741198 908545026 700743650 826620828 717984202 896790039 838909682 446449549 76139767 453159392 504352443 761641607 79545376 458824656 750978269 135449608 792924475 899038203 990370317 789670448 940085629 933314382 899310287 504105025 869500992 900168342 395057876 30640407 874907296 778660600 910585681 977282203 547283057 557263073 747278830 744950552 749228499 976516781 813515135 487017569 446832801 945643948 901509397 642773349 985389826 925799537 891669448 559329804 945623282 819447169 970589797 501027897 826408629 208372234 677359394 596249627 132068426 375573806 324166929 913912361 87591634 30114134 641036885 949338248 989518837 774725371 634133191 279638246 966908616 238028200 888077497 749136668 841576277 945063649 370886785 904417622 757933541 393454248 828553356 859088536 951759127 824726382 936891683 495349256 839852470 854269287 804184114 326637240 832055348 121854040 928328075 432756528 953991442 981346425 883604413 880554716 431405146 770235865 925805930 791680405 784043653 928212549 151297172 942154310 624976849 449466312 25282537 538895179 988059608 88524116 734769558 18857070 974547032 684538254 353139245 956526395 887803088 75547194 913586279 439890449 803530866 960767494 579776544 979475743 858383190 591873709 953432289 865192776 844925246 794904866 785388585 983841393 584242702 704282455 374146132 952071657 586081491 342600836 782773195 184720899 64380640 554004752 786695977 964769729 174614986 892398867 142912030 356034219 861267680 784428496 869230670 818742243 937186118 949215321 314062849 334388076 979575945 383014219 774846746 548887521 976153233 130503767 868494114 957463479 947742094 745865385 819000623 941215316 947324242 285564827 14268104 377574483 708195544 838541145 423234589 279963742 496485248 150048105 935207097 900045748 970778708 666383715 966174426 769902462 856102095 315823706 913052349 290363016 226246254 428110176 269469664 97874925 438700368 550188978 375844300 369146853 528563400 189330584 639566978 856720525 953304384 833959132 16337488 27405041 408317588 543270196 801866798 260631551 607969937 183607072 175075108 672172171 771113557 561419657 818518269 749545789 250907169 705361505 994412525 219156173 469989527 908878361 965397693 945038841 808333877 726206344 199640925 959134066 209499562 662436774 934633776 498974067 764322079 677416522 809780320 951889784 320863849 873214927 996481372 52726227 522407864 879807244 735486649 971873345 212179723 735829590 985080614 812502073 968681785 671500857 953559333 904586229 286684168 879770697 830259303 869204906 526959427 701617276 332593108 969628882 903628099 687207158 233878302 68599806 851578387 935205693 935128470 944712675 979141030 909541747 301635210 580073377 33035474 865630353 799838156 776685882 524084380 495711500 518200442 515175171 984787127 656935189 711291315 790912526 788064282 603026731 927846195 124574417 543082934 158751103 517868576 635367323 316991563 884777244 56226912 500937795 984808662 355347843 623279745 786136259 390438174 784228953 973608942 867033218 881614398 790462364 878699653 975601546 895830065 199701751 186599161 805208652 946791266 904615045 987765915 858255747 137479372 740142186 919445755 101807872 877060027 306017716 160838731 776973544 767351243 993860654 612174705 290675335 948176837 928428508 930336407 749987293 644991639 768074824 758234129 537585658 767379883 133998255 947760881 392096153 41719544 811087914 960314659 152582887 814740008 933431632 937401417 170258061 341711592 271292600 511956960 962931693 927482619 744432252 869432541 591580702 747229696 856416430 731600097 51074342 713824206 987797386 910771292 231629014 419554984 875027433 664668430 101635363 731571905 928754516 780459411 935518110 487413810 946143729 466041296 651104842 522592139 954090163 803933317 776683870 358804060 845037411 21555506 921951426 887261061 751675291 275422397 974038488 850750905 23687172 335382076 279283229 901025899 2297333 762442149 747217221 792619257 880061161 750312884 680756899 644671675 280518500 200646924 916085206 754871786 251564875 968132710 231950528 480266700 941143042 993758279 933901205 212106868 709459583 55372796 941906128 814171209 816772550 354683413 616983136 632942626 739713231 800906426 911807216 739011018 268253783 754902524 829567056 265613996 507393945 752168660 945372728 767593760 594890484 753592829 968480760 589681735 474234066 915663924 769006456 770094387 994875149 951681279 647884945 998907790 968724679 790475121 279856528 506269111 786964713 995856280 984213855 485168771 439278952 113774394 808636600 952662031 330551922 249683956 911712762 815928215 485847465 579526102 777723387 265384883 192572687 976566018 951811364 807393274 401984749 750924774 762877008 493838806 496410128 954720268 541568161 969098061 817625709 740311069 167277011 520284846 103052588 439661866 424381259 250056272 996763208 760628288 914734090 261524872 870308022 863290543 72970059 71234797 909680949 904928811 792078043 674524868 350579361 766383454 620837122 326358069 108769720 177516515 927878647 851275515 765563713 13824152 689358883 525241797 17660103 992853030 775539615 196284668 759964908 904462015 982740545 887551249 801733178 43487114 837021518 253579104 889084323 34225139 976746620 330992397 225880169 130956607 802733081 805567262 254197184 890125809 797515092 931356328 890603729 227819947 754058162 351840522 772556403 818163030 993527671 788004358 982501699 801258322 246874732 174162423 47020143 982221821 427062776 718031989 754858976 786878181 749936122 694674439 744808843 918462696 28536822 807330159 382723221 160206764 373999418 503309111 845007643 150643426 95661513 810547125 285953357 887955613 768209422 353018373 202677392 894341622 899698296 900406095 781243295 701033402 535533399 694085968 847704982 863882395 419084985 798218724 993938843 707960137 39328913 715140937 782208304 879995580 616599259 917910398 756566058 681950691 965762188 574758494 163168693 397347443 877639025 878372671 91334101 584411652 819973739 455140651 629677344 773857672 907853034 500076012 382238013 694220775 704630359 332742580 652207957 621648076 754690595 441532839 776466520 842045239 999750648 979179917 615464494 648430393 878286164 165865366 305154268 848404726 979149135 834131279 743367826 693762937 281113714 992110565 1406199 912511491 716312442 237677575 874366282 968132161 94342292 64438083 16983423 245648509 242955198 448227902 887008082 935295515 901112034 879254589 132776779 908552683 983343377 226675441 434639743 37470542 937853475 97068173 587416992 777383078 674425384 596643491 966460672 948162683 839759590 449256123 614375394 990366096 658817760 400316484 729527417 871310661 841113479 550643950 561340849 544986912 451561565 437981958 876446786 757783602 968734358 985108808 248791932 857034921 804859950 209746059 396136278 38509740 539602543 956293025 261342981 954043434 475535775 222274181 597068974 813613552 867592483 860664157 767662342 847311521 594267474 880011394 932198498 627472947 739332203 731613373 844450559 829154365 905717657 762123195 751136160 23022129 382199434 456060269 249471247 890614168 223033847 987490185 752269001 943246493 78156155 318394778 944936242 44077217 610419428 856070248 496652564 117199884 114845713 85798857 781482616 79238028 151780877 901648489 815531741 58044921 754516450 660726611 669173708 530622975 152127372 56569902 871709795 891465206 914898305 194410111 521491219 991733531 8330092 374236563 675279369 910555860 88459564 880066658 601136952 960406879 719166500 501918891 359338650 838338217 652457133 195894093 60088907 787398925 128978813 454857240 62426784 791380516 997399070 416498397 874996248 988361306 775371738 209131590 524889639 491374849 542872700 107355300 923028724 678343394 873276887 888263069 4525179 471756951 725048610 969394539 967376338 913331165 749678000 881767033 786644981 984298208 742738675 952719277 863307390 354401525 256219579 856427448 592112171 785386038 225441219 14985576 781123193 222950404 749137870 365204432 553301502 978240102 418360237 966688831 722680568 548527206 855239639 990210761 925472381 77112330 164609286 979116785 87614849 412397251 826619906 26083389 644667463 734043317 923017948 473005969 845056222 965513625 664117864 579529399 997716072 699602037 903738764 792595611 616548903 855640926 791657895 897466750 406117038 727941792 734007238 978109720 141778629 883599717 932270301 506123302 636256741 655532506 96964919 906020533 646814455 810872986 536642911 774561125 800421278 832207705 433866059 61019872 945886708 750925312 867128957 487934973 823844917 642391093 830615962 453159149 95458207 486181307 987300816 819725409 28891704 794041942 9014889 930629343 972812249 834404837 259935754 870011266 894447635 510760278 325703516 32316098 927504481 601166320 512953424 669054136 885656560 772443353 759212128 988868017 898654022 760212932 888343045 802560307 751866766 741344776 51076400 870050309 459751607 976154595 64858374 991761044 470551302 37682098 576620143 273585232 468220864 548320074 746918552 188396159 510964752 790486616 976456528 630819797 395440818 775191057 737519470 614756553 120898045 428904138 692477451 364974771 956766698 385947077 514112230 136557384 879506811 953689952 340383116 891270928 840050631 94833452 820014235 681640557 380455934 863456622 964910087 907045761 994071857 158960372 972492166 539575394 459166752 987815952 945725719 582260985 969296070 813173838 795228995 616573213 789041452 202815211 885688690 253182151 498279496 415034527 877345720 72762964 541492443 381898864 331751535 737707125 896091459 234072242 966428028 770577724 341780302 939330700 970527821 959839446 870250322 210347653 834009366 601340287 976560203 381451232 845128897 66314125 767905123 652827761 993341408 113847934 288199302 754987161 233485673 937515579 323015125 4267023 724360881 341608121 991272703 329179694 271034380 883906969 983070442 848049366 874424954 929609855 529209924 415301929 181568454 946705841 952039129 882196008 132702205 886149370 995921603 112390255 530221522 765347042 827610341 873614248 532889764 53059648 378141278 397546250 182432806 577671650 828524748 938615746 914518391 304150799 938326128 705269425 983225338 614629157 914702947 821395595 489851757 623405724 640105372 397218057 569102867 204235872 875999507 835909522 612388992 759428516 985335278 701250582 869251349 838366423 775777001 899407813 754892286 718635308 890187684 998255810 843746077 851394810 113185084 342500588 227178621 909162707 210772871 172948232 308744153 275343357 379717971 947865886 901561444 942616856 125640905 834289172 528654965 834365734 814114319 530108568 100739125 895951763 196726840 723098957 454695471 929118912 751393997 282729930 957754540 737020247 677326287 760856383 900830363 79050363 229569577 986295059 888676047 772969399 824214416 510840265 554558244 680655357 793103211 797450132 825692791 888077846 924775709 783961035 282460962 450064857 658992821 633828845 868970290 822882166 902950589 769274429 864091845 733756733 294364888 783561934 836061337 913986489 355804719 913321547 104731365 869650835 763003949 780009283 780162689 917648140 796987996 720347050 620207359 169606058 860907581 455496329 979777580 210616934 754151239 183712175 710727779 163291034 746755618 925546850 977134528 957552779 943632148 381825154 801462391 350149737 905534189 796057189 560987853 187289180 880774564 986124648 342041601 156942652 870266961 899715851 475967058 388336237 789507498 322972123 567258808 975849186 855505566 649660798 997495344 950312979 981305031 825126442 53735458 874178796 451870835 255378855 352510883 140834443 813099505 904599152 938170275 477172683 397842061 123954923 677519343 852899270 74792168 887962018 941091905 938898572 938624482 802922782 963473247 170460256 506168210 845742375 847164434 774548110 277724445 432268940 811146291 861298551 655568666 100096333 955781639 819583827 995998407 923926427 575057646 620670488 653670946 876626517 422089332 684084926 510609941 60534764 120043898 228417749 544527004 100328363 854286308 280378854 747084117 826365072 26730259 2470936 353986156 476741178 859284637 633022437 24541925 947305154 493826518 648978980 931561350 821930426 940772235 357005091 151356285 307763267 10753896 273427073 299860692 540772614 677598148 569124199 972905160 980125656 809501007 871526333 245771844 803623631 54704316 238524471 831605031 373699829 797285735 827818619 190832346 6869493 777318688 999136992 969468919 935345672 799164018 696322295 839407602 625419941 224957793 773676362 999822812 355198985 931438795 880545755 265273306 272499658 961178349 850971942 895990237 477522125 258994773 683288509 302294897 949997191 973629238 754012425 820629139 763394501 984347798 788598299 168162931 106814806 917724163 742594254 49230188 728965071 51114309 799727537 378369817 837248256 979430466 789582835 870348355 847525499 64701811 983674907 988449548 976618587 396183243 762939800 491387395 964346908 875108553 553796203 99571039 184880028 981868100 433360476 771757788 616317859 604722790 802006089 653095211 874519030 797282423 842033286 760152001 761902041 433384964 859720924 674215837 25577968 803661615 287063533 957856670 826392587 903867702 737020247 66619323 989781228 880991613 270325532 858059255 342546597 376439976 532146774 799017788 344504891 873809846 967886854 797054783 965112802 839535802 95451893 882372513 91367067 824046770 665977421 885252843 774503101 154439815 961636034 108543207 602236780 249687612 429565101 8077493 558713137 323538025 239004204 915563487 558428697 834932974 675158764 314639397 776367838 981584433 700008404 566648017 463380760 262327335 601680245 859013143 761528028 942892308 118371512 784492217 787326518 241688916 376631695 947604707 879056139 896611619 823988214 832956195 788954608 463434344 763663674 852901682 320176765 862826234 896492381 803861945 688595379 811928978 977662260 766912648 774705059 66284090 759802299 231884516 386767748 878510430 746338495 373269587 848296838 193075229 968824961 113749227 753553730 105504294 852292958 989154191 972248772 783407051 247288809 322799943 808257953 946646480 915397910 927123528 853365236 894206732 367186609 197535356 856338136 838105512 621214848 223850209 688437301 251660570 780311918 632626221 799991874 827890666 81756781 764573329 753945355 762960236 935183270 756867962 280264780 918245060 802435580 238848900 515098255 809738029 161576835 992850816 586410609 721511264 760606430 58433243 856011478 423048606 803230794 195796732 198322547 63754085 798088306 665370647 769747674 490241695 472614597 778516850 124344949 800736455 995010481 260599768 909627020 687612846 791493120 495140084 220265168 150228618 984659026 919371282 532349096 517905952 614600867 864168607 156954613 909347128 982682233 464232881 912873843 742255032 132841888 888805408 607844404 411731316 461401049 423336891 785228428 404419568 213866662 869945094 455237209 852342406 436010454 856471118 748305092 761199285 116679491 958945124 994486793 178394322 149028436 755355047 816489668 683969045 58697505 735619512 963671678 778592300 373908183 251897568 113836823 827920431 543968289 993071316 538740426 980364561 961787637 966152660 785926794 535559407 535611114 483156720 621753418 378834582 748695503 977963167 466747798 805310035 38257116 57858039 780037818 413964331 837583090 918341257 953664335 785306894 24075485 440508939 552088646 483927479 719052270 522661122 246420345 967188903 908208108 824252683 934635298 553433886 914527483 89602140 158343113 693846023 775525508 779070929 833034060 909591775 669708659 986100091 877744221 847984035 237967920 691309236 779085583 977797299 562524319 343450725 823294695 405800517 729682559 991658162 761135508 59352983 633628247 976312054 881905661 450326416 915254958 953059266 827296894 36648232 434828793 962796082 409631273 469162987 951919234 416847368 3185675 904826859 936247964 364004258 599739869 738791107 263868158 90738804 580761285 766750537 921117655 941658933 120435566 865124165 942944219 757677934 315202056 749217396 978374693 18081742 779578858 978553850 306635943 950608195 927305791 490807765 428644954 383478237 456815998 769393521 856767432 708717287 154959971 6469984 243794019 54711417 914639540 819441037 303754026 70634473 768597451 688232954 349869968 851514795 159612114 746291328 860628511 491577366 796957759 802295948 633255933 742482210 282140935 908701223 881002668 550889857 404163634 343313963 885682431 693008953 778135219 943884697 970221139 865564514 740808220 986489731 152817735 485755945 907433802 169790694 299877630 199652456 963654736 719594050 888877266 955753370 220934815 233839827 798526157 94997315 749441267 160261516 844836032 943889536 902506263 695813823 943034373 773267834 341390616 489671572 563361259 914461317 846155234 896926540 896346623 346085452 178137778 770856960 28835253 676706457 122921893 898119028 630213634 491875845 794518798 59883629 229799537 424729206 787456101 216424065 819962320 107146920 244187247 435705373 668395901 535127888 450806990 43181987 626277028 187933314 451874927 21644511 827116433 160039702 878257054 800921430 299711923 923427211 462129566 892905483 909179723 637188467 649694456 904735351 907402057 978153483 829607889 238293369 335414389 951157325 160846486 664213301 75247573 966774183 936765369 193498213 859267272 924801230 817977646 808159894 526091474 879112221 737020247 723682642 171866396 922430288 936377369 858378602 779329748 526010081 575083487 387956600 483237704 921121072 964400334 129558825 165847956 264776297 950563760 955836272 694800731 772263540 470493384 1776608 852464514 416084297 849772377 737020247 93005456 986294562 431766254 179418065 882187015 929636336 995393387 591898153 196392227 857421640 521561927 594225919 236383312 759689240 95221035 960987220 947290333 926038887 321824832 954977960 43906191 109806093 490729385 69463941 822162626 277895569 807283298 845576528 580432944 889215301 600950242 905668835 775602123 807426964 418785769 833481663 43446568 414995520 814417674 764272009 359592201 503979623 476219654 335351290 276068367 3818602 749311355 994039609 55702640 207557173 3614891 828257526 269102787 950114237 886385865 903792561 235404848 566497604 908715655 49515298 744613483 229812616 791996835 830560604 843532637 989952987 330344447 88082228 965570232 848403057 763479721 430017777 850443087 907019285 926667238 908683137 889436687 900111780 988879780 732486765 240221340 963286045 875810828 481611559 454976196 1691354 382819486 772483118 229860228 433028137 851043812 630523808 930996370 691853337 425906612 683478879 801346373 498597053 414161939 479075255 795480913 278708275 776966701 921361012 438183154 980929987 12222319 431541876 106509957 807005810 129795711 457506025 945742449 975594572 95693909 294578921 477127780 422826794 840941427 200368 251393156 556861895 757531454 862990226 116725352 780418515 65906996 235497673 456867368 714171027 628419133 868152373 142073769 864331003 832474213 934240982 369603645 271299870 348459327 253586378 929619915 239110780 46111384 555655509 726323480 277448244 156090838 838085693 289458147 805039073 761563765 472391047 887787142 697267406 832201771 904310670 793320532 838141392 854552438 6330791 567311854 842832356 439965984 190345194 360652364 350862498 877383773 152480967 658490285 997422595 876959723 737894666 790441904 800058002 447782720 562430661 319449357 243997461 324432838 953601289 851744975 288085471 219386257 888292647 739905937 618199800 999512740 950275174 784679751 351748739 756950243 768029173 79792298 124615095 27209948 726457868 988700659 940229600 765520095 728504303 771862883 927180993 50094400 333680642 389497755 929098066 226027140 842215904 609589295 912223451 558248830 951065285 991048945 227960773 527247734 700965775 746452825 790526308 974114989 820127803 795498773 986161709 450449654 977059188 908115714 104914296 133481930 908467029 913572590 752414735 637472402 979783101 675261311 979495047 897284622 451932670 415769517 738381774 813151213 631226957 911747757 876570711 979751587 466048656 788575730 836707666 801062245 956139049 919617262 293089102 786816967 124165983 960968072 955368312 876225491 763897647 871833077 988628460 855340277 964210278 611101508 779991315 492914485 937951465 839397141 719226464 958854978 399619513 957818817 939908261 603249427 812434981 148520379 622601046 934742412 154753303 736939898 915100849 602373323 772319181 283273539 881261843 750423167 835160527 924289435 26874509 911324890 756377898 441644320 283890664 813700361 162459467 861789499 142865949 348154339 319173170 558278233 829735406 760917791 951937960 130380718 819939405 931658462 944434345 109422105 195310147 762598700 200304859 897575567 1613056 299691377 39552811 245511402 759752549 162198517 148320585 897940496 50538675 926670207 483249531 339516033 434767987 867976387 514791207 974509798 362415327 215744198 900929253 423330312 875864888 967437867 918563766 742922786 159641292 341849700 826910332 569320740 626006215 797889637 919079861 799949989 761973271 860674616 995008091 24464900 276926574 353422533 752052351 769024552 880137844 355349765 741717464 450181013 276496844 870294397 983464747 254087986 528178549 671215876 262600930 786883326 383760127 888304544 854116598 70434457 749137316 889264248 725947747 122759776 635861590 759723203 76120365 885103917 871010594 811040290 591328198 772161072 826046033 791046924 975137437 969231871 257701291 959750302 485619202 377018910 966847470 988273531 935861034 393726645 961621369 738825039 246840853 777155533 669051593 296601222 815008426 876294173 914821684 734812442 752347572 567333098 834306026 952843201 794680769 851758233 875358943 908577269 867988936 7095507 988777208 955226216 250893278 199218533 391536546 159665821 36814387 982763750 773791500 848209562 495430415 929000601 167516769 78297430 474027948 480777445 163674380 999825330 443278589 833733776 184130370 869858680 7992421 899240204 2785800 28631565 744447687 288762329 373314630 789322724 233553293 812610872 973230547 67116670 43202312 978330948 920971028 606417461 747014405 560320580 918248172 108753634 865525501 450520973 166364449 694812909 849599037 369679960 249963890 19750152 782194631 878275155 867470301 276048809 477239963 878676126 557178722 358824944 424136500 144971819 209028261 187946790 825640547 701951346 780441685 807626273 126143394 789379457 271388537 339046508 831140132 933884685 916978157 656117608 799731489 891042610 842401251 114653920 930543966 21019209 476826311 540435123 548189469 934868858 792484176 233769849 454357319 700045436 849374073 865522026 934688034 216656743 606745261 68361485 27950793 964645916 746213662 810561381 604956134 807061293 768917848 506515714 418026955 963264365 348435669 918329011 385850161 369231031 978938956 322398272 884924464 40171345 184351903 844251427 737020247 941894550 731790505 958404009 637335307 844200226 629275718 840533526 686628892 787980329 975606121 853648508 677088930 309926560 648083553 581022499 791035615 814793377 802855544 800515886 205165403 431145653 738006525 193824812 834320251 996940248 222381349 174518982 47191444 163785259 806049242 772700927 847958564 865560238 812644565 951065025 23576427 121419890 855255463 669520549 253044681 200466033 873034181 646234810 802483152 641853291 578427138 753491380 763048505 463441356 55321313 517975947 299749422 162003785 944748168 734491247 983131088 880204962 629070212 842132354 852819905 841949878 391642214 563561453 137663260 362759175 771575012 886322379 443722622 806285694 103675299 751759933 446486353 312452561 6623655 797190715 379431515 919445416 271579177 827805040 258098467 505717301 801332273 832455632 894274679 876354756 671926903 938138276 846492329 394842748 461610475 908995689 920681101 964556562 93405540 409648062 292859912 922838727 832697540 758020185 394575288 911726627 755422540 858985233 132992784 525548275 331654746 793762645 785065509 768412787 283911935 829760513 810932291 864199189 796990869 131386024 988114651 306253568 786486363 206994469 46184846 533169828 30681203 701396216 275533780 297657867 94662210 457237605 117601982 943365549 273818527 774644911 892362799 641576336 846899770 814007127 909758217 213575987 240668828 997093938 514277709 778889686 138609809 134690249 6441920 490430337 604063311 777653212 554546587 90566734 874425373 131781966 723054601 94480562 288224878 897516296 488755537 351835606 803294613 684771316 611247442 887763451 302551937 348718386 865146472 564916555 591747000 405370738 848457361 476872642 276001132 383335625 559204061 821101365 386564375 22421743 15147834 992753628 15287677 783925231 848089010 818760360 756467257 841350276 899245380 121757819 49541262 767376743 588570062 775050520 928366391 209026110 756951494 756457284 755899571 927942624 833587472 869363526 972390942 944208137 565233240 751294785 420717789 297439805 841053976 813483206 4650293 366105989 891190948 821316446 808089538 884513066 832052382 932451165 374522038 246379179 944241671 842112996 902862183 10624392 512064115 899818061 67626231 525140489 143117868 386976624 925732025 975943568 904015804 924751622 434321930 888498882 927381364 851866473 283199950 131094097 914514011 328051428 511889486 248333408 518890338 300172961 905991117 903188435 226045051 962434027 856865649 898328261 395174741 917853793 813640823 861008214 664160711 798128219 81035117 952710446 326910001 844694326 807532805 245494035 686055536 154986976 678542451 280168539 922910146 111397201 786982650 79628712 843513986 571202251 851796742 577147756 512478748 15074171 684883860 804871124 987016705 935964646 955038075 792757477 720540545 777550754 889644498 643995666 938616024 806502714 187503974 137198443 848821003 854068534 36715864 195050517 676982706 261293125 817054201 985656596 693454937 742240488 997324428 44222224 299882773 996004359 799831106 429260104 930854930 593708161 819521563 810340793 448450867 821464557 780826367 810860368 850897582 663173276 588160961 207804307 946175500 938837833 601485564 120718824 987948859 256649710 989454437 898864397 203833941 561144648 306735062 552623472 737573538 205500443 950375712 397999761 548619241 902494924 535465311 854555029 296805846 141572724 858539156 941113176 544799216 496270795 644991181 872285436 820381350 793050376 176365842 793568417 754676991 439720549 189370345 618320528 747201521 442452675 819480291 629581261 831555356 840921774 259470945 716647453 262693405 271591656 807969807 957322771 945400093 921202674 868898792 896038181 103509519 634889822 870560254 557374213 783508631 816052118 390683102 756002530 386708968 639709998 304234938 147975284 971604157 184478065 979335695 148344049 845104207 756117712 883095264 932302828 739069846 240894764 326004559 689616901 677447148 803495401 818401363 863251819 195368685 825430035 564821706 51252957 979291042 296087332 778551950 452487093 920922915 736715645 925063005 794933008 437382966 311371557 898121423 466348540 903186812 724911296 810966490 848942263 197262779 864767301 963964946 928543582 400255423 981790787 618851563 791778587 30755981 728236490 885142980 84937647 793079997 784372525 542626221 883478480 996115969 382539796 455021104 645617828 881031637 242021333 737715800 561507787 941478404 763155129 552170608 743786841 462189659 68735848 738431395 829385078 206382075 825506710 148062280 523384959 594393786 514257390 544639650 958138197 779725180 813507851 986558361 679384266 490920187 46548590 491396545 579946356 794552816 426854567 845864559 41096686 631236232 786417231 610412630 527164571 548929930 701021542 741810027 794719167 703026644 88017810 534745392 778345248 938752229 829038791 974990339 983535304 118502217 624787781 580183149 618257486 437391909 869104330 975037490 444700971 526148235 20807185 606585569 860763808 801621496 332003589 134790486 942123239 828522699 889681736 894593721 445221928 866117674 38900326 398408310 175539214 124450966 781597344 166354845 821622127 550970757 778770095 831752323 863492610 821866609 745419433 901745370 963988600 669177751 234063563 354973726 40632283 921249802 813071038 686686976 823016512 980794024 398093722 785377468 847824259 832426728 956857759 429750125 966957441 930778189 546134641 641402136 792120689 784524228 863196959 883441062 919168562 843293477 807278990 780602092 935244364 780784321 43637188 529481729 423359564 40018235 21781135 828246979 986299784 814203854 688469960 412819117 225949537 183294065 510105225 772711060 755247176 510872084 197117588 478512177 614974151 971735308 772763313 157161281 905038355 834055668 99107111 457942338 807905633 243301924 778262228 844804284 821598860 646473858 698555944 829903123 993088579 805815887 912378679 551314284 246674190 755306285 987183807 436065457 746897380 152636751 814904061 783158065 886391001 278938950 909597129 944356418 542244385 565070495 947971868 132771270 492261003 96361294 936322472 845603856 943141790 764952975 878998659 950844171 595710468 593777899 916139466 465564664 842938259 777477815 440902527 359463073 194822188 272919898 54780033 997445315 738653123 766765124 387947727 58851723 514096712 935267666 18170670 398770450 60780278 297008547 966207444 916273639 375155340 923272437 509481042 856324580 762786286 928068348 419770290 431706938 381347218 19519970 522983327 827026284 952711671 750675153 150218984 760396480 864988883 926305416 153646329 673383448 916502168 291576566 560373294 913467874 338655156 812325107 954027916 545316885 819735813 10034823 31299596 870817729 448629268 370486041 266372332 625212514 929919156 183912050 505922178 932178775 950953933 813077237 17708876 978691955 833654545 519348460 864546597 966688685 677879410 110594272 392613658 223721570 998015836 594099323 866069500 771413007 129026057 966605933 843448513 911064643 299999714 99091644 293053831 687730458 966673720 957503965 834273583 597100591 78769017 756938338 726084220 776889821 91433503 902313923 863290304 299730788 765861503 190942528 928407162 968322522 441631869 998312921 969414086 911459202 37003782 313316394 945674436 945803247 714308224 771537365 229342822 919771890 256978756 771652159 889812968 685088169 642161948 528197745 832676160 758232320 645177535 543066650 461449419 923824744 815541482 965309040 739749508 987196731 410189824 854575575 799147401 995562133 934152451 951789517 99876453 634310596 45025201 905910840 492267894 778029250 877039696 135071250 477747960 447215958 289107805 76365141 996873825 808893358 648576398 629868858 990790299 912799077 27520081 870261334 894869703 748987325 166729334 963442553 855243989 548289655 161667407 722359984 827321395 838582520 855521282 748169588 405030416 651551217 990824075 752198309 769037133 188215683 735330579 885743981 983569860 521077510 198637539 760590667 504826815 659350241 646050617 515788965 820360715 970448803 16164939 879792202 24911988 455440559 790336907 822373797 592616158 339961446 966636117 470603324 685452908 737208385 849411334 942404653 825901608 520968548 757051816 282385376 897706967 839590685 426519542 891470664 197421276 815420294 749916777 874887156 344646988 773550120 61302525 959309388 859443077 793548000 971013868 790811558 63815016 260542536 761595632 178008885 363999144 1164313 473920675 475609707 137860323 947913813 220671265 844422143 449242709 912550851 155387252 353712449 128123507 390927094 903176457 111759290 925439758 922893156 374511087 954194393 765709689 18885158 928416392 941829211 932898731 401751902 31180304 85402530 914942084 539961865 776711056 969023233 816926048 499124262 708151398 782973024 890475917 852534431 905873720 910398417 655109332 567953071 650219803 176815024 746118578 918398253 821713577 981405635 915481209 124532949 199245660 598649634 968859042 664036165 905521087 608551682 835806206 749908563 803988169 893555031 699148653 516118148 777630384 799410031 299162660 878278487 619971049 535911840 831445026 935291023 651443084 14845136 336836788 920156213 333729744 293311589 296489602 775979673 614816745 820104610 950318392 758106498 540931435 610976626 790743173 853163532 840315675 134128360 820737841 557086351 404080325 948993207 564057393 916985441 948199316 813760627 746338932 713826231 440681838 592240384 744220860 589300546 714432131 785678650 941678096 741935221 860826878 494698795 789016766 877153162 939441099 344493936 607166163 896135110 355004736 954584206 853526488 246334516 966165391 322338869 376394450 746889984 756681170 703910595 741133540 575383122 707903705 908870219 782976318 860363916 864927504 122275269 648573004 915402276 599100327 831736076 670673382 908291709 462075524 298699952 50553273 969215364 780258458 159731022 932334785 785779046 929717670 868905744 319498357 800173304 659720036 739485844 350727497 114969069 507856900 344106226 460066515 192587861 773543881 928115088 623516755 463712553 556369288 899252135 999695459 796553710 13146797 915488792 783442315 561297426 603074321 788220679 793410660 19331556 386193766 20260861 962100311 996627957 323376345 752162972 738754021 890526383 495908785 832253445 804222842 690161648 770325795 180238125 958833381 800152268 574528262 981692691 950738395 949476102 872089809 78722868 524967979 503126094 625581845 413756629 118114197 512669339 253459908 696994723 92990611 190024997 980600763 661890666 744886763 794474012 880829260 911032578 396132206 908697574 812372966 312045511 235500501 937867773 928330222 782595279 319290622 878886210 546116568 925044026 935246260 741951247 716757259 114960442 107046148 172914511 918499669 361903585 320475818 856844269 678888589 855763555 326131737 45282855 780739934 237124314 764573206 791506501 766101162 669653823 134332796 218362024 204051067 548025409 63806580 851082406 709897708 745281498 293811979 835238904 778547805 375754789 899125622 945254989 974372204 906991505 961665915 898343100 920334816 163928303 696228936 996293107 676576454 989196514 103537566 937063199 697032054 485674069 57994076 219582031 813190395 609498933 834462766 75822861 754547203 88320306 710438737 752629625 168191929 966575077 53458168 18654597 929425931 436835872 736625715 76462182 802243370 466606563 793264987 815885306 922206678 979849699 902759949 431255825 803420002 306827389 84736977 928954291 360376169 636061135 940714740 984010261 146346501 343654278 356364046 777533496 391418449 944029827 815756474 112235249 348329512 903414048 888900710 748691738 288303751 767705999 882671517 804892211 968500326 137407270 655440027 491591702 758834648 431130194 804394046 809561040 968145280 273536010 797822964 961242102 805319666 427718059 631885342 796152198 158156787 177113036 155974284 490065368 990345912 391238572 737020247 943160159 150871556 22081318 721021602 182384716 323047001 970876975 992750048 310291113 995459620 857331706 908010327 781959736 412560811 514970725 312049445 801106071 629279908 434476371 991533052 780054704 884707825 3013472 726312824 39301652 609666304 948116231 812968371 981079329 879562775 869725144 545494428 982058901 355259951 864360063 510962122 646584813 970647123 829737938 737278489 507652491 880800242 13512715 59133833 136702026 898889187 109002524 831549164 954469888 783605066 794977756 866662655 741649920 509190927 892364276 829252683 886132384 864077086 857848688 846470736 766910086 937120939 709392667 680835715 806770424 798390382 880749020 834697715 810017806 657761082 834533308 997612148 778487254 917910238 50950425 134409329 980960245 757786125 707542326 973481103 966072134 572924688 892289625 746828491 84424054 439183016 698931468 124759667 888770955 777396776 379250426 32584236 928210434 812137120 284098240 438803710 513586797 870997075 328550987 842021698 852177456 940227124 300214181 748667363 631413243 771752088 107788581 779685775 990464739 809506523 869370727 990993824 905526530 22140988 964573824 783945436 881110872 515944658 659089678 467156082 138475039 821723043 966746486 922361083 974542092 815835240 874872913 869903018 967099449 822027944 228594182 591581054 16664969 619702692 667697646 794694965 776786528 581775023 238064235 970833123 965183569 54118821 769905512 25523255 875989441 922969668 634078437 862671320 135872485 975968931 43768962 832589513 665718049 6194463 425073611 789046641 866421923 998114209 710085831 618686477 744284836 571197418 301817105 765770056 763666201 834323970 304726057 925330248 485129850 716577672 892715658 157607607 226315413 786126740 884817886 283040815 754271337 746046309 457072178 831578148 161318470 991910548 933766359 942175515 36624079 871318798 230999897 531883955 983891725 910375963 752679431 875497346 775319265 57023398 201182506 899409431 990407554 574934650 982112017 379754590 331651739 635592289 242893039 698512252 850251609 942367841 252034761 83832948 806397268 854144200 413728849 901380311 969821679 230051996 908672294 296260326 680556375 535767414 951913288 721767058 641140979 379344592 782653005 881315571 387611547 462984907 899983224 564873971 762321358 965099581 676074895 864748863 123004554 893614721 812914702 881858408 791283803 757737818 685453855 581174021 884996362 126561137 548358423 97962511 407004452 898139232 130760397 343919957 369361584 140444390 227324434 916840634 966124724 438855764 732268600 985834721 900169283 272469342 869224745 261539939 803648513 966197421 873400134 764554133 948469252 749372696 799768152 837324084 588403515 943623136 4699168 555296026 5103124 407974498 286667770 852742876 550447776 418080163 430851620 28588942 166606416 6756740 669239380 504896205 738948360 67455685 936255925 72476273 31239 452900908 809206685 152726371 859139625 717887963 527412766 885132240 998785469 53561750 176512869 65690215 542918252 916997581 13333866 836312597 806075818 320639290 942666463 897940115 737060314 856882238 679282468 510502275 848080003 800362642 656580905 96114901 782845809 920462023 164323410 767182797 813666828 584115496 946626272 949173007 920127450 477882777 821678783 853816310 863783017 865756901 328056533 756192461 958280674 847350225 846406274 946323574 893324110 762939599 763842116 755476489 703321532 828914183 872230355 956499566 845286022 708430329 614413732 516505134 418294244 652512555 682186021 282278405 881533392 244161749 911508755 44810495 570040468 786980974 718378581 934852734 425565957 746409696 751418254 440325031 503394163 872392434 993919435 976123903 750694488 689243824 912203577 210718166 945152012 433750712 635174545 704883519 222255367 127314837 912835365 450527969 636451189 984654362 841234445 460937819 766551342 531579569 964163766 632854696 89198287 920464329 875781572 168559537 134567487 763172023 915121525 930788925 82823466 919189986 911102911 769931454 850479453 793238836 493440356 766051489 908769349 798082591 552984181 924058657 403967710 806009883 233964398 541959753 814394784 842177329 839535278 777487165 649195064 995545272 769403523 190717509 368623053 594266755 667898637 941204866 579343878 525615508 622002908 15468059 969833293 815807186 658744184 397097995 817132731 966102004 903624300 793667836 87536995 979283394 793476932 981110811 953507391 406564204 402465598 881192293 958690214 418225895 844224510 89444779 311775389 824974563 526937033 898053633 153447651 56831339 241901609 946175799 277397832 987845386 900441762 801882336 24783952 880984071 9447891 894010739 218306704 54439612 972576509 722639883 928132508 507931920 890653961 500161411 797938246 755867257 832828427 937850919 862880711 961433389 860522698 225695916 932766095 363613848 414014293 852159337 131196997 928596052 749170834 869376824 768048518 940379034 965950820 300127392 298165054 559548611 894318873 763515106 170726517 435440275 134188804 987878614 905900789 352871985 193023269 296701042 114379742 849425838 754117262 839190366 696572579 983880012 960348318 564642573 985143866 847203899 460209647 520686178 882635424 886582391 299629962 887813315 926946326 551610306 985415233 992637234 858134732 118880034 541207267 918208193 915693550 656348021 411897067 768506407 173165359 482748760 892478832 773969503 975311371 777628015 453305846 338495162 539952669 739311277 808558181 474723105 300986885 320877646 802938760 959367636 994615900 839453304 682203150 403358430 392560233 822180855 750338220 669263821 825004601 810554597 779387810 962406828 572283107 722134706 35089817 17426666 478995566 834644477 888706960 108068472 427975805 304736405 319574199 977942745 930068462 992514812 982316594 82959577 734587515 555382238 991639516 581289738 208139613 166095311 71797664 162102421 806744236 860942954 601176741 896500493 897977615 902932158 747455734 450310383 948517652 970713981 710702460 113478729 87762207 154382503 440585596 558577176 771968821 942048128 580286657 422922629 357658901 579568349 972062001 739741083 996433797 114836445 206465011 109769862 984728585 661802450 25372043 494633585 12011955 116600275 925928098 900073285 246198775 287910378 133917013 153629150 936110639 853916060 912440830 339175450 388976610 167931111 734935063 888484588 926745319 843000598 649476989 526024955 738570556 996470288 809967188 807071587 460146395 224262817 771745840 917722531 892547034 327339830 945279759 798429398 942200377 913231037 750123374 844841993 178578203 302355979 207884736 992591543 811717946 611820423 876336103 738785013 878114747 967204915 909965869 947230981 884062171 808888478 763801744 195600323 312021089 93659087 754370014 856461963 494261914 779728910 521596322 672413774 427470603 815725936 609562482 318151264 698818209 366769379 508576245 440587550 737914141 526795324 314193027 805363013 737766868 252774689 403901644 3105912 740376305 398879173 229530976 964816106 491948754 1949504 912699802 893861600 611919793 63400015 780318725 177970107 516270806 883706679 261931835 468961622 852104305 266341497 875579756 812364975 814419225 796710060 828843548 976776421 429228223 337784699 838345875 996063879 593632100 770152981 976958607 842296685 77911026 17656212 882746253 110790920 855067695 832048962 528573011 635983996 105509904 806561104 829946143 479766834 793597961 159538649 910003792 812738303 355427 215226770 750295398 602874911 236478748 756199833 12888248 336059620 795415123 901159591 422655107 114559385 873606538 549770806 873425818 527333855 816289388 219583871 701014999 876940268 336566761 85657471 768761324 215251118 927263946 698342669 772572885 916814042 874194875 814672683 886392693 148761561 953526598 95736670 341747797 862433817 633298966 939618381 811147482 857110502 739221435 679619645 805725512 879737576 952795420 410229913 712209729 781513604 565848022 783171917 824482264 654113077 249929812 521022584 922173985 788254514 204923825 414049952 933302698 672969600 973227770 145161767 957869419 808414356 33743216 770875199 318249351 573814067 801938959 162129445 950983642 19010346 49579408 661727002 841730747 201345248 774985288 621723633 935991245 421682170 758231801 101384005 621820958 880867083 118612522 810689156 778966730 29528739 469359633 744958517 97912507 620716808 307973818 631605525 524493126 801930418 589993886 247581900 978359431 908322733 465074949 369219726 567260850 57151518 46751205 273939622 706967738 227303035 403242551 747181142 344901826 377893299 970603777 813961706 896239174 17569763 227426987 689556240 405553935 569995979 31796926 324817156 822661689 120586901 743304453 871727587 539185426 861087743 830897538 503579264 959003719 432264208 267744292 786240352 883461503 164145395 824918171 800103490 786738474 257156562 965518916 744888924 957414793 958324879 757388324 934570977 844608922 627345240 912162674 193239389 550943065 15232406 579254150 919319258 515828230 12161310 119742609 425699709 794720239 971040040 888584740 776081082 351048950 249004626 157991204 800696260 887923030 625410260 522756634 771654069 586440967 929708530 848752141 442814811 872294357 575167711 616619548 11464108 432317806 674012404 445316074 452670086 555541710 473451510 886408720 589449864 216112046 741013860 834910345 803180833 919538058 717784012 773163407 889676787 797025956 548326410 542953217 608859169 642152739 820301265 467466713 893285195 949676258 772689047 769124807 824033602 845616042 338418087 402400542 641298494 355994478 182154929 606146571 734479453 864860531 867289242 43436521 796941522 922348095 839842923 428693972 944056658 904090025 48200511 792316394 264293098 983225514 897252997 927237361 986333322 841709436 199903881 493640583 748768008 19717387 773045058 890137019 937095183 489307272 868784052 204538988 501478651 986186447 598214500 13156328 901180401 338203297 214816097 810511528 157925722 830748715 747723993 830880084 753367530 437655660 674149353 766192998 953466414 679863741 882875456 689695321 360003920 795851380 957443020 478825262 566351268 23596461 778132458 836525514 4668656 358286091 671474807 765774955 682683076 801892047 584612683 723393509 756248997 449825177 643134536 865952823 464583682 764644809 764257869 851557095 903609594 565227318 830124762 891631706 874320616 444687799 256527710 430674344 714505815 833944043 852770096 368676149 984853022 218509162 756054703 846228892 90914581 152498209 319696967 828156484 653360564 757615395 50680877 826661841 667730247 208025226 426546584 21897787 878993046 860570919 526180155 936428644 875069061 9774185 236059597 885341598 912016647 728675226 16217307 4047960 393889183 877431292 957688711 981326130 472323584 849400251 774405590 243905774 929135893 946182047 484918558 975621549 120597571 709387222 401410412 716945989 834720281 417852759 697396533 878415591 771886212 365479806 697465635 591152092 900301519 349218528 798962150 896667315 845056453 515589837 987404020 243942783 749102346 449368006 872620584 239545882 986453863 564800115 749841482 952655726 824166225 570111022 999770730 615678158 292347210 862452588 875509278 830966677 387178930 873213692 961351454 823871427 757154735 816756837 200955582 979994413 260191519 793195673 969810676 955149544 737020247 589957405 783349147 904701690 758808351 390651067 997895634 875382138 510808769 993692654 780455575 57386081 145257826 839009629 228137239 850901168 403548428 325615930 616482331 639757777 969084376 3365037 440916243 864804035 142191873 872851981 150563 868474553 261431735 310787442 770631634 322494443 932881952 986426406 791537003 410369054 755711886 66086615 845343968 50984175 971247917 535164550 774906260 505300711 807199636 245490344 820352394 957908211 320646391 861210711 604360025 574676101 708424629 426187246 798839432 259542216 824725497 496060303 765263034 917213179 769888130 775779326 962200772 11653423 767517234 843922776 889788779 823665866 849362385 86531197 847700863 269487348 184244682 171351175 973771375 797001790 188048695 867007851 970390230 742989303 911030383 884110572 986998127 764437702 845901333 754768244 172995382 509527761 978377933 827913826 447953265 927482607 973496446 773618178 768738113 383209 885844777 889339006 971013332 124818464 243943871 909744587 900812421 968557157 2928663 817601007 741671344 19537553 53165700 635887283 728284160 425847377 184555270 788190798 258747692 687263223 395113790 908480841 381709585 234726243 915935265 747259931 905831976 782555986 988649963 864789010 737974588 127654445 358510246 981308028 170841662 827937960 511819365 861947666 725058586 885532286 858566320 710600737 959228463 927415034 788659602 551472210 336377184 852235339 872123896 436938814 128154410 459110018 419912242 52123897 91752323 92845158 866717948 804316689 801967560 771522934 413418969 978982069 971149124 942207025 131340597 437605237 302272232 672172871 184256592 400569101 156571824 905061836 104002610 885705777 751132152 681877533 832743152 813147696 755633837 966323738 548287887 867895782 845681610 672587535 107530686 825819967 174324593 825600288 243569278 382236490 978822659 902827582 953615782 492398704 826235615 590120634 90532230 911632551 97800040 976189687 216950738 880410867 236941349 462924478 962223526 882151834 780739088 741778286 873284206 897879797 899110449 667476974 823531734 908572998 909309194 730375592 141961143 884811963 173650057 826750898 757470708 770822771 131515332 947723880 585322012 894739192 707228971 786310293 184054775 984756172 996913219 929551450 896394862 773386147 272988039 967518076 861453430 478890441 743350694 798408357 244589489 900877252 739834720 792858346 677965251 860360896 868308473 795964954 933556683 985704824 859704711 948787172 810564114 266406428 806286810 262859723 913847453 990758274 297726927 327183427 439957169 816063972 818108653 570967033 763391349 519428733 198785843 142346284 990725572 673769899 594400515 45706420 690203444 563362738 499351276 953722726 967980472 777074520 880291896 776617967 829659210 845353498 918016266 150205730 35734750 272649889 158013589 273652688 258581975 766738610 898115457 764530706 842464320 56380718 792784003 524138272 138642915 90418795 386098297 549661949 225753803 648618027 613588845 766688425 228287516 144286257 430856632 912117497 680017736 831159097 353015465 920734240 786081433 351394342 848955677 45713976 216720293 751933273 984629232 758677425 409242423 803476134 101223982 737391288 39747897 718040267 345035915 810015790 915731407 394355548 277537169 927517741 48770079 782573639 834102207 146193134 526559181 307470912 316720329 433327084 996439504 271798345 890642359 839123497 745277998 172422050 314312313 306684185 847949382 453431335 841879828 724464994 875584581 58347103 832312284 661579912 782349666 920817492 966650717 286580911 885138316 959330484 624560963 692418116 820989729 841671051 746357016 782940142 870650154 50797061 326724334 763943831 907360283 799582287 938075046 977288668 890799945 662639249 737020247 834442442 781749184 183237125 828723776 275561444 625682812 908640257 658272109 95191920 538731594 189482572 620311837 661057439 530528456 756107538 682965084 835652834 631969906 8887052 141864109 165347660 537602578 389915758 982469878 923663423 739331688 190766136 984254494 411471205 347591445 42352740 971512124 300818980 865115160 741986042 742013815 999146801 304014647 105424863 862921846 570127628 135718084 881763922 941658986 88130500 275002098 367486274 249874207 300529711 888880231 974800930 201375325 434356885 462178325 473655314 759872522 738462797 745033186 345091484 919112981 478972263 776849847 898673645 304251972 763054926 994390940 592991447 719873382 628251009 879897239 879924957 947880421 41240992 875967801 853242353 620601544 661119896 291171105 737232887 715893475 354549884 574662654 936689761 855806451 479987398 389374506 499371868 665552432 961947211 16025069 482862035 964827346 621527789 995939829 976926339 872440359 290438930 444146877 892570913 589048267 875059808 764402581 319148286 812207607 206953144 946401556 88939229 82667430 102232827 193265125 766127166 741504221 482130411 944717317 144273581 965849252 794549935 670876436 836476327 781872207 504201960 104143513 887281409 989217715 743833093 136103797 818347043 743388443 788178320 164585036 893872122 496316302 136528951 157994070 859038655 497464717 182149675 794836327 950967010 771900301 985533808 782705508 932804663 863364478 650731462 955650261 781595520 961135301 656772612 106162869 930384211 57575637 558593058 134907871 434943222 117935756 220838600 764990404 915104604 176860251 173399924 848983908 817266737 472656901 459731475 319009624 835068458 878749185 380731829 916081045 308060483 769600717 894406888 781597456 49205154 895626926 826823838 759929552 937401380 810666043 299645852 930662994 696643753 433485178 881258214 754726764 12408657 295314350 445885247 121073616 994011374 442854081 839450530 922615209 210339097 819453183 196691496 747122201 971183729 875891717 762311706 333396536 109339841 902062984 819419586 741401243 961308364 945721893 669940653 778999666 762497348 242524946 659159052 937990043 85504548 801801065 888258996 881837658 864477918 673362979 898646640 908646213 957858242 879640587 9739675 906601810 874875793 270704883 240214486 192507788 261923285 868176154 745775730 936457859 896501234 24274137 686140693 901535021 976827831 941639060 816811717 940127909 193158829 441989925 875609437 195655014 374366959 484638165 948331554 841056582 211487784 775006131 321913662 299785834 67849735 796920946 698370221 788868313 976631477 870799804 12580226 224750560 848375392 737020247 599804534 30749211 96986746 817223845 628345197 425471772 408072196 67474951 648838676 268261382 565204657 608396591 882472359 381639243 836417243 193157453 456307837 61873795 137575248 188007425 826144896 493713560 643899349 581992039 27689947 630923109 751899417 10731301 849501884 874726308 946099771 355526768 791349298 529083189 651950029 294242875 760922065 955680134 770177240 398143802 196026125 528801062 377682744 296194091 898280234 447591538 915146543 985365976 877012483 977796399 552484961 82750800 830337379 601273664 743293885 404180594 830677157 430466763 826271334 943612220 928933 972378563 901246960 963402414 997622112 712365098 892320165 860223938 861103602 861381840 950788377 244217621 835330495 1752082 935878737 932017972 554654288 752576715 609960592 838775354 785950281 779562697 741881605 528978475 133494339 8900260 79766994 146434551 834787518 744426504 568684941 767062928 534011452 937014864 876071620 375930773 959009689 979801684 915435350 890792145 211758134 99307078 739465131 887315256 873594184 993780008 865518894 675824566 965080981 446366824 444787338 400491085 529748625 859420728 969891051 292782807 884374753 731219092 77482852 97340815 213283716 411122051 683536464 462232254 354765755 906399156 797346721 984433307 791692063 702248237 834018240 889169559 271284462 705081791 186504355 520710581 879954190 657693846 537294524 293563078 791842623 897167734 775353344 290634171 603772409 74437822 771672906 925161566 896084899 599873760 172668657 568596517 255157314 771071031 982447793 436128141 909006769 49563249 802283295 784219941 862722951 306571399 812015582 912276637 837655246 688850952 238500426 782279589 840378860 996250081 911290333 531254604 255065441 825334685 735417028 311801115 236717918 834953042 969129640 375340336 32495098 197848870 813756783 924677254 778824067 501435032 816117144 917102000 811874023 361054028 225064780 957401102 626862198 156093446 536681477 946317915 883935492 737020247 327510970 946780313 899442256 224652743 826822620 709717425 148650486 11702388 647217142 768796918 339787160 347580520 309657100 564252451 25363734 790796795 701077807 873409420 673436268 829352537 902748419 370764604 189449754 424222933 191851338 976672327 244269034 233091622 246334687 102422141 822218909 146902227 558195635 916373975 293799079 862127048 957887693 791279474 996996938 658922736 992875112 772885247 886883610 552354949 890477376 416215898 414001403 123104117 919518862 379783495 38793315 954888064 170196770 940371815 700771301 140291361 807718004 74750293 569839045 844035463 512178258 468588923 880642701 884082940 865501032 950994035 968749523 309633682 497872597 997713613 432296922 362603885 986310312 145987323 692573494 845250028 558702632 929901939 61082357 821988241 841972136 134784412 848917696 50745320 811860890 778600562 777130069 556473058 962685281 241216519 910594352 747728367 919253234 958307357 964529951 553628889 991031112 63857436 863125859 517251839 400498306 171909491 794139764 548530500 503378954 561357088 728430923 590958787 486211383 65542657 508531078 940405934 156196751 384521656 716851610 128484312 950147743 740229822 915803591 916415449 241444878 426167040 897045953 988956303 29167835 554891064 313326662 245307795 801020923 795156781 561954322 324649623 155816752 373174102 996290937 499300306 916941523 981838629 915860349 745296028 146669339 845895183 954708333 312506611 192972061 305073671 815860592 101783721 663750922 834133916 746069665 826343459 922059976 22249881 555518933 944749080 174143232 107400249 333688442 953711815 792675263 860701114 715816712 805523814 162513715 793858218 999452633 122653334 128273759 938592373 468774544 931450921 982619328 778602627 367171733 703442935 343586116 904918528 37587662 888466149 629537785 782902921 863956187 293906649 911060266 187434901 55400516 740808484 348865324 949686495 252191013 964600004 893471973 747517473 243989113 823859225 833800046 159869036 391457339 107598783 343980648 811014794 924827694 992569813 686911868 676784128 34345906 346433984 143031503 529089357 728482782 677117160 908832044 816172141 199922677 333557687 821216281 820601644 854386751 470603155 878455224 834978025 878288903 206523153 830579759 665900881 99260800 782864095 968192779 318160287 202375996 443146840 224903556 647606163 858950274 874329070 387652736 80384505 882746266 805885223 975623849 810085830 815135692 338686957 839560505 354748419 692773195 760120716 399548811 794383958 108674165 972255273 820542818 760274795 918462168 558919144 896521797 11713778 758420745 766429861 938033170 948872785 166238482 346100902 981641527 165538472 982153518 196411727 741008329 798325857 457418563 380915962 887847902 256601900 269109677 378230468 16454731 900650597 806116286 26758776 185225199 104249775 556649632 934582988 875040139 884617570 995879273 539406255 991702125 311068548 668630567 816953894 33402198 966694094 974148923 315314661 833943030 234954927 646982039 961519155 737312225 913159217 874457220 590445032 12503635 34522080 805634845 823180383 999893294 564743322 230383440 917090220 818093797 409403327 908764121 151410434 453887148 981381072 164619850 791591877 769899560 456297728 270997991 489902099 904586988 302441718 985240558 99525403 189232389 333272701 560966001 767213336 227716639 977375067 798839626 680513689 168780759 980246122 761649288 236264178 856269784 684014166 775237914 950257840 594578293 550326872 968195579 435009762 284828293 218726353 493805313 811471979 916047816 786242971 878225856 921268317 557797283 860906141 168573246 828086628 675968635 931678789 929238680 945609039 792459786 693394679 579381893 136008583 796227006 861407656 17738283 438232066 6423932 75111327 939019150 886291939 41250000 986311021 938292116 964073242 456481867 505051900 515578629 596325469 661147249 85635682 634591502 776064068 466471134 660093668 774133326 973678501 887527105 689318589 854680034 862434842 737112179 855054001 70892294 665722322 376580249 462220455 421776079 317376515 561989509 106264217 45950384 951026696 467663502 910591729 895793607 41886563 958356282 523213221 370475419 718475480 782596799 818121582 276258719 226368030 801174588 743376639 495818110 790280830 32710366 203379779 807516094 879206450 793410954 598242336 789673729 780242621 900375210 912805233 751159640 425802381 754016907 692603578 120693983 579652300 700961151 737142543 838662027 258471486 807617635 956840165 169498151 794244989 917375303 616721741 311956382 894827436 877856657 773446973 64268282 378864529 862988867 315306929 949707415 889160627 900015847 472649202 936563015 763924693 944856968 385366936 338083253 924720243 834508567 844559460 959979481 527220783 99753312 879690113 128098075 709069289 869167934 665615889 338131343 455729740 507285735 998550922 909200571 757947091 289767474 196036389 231169084 848245978 76455323 926682950 351533917 463972802 841337614 296463186 937873786 945167927 787426562 533074513 999712231 884266221 776826034 969783769 322552326 189148269 82916122 925566151 21386852 868321130 105381195 647516619 112656025 838669039 673662772 946903999 903810756 650719899 644537837 99094850 916191354 830354102 997853210 872394381 262977011 942641325 93428951 772443617 810269771 976623580 320090677 909696424 638153984 820698309 548753119 144425409 899401255 923151134 832744376 11324461 779652663 709773521 36501980 216030083 88781458 495409957 870390380 906637038 588943087 933844868 828270752 31352566 134026917 753793566 973059387 976812223 296431235 495715193 885024048 834357560 219324191 168967786 600400767 763732822 932739310 437452842 224759493 720024904 933329334 865794663 852810991 344350367 150044157 237052645 971785052 912066952 960601903 129374891 918338398 100244293 993948021 932449142 332818128 779609530 994984535 746558555 994353639 478794666 756210446 640598184 233532360 237200568 989424390 441808999 796971844 981982163 488226143 6314008 744714749 944572317 223107040 190089511 999916452 518520559 525801635 769093081 668906890 5241323 57060259 948970813 443933964 127718912 315696208 920140695 402751774 197024230 561827601 996752184 855078235 660230671 874301076 877713559 691739900 788867694 991782822 765282949 955502781 202670580 733432852 901666365 468425149 752654169 700326025 35473572 803063592 985048811 51086519 979938595 408514162 292418175 864918786 861374841 519648931 699642209 748535832 628263860 260190303 240004538 543278867 902737243 866086464 849827249 802991554 13843658 935186270 905070184 846095597 968714683 850425915 578993942 712964919 977997243 245414572 136900 981620859 526756685 355696247 25389601 94468136 673924509 962832320 845556296 881128775 749337501 743428307 464549340 40521463 342985610 71997254 794143648 662418681 248700847 749384226 556320988 409459603 23986429 316458462 102776582 216633392 949968177 24364067 602731064 30538592 651539140 973719410 841964554 806610280 936005981 827779378 811631879 989771470 936212254 764202421 754187787 150069591 843618233 592693006 512086969 990466689 309461575 323427253 931214791 851664011 715212329 469440902 990278227 894098938 763115995 955697598 766785070 894647435 827277544 912988377 868812595 489230770 286146351 886986698 924933963 91216110 825185476 817876252 648754180 496660094 984592648 193097535 925575769 749873588 47375398 598324306 906702801 980523160 163792054 988782310 697362447 922975304 143923976 738280991 92073814 408715457 942759657 746773936 135251403 16113107 216542334 548519210 375263088 399517095 275806398 486018226 46075166 410630625 958574365 844881938 799710774 234112889 115933372 49548958 175085774 913331221 917108355 923050034 953243462 754053562 799984823 995191472 268691515 930766057 911824773 870105596 763186135 458489216 803044696 933447533 889579047 571237269 831045741 598853366 712773159 100680601 785059372 945131499 670499012 706842254 343281701 869169135 892851925 407067723 708888878 274281140 11424845 386138147 902545667 409093614 740579477 926041274 826161516 224422292 975978015 845350560 746485406 222058591 51693136 817571131 840216568 956313513 388328374 740540120 804757180 945969960 959632918 71686543 750412735 392369141 810947956 137784681 747014861 836397988 558426109 210013737 763879757 984709884 18951260 866855598 906677132 830139179 381927365 877870780 174183312 475459964 989735849 719208728 512111374 891873621 414211659 791176959 357964580 350908902 150689760 372670593 890419824 944348289 254889676 603456341 710798962 673589194 412773925 461071262 918222532 787463119 826332099 483610377 921674208 815115167 779437181 687766887 846516718 817063105 28308471 994293486 773505645 604685813 659760010 890058940 111944474 756077469 610835116 149395849 967197351 834528093 975210709 813793672 245411107 919262179 891565648 9971459 705935317 270058509 221390754 182113234 924506904 698464239 542209938 992315622 968804215 286158622 481693505 471334645 270973999 740994221 600939551 515587748 518949597 201933362 888369117 899396810 868170297 933963645 986294727 512496076 969961768 993701508 882351531 666907376 976934535 918442362 535671586 919112226 72321536 782627699 319259786 321998192 858995937 876750890 918852879 361398938 53896473 920920525 319950951 739004886 913450740 619808756 17318620 880946887 788911380 354317880 772908135 731892572 106735261 507580018 996068096 301714353 810577038 791713278 283897531 478407133 790219788 542479593 990924287 762753796 909167620 136915097 946097789 328822625 675655708 745162831 534411839 526658620 614246314 567799896 823229659 551365205 184219575 841688147 616550397 16163734 606449701 583322803 745523645 210157970 543123865 773559528 377448728 205255559 341691532 745677774 999643568 837908698 834664238 788168743 784802830 174334778 521005182 566834823 761972559 984014541 494250164 393958307 994970666 190148096 808219581 481565050 282637110 415810815 737896618 115575561 778192875 937839957 44152946 406782842 563485946 779375994 975434830 180811106 586313386 671005276 168162930 404881414 939157929 22380097 272880206 930069125 710192979 928272715 212168439 999456290 161388512 670753234 714331883 752177686 205223778 53912756 640576521 470843066 404021098 43324821 901495728 652472495 948864041 185595769 801510547 825766291 999734842 428634550 908566852 757242531 304751306 842765026 763684985 957882695 37420622 298969455 415727381 212263300 919945540 440518028 852088340 963906761 343645343 760027908 945871741 726630292 547184438 1543264 987039748 891935207 746754732 221164876 920348020 833359423 461270612 980268547 766507639 378106135 471907757 189975118 576842457 753379602 999628263 79738132 143672441 724505882 570316400 978792361 203978992 26982661 998846471 865884188 622869712 266026134 768042039 813676944 824039676 886983896 867892831 600472827 769744211 905562258 829454823 732654553 757678505 54883773 13652307 549391303 864086664 471821014 838844534 2978793 765542413 463951101 197814380 866277636 812567491 296394774 76545616 812421654 666591300 145958153 219052657 734456635 801536478 673199876 96508008 157094000 157244202 827332549 255123035 792612776 870729023 725725258 579393480 985295916 783340687 777243224 439209708 850459462 737229462 939264317 455573631 786396004 459090970 118894571 719683043 577078027 642875764 934919134 407664115 268442360 850004476 180543896 332637878 534128710 621322104 883227156 984891559 957582895 293244019 528959889 798272884 599839626 20257634 501860845 746967470 894961414 47837884 876957327 500312931 394400464 838703162 76094488 853238286 965655916 236532116 834669732 38680901 964017062 182727580 788025154 963123894 762623778 623853295 66936445 874151743 831055121 937630526 294110737 128464902 346086507 198814935 852550529 37414816 851098489 996276426 205249382 115526564 62370124 964397718 32033716 883733847 206699403 64637156 369369738 864107103 401701857 86382454 790451358 391959855 280815915 949848258 486802269 107517164 453241734 891333695 995243389 44583758 803580835 880121457 707373992 813608371 317947757 72176674 4551952 862163830 814517303 934163544 773648560 372000136 213694695 100026086 753806840 852199739 88784337 26680695 876906615 459173298 100251814 220264339 154461275 489710399 884994880 187534970 745756469 976539580 928359453 812860574 773503441 587586381 823644507 651139190 740082158 173637449 813047076 487009996 947032220 767456258 399516556 708548859 348897601 788790875 338382833 991490998 759934790 913580604 916792903 842693018 799323823 969914986 767357442 155832271 838100323 458645744 158428937 321429853 625703759 65420385 180289153 673381197 75541258 39651001 328267520 992368590 594582342 230355719 913494790 48862590 810679049 526145083 515425750 743835593 494352546 852539188 731597003 146352462 823751309 778038761 937334300 860229724 697522350 883597686 725708568 303298603 575592357 774519839 796566460 672112946 943263163 382952803 137719704 857307586 11919933 233955420 373722107 863323635 381321416 927275808 941455827 889336774 77235938 853017891 528372724 725240460 753309765 536847318 764798205 479772619 768278993 386429105 501348598 747363304 769034717 772819929 846632558 254422081 272630927 971882735 590286860 758762695 801773483 615695971 840793505 342392234 835612076 845728016 549321155 681540867 654324982 170469073 523783434 502962094 362689513 170807474 493941897 772412889 948873717 189022551 902599867 744436282 630002266 830861585 720349008 545762920 120969139 292906395 920444447 977964705 327547098 898690302 891426199 739576917 835850462 653704273 242106842 298946395 276873743 322693923 262347838 944678078 662898253 365291082 1007075 190820572 686772683 648558355 636374594 764527236 384699392 607126882 964442279 301541383 154009245 67799589 568225829 958722028 500331891 891551453 37855330 520392075 411226379 423900010 102264193 932377087 895827557 145802854 682538594 655038735 457726039 660841252 821831354 72157037 764454667 126003026 935547653 865496186 783772666 386464505 436868995 79109266 600596350 842242477 69404062 986386606 981118745 752187043 804250622 919109823 215196874 847262307 271012481 844137254 461046857 455514176 880477499 235574106 658907605 8497308 888871556 55244986 485105710 908052337 673860846 282827296 910027755 990036110 755194804 902027465 241669438 203759149 382079575 422369844 549441319 370845151 723270859 839164338 230885523 727381091 333328888 333485688 292982955 559107468 485381239 279421216 390566238 849080093 75875279 870800979 536240463 934209348 815568412 530786678 798149747 982207789 282104041 860332381 815751132 660499165 257538692 520699007 845640088 963805264 791498274 941397895 206500052 17171370 108307074 622924857 30439469 523669436 950597716 975500168 874105906 108109435 55775496 753989355 709502245 786206892 84142614 781217589 36798727 927882502 508218447 792682725 851840959 677534081 837218197 689322519 962007672 459456102 972383608 787585021 727816206 862344512 496132984 886355034 946269592 737020247 974797955 106976503 432745671 995768327 468004192 850947413 652322273 785087371 740207724 881057062 113902789 940733886 616222234 623823158 983720325 748777715 889021260 429220020 911097556 715893268 992059942 835208564 786721039 476464440 917908143 565551879 772601740 16832226 479067972 879263276 994522783 374307776 868444758 330953253 390986842 995290822 65570203 173317570 650526392 974275180 236340960 112360290 305197631 710039183 464891729 779944834 695342639 562534603 408066217 113007241 192009787 510771749 897088499 860627759 340910230 822802067 938048835 796575014 54585524 900033085 779664964 748436064 189870292 802041001 867154168 758373793 860624756 743386609 763812550 784826604 909079799 90957504 788013429 812805218 798340996 828403384 78846062 899356016 169279421 760734663 829513998 499118838 793765758 579737593 111918666 983302413 354966373 496992527 105991371 964677161 840545693 910743062 832566727 449821712 998867904 882545234 441999920 625222920 745395599 33952147 334817000 276908954 851436397 473705617 352150463 795404024 777524882 293568881 925382651 787391867 917160534 194723322 908523952 231289760 977519570 599509762 106809306 500665812 364405509 825770506 989939594 917785807 510760624 522906806 959040499 810203 998094802 297114469 979317924 757948604 980174161 148214733 395427449 777931908 886381183 506215451 811967399 346968128 391875380 124273715 279872006 832985373 432666378 769154352 813254027 187487221 753362127 351492065 362218496 755995598 426238157 87380391 347146998 663654843 27222768 820060401 237243629 314132842 877981441 939021800 968267536 812301390 301916753 884592242 756351956 557464215 6070459 968558335 998071228 383947188 447411904 127442375 744310349 972305852 913235566 149303730 737020247 625985063 201136155 146152972 478149840 432754702 943287897 828430679 616956074 5347647 273540509 283715343 900200019 57214519 810877439 918910623 392138454 882261939 762468276 456445853 415420102 909412602 688996996 777417146 942072156 596841118 124285658 957357803 392896942 884997488 200660091 995766961 953830793 411936001 293978132 911739421 8365495 883724017 281896930 885711612 846411473 272018472 953820411 809844166 737702985 988796339 768891501 838009993 909428546 900903842 816165414 367339045 218214186 917977422 962993098 811316286 825862111 829715192 15956643 964882604 979453854 914601425 3787558 917614026 449263756 785641893 986794739 647918953 38631753 156863051 196742347 548630044 611404820 151056293 763609502 363626415 522991246 909942815 223602736 594417554 807546875 828268339 924698377 259789295 91766707 113396258 923520385 353708772 73573042 360761537 716225341 753224216 911250209 618845218 421253816 947178842 392457034 434266858 106668998 844510508 582464390 878610272 883159193 192804436 850661447 545849226 905538432 964209386 84859635 777590981 849573239 598208587 509988456 419519776 809776105 902793036 9598054 139415005 920506040 519630531 493591619 239755501 796266211 887446567 877622370 791904976 157526594 400151897 590389839 975342021 819875399 728697491 954768249 841938346 627804366 153018053 570097090 475836723 765250311 795544483 108626809 985320972 998284412 258173589 410564638 904998963 921883441 136562754 141837804 642685832 534852504 702680870 416613558 854123293 951168477 477232609 867295318 6429864 907966086 748426299 102158722 949179169 534423513 902237713 74758008 207823223 809641863 743986259 408791811 893348590 161648118 794402948 964572003 773648780 512715598 300812076 90894557 833379852 976439491 762144506 839490443 619210977 877821159 666667171 972098672 587142218 436490583 277374961 532737074 897366211 905126771 496023670 867769629 691586375 817157911 879919730 946003596 664619457 892541582 223510659 556258185 887510578 39732445 824241337 216963385 753398160 885673479 835067859 14077685 848721611 879952877 208668490 883474933 505060505 605918658 749520428 955218750 891351828 785166689 208923928 380410003 917500653 937288772 157472303 752526528 216774198 569267306 400339002 780451934 840136622 846107547 660081231 926915865 401806955 789749647 767692599 528255920 793372117 889202648 422564598 918652805 988884633 748018277 749384790 372811836 857225973 84728589 290279893 664761403 962872438 842263059 632255347 72163025 630949974 792247922 33942309 816438508 785517184 244463081 850440890 933739645 673785081 953865305 850252590 413356009 793767049 813201956 782853061 545478307 840047457 479656837 712818783 801487624 847656079 888705562 146133452 469391205 30886164 722160397 17255591 945192138 155662386 947583838 985732298 948460620 303515292 607657917 808148317 155820939 688692503 689256999 42996454 446885927 748534049 862259484 310245794 762874392 765561011 69340766 801697542 871929675 808950500 507941711 340533603 929711367 749028730 66663322 553989067 652396025 786145027 991625475 980072326 304579292 116019653 875917199 53741622 775325678 558133417 892023565 415784425 815929922 507180532 831465665 80740691 896015608 498972931 985725104 795162161 365761038 676102846 885789752 594161496 517452423 986905300 782325981 832640504 844939816 732109764 425402034 761566014 833945572 752972442 921254859 984935031 827449652 737020247 687931330 969713458 780430108 605023358 20098185 832020229 842335286 909233923 825559204 911768471 416776239 962389450 475463218 187789616 938865338 32792305 870139592 890160569 486752950 944671497 966436950 742896929 249722900 761785709 118647910 571107844 357643178 910304698 822823898 775927834 773713892 961644072 20397328 735262200 901584583 929359174 922064408 209204536 724846218 738941444 775937265 279988575 213166372 235121719 773176788 271641284 193271722 872416293 312031782 106920068 499241020 568527424 87860346 328440054 950967622 791194211 384374672 428948996 863593980 874436191 239991107 815411987 480768786 945824908 537114359 144113287 856826013 480931118 432109085 624243970 311363245 992018298 743829664 953894808 923650898 811819990 111244393 226751876 984705540 854849237 955518409 147096056 940474306 949918976 921654815 795653364 852006232 918296766 904838981 52186585 890231195 34022854 58567657 767444153 904299400 624434170 326783379 468214867 391114299 772543719 812922478 835585293 409907827 793143849 497967319 146032371 611309786 460089101 866374405 446063472 747497822 456029883 850648943 689984888 942075855 766601878 671545007 909323258 835322814 663896961 582288672 996766410 156998068 850474564 660681514 200646892 911349665 756419197 944427291 769025513 993967075 44450322 826426422 568037785 808977945 235435308 883202018 94099682 817918589 683648506 890860415 820896531 949532938 198614245 907833953 888918326 389043220 929305004 756931734 245175475 772771554 984433295 142986920 628360138 501803410 539831641 782432043 425913212 800953558 897905714 137840556 850348869 834819011 323202590 981026577 166455094 894682603 5456707 813608062 102902774 252329993 974154987 566593549 581734735 738235758 838967744 477083342 829563896 902640458 122015340 982999937 319646180 899142704 920017519 867606074 112009254 780771216 667108752 728586351 886583797 440474768 374803916 749009914 432654278 646797005 721356823 960534810 599686459 932531360 831703688 37240669 845522703 101622916 928711679 139979004 485728970 818722647 880883188 989790518 916505839 272452763 778622034 988998775 5616493 525218305 945764533 478700243 999351809 839235672 301239495 988585256 745121776 760637880 960298422 840011574 979203777 940101230 876346574 796195414 63138507 41513551 905417017 937312661 826402384 804812165 184758694 892833921 331228594 189909606 945273407 705029339 606856339 142942938 96517284 859174769 952465348 823928774 794677363 522138974 378579366 911261130 796614417 9843088 211150630 754522446 107623155 795092937 73072409 982575035 757811474 855266192 145163723 230948800 304082898 945281310 787171757 347552776 271977720 665350558 839129497 243062977 243033250 783288080 123474040 867896972 317329749 999528735 150494998 266067857 172250289 882279743 288182504 356386287 445751441 740917222 777288719 755747443 529854328 915366084 763349833 475361155 889256964 408187189 984258529 938537367 953288325 299822035 796882069 882611011 543825990 685493855 243969707 760361613 811038337 998665760 809569254 287743751 892347038 747376580 59725482 969687257 220641337 876267568 822571584 388216979 642687940 729912734 909015955 874056396 10585404 679262523 519226017 194652005 720116974 449920927 968061896 170934678 329262101 797409708 287279130 930725842 534237743 815049738 928482543 200369872 949958064 903167100 871641439 755604488 499549985 949735503 331571320 1664453 872319053 307591679 636029068 838072110 336957042 964360307 20874274 918259839 831546842 177422367 768598989 638977613 968957069 173612256 907218287 932459904 767525748 720859544 812676541 217046222 227234020 881478797 162581681 885999186 639440939 986084950 130230033 882223332 830676076 909874864 976445909 930458404 658861076 933886104 776056441 867023967 492190532 764279959 890071985 920712004 868195534 420447947 226975819 921704406 677787015 910159342 839355048 222589271 785886160 71785638 856825814 908583604 547569031 878921872 93863704 692756786 674089749 187712831 546868705 934629400 349510412 923984660 330789047 113311069 385471218 610286283 451044594 835664505 32348203 543479595 767307946 907515233 383922128 240685370 890437345 913376942 741392687 593135959 836144756 130942199 810770443 64710025 766378489 687984228 611363952 416119832 613958395 952923181 275036022 265674010 763298299 597443280 842050390 646246382 765216399 508421755 62155631 812127707 373608383 969769249 774587119 838388036 321949579 999315220 976080567 23087307 274936955 858412095 628132279 819712487 350585694 121338419 638740427 952413846 455883862 829556740 123081442 798217421 991605647 429006487 760932867 482008041 828067444 480648684 266183707 852485862 915499885 338419926 6304010 58303801 199559733 807019224 295588341 790391380 812275508 859226918 104154511 276835818 199229963 994782160 881703947 288868664 78205150 865004173 918323820 151712499 288003975 933062052 266867352 6624738 747966160 414266132 977009667 861897961 904081191 796745763 882788089 865423855 907874656 969284426 925729266 555417525 838990572 844811855 803455103 947828669 460352334 168231952 286597540 835046198 221133975 894126765 789960099 871482477 774804796 477526842 460618942 401301280 941426836 768446098 865635982 557593232 712861358 883743468 986323687 833053046 748023852 872316203 728002182 873699638 348745505 633148464 790308091 885684799 695732198 538977201 453557792 985760906 772888213 596113311 932104985 916311182 973512142 793426765 910321243 314643605 937196658 143804003 766603150 950495382 839618921 665178326 818039748 814875476 946034048 778862897 361025368 780004688 283400302 873776759 870973992 877834127 996666460 258190109 576437185 948803760 829205889 22477815 977116216 839138214 263281511 508628614 431733652 670979443 275658173 377024807 865391907 749128814 754714848 991151171 741254468 21160329 343119028 469484777 114660480 246281034 135480634 513275075 835678729 828897715 896764812 582507240 806982097 792200953 153256043 15381546 430491898 833933692 553972218 930889522 95486506 54586994 945927206 962429950 738335419 793963745 593601476 25340472 852148634 739339222 17654016 764553714 785908471 907719970 923966820 107184542 765601146 746050795 885395523 229782124 65489419 792900108 717858884 189229694 737901333 215669766 879359999 867816555 202250919 168790834 896077959 378357076 991369693 601370597 902610879 974265572 408751890 756088998 974194313 969778805 907613513 107246210 243919201 819734364 871089158 684914909 685334012 587962778 896010743 771007777 760327889 50924126 923514934 918911731 760689123 936839060 739545951 771629045 743488062 867805221 419094005 848808554 71749711 862246044 897753092 763814256 48583622 644003970 638048071 983441524 560813370 831281720 872157943 959370000 698368494 456121847 147802385 208783421 999935715 259491211 929390953 45452932 661467170 191974334 239342234 766955524 790124710 651772658 869709106 900947158 8507266 764266966 624615052 952087860 947946495 579671706 645665068 745455565 781550066 383683758 810037354 458852549 626262128 305501740 802805374 787103910 908740089 348872295 840828490 768341112 849331709 269218148 191526252 973488405 247518772 865819476 277754459 817391480 927355616 655295039 54925550 802959148 758065972 756474957 130784989 131015235 298542820 168759556 791314303 971180250 954803734 821113924 977257761 298584707 85551711 830095770 559296093 150754983 687601363 963661206 791182638 782848852 967102323 812501491 282879736 882127316 714126319 749910633 283634411 250055269 920794306 964627880 557928866 609036823 892224214 828959817 380227745 787348690 947401571 197510276 303416614 743349995 902126046 92951669 801827516 593337369 743435193 825799941 112132308 910725178 810906732 640820268 143709269 987833641 897334108 8365133 905821998 903906759 27669544 580312585 640638306 114949245 790639877 802450032 952533211 992970647 740698130 743893932 812429798 725753821 946393040 710591782 539317081 316306248 648056796 864958072 875552783 869155821 640077008 676575992 268326612 952276764 855972636 868638970 919522343 511911979 985022448 864414845 743379153 504631380 804309050 161570704 782798270 796278441 568070144 822034943 40843605 869140820 293464990 833795798 342955493 572147148 171049420 363138530 769310498 533945136 731399876 485723918 528659033 339156928 755837516 678115111 429704244 38466661 108727709 930800570 830376371 754134229 844023661 183856391 343370527 646750213 618756038 142347577 919020676 948362629 912816334 932944506 788599195 826813067 960133990 864120791 863651814 635193967 173577740 441898219 509485081 952260280 950150006 978670694 818316431 801622902 492872349 655666040 970429792 950984218 287044864 931926988 741644901 175574614 748933094 900204759 945910536 921566004 776366667 430197920 978180547 743538841 315981771 71138621 758483530 702975644 795335099 995161088 673228434 94907656 815867573 817135928 778765394 330914764 915726467 264468189 670789040 794350646 876362906 610372696 742578958 293209793 282880494 950255537 933450232 371544636 857095322 175964036 51847504 902982137 739786086 997328153 518268301 675013941 974090670 414571745 781225817 714039571 421054033 635847834 101707205 780449663 885324531 509176043 54777896 780700627 916678626 142975183 269737671 978104362 632121755 203676381 469370198 821194811 737020247 840440528 138404588 397822740 952823015 996296152 880672868 748263262 795592174 952987468 943488083 737235373 541848354 943941213 728383302 852451498 297466297 670405262 914243720 895247475 728062086 843249760 889045369 771379449 824821463 806488744 761033346 856904143 941764002 727638955 789627187 733921813 980464132 784570463 927900202 791239022 802147172 361921657 957670838 146933397 746005251 44841003 628464586 583325459 267145440 814617627 862747694 133755116 809542802 904996924 569421237 329787064 338656713 927492623 880111126 810867915 599706890 549723027 815649907 357359553 485340336 822604154 166514207 456860631 23757794 105430556 786808405 816568473 495524539 824603071 983993784 830205776 253890311 969397138 618108423 49199385 257933548 996326556 832495105 918498479 24548559 23362582 172663627 428483632 962834027 961355754 839915697 95958017 959984520 82827626 553936210 937190730 894246978 386611613 960681719 225465641 10098958 351689509 236823841 872045611 814932629 732022804 60316902 678523819 646930106 696447791 766133232 871035486 134739310 757161622 912438045 818282028 662739752 294364219 95309673 849092558 163243782 192812051 895308045 42121305 890437097 767789232 737796445 950319096 347886013 938088159 737756959 873200773 398747498 777738950 877183542 780136197 229291672 692072359 247066407 758876273 726920123 626886551 53495233 339383637 656611065 786227220 551124694 778515706 833939209 830471454 574057340 183746735 144611490 323065369 688425754 842886941 320848885 782111566 984834471 848300868 946267098 738673019 77363769 840660554 214816914 884217216 28604482 4863496 305421881 41449138 314044508 236258014 486187617 765066718 924507284 933416859 450235730 799094226 938937181 273431026 784394177 3717127 173432737 820673103 16836323 752238525 733366733 754286390 653105755 298906428 982559401 55997397 882336214 510230800 814441298 63255068 272092773 442330352 849483316 750536024 914989374 641862994 718613424 145995983 964765119 105784661 959034961 347531849 796213747 123798660 322985330 964486024 857332562 966151539 11019930 684460793 82074094 646052402 312058253 549877305 979985009 628440464 979569825 810254761 982586133 711844289 737020247 821287453 671515936 901051149 978514588 797540366 970594583 864269210 319238073 653058823 647242492 754773951 838030940 909111258 505976684 741891777 147494694 848871726 113661866 828099143 11300741 381077925 20728538 934349819 481408469 330840268 996355618 325965316 766389719 148750392 182188248 741734397 909190986 919235460 962447802 978174200 442639298 561440289 968214251 920556071 878492588 582701149 865568703 336777929 431585984 905240856 646072054 340945130 760627955 612382418 387291537 134446787 258379489 882380603 596851826 751293336 840932027 694905917 130617039 737020247 27943962 974297603 801046731 306074865 670700735 733226791 934396276 737020247 412203956 210937281 967143236 906846384 3203911 766028087 839986976 957410248 966945699 7511624 318129615 790603080 976565653 375933106 420785010 886858638 913468573 824012715 907422566 734145738 326126407 984064246 87941233 27232243 626846032 125171855 907692340 760329206 814839736 69252300 231178841 633773449 705635730 874217284 433616144 570284303 934182419 511479006 653084967 830508308 151850073 159738260 994703059 242843852 869550806 359257019 993106218 464901643 767536158 501267276 765075020 576204915 880050513 106770719 875528765 590699542 45422947 524859068 984570008 570314506 261583589 912384518 370211531 780140903 589160015 891469156 798231702 994724567 866294822 37215390 654568935 771815948 697722765 157142881 867184731 397291000 996814076 681450099 944638558 701297778 113234467 163829226 369654151 712047028 525045588 242069722 398509424 415870983 107897132 524819527 837867844 965776431 545117814 861316745 737178881 537260699 643162308 452808672 272378717 659029023 997349408 401126480 844460690 788846111 771555600 841731188 875347184 436393815 583071846 87862293 656970768 246272240 784544768 996909119 741668461 849777510 822752502 961080235 982844838 34720442 408959529 296041719 169666407 68447259 672325140 648877227 820317603 920884693 271859462 510931271 329345305 549559701 141245229 834769210 407228243 227114358 240225750 674337239 981527565 917779937 970852304 362857251 390063179 929400518 287555213 633054480 788881304 956940236 766678373 855489708 992712972 790872250 763073445 310424694 601018050 82193985 825873800 827153797 860267206 416965023 270278609 212179500 812235874 759807715 928707978 453407302 476300879 908716036 832212913 680057130 973204851 888013615 872979514 982170590 271459038 911821596 884929266 595585740 788903448 735387283 660994284 939898010 190753806 746028379 312000765 91528111 831727758 870735030 325549505 866990279 760062135 976825795 41831906 715931224 960443118 674664451 742576528 507250406 162267852 954222846 465328435 586907605 63969235 820489706 256373786 524950439 187922230 916831093 818068296 676417815 990602760 841772003 786203873 929280584 145359529 160257576 997573115 934000246 453220282 695195482 762623491 641889712 782665520 764718252 616958070 964312632 125329683 853878719 542406373 704058996 291350551 771252769 528625637 720664744 761102281 860948929 720678386 552630301 878031357 896044476 953005692 817803746 861631363 883952120 28263221 746174719 973513375 986086540 396353215 369743270 588158269 538562802 836991837 197775747 658121131 357085484 848346912 484166191 86106993 398709003 997126965 995728973 781925357 18398278 55779730 110950468 927381767 138216902 224234135 529633499 154432204 522866609 636138635 145828085 581552850 727775253 206872677 886501390 873462489 950417897 153185908 202283464 832160441 124550460 556364604 916891369 407598312 39985874 903934650 341036168 997095679 816740045 329673230 587928280 942482183 834793736 992608480 29132211 741052846 86955600 697314956 293992658 679681522 245463577 133558341 686910415 750647300 258127556 139003994 395788679 224826882 652812001 28744131 932259097 769731630 912951791 756319143 589097489 44346194 225283541 351615208 995765667 483044610 477897423 796804310 299684863 993385295 124033962 861828960 874317917 706741649 933054786 765128968 878905986 538567264 751745704 969824257 763848348 998311288 365867147 688316786 800050414 280185077 897367089 893608800 900419548 55209122 870108433 582334266 900556248 854031690 915911217 747321562 559697376 926633409 341268469 631695457 855758964 131634287 544819599 514842951 328279234 194835371 145832526 808684223 473677019 851964292 625482750 356560429 914676506 367672263 809501444 383310408 587630007 932520808 825445091 897819500 737879158 834705886 458725521 544984542 39472245 890902520 985152997 802868217 295463449 702327595 438566762 798368506 929646783 980868342 763494639 334900588 953855210 12172042 381568370 479181755 430780352 450662841 746111261 223411915 662568096 822104970 862270667 757084296 878565958 787296904 37407174 282306758 967096235 981236614 821612144 861262640 863801466 787231010 867342095 864372241 971547808 125728410 546843751 739008251 568977464 153131300 275676452 934386193 880713359 940989279 281985639 954718959 662170108 308541202 277830571 100995757 821272705 990700382 565276155 661473214 805949282 74197720 761180455 634998308 537119958 916443696 986165779 398037134 420651606 938788466 176638584 46377129 897281098 606946974 204405644 126113830 1737323 959120024 910035200 950955270 116860233 491772933 930236506 508136447 532349093 860363782 242620828 999138383 761142781 774684751 873990433 946668098 792594217 394589081 708421185 809111414 934660815 807108879 539636093 991297960 630775655 970389755 899416797 743659383 794019393 809602981 952975419 146199311 4333760 271934178 298998250 534425930 401263905 759094423 943076167 556658011 40410188 683686730 830697180 328768850 922986974 768038594 539825986 788340058 776379080 392935339 318495350 804632446 240691640 137534612 858295920 745182783 12741908 967650682 771275837 310474484 586467794 676503793 947555199 492903184 908928102 69786340 506079883 113435419 296480192 44850979 867108048 71888621 976884059 843335324 432193258 738817817 897948410 954077677 401375889 795173334 862700123 751015061 346596491 427580065 859526061 140601488 533617973 739890363 847289543 841927806 393223513 613265832 944642626 8372730 830115893 301890350 826477944 828744587 746695735 813917654 863829655 143726131 977787282 388941662 187371996 906842593 363638331 511727180 959458770 539086675 946926285 32068200 84526399 996738044 700747631 964060442 195923670 398760351 808975411 940045902 857465906 873649211 55319468 268183094 147283152 669228990 483466505 323416412 188032687 546182694 971162885 829817120 882216638 935001658 26913759 128299840 317681043 483477233 940546979 170158645 545911204 398235476 997079735 52941978 977687202 909467003 91457979 768493869 375204373 848245268 443931335 708244215 947993383 955947902 946648489 219946563 827899436 947321501 258067183 804015910 965304149 631791472 966303603 746783546 983986123 454075812 960866678 751095264 608219669 850089955 948097375 137878070 263206793 447022642 128286851 485082939 868062661 293006846 130425716 824236328 226102133 890990902 817011665 145765563 443273128 922644739 178029728 412627414 49645352 453432388 809041843 991078135 978815644 206249143 117643501 20950218 771923583 886859087 957466797 362330866 91518565 870147831 825821674 166058273 991035816 780740755 552367084 631860415 334320078 956666183 826691053 763728959 175487712 342717345 939082490 582206008 422220450 943554338 679513728 992648470 756265358 935883062 741874420 784106569 872098313 826718277 432173391 788413925 827294327 182120127 880096790 921939004 226471681 337800268 977317021 312665786 427640097 891930463 578841433 95299474 945475042 821443002 617400021 861691080 399124763 577626103 62213023 773568225 250130804 659034639 178478426 773683970 544310620 487336862 649624671 801722656 941797391 221133072 213436187 888103627 193133309 533078990 232028203 964104012 561488680 34715432 589776955 361839567 511890500 753945216 281462657 950006945 574217609 699584303 764865550 7328104 99598490 629141444 952323619 371480784 866075647 738874456 237288754 9258367 364754868 959962649 304092318 910672631 810667186 807738756 413120185 351622854 874004703 922617495 768562229 353227242 228947924 903758077 828086598 556124021 6697142 767841633 14362130 648207846 978435232 780252340 971055890 903024459 825453343 204920708 228468992 935660916 345672276 759085141 648763842 359748123 228187558 562240802 299453492 425036080 393556864 922472713 895335508 701402619 810998201 43087428 887420153 374405410 820913078 53797111 325725678 630063949 968938474 249601209 240108470 869190499 929876971 642306679 890736362 779531429 87076760 252944853 938787384 841929567 382339543 23822794 484855482 383111405 978151759 995202891 231896328 795718558 78624202 166472705 888085601 757570165 144868056 747390031 912737927 658109412 878233716 764934349 640511912 877858773 735975576 317244547 779217622 945008407 44899282 840631372 763938298 12392145 986673976 880964348 17869670 783564314 971485678 843430623 935528752 865004766 571807575 983202280 417847313 931934342 321316165 932863965 230358205 906871851 969854916 938449310 838794394 893366811 718708525 173816101 935337966 941782252 251518485 497586941 734979471 795179871 828794081 387725874 810307941 615516541 874965450 406660987 863538928 538686246 959230308 816546727 889553522 775809628 33034398 657108979 904982571 531077071 37476075 875438872 993543796 7282505 176003498 545295350 920138226 760124748 514476273 62754966 34679543 775178805 933931473 965064618 134259269 879550328 397847685 858739180 116335870 303244365 776733329 935153103 968404730 623538520 827105400 154331479 316761964 884335349 883330711 694684561 874369418 786613231 249043689 880972309 306245792 471743648 159616638 105471761 608733625 107180723 920272823 241560909 885278973 907138640 893711763 931236629 631996707 430927138 240047603 778821154 856023119 913515971 838397256 476584978 638988689 931358070 984783857 54344763 824994231 811560154 786763994 270584396 789074733 642808238 670912619 732005745 965959202 426471918 675497734 397688995 787455256 172183165 801982899 690295084 758741384 912254893 860214478 259038273 81018047 797192900 863708957 52509802 464814035 833498939 184841908 710927895 842166341 920954098 898779413 819003035 174160197 748832884 755240996 962677027 754508331 197587930 886249384 946933415 988522564 873430081 530207034 249780155 11225762 987419845 842480620 946146858 943540105 718342937 933930249 489646949 999805552 765832237 692303916 784821472 234816595 911321944 926927667 938694632 389639197 257303276 220895138 871809152 966390386 787789723 999233097 829253031 85610518 918269759 921412193 937724673 982046906 601802891 634130499 885636640 942886004 475662275 820809965 923180280 748901996 113669821 800003692 118214908 967038049 778168211 932658593 87677010 977113923 222563133 978780015 846647963 959067456 982115576 772182899 589822355 729209935 27875296 484157899 451296007 218412363 31668620 962042702 906192763 895790970 41486290 756888800 116979522 770705818 906822609 938249148 558505216 178332719 753339119 823142827 876632225 809681199 918731056 53448755 713574125 956768608 505665535 489235141 235217877 309486935 936856904 777122775 922577227 19090927 165127804 17619918 129947788 222908950 914288436 783933503 56860049 204410707 521417536 235409070 674001292 576897628 610615159 41904160 214039147 444502153 431737399 904268152 671788199 946956562 994411098 987600263 899893704 843602555 549409706 716959290 843849610 1563092 747473546 592679667 852149938 484057494 207876431 252893784 173615636 102996962 171636228 298239047 927616263 206142520 930809451 430678775 784617815 613446133 360370264 782133314 975617919 886030171 936462185 792391663 995150874 186807990 807628816 791413607 946369298 262853670 569452056 581645093 63606689 933886671 160051245 624131093 676348966 51702427 961793891 413319134 137309456 707928270 940470410 814524496 838412957 990573688 997354827 28429903 182040433 865585592 582123511 82402325 4095346 944960396 565772985 746716080 867024200 763041321 517640303 830959081 995281613 640917025 811343487 702869216 263165638 864812621 945847521 144226616 807324897 950082571 995842171 855904088 217294349 920023259 770861281 945942430 753437576 599445576 499726256 830675791 778213263 836769458 164254172 978237883 971515756 344027900 940664284 482228410 986997155 674894075 633664686 588359228 57729138 883708191 22814120 541445998 456054020 396630904 43934521 812186053 807113371 853395598 874008732 43127349 740322762 473692351 256865077 179639573 821553167 839245900 846449624 214118044 809851318 577828499 831616037 894395259 136304717 904289136 797760775 825693314 759919156 393310191 870705748 775212058 189032140 946027471 525211152 993431096 816430884 814981227 858281703 580022263 347234722 853841360 908567924 345358955 625700946 820280461 956465377 923026003 653790577 870478244 746184298 756583223 770641050 977940088 370170128 768809239 893291967 480215171 973650847 641600700 954588813 154071139 909311877 922723752 518317158 457112960 347624774 740373711 322168918 820077009 764513712 31350139 688983759 194669628 970792145 60536567 164341161 820907690 95924254 863372934 820809236 451118104 881148808 920010307 267409627 834884127 641536934 971476413 921992527 767805752 755293108 981689832 972644969 148407170 100656612 881080331 958303845 564764990 794868675 201110108 777152700 458213447 134667772 959460648 832262662 824816040 163402413 820058869 810547518 834217191 535450830 899914672 868379319 686979060 447924968 911746056 963969445 475167568 835151284 934465874 830020889 7825428 906186219 351576585 821644635 988593972 475631807 895116091 182875899 38173075 747845628 567817230 865756799 243426158 661219677 313460723 993380540 946102945 374199002 474075041 251769980 912445373 350247767 762899573 807161678 936063126 297515238 827549536 630919071 989161250 765197750 368222443 928861967 920106407 23043257 149924141 944298338 69432111 829246584 826344519 517163291 54150803 161700929 385768358 279085790 653828470 236527501 528939724 873438378 882178145 868353780 968429692 970342747 538955958 599640933 900266821 776469224 760361616 307715196 863453362 838529690 498254049 870262297 101801766 549378141 525884696 791750875 936920887 782669012 456555153 878814441 170257417 603357442 992407967 959277037 869576301 302110627 330254380 769942664 891882509 924324407 189728460 584264037 903597474 781199868 941614365 107784680 12561669 828396724 864206449 440904521 946149129 917826188 399811532 660514190 210699918 294506845 462860583 988158527 869623447 527049368 975268741 114506722 803804060 130884845 948354635 961904052 626380110 572248879 595833677 361204605 979975152 195944098 788623321 522970205 822389335 846362432 561581045 992261752 791974123 698770872 785827037 762624050 218448271 844458729 789319784 907650891 658515219 819362592 76787708 280305875 985264900 829622048 526035823 822246702 743522262 824116267 148513631 639307168 873570512 710736639 70594943 381674902 924253509 179319465 353367031 972295393 71663839 294640366 472001169 160298488 424402615 779519275 951667812 757630042 769208620 992870808 792369529 138327206 306415141 327873413 873692558 697543265 906731493 932443826 836506664 864466209 969554097 293155964 62819416 923849947 797104769 340708873 584775195 47902474 134255202 944998194 945514456 482969275 740411851 731775965 251397665 70838903 855833220 822118781 135785678 512381391 785942361 920866214 899017607 62604449 981694078 422428892 965580540 191941749 150530087 974426073 165182223 913143812 955956239 700000397 569356405 905870172 498898026 884607162 352596842 10155667 744269853 715024872 798666273 497998773 299400717 802603716 683128676 394069711 519781568 854309969 547814126 997040939 945925235 172602128 294427804 63470559 973085967 303945655 929891583 882887429 470807434 837614454 180169473 940429562 179305819 802239530 835925863 74678027 702455158 877741408 920294216 832122008 795271644 368874407 798635138 393696592 976779325 564359749 212080645 857439535 388772283 159008310 705603524 960978942 394222481 881925371 212636649 765442361 860708099 960407882 878319923 662120384 466086727 237330799 217572844 878895487 942505787 942931473 890219897 140157766 224973473 59052233 520764695 959303800 862511541 796404148 742636088 809098331 683376509 957584813 251430928 97851773 768474268 916421439 282755769 131363640 146756165 866261738 887270327 824078401 835727305 871402482 801131922 231634153 171190640 741054382 737796587 882020768 788509543 80651024 473035018 933519608 274539320 660195051 827716087 732279722 368865051 741674367 844423442 829698808 581498586 753775773 814071234 979043405 354172033 189772198 44664319 376697034 845658500 351876079 752430553 769576023 492909888 765648155 666247760 930601886 645576182 423181519 958083601 366132599 679449911 991748495 852344885 789539523 875487759 931799208 232416250 779012251 66837297 278669698 845153116 401232034 819730772 737020247 916629285 27424603 850283892 975392062 541695275 847747778 597495216 977232376 215958140 723303336 924891716 944891242 834863352 999457398 404688775 213279266 967854002 891348730 889453416 904146618 973948515 558579712 77436323 776557342 320633307 176456450 854227660 768577162 505064570 219960913 908305927 22906795 749811418 380380043 913007586 861470557 127433801 410617122 885881965 780341924 316307615 242781485 977406478 95258660 883374660 497979124 779234313 777114864 503342573 987952986 692854512 985936333 212591246 880847331 977824794 895717671 250613835 516779802 925376879 40570923 918420287 962859053 879250596 972454455 917606039 946699878 878383991 997406855 802692786 635539455 303224041 923636873 822680270 694526692 233952440 126595435 992103358 993269883 515846102 921102042 820731739 915160563 790762389 502424843 564132482 998876863 702075046 423443754 153744462 371308473 247981049 712370735 730724272 635182991 838755851 907420957 401466395 781291268 817303184 98886387 393888226 525181384 888745347 989099360 15826703 209316910 855712374 701166390 565849591 712669413 97348611 937672690 834988937 636491422 843147899 817311283 811659892 617059652 240058098 650719900 49106106 975776146 820997540 115898597 477418961 949029328 851974786 229793009 396405609 143994268 594615263 963968421 601139234 870569042 899104868 264317562 777736617 758462583 940390057 845374053 297012215 958363800 704176006 865026262 655478468 809220267 801730928 407495779 865950098 859562411 628579400 491178927 480091938 951734641 665415358 880399911 745832518 918323831 403834903 621652471 785910051 499383295 988547366 918656650 155167686 641065552 649886566 644889610 747488388 476087547 425750454 913606528 852213107 172830318 902522725 745790307 134505725 586386157 104164844 433979682 910097892 933984180 804880120 745010314 18945823 851159018 940681469 822636583 412036646 755351198 556422604 712489050 835279890 868185951 860242109 937832937 307728227 762229945 4310148 739637183 589017125 510386620 174623583 873678102 842826824 904896012 300247377 85129668 304441269 207758253 347768205 830303544 970623285 84768691 588911609 594078623 972741385 906479776 461744163 653277122 758299278 942839646 541418816 65943283 695229787 544541953 781524798 123722963 739019555 311305873 133420402 94499795 795841013 184022844 770938929 921077057 292894664 772038587 753332096 741189500 935832181 987714103 994872159 955809889 612553488 6202699 788092727 250473977 480195286 549382655 58847241 635303397 889006078 878041783 983099248 319042244 40227686 568051399 553451294 680619931 934800269 904099055 449087374 799225289 522641474 927038548 992238818 565876405 869863982 261603673 786794738 413871449 902650252 636945394 738206358 770394771 469514793 923807992 681834095 166700488 61896618 966547389 761871377 786844866 641125147 796751772 945757548 296323728 892076197 887066090 969221739 745751598 311382680 331240548 871223134 482212745 845113488 808960499 782286840 521178818 931195082 159529035 47054845 935488513 44366444 105527803 47528348 378083622 776099878 978907581 930602766 930635501 969759930 542881493 526674815 34079124 309768079 937011265 580441848 659041591 149959034 549391440 339227660 753626451 692112558 112117090 989025228 862537891 700824584 73503991 113607661 44239741 232215533 550624940 778404489 806962630 955548966 852931135 741079551 982992271 789350632 836008995 201659850 875225943 964707486 840219640 912505865 855341232 960682927 481889826 919160924 167615451 735048467 892198128 751438763 837983454 743343389 952558157 241329145 112300798 814268414 834283282 336881882 857193884 779477845 812802845 759040826 669454831 989868259 115744843 199772423 854035172 940202980 805386894 739202697 998939441 763027160 997825607 920503940 916410538 967978828 62349467 971962941 979757562 573356750 745606874 980767646 837076260 298640404 853802153 81011071 817282079 976258284 836433929 557689398 592953446 676306724 822956146 513079697 755483038 667802508 969439047 739612166 782001529 901043089 927880945 357908644 964818191 848472332 874539287 113195781 354947079 938223329 826397165 886878554 302439269 950832451 201350011 557667881 961215017 253576781 162044313 18181610 363696089 334062964 485724447 572099246 581053484 14076018 846466107 392304418 876049431 944714295 993210134 647716712 126392105 838149519 912640030 1340320 639214540 739686695 449373992 922806158 747004967 365434287 254571403 862617245 135627046 750871984 944562711 617487593 263661719 780594646 887643313 524527985 412983582 887669169 904541521 242475052 367090016 499926174 895714343 685189840 877552682 890076870 597846491 912243595 953179432 684891185 409027589 439957023 917748896 770660232 757913213 405793735 462107845 715310283 395933048 112809692 7430333 923596489 791359969 156736249 481052879 702260348 826317628 487303776 995562688 849315272 656764641 768917376 986375076 252913496 812886818 617425311 929207583 577210033 292156670 334030742 919826141 155485975 949579613 696930965 745794934 979682556 208477141 93268958 218866709 710081887 956907395 423407678 934028401 254751469 896367428 790027099 406270513 740032133 632136286 904017623 690881556 228986717 62137290 577837900 950173749 989871920 606503353 925727007 433432161 4946183 252373785 348986119 296771039 961746382 230055176 762914519 831125200 65783777 717407967 607118761 971460502 212061143 188453040 690661489 635885065 810585242 183867155 886155494 776597588 390470691 154457965 116985719 828785851 842669751 903816819 729095244 842149451 213662536 791254927 920712046 6567327 334016710 271450765 714048052 884092935 148762768 888678595 56525063 953817254 765920537 869885976 530760059 537750850 717811985 15335203 857598063 669361324 246621542 623657643 795579596 737963107 34499165 926458542 779939378 730982209 944636656 493252387 267295036 930160322 838700763 744852103 732013525 829922295 364492006 747942951 629533574 793257249 862547791 856302719 913358192 772094626 286595763 636195990 773244793 149961713 68060063 397377061 674889741 524425952 854992831 651000530 457788360 795757711 682190642 18802991 471566735 55081019 776218477 766107658 737020247 675193869 786793573 792856659 814886103 790595830 532591917 944670523 772459083 799443406 602833844 102360322 469027434 949431811 842317490 538707128 241863755 271956708 300507444 361291370 916330630 666521996 810829734 696582013 522736320 968216291 775320162 859113429 201304322 933126226 203644763 902079793 382415407 494584414 90132907 245680999 912995375 297721609 769493555 838457055 758494927 439194639 110297228 161087806 998786106 643674665 592578558 553504880 631292764 837432291 550616370 827695047 907397855 289342148 978300263 214684996 740844254 659221294 889646823 201155622 842275697 851299891 905431767 761665768 844165985 952188421 669616766 877619974 16329804 818677093 370801678 8493922 430498255 83477830 845040814 425952340 965765834 376183638 943212719 868902676 243842897 50738753 893202207 700187391 917749604 761317212 601330786 768732351 980045194 872695919 350250614 889855940 893047354 828820803 742348642 575511853 286760647 339333835 782722972 814398345 728898131 805742675 865090743 764423284 889937702 870490754 920224504 33809623 281132191 283104838 433815842 377573002 882032150 818488123 160239114 21315264 576372645 360153815 905496522 783536657 975364628 681535904 595029065 794808051 451790232 811273877 657957559 920158372 778875635 947336627 637658059 809664834 837570526 747733849 829023712 376509051 595879639 926328991 21950078 859597212 895863832 686131478 821441254 230738820 804372360 839979014 261648565 838589329 812220007 715297761 733572863 860139995 851018125 877501148 522132885 101897188 188301938 738004195 764446065 807545820 407023187 747656559 325096859 195155289 410733876 589388720 866968482 953061539 945535895 48697249 908663871 7635353 336706575 943680913 504945465 122978612 779812587 135999663 844128843 245650760 577207856 897280621 958012617 960006457 1611886 930711713 210042674 370607690 525957788 814011063 776908890 835888564 692507230 827972487 763504650 663539985 988128049 825000159 790162197 924380259 27674924 933689105 971098682 970819891 811276915 255848370 678196619 140614554 961881401 785633039 754411553 614258179 824416054 770826300 336029057 2934037 454876303 254102385 534840268 765162226 585398769 198167746 25107985 860887310 773072830 608749170 777570290 545795505 891266892 840058446 774809627 921495870 912846434 663962984 659858020 976758989 946509963 552687281 145031745 937473169 442761736 814791613 932064017 963273366 777166076 285432916 852637742 916106584 541294781 492339931 106050498 232756003 561546820 965888770 146407511 891216611 847065872 803977434 549149564 280182209 762360731 122155100 774127253 250081662 993648177 943961346 841311910 914553533 746502526 709614404 252350857 610623121 304889041 709058098 909347898 923987734 987260854 363983488 802107897 388306628 790202229 809764418 150367686 157941771 946159452 30526179 654338832 824386728 997812576 406789922 788813888 865061871 696200286 180323330 296638590 5064376 728999915 806967360 254493667 68681861 180884836 766975477 810657380 976297968 764748351 180661738 4264244 748292762 306155435 937505484 344259041 314721509 895045024 880428910 621657250 372161630 960730957 859641086 356079690 890004465 796410088 24239270 942629780 881699277 963111545 269934366 998239842 294253238 323342778 677332534 14241756 241778798 418375301 315649363 132301012 883838475 936344805 312626323 996561252 353129018 943202602 837390560 20139985 794434179 761343996 893271774 741046074 996721515 552855162 939019189 796885097 471066705 919297067 129125474 18030586 749054997 842958908 437570974 751836478 900226877 497115829 798875917 823782286 763035814 841934728 261670261 929317509 950493417 885407327 13380719 878100271 775040347 94965153 747076079 802954750 585199542 883328543 906995302 738593290 326693331 763673843 891823401 945999404 801227209 456739287 936421771 767094262 855008665 101827114 333067541 604963610 963217025 284516376 67688390 780689332 921505414 779222921 836464858 853074370 740299758 339796677 129527047 299153754 875179703 928856718 983903913 333670964 258723727 967026245 220843194 390831123 837833839 42777991 357288241 246928656 924529782 735757551 535336480 464358594 143262931 509497050 765891669 844944948 771021542 628612114 754812092 886248485 561713737 255316581 762604308 575710859 281109993 73063265 484614934 828794417 685814972 156375560 828749573 240886622 953373236 765373498 286550989 375242691 552060141 83189986 587581614 925580895 856100227 737020247 561331050 702889122 649876258 699290979 819610583 958461039 361740393 497708760 895600458 812371307 779171192 771051270 82410905 972192287 926273093 510727029 961626117 386594390 278364866 678524855 998442836 970323103 295660047 204126269 808548934 145940008 985405393 810964445 44920089 21307815 883349257 400919314 188383716 948310617 875016755 538876856 966508356 787707039 956760771 809480979 264449696 898033445 256345458 266993614 113444529 156892625 956863209 485722082 352483530 941943803 738638916 985688919 376437598 403210304 925318836 773801312 226524225 95172231 847086064 10297276 787960267 804909242 853704578 844489969 423893619 593882843 991291817 888107281 772211272 358600900 756185457 871480173 848239945 406532278 745604631 612128147 93507336 47443535 662832396 874087401 949805926 414277952 861518189 788697936 858459706 660810223 760153816 560043871 913180110 740854070 734052788 704234960 933736790 926253992 755646109 958952768 204021712 889477614 956161401 873607495 906946110 485533702 815317794 355383309 767249267 965836369 821653432 865358332 756344753 388798073 995014615 80755717 766860229 890831331 891181744 768843038 817236382 350675182 807127243 743314818 89003828 856728451 938118809 948592125 826216039 875836971 341879762 457894467 452482631 956997725 979704365 857507377 758277120 88139097 101860003 935540832 518268739 885501627 46162661 720856961 17237074 907555574 938737528 180199906 215364708 169739809 184408285 822874303 944466703 757455461 842531477 632203147 925707356 286792799 521556345 543875888 76494379 554959405 698469211 493714917 886733215 971677374 814054773 618886919 141031764 795787486 157273599 747441252 96312357 144053439 335041753 817988296 188849743 429609216 475241406 870049631 463981466 938111888 928191839 452071836 521614337 886062314 794604216 918837219 626893495 894867804 78166209 149764780 950851083 911585607 808604839 43543127 846985373 753445833 957212854 587256573 402859076 336225516 977710115 960454972 339819446 4352300 746391875 499510955 592181767 469958645 738960322 895293486 415906367 676693159 882073086 930442055 798253786 315824294 297195207 272669995 768816343 459238539 830780770 872377112 853278888 810235748 953074114 936834061 790859898 325977448 111316399 925646961 886777673 883309427 943283979 141098266 153880916 937579348 62450827 203450885 658083759 720125050 986235185 791578355 493735593 177600942 801009087 287404690 864649930 776475004 649866652 82238366 187235582 60349239 193117812 102834165 815451030 914181536 974493258 864864214 779029724 866722061 571866816 988770059 809042107 567036419 575305884 817133368 914246913 48140990 778075319 999834461 820313454 931779541 977484511 593379416 997954214 857678294 980194632 973702468 104995126 449802811 448368418 374895233 995347709 426847858 758126593 741888711 764707250 639100985 617360897 875567091 182958506 238544568 892482510 476965014 743052331 946544405 35871542 634025641 145633272 340783962 787442036 648653525 36405106 920354033 831002405 848077633 190490310 993651877 40564795 798108834 168655971 71123518 258326318 112640289 460648468 251825844 220205797 636017352 758424191 625914613 276497666 807186491 917545370 264377635 412611657 763841142 411280205 750168920 111219495 41316896 88859731 838496064 568128209 252893449 625734197 687982180 571280348 913953925 760922370 428378614 116817887 191690190 679805448 247197555 748562594 70951249 846667419 750224327 955433254 828277789 785251566 337564012 941013778 316406228 838917798 819698600 727840 810759199 360842324 813552697 969499887 232318314 362433856 7566627 846595753 264560099 224675506 403577235 927300284 659207091 724315951 464784484 78672785 259560294 575550739 248129334 865193133 114411220 874206655 203507217 767390340 772678702 284420916 591930275 165646354 563050168 716240462 411711314 749169271 427135117 330860894 241056392 432018768 818218009 215394021 797782365 112524855 977329729 952014266 192512420 345828608 878448138 861501599 861200088 547096945 662678351 860574595 327349114 998538501 840192681 388966836 509904439 737020247 728212146 170827938 939644443 948285612 693875555 44229225 820964501 354769519 447345814 83088666 307802828 976610959 823530997 995578533 824145368 759174231 783469096 938375758 521924854 933708600 593232280 618278316 373452706 346467867 374232640 810808527 832598246 806403643 908752375 706798978 785385417 117715702 769369254 677548718 737020247 531135757 178450068 115252788 937275753 869081782 987025432 93118056 379090942 953872193 989635599 262875356 522663674 325064331 850963535 876023854 835440766 916381019 755631599 796272244 674641708 506701721 506579605 398137659 224723525 434195686 926003314 885705210 679277606 275439963 628007283 496258918 251278852 770765228 993497795 909539176 469886428 448744163 229557378 281116253 433706388 852809716 849098386 481109059 811701805 223007053 974535335 861612628 403194954 532407625 902993259 235418440 361885041 794659544 833711703 796003671 296156498 232136508 629397994 799540669 781619893 952030013 923259633 754380696 39986319 435995557 577004282 957547520 739386891 79559144 867073558 787401536 17305679 89379804 675092840 883124928 981884049 760010443 149313427 729730797 763968163 416251901 474373516 156957819 918165348 77720427 444436958 824620290 301260685 182544982 452161885 991195488 188949466 944742222 990620012 197639869 805078936 935655662 794289596 964570219 888845515 55984918 226572903 413734658 887551210 248579370 839482086 14307259 611525290 818609222 848686964 39604364 495962609 787665027 817621506 786337188 976044460 215104051 976309077 840024659 930457851 184884210 795542714 405349753 445250997 812678381 448333951 983163329 929568690 789004309 533948085 450061639 774896805 617714380 246627692 322343276 357364511 927119300 822519382 89798599 929292461 392381032 493509429 850005022 467009936 811063955 395031069 439286229 860608637 758038429 812000917 558969816 656742131 95646148 901153773 186402411 675609998 618040617 534958093 130218198 999705202 607458634 758002911 41999834 221894772 788683983 976897023 411010446 781585016 568135096 607946083 848619145 841699820 698982958 153449892 765775025 767546322 803799359 815327289 840214753 864324044 531674467 69713309 198254755 934605290 37668393 374118982 12083542 888532553 664224525 172710168 218723805 859795380 823372834 326587802 460153150 888072307 73706616 821008371 577159762 141479845 813798722 910560037 199647777 849203464 735617044 523333390 896587886 197650646 428088355 765291611 397045986 984553325 60756868 225414135 767566989 837753292 781136707 315446760 724470877 987435431 64477119 776845874 13669452 701366437 658362022 990358943 479498604 848442079 694770863 78596316 396737846 125476854 828112699 550372967 923194461 76373313 975137485 599929820 366505394 992085205 643206796 688126827 417362795 571034592 796505557 870666637 375825408 64106169 583270061 763745663 870276449 396553592 92530621 507849834 950963327 513974531 928513092 442070138 874649994 411578277 928816601 893884512 136462135 867925557 632917573 953400884 467504137 995672190 931101648 176371461 921710503 855868811 201278172 943611208 980327225 977871046 893987148 921325283 912271223 960519006 980479115 766862005 687278753 516610835 879317378 153515071 569428970 43652323 402562172 998488459 842656654 439576997 620270131 784679276 508691452 692253944 150237951 870314376 839528805 642067551 926916172 641938492 591227992 920546246 828193546 542432367 989897705 147250711 950550713 922218230 962878100 887879386 199814566 934036786 338211603 332328044 876012435 519349281 871343337 375385739 42922586 786222520 901598168 229982220 902160946 810244851 532843127 547467137 653851941 556682175 37735135 656144049 509332941 407842180 774681138 917219200 822724963 109082010 224768161 759157893 989631043 793621930 995424007 971497511 183397897 923507281 324856942 859577173 668783195 827868621 359218410 499548147 109065056 691613092 860123214 673028471 225038637 730140330 120025828 247194123 982868744 878857119 918586591 600069335 160844737 981932808 294454018 979799559 740748439 939698056 836601418 996845049 676788349 782628493 914591667 804441910 857881149 961811910 859378775 185945418 863610876 811636852 755547649 401304353 891897835 704439068 576370798 855006326 739471961 30011077 115298467 961847455 564839830 376544154 269192471 761469923 880125015 642558549 854571113 954288509 287620596 834015493 346189756 945245444 994816511 746034770 915729574 665446359 729546843 570796092 70162608 780776740 502133408 849257646 872471044 752826499 783251134 386999582 330539673 973477934 898489249 563330609 197483212 932703473 849667542 854644464 987854035 619141561 192912264 176167884 717338766 921095632 56842431 751990545 24675008 979659361 834445941 887921500 143942739 768206190 433147385 924692614 930373752 498134251 481679996 835889784 616126806 946093422 286290342 608836527 208101634 779224202 837158982 812007957 785171146 743978539 440401765 860017112 347291252 665088340 772160559 506266499 810723842 896440092 319416894 885252344 3158729 712592629 308006120 111469201 928455645 957871830 920028735 950994794 347040591 835415228 960908301 903423580 930975001 808943851 922087201 704389027 572574414 243393767 964081994 947878140 524988305 881373451 124631374 971088807 188662381 772341144 789256603 31933422 594856470 538873635 939125385 897590438 949716077 526570224 840985446 911769809 982882902 346742805 768243783 463109584 717673718 926313895 861602540 905248238 294343056 908278887 937335952 323308072 885909504 454536502 961404802 948882474 306833362 69121420 214186312 956923551 188010714 669562506 316672212 74513064 528299733 882769241 701114135 663861601 960220986 708123803 932549641 989602415 491116511 854392185 373255384 289260915 142838149 449833765 900446642 923130543 618592652 628758568 146911029 748473787 940564726 180625436 330401425 897079001 225110554 394845880 950988339 958168593 65670609 183151913 932011534 771324800 613290297 219988982 720175529 777778850 750818204 553081461 851783993 370975944 797569845 118839557 748190090 726296436 313602583 361191305 406300677 283623115 866168225 835281789 887384395 910633132 870569006 219152679 178799447 973790443 967141983 891768713 782843691 694674626 798892939 706140190 102854663 750504965 992925732 755046843 981653837 51492004 841086357 286912122 808852325 951563618 880956052 792488229 424682479 274383391 779844443 738214307 990189583 513517162 941574524 961181171 959453235 740699491 325599735 836534169 849436505 311252517 792117931 213770910 389937133 124506869 796614927 598055507 721599788 804213795 725430556 792732310 552707713 891739464 31825126 373617358 470422616 950775165 973857377 862243568 841336172 313150133 317676862 913386815 447299907 648438058 313332443 939398916 409108050 760844306 845251879 750074335 24406126 212775117 688335330 861507064 888943606 808153797 268250896 893847665 248536915 344867507 82038931 841313274 941394288 706171615 933175600 299048653 202625971 538959789 706295951 56186130 244427453 454433192 208225983 901175367 623756301 744335157 771616191 927025396 959735701 679307901 238586417 254680407 744290193 369686850 94996229 166323616 574191370 927107714 668977816 148488272 380081854 478337913 121057723 746148658 840054547 953234043 7530808 753163478 259933230 912303144 775473494 528017824 633856116 744946804 368850188 317299082 972462259 943767201 649493820 208043496 827055096 272650490 773272626 284256678 161888417 110110691 483286176 446267540 978485162 756543177 752784076 222106703 314795223 880597094 166779971 880548351 924893558 885785935 401392389 673432005 140404474 570055198 785796345 53649125 565136018 998024075 766691929 936718048 628205559 778179624 766893208 810678133 941547232 606288893 905589175 890907976 8824863 894323415 168769441 636931465 83133220 667448340 572326925 863230405 882480455 885572202 698293921 590868815 898179496 768843512 903146518 43720924 882762514 270352472 780385610 577043398 375263247 457470927 117604115 856330541 962390501 710294396 887551799 648833413 116521819 803580452 546247179 90697540 216070739 631357756 892516886 39113378 375999263 886733678 889061128 352775070 839397463 987796705 805674964 774626210 776917450 285531598 120723759 232063597 342996879 233323639 519607211 940073007 994176091 602178375 964020556 840662529 953238827 588666067 590893036 88765278 450390345 800780084 745743666 989532363 817379379 483516364 206363289 619650775 95027042 558603703 274776582 353489059 861166743 836415798 298188764 375751467 847856806 621139661 731736974 267535311 782655064 188168726 801200090 174267527 966600388 740606598 993492779 334071753 873110250 654631556 830433374 401287323 990805438 277869760 837686397 99078009 403555601 781560641 467968379 544774575 592932103 999191654 228604836 797951724 784661615 923968914 958423595 446611379 685423744 782389299 876595529 812135163 155194898 492378119 816977887 998592199 587942327 339037244 942183558 325314922 348851588 382111440 803633486 73057882 939237531 624422861 986427567 938673661 239029106 279730046 23246529 957118368 739140272 796728697 360231878 977244094 788477135 467117702 767090415 784381182 56821131 818055820 986061417 60996599 955096311 847388529 898232548 477353198 923865622 594333660 995205332 195768676 745840820 583528782 795804802 919096912 479324211 34441225 655665022 698958753 980800972 888920080 781186664 961888693 382198049 104853852 800731059 231089992 998700946 816371020 790954802 142958114 821132493 757283886 96204099 279859098 165205870 290462555 435615476 752995596 745939194 997029572 16812171 625002124 780058455 895760693 33387266 90016507 824919 871920022 35658362 683942275 722532920 946135560 91249792 867896958 764554928 276871225 450175269 326250558 834658604 71974621 88415431 571555278 846863080 941968799 517004883 262379403 288142417 773900799 878496537 276690630 834208861 920705881 915660928 979258370 966586375 223800122 871109865 565001463 506864424 47449210 817724972 884826880 10801786 920686523 901643183 747019680 857548635 292994393 703544423 758659129 780977715 953273633 615920602 508347173 583625237 940742306 514831305 944275981 791043378 628265595 202680721 946001895 851331382 980750112 862238518 757864255 822247613 738539569 141305731 737304452 473565955 738777149 501104722 778936016 769706182 986973084 836967266 972876144 73268473 543283632 834504756 286987565 87484682 881830865 2375359 765418116 586888719 998896537 971768459 300471227 892775639 735746611 967441789 997291315 7210860 547095785 915072559 820765496 700148207 841069798 897292708 951981226 909933732 675375858 756329781 791186477 882874390 832544196 841400648 890118392 818858589 924384391 117916744 866069374 837966850 924037356 918918464 862594056 688879080 124421242 814585092 979274775 427761982 912014205 178286775 479301465 506102124 918919833 691422657 975849659 479715258 764976551 912734119 219889834 712704514 423321645 393483561 721723375 310265137 590280964 534848389 916029307 431597086 241316725 975153270 692076409 106679752 886472358 595649807 439318436 784155750 989664045 910746374 106857673 43624412 880172035 419058911 982571696 309481731 832070102 879447783 927397379 347896236 934377866 443425594 541941463 706450551 796859795 304356479 394289178 396143929 961913391 545139113 795437506 890834499 488114273 878212042 811726719 935139970 958612412 593914711 281096087 986377904 588887887 10130822 1150892 942574876 297132251 549300710 699810419 923920961 516065011 825203520 582991593 731053253 758448321 853958212 895219114 630963060 848962569 739815114 789114025 876836412 948112998 238959411 640485021 108070596 817863734 881231657 577397257 158844351 553099846 939718338 792197619 942324569 6148233 963628665 665682393 883982367 897540879 459632795 986057023 57042037 959916331 880360952 283025563 223598003 684391557 926632775 923279449 270226107 94619096 796257801 841335656 232443306 932353375 872870223 999238374 882116698 879039951 731350348 905569275 623731757 674584775 181585004 912247800 706308587 933989787 822954992 635340468 9616589 693725101 604824099 758443531 898172059 660151794 754724871 940924361 920336156 879613202 659160414 628615357 252021877 745208687 738511046 235659620 935642691 469292417 892263337 161701431 341710610 978663716 925959644 740744383 10130885 901399037 775267786 848273223 799127394 507024788 694922975 799763630 452759460 979865195 986198603 240368920 672953745 133548032 107385925 122404269 448265977 610144081 432270024 768002058 822945290 533057685 181787897 9125992 918298182 599402607 519505661 782510500 762881452 699170500 610450097 92899062 874160694 318287214 875763936 314735198 750511512 802405878 793637171 944393600 758517607 637103648 103772246 772474307 190531626 715951515 130919353 852953625 988070532 459281957 982186901 483420848 169465144 703576586 897868458 466595785 789969278 853244614 830352481 782974400 994351715 5086967 907409467 871361250 783182328 778229399 759412597 360009651 940069037 176628522 866215383 405101578 882406241 946038791 431908277 830013958 767886105 767650586 773000801 30793270 979826197 67282441 504185937 818612650 167137151 129205207 793015287 249440946 804596298 964804692 830877242 977785366 815360628 551503577 660199019 861649906 199965821 925972600 204675959 938166383 422561641 447307187 947114110 777041357 351892172 114437474 604030254 31562169 36201988 279270547 555527263 983941533 740075072 840677887 145232591 376777769 205482537 500461385 178080875 807559228 961066482 763943844 856142535 980722945 756901044 359084866 922848856 833455229 950831063 765444871 157557469 231624606 395301282 816493854 295285938 702275920 75828956 121767137 41475267 473283894 692521008 894972890 170704386 565923767 683395136 655736655 442854888 851462837 836086422 571165 72441749 999824887 26328463 185029999 875370895 251423221 129436302 760764205 745760212 87612522 971516783 786775112 816320574 903728215 191620301 951708827 882368422 982604160 513888063 823910313 340317594 852668161 703145716 606106534 844902726 846203817 963297536 441189416 884746344 823740802 294177834 369313473 747543699 948653747 888869525 751833569 203951395 839919947 555489285 204932616 882203023 742537069 974172947 608486233 553760978 210036036 887887666 754582579 467086225 804118688 429581773 797973211 667797519 864375174 817262235 328911485 302777197 834102416 886804316 563289519 916371981 663870826 551794189 384550628 981957256 881803281 979890190 941799135 682815300 597817456 938391590 457744261 625513118 917831566 143951746 716748137 754973233 348485012 106368757 762218472 859335722 470799966 740071246 820191359 800655057 573045797 814579348 92676358 894440349 835149294 844620946 54731151 898937141 949047773 47845165 747726552 759175830 760121555 156615168 209354741 556083915 417252277 10670373 910718338 637676866 357513643 889700852 224561057 984346773 922247470 613239245 47073714 748830297 929330464 846867106 909165305 533260558 723066448 873546227 877887201 65535133 866661675 311832083 134208975 596939818 846022633 602341187 498069591 951895236 608132070 853918077 895920826 837638531 310419860 327247090 659723425 127414298 728131956 964764916 908777286 442757761 48733533 845785398 405970369 290925999 752674923 361007362 791984400 933143112 937913260 76257305 389290452 217891518 159695286 980491629 62996626 155966273 564550758 343761001 869996454 843271088 158723837 801106680 380180215 686650900 317584341 764461276 796813058 972539402 805021588 368511409 175853869 351977034 755397513 711107692 268206399 290889901 582777024 323328210 901410440 381995341 770304927 845360358 984067182 684633161 955944076 871602479 708379536 997264963 50391747 61523062 766409297 847173600 922330739 371385631 210644289 518251121 849780465 885140966 797568342 60087998 106902961 551648750 832740310 941305661 796692071 787998628 698807646 970619018 745272953 548772117 851196978 699256378 769712491 967050430 913240315 212080816 70756512 24796528 662235324 755922923 714032850 875261424 44578865 491049569 660077611 348280270 486061102 666258706 767960255 957040505 548076914 3558144 736387230 815378403 264318329 797950956 683035641 648816207 420711917 910690318 934701549 931859838 467571199 831226212 671311016 915340147 749847237 954989954 761635659 822486611 511248795 628376194 718314072 771177879 48243159 935537310 951907997 718118203 900324988 262192149 656932060 791739567 35742178 614415436 65012104 663831886 150426853 449334163 906134737 160392147 524808313 647399742 643268124 910215729 353465883 756793090 584459971 798377233 102089803 568721258 159492500 882651630 535739858 808963919 771599329 247016106 916465002 541609390 387054922 4993791 365855838 898863628 450206898 98469590 526296535 681691201 146611314 175530761 459780174 502208054 175488378 758071393 915750254 833699734 842031699 886846213 376823119 399622512 757343206 474511457 891868177 483065353 813936613 304129636 959965021 928474171 867464079 870522486 759345775 914598770 168851419 980328152 863721482 801585518 749844686 766972370 537930305 748521771 771227178 945574785 82756064 1933477 938779650 381991557 637371922 678555535 679003594 221628771 46100230 199857436 747509891 621553971 865934917 193377648 99442300 940088072 346436917 367277235 448144898 767776712 809318651 183237417 800139597 469121236 962382368 205510914 875984277 964061329 977594372 459052002 80598043 41638944 14196919 246914019 893724853 217065535 341866562 990313694 869197604 574644727 368019820 779019444 771241431 962709518 875818013 127617956 871226045 173842763 687733167 980987441 921146618 368380901 278049147 17708082 1182349 827749474 327032663 877478844 516845312 87244334 827527754 929785504 866152467 403447558 932051295 289526869 725231982 942623327 200581220 555555466 453576424 894817327 801478124 108001607 968599992 351236595 489298707 539162194 953826528 637551701 487821372 861266444 765138161 903590019 964736618 738506148 773337094 981008943 820786518 784249914 963307853 251465401 768860827 895130306 519161216 739768334 885467845 26259659 489264204 778603944 106898308 185731915 911974934 344304079 785314539 975555412 497516163 135282960 584339919 816217616 943072526 907437059 310176095 963578335 863855272 811664083 750588326 889367554 289991453 424317572 807193768 925691500 844896722 827059452 328762176 523926164 955156012 477946740 823684709 348501701 874092391 868758240 917133734 314145609 303343846 707793871 517012697 955563720 506986591 831561879 901275756 939153485 683650193 104020248 882315379 709112079 870237196 761803570 778988512 986713372 909843467 639451351 828735893 585647073 517376028 154400674 702862339 978934066 863443927 783930469 270218870 835002214 236176080 815107280 474151054 852986482 391425596 898636436 118076351 828195516 668918977 663487041 739516036 682961292 788285705 970827867 886389973 970184762 49987150 35296194 868602912 731527317 906679117 870269827 309472245 751647441 970432564 886995199 918504353 297044613 76475516 883427409 471101068 986201495 754273908 894401129 618306259 875840547 79327199 876522411 196515864 740275302 939122513 963588092 360509648 834626259 754505613 62985930 388877520 330728421 917891588 45233171 761405250 493220355 399079862 912840658 79689759 976619603 895810741 829084074 970924386 605180868 916015582 440956090 435877975 285636644 914413249 266715751 959981185 364998529 949443153 412450737 806536040 205260157 844256616 106622202 439375729 789320053 766834011 995639148 949887096 617118085 788230742 219405867 419941979 906228553 230383819 996174636 584349267 877486382 694795134 317226276 674679382 382766976 940449045 238923290 236087590 661348099 940514770 849254546 417516594 80484506 873644297 46980555 273067536 998991243 936879264 446969946 204532222 262581748 288410574 330879933 37810080 715000495 806345129 517040080 848765553 971437095 694957388 484266793 657390629 767211736 954251247 964502214 805033850 306662380 917122317 747972759 251515718 205730853 40373092 185827580 840270579 893361727 31185189 749519443 17435828 111734741 953563256 901324924 847096674 847029994 800552881 935970263 917587756 660900228 748293892 824091863 886734511 94966609 884412994 867304528 831218594 989917624 917110922 697850523 267821953 954433696 897177930 408494048 152193042 721465577 10707450 332610357 655459095 222871795 878237808 790524211 540921022 907038072 976769409 837428340 106957869 133448013 618228996 577881305 144944414 421398819 539954314 761278469 743276089 463212038 259097250 964344792 737428807 756265739 233845918 796797008 89569088 826280267 767246720 486659415 107432708 892214623 990474106 960469630 836968353 534519248 837435295 860901623 155884990 799442429 737020247 591061166 43688114 120732328 915522861 775813723 537153162 787425911 73482989 109613357 19250170 680794080 333749386 467779815 975577965 201458645 830534866 848344371 810305351 601438024 943069064 311464433 344935559 975633783 395791437 639867295 877099612 888607319 927857770 915120061 282934981 452846673 990726606 563611587 844687184 101569607 903327752 856413618 867981646 863799434 194805701 989095215 775390985 920637538 754339483 892064219 617271603 999021056 838088831 911773068 307953992 552694252 516684141 813754931 863041954 784355182 865124625 683384512 990085532 42451318 910375758 743817356 164600758 783641618 904110966 263542155 563375658 974162842 817945937 960553736 326212637 853519256 764528107 80157380 365436260 371910463 269869832 901800384 538102598 836484029 252030014 784643302 210088232 279587704 477253335 876655865 779557446 434368757 890477420 807951120 952804309 12872807 705830028 58882965 747514159 179872397 728717345 864207503 838154855 434699735 35557215 954384393 487210186 552381146 269653359 917044153 463826554 352607213 946312605 974053702 916421048 801433643 431510005 183100009 345143024 802515079 864290959 809495451 733647510 900982121 817976606 973203594 564212003 306988346 970349596 330796714 833155506 170281350 973032468 500485932 979427252 321309821 872483012 931739058 491387382 691757990 186962628 740128365 822823218 485832287 652308688 516985554 417546613 483592643 551695314 817161495 107249757 919649921 754706285 980198982 157373609 183439805 744161128 855993160 816505254 572039391 822795984 50210177 725399645 862434473 391537974 56140441 528408862 876173996 718719920 777110985 129721584 862264164 630956425 926729091 843295623 920315441 876260877 368853915 783967965 570422850 294878999 438829936 930472118 945333279 574609008 315903844 754257362 798051384 893015898 935605568 102951927 333019669 996133565 672314566 942509053 797388795 145041064 682505645 253582404 928477309 76148190 46182973 221005886 593197298 311163907 566983673 357130704 787317562 991841117 291923630 832367106 798082292 449243903 582558630 746643042 900539308 231370486 433607621 557909856 980577639 717627776 831881967 372345381 281643669 462691551 645627261 563847779 209265650 666330521 57422845 631572035 837496861 884206250 831847389 787655712 852077441 711301943 639972760 798078489 710869656 997634216 348972461 556649666 730388910 95493040 942613580 906778874 970657503 848763804 98020669 788004650 398094631 945736009 53695751 968988416 550431849 872324830 19610677 601490540 595771521 231269674 242374324 84498670 874825881 145338264 59829335 251977810 767624284 975655581 919299302 491289815 714288105 926333947 145676420 17733636 463636508 297883231 537878613 280352709 903720062 996034788 599882993 232927534 604774430 140408109 495678057 259715075 854037990 367268129 743449740 294439254 531286311 919784827 78019238 757519981 642861373 795766051 125554792 966900513 277934029 740913241 546998393 447736074 742036981 733732037 281492039 968006706 872602786 877472532 927084491 892065952 723526285 815134429 992563805 775983069 930768184 971706868 901695175 592262072 154088465 798332896 844429084 31189275 291172584 934465370 430519388 471777037 981481103 622429561 838480438 449178175 321702069 823539795 928662214 988967372 858518221 625402267 696607982 962387584 931358498 914836621 503726998 206302322 878128476 939579860 308514407 192264811 280861709 450322639 594327054 250016465 513197093 236279993 682407197 755790916 672755342 191690618 333864355 843338199 982195376 123556037 898450893 797134072 785372924 71563086 744748 770200087 951254564 802440982 318105705 808591224 778177796 908907975 888022359 351295742 959471715 11118532 2748625 542851673 940028003 111757480 919956696 734770294 555974516 759068198 681623705 810950250 965749783 319907152 116702714 718092629 803845258 308565423 979420540 875700864 956971819 249324868 978675281 760510408 792252652 995350621 782330261 488611915 780762214 623140276 821479759 598914082 916805684 792367757 919999652 812122802 444481246 89064745 968922873 972402591 923416584 19991429 971585462 534279358 936974508 839331285 49902296 944266067 942490136 916451570 570071093 881187410 189894809 881666309 771702716 763624240 462341062 839108975 710583718 904886286 450941639 240793725 952820575 61850667 655290387 873279964 898141322 230130967 257483359 861684494 906401267 443720677 30578688 307027957 264955595 387768552 870406655 755593958 979444492 597430175 976354279 744274788 733543920 12278101 935182216 761433781 876406211 556448783 388372640 842093294 838253084 747977882 937956433 742291837 904221795 293255181 777620364 479969328 243109967 873220065 330102421 630452067 851517409 925988512 101206317 784582205 549824243 929555886 391131628 759651872 678615771 793536098 994444906 886058559 123109219 360969255 436188993 319115880 918295166 139154052 314455961 365094839 37461936 987774432 717105756 751657209 516136013 865104146 615257496 870082988 66953248 837170903 220561434 776609242 219834733 162697216 121298706 949997104 75986502 892903422 46751499 771449451 350300357 918421292 869171883 422830501 359657546 902725578 418305769 786728130 270247664 820139164 892010834 174128933 741909198 907560000 940283556 90805846 965629190 738516244 927129778 769844902 374187138 747576514 71023373 527101559 770221043 412288638 418262732 317346016 900766110 133868697 248474251 43906238 815924124 981674049 420079900 345650458 537121749 28485231 879706443 86023697 718021731 950209060 813185026 660042909 269758894 950005883 231025420 924373293 792269877 810784243 894362297 953039314 752980681 978629707 371851023 349489537 523265703 267254065 781285158 116485383 780456587 908283276 767113448 499006754 790758051 355262122 859921221 583797433 186483107 746884944 958265662 758735568 792890975 932695062 867056327 457472970 703087628 214721908 326704598 474652461 828078401 616088551 549384 949153369 381032438 279068492 958249103 323442215 938475539 45038627 992732233 125557808 787506806 181318890 398623664 884567363 902882287 815728883 601754597 519683593 915305618 81312340 179988686 738082214 530857220 821844456 984642946 555504266 192066409 620086579 808106563 767490487 611692195 591199474 821870485 870099552 458220500 474276839 768849309 799546377 737020247 775118310 345619616 968021071 275260684 782736846 599202326 39798871 432435923 307337466 969092686 422343846 16571690 385718510 121402690 788707402 126194568 130619791 519268564 218362147 528082466 706717065 534347435 939957868 814362303 818775142 462510351 640081968 888791216 861842378 411637165 217054140 317298513 962012985 378017252 344015198 788031290 971602330 401121494 112435667 455351962 982384624 795755089 879047156 843884461 991209778 539705516 504415855 824919962 993517300 971848031 313251730 836635746 837030873 893109696 886237251 891157047 920798429 940408484 760834529 306227445 459754393 257210865 601969414 757365060 614860527 67675694 808983521 599858189 224997222 838490693 390631786 755449133 795722605 949770451 835798834 367255715 264324018 90873550 998981450 937300429 761143099 248870770 26426874 895022274 610978592 798135058 873266566 872605631 833885901 404458904 848363005 925437600 413668410 449556383 239225901 387466067 920104812 750464325 333206608 81661628 934585086 860404110 812340139 903819548 56379351 914922890 329738024 963319133 42221755 879467622 844108193 371065429 343738370 946755814 915830002 758115434 962406697 61451009 642196378 967391042 611065966 679438387 842206310 940060323 918966724 476475839 922286886 948364699 701205932 568165264 656356934 883595144 851041038 878705454 659302455 622602021 252620293 785530134 355004793 190539909 158552999 916328912 384276522 646225010 159522240 867030443 954790816 487775461 775233215 117595992 168099053 857362489 866291255 864023708 735406237 749236981 905634085 968404595 993656096 769391152 281714858 280828839 903684192 821439237 460983554 175998264 888899029 918266767 734437597 305431138 517488035 362077331 992259837 286911179 933824585 982101187 526406572 955302126 980253109 8756893 724972206 861414901 486222916 221307954 775256031 932184232 812395946 850814977 486653707 850889348 825316512 904945474 755699740 895685574 964562356 844968566 798387875 183847719 103793709 281793017 230325348 585097254 894791014 499290203 838332496 302158750 826843355 738194493 64350655 288951803 993245645 629649493 505282776 484829814 857417557 754282547 823909538 669255362 672562224 108775156 833623433 287681747 876395858 540799711 853219712 923506511 288669268 164224731 695525362 464080393 459974728 747878160 757319861 997962180 821972904 55163169 297132307 932742953 313288884 261409103 318871227 668677379 538181957 700606538 920372066 985515366 881085928 864222945 837363088 414050971 560777165 636506538 937703040 654467518 746386327 824198182 811176498 426876495 816409202 749716097 290445813 992476616 573576430 821372438 478677535 298594893 762224791 324499143 949897291 908119479 931927482 993745855 4835929 192795725 473587368 234581660 320482237 770380156 117994719 247808543 253873029 814961847 824467350 139174831 998548751 519246403 847100367 771738162 314800861 832599009 814480603 991040673 952620407 872999845 785240271 428206499 576591571 39027644 713641444 310654096 846032119 863421438 368429106 941025016 594378499 737197370 889771965 933848536 89717918 978606386 338570516 837397252 857078549 770728660 863243253 693330217 737020247 513878474 904227299 72339288 760710028 887400175 832373514 420127627 76194283 925728508 982505351 996502981 877924835 611657761 881831742 819359613 739196704 879443996 337019923 723215491 878187025 766682794 789751073 559856798 738805838 296522246 955286471 206181482 161169400 741572399 164413931 674701068 691498556 927332766 750895795 378339117 950099298 816326570 381510320 643727163 433405533 934619430 28558655 457315971 934367751 48877536 981584190 797647064 444369638 571798105 655709849 226033843 384532549 787525860 791392895 944554001 808944817 131320178 838281287 256081496 862053992 804567630 410811583 413845592 31483993 193125704 602825284 338501225 424001207 933027693 577179155 668152756 958781970 634664200 323564980 884098773 905864248 821632112 393723525 199357627 751063774 872963954 318786812 896543114 348754602 214416052 751976020 881341610 143794428 962709254 209255600 652463736 738037673 802932501 710207885 903153868 840442198 608990089 853729728 899097483 207827666 974298147 172057294 910376882 173968363 914411022 958437663 212969581 891407244 382255898 978016653 195232604 754018813 374559638 655477139 939432121 181230537 66516516 310915301 544730379 775972542 261075029 531597786 315300279 70876463 912688664 753523772 831051562 797466379 897538330 991741545 924982624 985768938 786240412 992085514 498295342 887298903 150286723 596347284 870444138 890890020 939049004 773307984 575845272 140654340 829735785 901520867 741124032 741041915 932660164 436525175 997612343 970983490 239240755 317091525 795644393 830221332 784208614 301519629 921591671 467838064 195605772 44076259 756849516 726858986 775307015 928676774 774030626 289619282 143356626 97864326 752281902 966158884 928732943 556002344 790060006 967833849 843798021 954764817 813328630 202760311 95768766 984199528 572670581 841090391 824175021 338187854 360614272 853706155 18650326 191580416 355122939 903365286 363545207 119391569 772597960 229230116 843684691 305703221 372793100 957938452 992949425 254312070 648489380 924024049 826229457 569233609 842549951 265591029 114177930 116150004 443983970 891841670 456079408 818026938 674485187 75159056 991725351 762512343 838278206 289359740 838501845 91230637 716391256 941007508 749825496 62241217 97821858 808115073 724161646 552773223 813380689 737020247 200017891 251400618 948292538 472283077 760871635 570816824 460337205 70412452 956124967 909491311 780048346 643530136 776489738 874401474 781658080 280217398 361450808 782710952 334357622 216765723 869276552 429838193 185016965 750940495 298269837 491825351 186761930 759673395 958574798 571590907 575878327 297077054 920196740 834243320 809297584 903195335 829282819 293804233 875323767 890933569 865622488 19071799 710575610 332118673 517266817 801541757 233830695 792119502 578795935 263967246 684276328 414936480 363739212 901953803 767363952 814271798 778449771 302528818 367105321 881343577 832064680 338012547 842467071 946832212 814623871 740829310 347485316 738035706 144850810 959158299 925156165 815803262 803412016 771668517 221887649 684665711 565472617 125543021 923564444 797568377 138770157 209038359 14981126 926819195 626809440 364498118 282673158 828335641 493321545 967130535 756080045 750957114 887171205 419162406 245012623 797875952 836788088 947248114 880579578 298044363 976030602 808343872 174567526 627736334 183538057 759091634 826489871 475512776 907434564 858348640 230504542 525996328 899576503 209826942 873241956 968885880 817021188 974590408 911363216 502271879 756233928 928790598 438108054 812840865 620857458 926040970 763271052 739188797 744025951 957541024 900094049 797168984 672423259 267685086 643829570 321123776 986810991 248184917 980505421 736785242 838275480 805022848 110114440 856823156 885250128 979887336 520403241 652538175 989821392 955781844 943576184 400406820 839580931 945300209 991079411 304475469 313105457 45604479 973188153 539390121 32111864 859298239 752332892 903545888 7129253 913296989 955590906 797279002 64088215 914757384 377509541 822347610 883542406 790905373 964335569 938021390 247576432 682327072 52016581 783035425 732726606 801125963 948937487 416370214 773671381 889295876 813649922 861041498 786954257 752517262 894964872 223693115 403480485 355058685 132447711 942438556 903991890 544074504 916731116 767229871 507729149 867157525 805743471 431637318 259976626 253638389 819947521 943934748 354828543 533729439 983274710 379434325 652409492 949160786 694131201 947593691 978389202 763546609 817308705 840373719 173571159 804213045 984565118 789143574 838442484 767780487 874023703 838360640 414818505 550483989 347985930 874084478 982243421 424760936 263879634 192122432 929399732 990334676 859382175 578864749 602133581 936428030 936501103 907376802 839081124 755971764 961556047 231172596 140666570 146852643 595333168 832767854 160730782 923780504 810794155 361102483 793599160 53552412 483481497 593980919 627636864 713764859 299422701 576456208 767919478 830721650 866402358 392099083 734882842 629023087 613598662 852819120 837660288 968608351 902236792 554052954 979199383 884266818 230830889 744739183 794008573 957967329 219561806 921360291 34781258 474633944 908735412 614365134 893638952 842656179 302139197 821307370 742563226 915177951 242322556 916348614 157565574 818408969 177849112 150958135 860649252 984860955 864550262 832473833 703600276 263436603 962017989 880937924 392304726 605031841 962102458 771242424 756038212 862437847 966856753 862946670 558628680 444849017 532389979 821404931 244156262 195863462 949895268 464472149 946752288 796848572 150512991 915418678 787944203 737145880 94099314 837075841 596318987 833093388 554508522 992122033 670762436 404593286 252311174 835722723 939058437 846225582 821396897 236400747 827050269 978735085 894791307 888784745 460875348 475342251 808199934 948811440 965001879 173409532 835051412 914947306 562988550 306609139 827931607 452564908 95847377 811507117 962679430 387548382 233462570 910570292 213678590 5483774 773255171 312500589 530553663 389193365 202328277 798722310 737671470 980178362 921963095 565642746 151933237 971497546 29396776 880550747 507948804 843122570 486274055 212070751 593108202 551283231 537799828 892105480 224842574 824164002 926471611 862053228 980525764 579414438 748967316 836785975 334570482 715367733 826745951 145307304 832335849 805029869 449377698 280031996 66132756 506533088 890072219 244215939 737020247 921378478 142200229 223550549 563917554 117929315 890145648 458172703 408167756 99052017 861337500 135810453 753238698 175736178 818706084 351318216 831529510 848539927 901510748 636519852 827546743 245590304 265042845 812572683 908502149 714751099 889942368 934669500 589240081 531768015 759189528 923554573 972850395 978768993 805650947 745900290 280854603 918381606 942142349 295723885 63024172 120468606 993173535 589265782 692104839 995056004 817561640 81263388 970744200 851038645 178847747 922741484 411550566 123069857 275643786 885449347 556445707 883371368 864545596 160661006 931398761 936201983 316744654 604485789 363636846 583342665 79585473 991765991 795164173 904537071 996041851 262237138 948267136 201224147 973868251 821082822 870745211 842443035 940493982 200201974 209550245 905091581 890021286 775638521 971823371 967129214 110154064 835929447 684070779 916867556 58618838 583749985 945514243 206614294 864416817 415640965 677597666 777264176 900914440 759128644 327124383 95249137 56416440 982972339 763955185 762221957 813131770 133920972 881764510 1186203 641999285 621981029 652571827 581161248 367375571 167627186 261697990 853197684 723373133 642375809 843825470 993285090 506738436 884709012 871769503 414414756 777090717 249452816 872936042 448497628 181932148 590995989 835052352 505668615 801651695 699611622 852799977 190624863 224481198 816659410 779036535 593419596 759348662 749233729 629310220 948239611 800604259 927515209 584579155 784270504 377436064 930105411 479804898 835846783 587950643 318203022 688184569 438201979 263450152 229294596 801282293 854591089 351808213 742567059 479265642 948177899 875203973 822563354 685483712 884723916 821999767 428725169 620591103 890084194 514282785 945166657 401783344 752860001 413434901 921726915 868698347 824129216 967132532 584615684 926955424 854697178 975699621 407263249 258875405 394952444 516574649 913397253 994131842 878124047 186160187 793187555 736024631 993649366 914895438 155328171 966656511 742314438 943170724 648457253 231495754 534881795 394834643 563868977 913695744 412499982 489210025 395360666 837369361 429476015 762445588 835516148 939241018 103885560 508056151 763929405 892814847 772352711 352386662 806811106 470598890 988760682 110198825 204901826 998376486 85585326 966944663 180208223 846689566 786018232 548690571 70805888 892381463 31117984 845574064 820935762 880615503 625781131 644030495 664603324 788745879 199879568 924283154 171465091 872925514 906201947 363663523 704198759 582770196 367843237 922929200 823857935 248512089 822365336 238584642 488017508 368214575 453187893 419501707 35335458 234297653 867316343 843067474 359928207 912258703 876560957 745266737 313405748 913734970 742125406 749813400 950117404 76255480 896207339 972820617 226680839 701148303 692548841 995179047 394640492 965667198 327990310 826694043 834304633 811816404 87471881 444292417 999854988 817182855 861423341 791020689 728104657 377537182 971332116 38260044 492946216 927301649 880751107 314397973 786514535 950658624 102489548 79612465 859018604 807314196 299468385 954146194 786572027 79930908 853280197 831113349 510017822 860911908 392291199 96127240 916558456 803043546 969498335 776406445 531819418 587657804 919265003 471796641 913193635 753405803 984009963 86393233 945971509 83346379 689427603 868649909 698926336 81471201 115051752 745166966 423119555 547810143 963732857 952696572 963577842 859752687 995091028 959265322 669720787 689682557 80116759 823921766 913309286 337009186 126584225 294720903 409823061 180935436 527749305 933986180 320257712 988646281 171491202 701382413 223164165 363779047 173854692 898287331 71799183 226938328 176793617 992428880 984236059 541819490 743027701 272872775 791359052 334250686 402774320 493850774 870919200 165345921 638533329 447629698 730439832 187762624 459075258 227875202 445665658 788150736 320606725 115530641 823280041 955482378 156277173 927335840 443847783 747256260 178520442 585597113 262563630 166104701 249701107 978038658 9480304 959753098 785776796 56005375 510119609 952971075 976691455 847569638 399682309 953294385 20798323 343562170 942941402 26546685 887567010 110427669 224189589 802584947 854829309 349251866 485599329 363422405 122029370 334730145 677360989 945323982 524656027 855459227 799821527 99099703 696530956 103641177 260976529 74747575 310644659 744418068 224313668 512572063 863929216 990300613 591295541 896824749 127470018 983833829 20773191 552011388 253388051 54877390 777331522 798025786 558857988 325429841 618889953 735636597 539360430 73665464 58679567 834873182 204847096 600398822 343954189 43816547 804088059 845826533 780063499 796642114 509932327 978585762 995692326 895236355 860073923 462219652 845177107 793983553 929003408 896319643 821963745 923034023 151032324 757790572 880967057 850362400 346417973 760772306 903272993 863280385 949249879 8557777 834467478 498403485 995028386 953158039 855934046 78079794 997881597 416602915 980157379 965863085 126383147 743120623 215696131 457298003 111985571 160800336 885799691 979162236 847855467 924125471 631795629 735119587 775523046 182633609 231268846 659023340 184151284 145251968 66684676 897785849 908061049 472783560 806791075 182491944 307087383 771640123 904056616 952626916 110318773 742669767 763231604 677662434 580162515 783464902 626315895 30406742 414306404 878938403 803949611 618246685 810175340 927302645 312864402 216880340 921172092 491091281 963300326 218373772 860216276 860985399 548520900 777395282 325786632 218519744 392072072 193642222 957511302 334238649 521858812 945634824 404200322 582077376 888351126 107194980 829022137 84585107 13334045 931049088 783523678 841797878 978721953 320742256 805549999 290660359 577460368 452890174 349533061 940022692 902428934 90058539 714410071 709173876 241990775 833355783 359770857 539595564 273827375 858428849 863689154 2394490 844018597 161019990 762989223 459651547 888431048 996958015 467517476 779034063 543478041 879101671 426503776 728944910 881212590 592415096 753234359 929684847 938326916 425004202 520359504 284405426 379287048 346062127 976100318 186074288 871403004 987573717 789026852 495975984 924367247 892605415 466491846 812628074 14769216 843631180 260469270 919974794 96872727 765832786 898634565 762051408 810473606 620841246 900305944 383225249 564995485 942056533 406446319 387306445 174411557 968540440 488535810 592306670 879010741 833415353 890692304 277213129 964767531 804779539 888878199 953327626 304641545 788714492 892350124 797883348 259701957 541747204 937118470 612579423 420727034 859633767 307622811 214180443 405455589 438819118 680339952 239073390 963325289 968796932 328336520 722926090 608942121 684209020 599177617 623427050 466347552 31557703 264217170 994409547 115389787 131068957 167361735 611941520 182597155 789161970 506102413 691668887 155477159 623252740 371407892 935311687 752417471 773675041 687065501 920848803 381290969 417975244 955707936 840442387 769299304 796973092 866972071 912446522 914677864 967894388 996120771 511184034 635187275 737020247 862475782 303406648 588832219 168211224 628287672 915155299 140010173 845534342 415820700 415987365 222680663 894907321 686050162 741841515 874907382 158738658 925624523 506514674 726497820 805648837 159470219 675562450 963393818 846612704 63259193 748357114 290251038 712150672 742690342 851461402 672520177 844733594 418955811 819525782 731685216 409627342 598620346 508182826 468562373 407784011 766629260 889397417 227379217 950671877 902374312 882579664 189708081 746978823 984583310 635575599 791465931 983900506 211306084 967890555 679513295 431622347 59061755 834563723 160555834 83108984 953049916 907642720 734340692 186259196 797176952 551636989 832847956 278672395 388205809 867002206 942470948 815596207 624964758 935158405 791597416 904858618 34222117 810664771 10608486 50634694 967608826 82342345 979721652 686269994 849106623 800222709 918402520 975727260 970502229 893810585 124789551 782281396 770450977 766219548 604950985 931081488 790913394 158648021 842721847 330887667 355717009 737020247 115910929 677756060 890684754 734726514 489366801 734409932 374015605 967721351 328499703 743543147 833163192 38788100 935056549 809887533 811771532 184859559 936716858 218715861 744910060 511530977 438110028 702681450 979998952 792161608 740898486 807394547 199255758 223313828 506021313 944846545 471345723 767904557 847770749 899300195 434875937 418107293 891456263 971199658 179920312 809799717 935356223 815996930 613839777 756266539 701271518 801042251 904371775 366656162 49583126 737020247 780812165 975341116 895771019 743019403 186606172 484924158 973926273 141833421 803198778 54861911 856746620 868744792 820679514 707673768 891349145 969443881 93108701 935256805 826463389 815495379 245178137 777968781 975143653 136935504 643058493 540582692 864996424 995561888 81351876 857922055 519484499 842770732 826650623 988149006 314538771 121739293 455688420 833008340 18658642 702518752 714456999 896848867 488838114 554133476 974147169 986225988 286315825 770191754 974361407 697038912 818670571 320479000 979106059 824834986 953753140 64862650 705322879 966204431 265834161 56701777 789146989 6869929 898888688 583560900 128139052 278828802 846876939 402971193 315092240 901450099 588697311 565206239 120875661 750272523 902879588 385996060 254969170 623958838 232358732 257043661 928812651 862201967 222680203 514300317 141981089 533654929 999562317 678689018 135112158 638998595 385444364 118592380 158367307 951516311 965080134 983356502 819971401 578853257 414542557 825158113 884159819 582174673 733577348 824219414 790958409 384195757 121782340 310100042 194101685 879957922 788427383 899309216 765638342 108541316 730426491 529969815 729806886 782167790 771279720 230116937 693314244 978806901 649014328 753181320 335314219 191696027 67786454 330886651 972877672 488121562 407073051 111705722 57986696 951859521 824789661 636191473 261783741 842997449 800781225 671774559 555249458 410597724 813448786 863486061 771253547 912356620 151324695 977244187 796633146 271569773 589388589 933539104 990917923 958871217 964004829 802775675 633074652 772411333 792977744 867780016 363194233 311708495 675896276 841001426 628986246 820451055 927140923 177398709 867842402 449392590 787991391 540127505 224926884 969402443 83507068 926093537 990042727 998554235 852520821 115147629 631194510 819922125 990931657 949516666 968839422 810122960 494853003 92039394 75662532 884630352 838290908 53732724 961288407 822912134 836065304 118691665 594720850 806054707 936257789 275717391 440896743 937093185 904326132 930925621 835008687 737020247 650539134 737020247 348859644 550068808 547290660 937281621 756548848 769466525 911212391 822730130 848179811 717545430 141567911 312564176 400882445 562409672 918366528 881624586 810199082 861060669 322635833 910503277 783939450 264784772 971032382 113157716 951771300 52602408 355555277 361573949 522134918 476949772 167517747 946944499 963294545 894421497 675169889 454150970 810798897 815924573 793798339 979346407 894987194 758484550 851839306 3709733 220678803 14741219 768957610 965312720 3528292 957740452 848198535 933656898 186326225 997374812 527905911 406939575 474367506 399528914 617417769 163078998 672404500 919053833 471736846 744128726 795003516 623242871 550002633 760488535 58867448 761240732 901146058 618062116 224648116 67353177 455602983 267717136 857117216 798218683 419759999 451750679 829298257 415499847 785212945 439629062 537954889 765006579 963817224 320872717 338554332 530311712 795927846 678445894 979574986 350206258 167492150 597259201 127081762 953673954 793530696 907905455 521588840 963338074 617688878 979574310 847103595 906547000 950692143 485743016 143579368 994333289 980023454 181920750 67480537 981929939 374396897 722380671 981088034 812553968 928184875 898819388 859786970 349618348 992011149 631415825 816138625 997665672 935116139 336133314 810616018 967064086 916332561 230110640 969506486 878776911 497571455 461938544 953073293 942190425 464722423 219715328 922646841 883750464 197421082 152013176 561206641 320645575 969564621 58072081 741516186 791163874 839865480 23577077 209785885 491015025 572595997 911914326 901697722 928405442 655487348 602958980 764915970 918748005 855042135 797812783 902200893 987833766 457923080 849052603 184742935 379596802 885972684 234338285 707591977 778083911 841466113 674671844 579625767 247295391 574754744 680172351 338058751 837570779 314461768 480318858 403163060 138687273 659274960 79908076 860830752 784116860 110275308 201206912 754780998 687537770 6737169 250100509 81544305 796211184 794366680 162072252 708836744 439923679 686372430 863093993 57963567 559299642 959191538 949535196 934479586 489926525 810586013 997524910 869722881 892698064 278710312 742106831 879837555 735832944 989253718 621938732 832845428 815971403 983993374 893220776 827640724 748357604 596642134 999768799 480270078 761987226 561721079 547235189 73213198 756762249 510316057 728065049 362038104 595122477 698484696 805183797 772158848 983629615 364350717 434370906 440301596 896283200 477462988 521510403 384993306 883022477 966017827 164832944 827762758 691647861 930954766 947359222 334342941 928059408 953683693 348211046 623045503 955517219 866096205 931637468 557236262 13331712 130960022 783516764 589510009 890477739 836256122 223541613 970844191 493654722 980757532 357245957 382740961 76233274 772531372 879470653 666035673 914234305 790132150 769859772 198792738 622306553 440019442 983801782 773803405 196164274 756243349 51743003 880056491 379347728 909685077 532298106 598527520 945312339 836095191 226532388 231773594 372113098 992541437 961908873 932400301 878263588 830237937 745235030 940985196 311921196 45268962 502169763 311999584 489548452 132374345 320452013 687977223 961573931 856893513 844408128 783690776 614009168 786049609 844058399 529701823 276279771 761285225 981887794 754103515 176297861 620615087 47063501 417682376 802004172 54354020 470891697 541142615 375271383 775291409 822663464 369584883 108868289 450477284 696763529 673695442 263436232 173821997 59377431 177595523 989334430 416428789 593819123 650436797 142456088 927374464 984069078 887558412 743301096 864773294 776819691 391916188 977298618 577555502 757647209 334970944 11390117 93794161 364275041 348041439 645955983 986366281 633099260 793632230 792407308 505411801 582138036 531574371 464817766 615353525 804348949 755087169 810498963 995613568 232078188 828832124 819052022 841182703 528536670 936978681 710739306 833422070 571914874 168339745 958234374 355484926 528719943 826108176 106710963 775543309 963288108 441915262 181409515 939951735 846296704 945244827 308336704 93723550 810038826 872139058 771764082 806512746 876573212 654139281 476799470 134371752 932098089 77200193 986026527 389040829 820500201 903242463 405965041 794950885 541255682 778535722 984056540 681017655 739591408 660004917 302487653 403350769 429866963 867237402 520396394 674313289 431454062 121709781 789311250 782356816 752794467 828547578 932311128 234094091 267138373 937920511 737020247 744901779 820857838 945471493 237557722 574253781 881215585 998338264 486651641 878733762 897220009 934385485 922234514 413576773 738483482 989485195 561321473 916724604 962374155 935780997 353404911 636486390 727087504 441471616 521927943 877230559 766524174 972127148 940401037 904779092 99429699 275284847 575766616 427977358 757699752 184224832 524613216 821024684 387838766 861379247 827322620 509822078 841932094 504556599 815727731 757671791 140308827 405108488 336413683 887716889 732532915 773734823 275192136 739358982 853682811 309385557 150180309 209191839 825066702 997307316 836271204 975433871 934516468 949566899 290847520 383806057 676323419 848318998 256894589 107802749 445117978 606370793 943150251 997240731 789961307 740155070 932925824 877935974 764559341 496036300 813594645 378761993 946654292 552706029 150557387 434693805 977720670 945449387 129627983 632168475 976679621 669824154 680237962 133420822 596501742 936830842 608161859 123369657 382483375 882532086 864217189 800076312 950522160 537307396 956161862 875606579 966033104 276035563 954604238 895100100 802222234 644971839 485635490 933371552 538027759 807962483 805020528 350699709 739650126 532026521 747408105 707618773 341323112 901510288 793876124 866599322 451844724 62072480 439057407 926422504 712400343 878857106 973138912 886344269 978147108 935769956 928548543 127042133 434105299 183982648 998973343 177901113 974836266 753646197 939242219 926093996 930496476 703503442 924049310 975551454 744648511 874807336 293258842 765481396 2267165 152388198 788042500 778448779 744092045 766634291 859352855 915754837 205528883 810091594 820725171 98599567 870088603 574494738 204284691 226564266 709406452 566984367 222568740 776139318 981222504 837712993 340885906 774579771 901465416 242338904 761740680 950132403 870637404 799331231 892874862 773606794 967404500 525618311 899583461 941166690 577703769 341860852 572700252 847250541 658512422 706025848 767100028 810244921 874001622 895710744 778370257 737771674 984832636 994723930 90833331 756080373 756846852 410884471 640907853 778616666 446756236 857579876 720227551 781467987 801096458 212324010 819640220 828392519 949393465 704776072 553139127 897275767 958838046 539879092 778541833 631021292 597145903 259648334 289557639 372208333 975721492 742757816 832050433 887036740 591935001 822408055 765655254 650075983 756402483 864293166 873657845 15078728 552389285 995364373 186208984 767669864 683758298 983096803 372354303 721464713 862942902 516886068 812616045 717807369 753865437 588029760 919923468 895754814 715682058 150341480 458941105 739553256 902701964 552377466 331012025 668791127 264434553 452665834 748856536 32322465 772538953 961053957 138077103 907016514 754727406 518439003 441889196 895684564 461268955 940375731 744358515 155323135 997380001 964752119 341143819 900248976 565555588 709842854 215997381 73285571 85621177 369851243 799188718 798571400 10830045 263969092 914184085 158660524 710273448 759579368 915821080 323536024 436678035 857980637 21377122 759365572 220906673 699621431 902956509 952409831 769085369 828706858 927826547 743929706 725021960 360314442 383611907 877005170 252764290 586018757 845378156 700758533 842289438 824764812 897386195 858307529 147407590 865654230 638848048 819442372 157891763 729764906 921600825 843653362 822672975 998867448 803899214 679140453 422226757 408378093 411784328 868833466 949763905 914675498 478937706 685584750 953317079 349842432 643787962 125834756 753811995 789891984 705324469 963492965 789308468 954310616 854075774 426304731 931917903 490226611 994063863 624636535 635149060 838457526 391804855 853133739 289739719 559159196 964601944 824817015 831109238 744208418 848516087 458067296 991278264 918531260 196615697 773233475 740798400 399587570 453623059 417691129 748348445 139999198 64736939 804115282 903496234 864017921 987080267 819215353 745670443 920857381 315068157 43405406 148584881 940517225 632850447 832587452 784302710 367676207 459742769 210053045 825162048 911299086 845608987 296005394 793712721 708925059 580284796 450983692 332802702 29198272 77121754 685817481 33156964 724977286 749125658 820589452 875644933 823447998 207257700 110233982 611707412 688750027 991681730 643466437 809006245 775078989 862397873 94641337 681925817 884766994 597138662 156059336 916835661 69370487 877487529 477355344 921611712 814013074 915571061 917106747 119651550 625130582 542022661 27904095 208013602 181455719 15637401 840889023 815061944 398781047 837179679 827085520 187491577 949468066 267887920 836800124 776789226 183912854 120752000 105126313 817042781 978797044 29205543 920296470 647025835 197056767 402914560 834261678 964890339 750797849 958926045 317762987 737020247 751572189 940900503 55024239 814553242 898879863 871149446 692248111 871433145 763046178 63193031 423673479 531482259 279911028 220614192 656494718 929567968 890099281 49935646 160762021 970374214 207425848 963435766 920598978 525651871 853500726 825404605 915833069 146886296 853611904 846856634 945708840 927654427 900378314 903707352 149311353 93910503 178462843 883857834 809240774 921140022 783587414 806092713 390873844 758543363 59530662 875127351 969810161 570952508 935649021 971647038 964180425 915566611 614477891 451161195 60332177 804945372 915650587 518006669 775435890 252603073 238413796 647192826 916310173 182743067 276779617 235458791 559028280 933481425 986348302 944126311 832240272 848824293 831723490 671563688 744453307 68092853 214601346 907653636 234877706 972105035 587397340 755518864 925483338 160599478 890246704 856611178 835112843 988723491 584488464 940042131 897479044 100318584 809436074 909780872 677552063 907233471 864270814 814031209 450456143 495606934 740184911 763649217 912073653 699164465 190411925 952387672 770685020 536348483 532258010 761645998 708710440 737020247 538357841 916447536 367489559 683144399 33999418 833218455 877119875 224263184 807945642 785984355 846091445 76575035 983713136 591809449 862303527 746992496 886907523 872249543 959042835 883650652 755483879 969687493 876568429 141048550 879735585 501031843 446296323 110868269 166117467 57167140 70762366 890127624 428365006 939186494 778076798 725699982 796692966 964168241 934185136 887083321 924232537 41166860 982733827 234657657 471419933 288886577 467944775 31803927 509885980 985521641 160017628 684325234 597798900 988724623 829427906 369200310 798276675 560273205 727511573 282531320 816233355 405675523 843768636 869940705 806860341 823023968 988269660 517838246 871178632 877018272 599255880 932163098 979978400 747001940 782331241 396214598 52901804 741861849 995094047 754676290 977732851 756399077 970354576 814673528 825110709 61934043 602114241 193670199 892103592 814325421 546134230 586072215 110663130 952380985 755820056 486596658 206447443 884298356 971888334 461221261 713432512 939787409 931340405 86727884 330865875 101485051 874432478 960947441 506945697 228392551 637909723 737881470 974178176 940519512 575166852 764750325 800824788 919450696 570820247 266759893 330118642 120047143 886816760 816213453 943625709 923060922 515423898 144301152 838718288 836290007 911173301 810240988 864040121 764717590 513556138 6956591 397995865 89805063 859076438 827235095 828662561 954651438 905688219 920036836 896601752 444642693 762599282 185334710 252926168 438930025 388280170 874100292 733311116 795329369 844989789 853338159 185231553 970696738 232704555 760408287 150629104 538194631 962789389 740184522 206001132 455614079 220869519 811375288 520751263 679608456 886779200 78791715 178115852 846010775 927001715 305475115 73423054 797417545 737020247 150625010 813153507 520039555 259837445 544439997 395758756 927761657 943304261 980173471 660043732 957657900 931144806 107758628 349781395 122759995 336809736 815373831 836853618 945111157 737020247 279286111 145888363 713087790 571634039 242342464 785680959 425558470 111133175 966963467 769288369 478284781 24960010 34711948 209639973 578969985 304292372 356629164 915609783 809733972 286651610 414538895 531021245 206721921 759798864 975093873 803034347 747149267 812837516 874502450 36866096 942696157 563178702 266804369 802293526 13513584 866872553 768032936 657751289 840046427 951283697 836252494 701448085 956277417 612832475 998499744 818902859 790670955 943856316 811687405 617792265 589126349 915491055 969119258 954602270 153345612 797152766 825698783 881487966 145346367 544929301 769429639 962510352 806167450 550198783 747880141 860563386 631472780 972454329 948980178 611591874 890826264 86603143 853122471 777763739 908719279 379636062 817319615 861105530 47912069 746232020 999786921 505033860 490784641 766739338 364631676 378938358 921410687 749820986 888423893 781753901 592941821 762546874 293212292 720868360 777080964 579986521 922822019 643223488 483135786 989879202 915548268 959467893 426168375 776680731 955880914 871198200 281752484 190097225 600443541 944448559 653439329 159871674 844357228 841674180 887789503 991816937 46631110 60602567 827233791 537897035 225542429 112080227 627732613 867668753 819781542 917144837 194906997 731278363 104636873 995381622 965044773 883850379 966850548 745688906 819825267 936964390 757020361 268580358 788872864 867213928 758756206 325605272 919400409 715795741 39527595 937658253 656762581 847270047 79606779 941714951 803457205 611246951 56972302 795913685 868058341 999387931 209354532 446168575 835723011 93480217 860452987 950887880 991141096 884764740 753439939 351008749 583634502 974364244 937605475 925470358 765366844 88187960 962632707 371401609 993784772 870514401 63140187 801476914 879302022 759508686 856794323 776758048 804295977 752305146 939919757 861013619 183816153 852485502 904652218 312560966 437212451 187782816 109259586 766963235 477073693 527683650 829695080 818578305 787811801 37995933 477021579 965196660 926578926 927867478 706645827 181655865 450149379 938299381 861510367 422258184 702347504 900177019 937151682 897935383 705548567 785630455 317337854 840009460 465095177 494457806 791598973 837859722 79021386 817137128 815916556 916166729 850902482 807151251 786116199 691645566 434295720 384339703 502374938 386542582 576656243 495012528 958216636 339297341 842943420 952807977 589891884 923257455 865014995 812962386 879120393 196241776 264594332 537692954 550514815 831716208 950860815 821526129 457063192 949531528 457530567 822142974 861381547 770838873 987383715 835424811 487717245 969229352 478556886 503349613 850288355 188263447 28003271 988015081 154204147 528917327 305943017 380695277 696367771 357951718 924534917 431458369 161571172 631651225 172148127 377561508 897433063 687766152 985565860 277974319 752786663 909428408 922448972 812500530 871576671 213335094 617437889 852288267 273339604 67829539 43776950 362518269 235206916 555326633 531462153 808152775 824492119 600018570 559041986 114886277 854044911 970481832 421569855 391234590 211765619 706942732 26562029 274663223 652294440 964428295 353729840 866996576 824227927 883819351 808848677 756374328 642014158 659148829 568976908 913552128 438115439 319613214 969142484 777303866 977425731 470346233 737020247 954867019 121415519 854271026 643770409 2307134 879731856 928121648 972818848 623599090 288577920 741607808 863765818 353454433 158324064 156296336 870394202 295629839 730096255 300167684 764192861 179612553 362258709 988248349 237659310 914380744 690151391 49416631 698581688 939183769 800467722 961278442 440214125 881997614 75137302 114181882 443237960 872229624 892756355 621568622 921029872 58312110 220125708 853348879 523522058 764340824 119734857 994537710 843528975 815897313 898763466 990657796 947193375 434348807 975207439 849349688 460585780 782747027 992295438 819597331 109101365 996545649 746808107 884649154 494025987 554270318 808666718 913278607 592675387 993165785 945775589 938412952 994376313 748286143 744569421 812975051 871668702 703015463 756056732 491017469 960153989 737859831 835648135 826029618 423393930 534847221 45083847 747908204 934708133 56475356 788149164 361230504 179107128 829800248 683362667 688502276 744614853 939288324 429915320 405468664 163308675 431485648 221369708 779038967 842166617 382503569 917574746 200072526 748255926 768730856 974556437 642693464 841990668 226097061 328460354 940596068 522804894 125133238 876163991 852190305 791949279 984830902 402475558 158886628 76082661 597432491 844725519 237392457 796394993 868007858 497620125 901273132 137224347 203245104 769098928 917373837 574571727 618594227 855716070 537881178 797327496 879181422 239786911 936497005 39600474 972089545 483627269 921532775 854760124 402694188 148146972 984386387 839463512 51235046 896185881 817598422 677984289 819109482 9338974 868108550 945744028 18383616 733718518 765176265 222188095 908671868 51456984 37395488 985078310 851236222 916822854 796622881 154612102 398259403 671090853 555518088 762090535 623924673 612637479 589599102 699858975 680447612 760881453 29802943 825540456 887852316 452178549 953011804 747608360 812216580 543841573 755957749 930661915 836601930 574100404 851675640 367378242 630607074 887487177 184640840 760574315 344808730 776144813 240495601 451328612 34195303 944047678 563012274 840227407 575502408 274138136 750276479 147515296 968594288 912501762 855109445 887698372 959706968 994113825 852521887 776219491 793261746 995849354 940585001 497880030 742527419 418893322 105189585 581748937 682604544 888964801 657608649 342864462 953613232 995676092 196043814 827505304 785125457 433457709 903051042 946582350 949347857 27157247 848164171 768683275 786119447 976560575 758298351 786234467 881755680 686483862 906629473 889250362 212532505 805057803 615609785 764434031 409834836 420085575 767070606 767962198 659898790 785965251 905146797 918752999 697801360 924784111 58501142 949056930 908143282 636048646 858552253 888350691 729323387 465783445 31750844 831600130 842968798 257472760 709749898 881576001 675096985 67322409 744683030 401891799 145209239 556173844 812849193 887182574 941638690 758885908 771686133 296245591 805287358 820769647 777793476 85369850 936360617 392949453 850212602 45231053 266145802 932666941 164549376 802922423 381019126 843141368 281552372 941749076 459328823 863649619 925328716 331798841 889532306 798316100 952546261 946192264 829038846 413702231 443132661 863201762 433432334 160403285 761642761 794204356 773440287 16422577 868106547 408025552 977769641 507542697 810572273 784812670 501255206 996581163 822560391 12092779 803169581 737870449 298698088 744502336 967323570 126969473 854534634 875887479 23065044 469190873 496265993 228518963 890754611 916362895 490284480 906900887 971109955 853001150 921411844 930809430 713009255 766488849 293995040 216767065 203034744 856081672 954276673 621315902 942492596 891198614 959380854 565218705 557619640 148049738 844292120 457871939 356555998 471450913 345053533 166862200 806046283 829058482 666481363 736815098 978423760 852010858 424414964 853039938 622706401 610307231 667125853 129008658 493017680 457426130 988324693 913372596 765032969 624382001 852841317 833251143 485077223 955496213 949074016 737229447 622090227 797987014 735520456 262833986 771618101 680537381 790521129 659680562 352569709 529023454 909212095 711785188 761715476 145828688 87700287 766028125 662791893 80111564 667622471 291781204 906111854 252645779 649317549 267969207 988487529 677253226 969462824 851145931 549256866 647751229 914575502 339175861 405763841 711134066 733829481 392266480 616217239 356073191 953823863 942469615 749704849 984174405 751690241 483045564 468134446 112545612 813879361 265009322 898371013 284565359 982833263 797937609 861158433 267105482 876811124 775793495 952671580 810906004 909096167 940882375 387723974 82418567 436039386 416636553 523809356 354246687 259144638 880932200 280802596 196016359 872109723 193921665 696858941 772886549 750629800 402428932 261252427 746570161 618101934 821550559 507456767 30555643 350591285 886763721 237144360 474336489 371926939 799498139 115974874 751987652 93217075 977502703 685021193 782790261 991765789 740556243 746846025 603947687 175954944 165035909 666296211 893392333 824801862 972745841 663592712 947339346 737004056 765799640 739653715 431259194 842243895 115377441 718727625 754702654 967592107 770259203 831423064 949697003 834706125 842089377 833773523 855477332 511779847 912582046 253583766 672984603 952945741 204047781 746369238 429740053 860937574 136663954 524843344 712571570 819128248 505907463 896637573 431502178 859546264 993515433 780181175 606498942 859635502 960811566 811579667 761321557 170316054 736091982 453203802 807381161 64487632 305051537 623431134 389530659 884176080 920688543 672084154 988395599 225308540 774829876 900506770 996085513 931818079 412691449 360564120 368840549 888072960 236512200 391854059 783147939 161470637 218708552 816469030 838785279 951856847 962762998 827240989 372897385 999847278 803952204 285030456 70237106 894157182 644280979 990211932 230899991 852669940 933801869 777183285 739733576 897720598 989700008 809408321 128885300 750936068 762501095 398985084 126325506 270694271 854988463 437459818 988001953 476368132 467512340 852577545 467876100 866869337 52400492 813244687 564732233 600694794 338046475 285762265 504447036 230747613 825418099 363643335 902143657 400588264 884196341 198836567 796412856 142093329 715075477 12225017 717656380 757649635 869558405 954335278 955203899 854189763 999817421 137075949 755081328 784727735 53219076 955844349 919907154 856012658 782961039 151536820 993042831 863762747 653644177 999190454 608643590 774335642 892498831 870490793 996434506 916782143 574141855 825365486 806106706 407970257 686984440 800785650 941713258 873524129 888453114 98827875 710772703 903236331 932433210 409557859 532236403 828691027 627497449 787276366 931164781 371049379 298480482 828518650 202070707 782629421 948707146 358212573 821629761 831873397 746181115 909710900 993316598 386641494 801244860 942344011 782711150 887937982 318292626 721520109 460052265 811892420 525190561 972936953 614268980 580436191 169194960 190354957 863786114 589488234 190899343 97739821 59195327 965697008 370802648 399727083 272380488 874925613 784100105 108269723 472621714 427667857 374501779 814371582 958986790 1721224 510011044 962898101 634421780 955630427 718564227 212151933 499965969 955442372 532591541 211694265 295667421 934344040 640376007 683141406 798530061 917356966 218396554 211610347 314128040 879546070 663812868 862058269 930691827 210332138 99970347 52688915 925286392 650889448 197966150 400379614 663333033 382005353 844467700 835421368 662367725 859578319 690377374 843081263 983334843 947806235 962582818 25795606 716388150 801856212 136337767 439018671 156766122 746898679 552048465 274515745 480915963 923622727 787870714 919081172 749810485 462393722 399137436 649816372 971601738 904277885 309036361 772726712 128150262 344297070 560860430 241265640 178405891 181899086 144784448 886333991 722367634 619584003 674151445 329096592 591801610 857198451 826546424 840931979 93541109 877669967 973957369 527820294 791280907 973110814 814071052 915695994 478546931 961202345 868483868 205620300 681315248 667962816 929552371 93478354 606913412 546878360 434500308 873557757 250566671 6419636 949616838 162536006 282455053 948126065 653498024 327807931 582337710 505567211 997646006 452248936 224880287 961398897 503463751 570330723 499450813 749149409 675846633 587148200 896168875 23623906 942519064 450478280 927166203 649865518 796276439 672102661 62819780 279213926 827817092 551789044 631144307 247395284 781766504 417184415 368959971 195478180 475939469 952467200 898550725 921606616 262209532 151023657 746792822 808166538 818184171 745596980 371554857 588039214 957641048 753792413 933100916 902527551 61920452 646200809 906442079 919066904 927411630 566770074 21060754 375216619 529319739 852697393 243365917 925405728 501943031 89438156 966108817 296389167 881104965 865606435 873447548 776182367 930637205 750837843 952821187 427401046 74521450 832610850 773631672 600533777 671830646 818074732 182918195 862836231 839130040 266867478 771633979 905657628 412283793 997621167 261526384 134481153 73469097 171718498 448567128 754522952 784373367 382470557 196030801 181061707 888864890 541100584 656508751 789594010 185795177 531649296 532974847 690012489 744881925 262113053 611394601 894294624 783175491 592268540 888540803 505632392 938430081 934837273 856414618 65340487 852313321 737020247 800962071 694226500 245597012 855954731 859689534 992388021 385227150 817300999 744989380 909703969 347829600 738302529 741383104 679189325 538529775 961440438 864871395 504299738 994311701 471981761 979805282 874585975 751426455 817735771 831044485 922049999 856289633 87648645 784360710 949887319 772555377 921633622 573743004 462263916 873140491 741077637 988378283 762860400 410907849 748857397 868807537 934516711 870975785 921235857 710485463 209157149 914794699 859692223 942974008 92739066 999846641 122149845 854337938 139476986 926748916 491573423 205737045 509488169 870451296 901024992 884611169 776544029 554839851 424904394 775967483 866258794 776051095 582568251 992962945 790935642 573085772 598886691 684617177 756814878 746914560 986653585 829102764 325723277 857507658 244912289 797766606 917990219 787112836 116165263 802042205 126406621 645790613 523895972 964697490 900417148 88355602 763133505 424599600 268724804 530031300 597596988 967679539 958941312 992793545 407485923 268446892 839189014 784471361 857549749 182003122 18854596 977315448 759933477 769650018 203687511 771542333 757209183 940984167 991849843 649580926 823955606 757702828 643381358 275658409 800494224 721395459 129232159 272666652 194475899 412942949 954878598 112875032 455669593 648527866 547530720 973043694 666242189 294251055 730886358 475318305 749931854 602037232 655129978 499614380 918549476 507299258 940381193 5079264 937677750 741538604 21225117 572364375 866442457 790454098 636383858 944650688 612425085 340687119 462277871 919327797 998463280 859059927 947376860 912423580 765334838 816341432 998836925 866190929 58833083 287443659 905864137 767850548 133038311 539868 795706567 206311784 325656161 134848043 793704208 210881170 93110436 900512152 817384402 499498774 988377272 602481074 34618306 800403809 452565679 529082139 810681052 483384400 836116235 651199387 913177130 369559952 701475121 789551800 737543376 894963350 41979948 16209038 30622644 819386053 985064610 605720794 95182875 541203371 901525914 37803734 953578391 568801620 825612280 395989599 125339031 765994836 519435151 439897049 535141882 353651450 364190633 133569782 700282622 825502405 742897096 154268166 67561829 762755036 96261686 468715753 786349463 596902621 35105386 225598489 342393483 864727048 551898307 929322309 299907334 942267394 828650900 926330757 594539630 90254889 482696037 710997955 928810078 13680963 854564250 761290991 550411321 905400879 395193282 949541550 806697160 720014279 993850676 206701914 650783132 667724971 310450573 831424098 923474223 668564774 936162312 962080193 764972686 835807061 94961612 131367798 876089560 145278653 969459324 843629571 399882020 610026368 235645783 364308962 882035163 951130861 858422628 405647616 860308800 941530880 1754138 772998581 382366626 76463939 686493770 184762319 741413463 832332913 923160784 616853707 762104618 996900625 697219593 426286170 770274183 903032125 227870453 965908863 26707990 751323235 896707265 896492167 880812227 729116485 454917116 932561177 303905788 704652209 875000939 915338334 80109991 753693904 774172773 429637331 814302383 715830819 884151992 750065019 602481998 852281516 368417702 150254709 418806000 879780765 360969836 745552963 671368103 313535907 561487555 271122283 253253112 37529947 78859545 752677763 757622721 983308783 899072418 915258333 893772701 767395998 539778739 773104497 925028822 989555799 858271723 718893439 883701392 799154881 109118702 475041360 79334182 674877550 872838289 152796478 680767373 707796947 135531547 866561210 793899396 466969654 60969339 850936353 211027914 953682417 831730537 408601585 526976030 884477222 908124104 762748454 156542928 28856159 775868182 357509807 877976495 503994488 544819731 531874242 450116909 945376622 34928385 743075472 923102396 753093814 815491677 170519085 340385624 306372785 934966112 859184455 165160504 827949535 299506948 441733519 714875134 679959778 566505178 819237322 954853755 813541073 135042530 746960858 222787243 379722195 968444543 926132646 421286005 171004335 865209191 993805967 758236153 366406400 647741243 991249021 805824592 918420793 479878896 848217920 586134073 821160747 390537703 834799672 199738809 316605594 788253853 793133139 745514127 477553029 706640279 112446672 289321889 689631621 549219296 329101771 375506870 44277532 27668092 622809320 754636288 224448827 319624832 50233683 311917449 227461393 520096071 953380053 686163149 738619340 825528257 752458255 498241373 3728601 671099454 43504757 2819029 722547913 791518521 747166917 901391281 416487464 754474529 254804315 931982650 739550673 981590360 137361253 751937803 884448172 631602188 778774626 763121126 255266777 808918676 207124396 273986191 839446983 796643251 72357068 520822996 840634121 236672522 918553309 950826761 70575079 918839214 521387891 975609806 945046218 824564602 342166035 565112024 258061978 898299292 870439450 811298070 914997042 694043344 224832026 787627575 20913057 930734645 524504580 87335759 193040669 401137107 129047190 755698583 812217867 548841833 41075470 602407992 851870296 857078164 429759451 818515165 61764093 836976650 898091231 510142550 306190331 739049322 964861159 872126434 132579659 156988327 803438451 407626688 969969256 931861292 883387774 853566289 793523022 859005131 53535530 937824200 374485090 959781883 849260172 48067550 324032516 450527650 820752067 840547999 968922610 935356722 905450473 919018945 36343753 750510847 893794726 718385619 808113087 966844129 380463782 266043573 777939600 788460485 949104113 253873237 955138719 836589776 382581691 629684909 197779866 957193724 436031994 878184928 104230961 265725350 879028274 935919249 822256647 943196958 591886634 184034017 926625540 188538897 10257058 894802781 666456438 669584337 895260154 871567917 220916957 662079221 371026012 641350256 505901336 961759390 841133686 133164930 680731979 944729805 875481472 872732992 988186793 169804057 861794750 739941924 781840388 846722998 350975731 417205713 888220363 441998771 926267095 541752106 950282898 617364004 651286926 885621916 411628989 341376408 224431662 804484683 862999193 826595795 913979167 876968171 443119319 640546432 378690988 811400555 682120818 226884021 730595543 414093363 852213529 854803635 315101677 526287832 783519777 233608266 878556967 839464286 776363861 661930260 774511305 756770577 848510160 827269534 11519786 907220974 933496719 132692250 880428402 811254636 433514471 983491647 988951981 950725170 929481303 982073411 716117748 857876294 323032800 192093419 463603132 737020247 902312525 855376236 305435315 36774327 410903153 62113692 323472585 787909161 233756512 737606027 82171205 769935902 958765763 513146041 745836117 769258203 915602857 964792593 968003208 601826510 60740191 441596551 814284653 848972264 976871372 832573794 994988804 827078975 939899984 992220733 326450268 301043483 285494046 88369938 770471509 811179562 40235221 221393638 834361659 582842383 75948687 537766532 647279786 149710848 449924130 320257847 945984430 975632044 890764041 458084167 752608253 756652555 248876700 842541187 74965857 411086179 609052272 888889467 932258624 935814435 199629060 169988701 869853101 738758821 948260160 744824012 632961471 705154233 456432869 839562358 564484884 775259458 834350426 671088917 56882462 834247950 411949373 213775141 244620342 998917392 907473213 934832095 760743859 750996022 751930020 444924966 139157239 509861329 578203674 905150715 844644370 776196616 907141279 737608485 911605642 410256357 193831454 374757354 180578594 749643449 674063418 946865317 751251004 75347338 773201674 631211880 664324687 738653990 985375170 274080658 365779934 117954647 915280827 692900011 6611947 855142991 438265095 13496588 646259760 849558371 377029523 240012653 153006490 502888072 808433688 709193153 790638215 84078595 622638661 412721167 816540939 864632034 115070095 332848796 489832373 943030805 788299503 820376205 851880223 768901954 882230866 369385707 988713323 657397240 806988570 916149024 764277842 927447850 827590490 701601357 780664154 252988481 821719265 380342931 897035252 785347969 864262056 138842203 317572928 985060169 296334607 424332409 890666657 758436980 576083930 657672900 736031282 881102183 821314368 770338379 742675104 799989592 112662717 159965216 242973015 258138571 539328476 247925331 333680825 679625234 139916040 640825412 869554626 523064212 837845729 888848774 382609231 918069239 564636956 978829097 802409364 805752306 145559304 60988763 958812074 907584661 104341511 286748273 806470950 853206398 365340684 729448775 623415664 768673868 483894234 762728486 135775212 470923941 829072059 752400920 713315085 505204068 914689211 271644629 207288049 819382419 848719910 517751944 488740008 898372136 107790891 568914048 771974009 740924614 56976801 527596664 728926102 582803172 861341114 762015873 727728123 753229862 40993834 983304765 746530688 253068173 475016942 745061882 794977278 582812851 963822550 798790468 780225206 826693687 891725789 38398330 915638476 214931558 757980117 468567451 861574466 493917587 891504377 573108119 33652585 902950484 508073960 989242810 243999892 694266983 661201487 156517395 739162437 611582656 982837978 585755071 535739716 328430518 674335680 980198187 72374134 356699989 540636484 950761500 810476249 502198657 984447763 6828491 49714776 36828876 765631087 836771158 599218995 30674616 957764936 703666704 533244750 649097289 978981352 135417757 893534882 757417131 392413212 912734463 838700147 142662530 710501050 828705505 41954453 814652826 741845553 975129717 996219860 149046614 279817541 859705559 823550157 970425872 506765964 402324336 841022956 850409630 455022062 940620640 779968799 71336088 786176753 977309363 941362330 497632948 117235648 744139856 284201052 867962194 362225693 786854709 595799005 859818172 76635198 940358597 698445178 805864690 760115828 795628006 942617300 840822655 844207399 120280983 325518478 962590354 35605863 105983562 988685648 576034328 841504066 893206286 144004009 799637156 995274776 276948728 961182744 32674711 981585650 526370492 356495637 97506652 809889455 26111866 896764931 88225593 953650506 64418187 792546111 797304747 462572506 589231164 527838790 847697933 844567139 997554885 997251643 836367761 847318680 902288038 319243022 738230000 861438541 67004579 56252 269846686 847807587 868416134 812690862 918135302 150692347 640764474 967981138 827668032 302949615 853338822 998051870 788641043 961332163 728470487 784510430 884658124 903839012 913848571 804242651 369306021 545944950 94781786 483471790 638265626 498620791 57855438 756020402 821886714 841075286 801896020 826317900 857139616 285141986 974495370 210515535 818951141 201506999 2666410 707145492 709510468 828977705 869138886 505550402 7598159 43151688 42017611 419175231 986883772 790236758 991069253 752106025 23343230 782076667 257478505 994111560 780726283 977121556 578137101 71812530 966478562 319913997 222657332 753520756 44779871 118996397 15783140 270875519 782947896 445501120 786030951 198454525 949719150 187755850 554604963 595339705 482697904 953606496 24698548 848491080 749090256 265054170 285890964 531194417 807135334 584791101 719162266 940593356 766779362 85179385 160258360 522069628 846908117 97144783 242742399 860914673 893856505 967791571 859046749 326123731 9525440 336340592 794209029 614838395 857779549 8291292 623172069 146445792 913904715 69950028 696526725 849829101 799574607 330706406 821685342 893382811 873450280 344114773 870111290 996067204 570797522 491917510 990855497 584629650 744027353 692591454 663199015 824163778 249031108 756080367 716778106 911047917 552473624 644045636 850639060 833980526 775179292 867559622 875923564 862239609 796572066 955247683 813352906 711699200 421697086 905796351 4550629 176618147 346421269 520331806 768770468 911789262 875522243 759764903 805473232 317005150 456780981 773227538 967360273 927695627 97918452 747810754 841023274 527167108 790153792 699762287 740023859 879863388 486984666 779732066 891665694 7684765 948029933 874702379 910640209 554985119 960912855 878652103 894506891 185728626 399687640 758258178 903206733 608361636 955418283 880562635 489146623 694636850 573354390 556793868 738152349 958825247 796208632 256497066 261460590 884476526 996331106 674020356 442939077 137787797 118213125 431603694 490660705 947585272 748447842 745950647 980635095 581653898 950212125 861058563 906988261 468248041 779311425 926304357 854661398 856085874 479890543 247703648 602921193 304700124 791881124 214547746 790714549 887512253 914466538 961402315 131281147 181550942 998343831 975901928 945875890 611225301 866612008 313574958 230559816 808843064 161770400 479539907 898636344 181990193 994319185 818837322 486500271 213632787 15966104 894449466 982365331 973089808 889530384 396089658 765144772 73407185 413007613 480161316 830674061 53787755 882288017 337245462 430938820 381268215 548762254 688095652 549547077 507212683 491254887 867549191 356499689 923702236 723528827 950369605 946809663 614715158 755027683 365423894 893446024 308187275 960860359 979887280 846201606 913180817 701974944 860174141 36471117 141350998 755625628 181446964 504077310 922504695 566403882 134440047 133729857 764059043 310165808 897422096 775347515 308207862 836512673 63327513 120483018 829773368 986875693 407628607 65114732 330399296 544362564 896530580 727963540 249048874 653858113 903756358 100781062 905349035 765537733 530892480 859073772 399753546 134010212 379565050 754270420 870863147 646769259 832034223 197288636 198387298 448619402 52150160 651794450 604134653 468369264 233198966 657514586 896005991 451881831 174905247 698174898 741111579 68655594 74537455 345390842 397144547 889333771 917545445 783188771 868182578 775388642 962865074 800143274 752681376 855451670 804878960 717409959 979379400 343034578 217690166 768267182 478332578 109161909 903925268 879843789 98728886 939835749 973945153 254068444 879227402 707183116 632045057 599082753 100386529 415694140 148216047 828151627 934516549 251138867 579719658 651954208 783222816 2651329 178123817 888475252 942204530 746557607 943955388 646554526 827086319 967861640 193790811 828930540 614600587 558559691 751741711 389883068 423483110 943870652 951810275 596883802 308467426 824594899 641010300 830321546 744607687 808310536 812968011 121912615 910315771 927293007 666210141 760070847 345052624 626267152 700113750 961880727 756230682 881321871 144800619 163932681 466883639 343945412 846082131 902460888 459499064 450449466 529763039 999155497 764049440 882188789 948211503 531406671 907555034 3470195 76036841 834888083 746755833 270735301 294231234 415353628 515015801 284785466 850505023 495239857 876654990 968684831 597466434 417899508 946601694 892994226 472165831 794797377 743771930 273093263 977727209 486818119 829698703 822843944 988400657 899800222 333765267 625994596 361385324 804709344 188123663 235042509 906689097 857839378 302198469 814161820 746075330 813962182 60081030 767437911 150204279 853927341 924550696 221076726 301391400 877532201 708884594 48370377 812986809 946174236 914423203 898188616 878933676 172779739 525240554 370259428 326762915 70712752 744078209 920702981 943992083 338962775 808816366 794539856 824785948 982890842 126860662 844809725 578749513 975301804 278996277 39833983 39223582 642349809 952174677 450443754 708166471 884906352 642726180 857231517 575280575 756620721 738706804 927524999 776993569 648050709 892666095 854410752 859179602 523298316 616944663 200755757 981192940 756027673 707680935 554616515 515033351 104733565 578950557 935898583 20524145 978819780 663331232 765153191 789483280 958665836 958802485 936234924 103967097 457809968 922796927 206740080 822847685 290985514 212856511 780700241 137740660 716258593 296960454 841083279 63618757 866697422 934621457 463202502 184120555 690255659 22516600 980181668 897577507 771199188 290222173 925638698 72379296 754513201 978514136 755835746 818443803 440173576 71168526 241664121 16568110 259453925 991766918 285411769 134530038 866375734 463729335 781416196 577421739 810743835 488998199 799231473 978652683 936521684 272316341 108195216 310539990 974958003 679078356 910177239 907284317 556909942 858174834 785635378 102501115 929902199 929663830 828724235 338739808 914015406 927278238 444328819 827947282 799501591 947881721 992956731 110563241 690300726 705969122 737694635 930589787 740877246 811326570 635519089 717061170 815176413 138478273 568345631 787692341 216389098 699134840 762626473 706874098 470917901 28579932 412602440 839075269 382365211 99564672 753787871 663611573 115567182 384690040 980371147 906952513 929990099 484390602 724055997 748944284 731247821 129877962 548481338 104463137 977524498 918102104 767059708 830419260 239510561 163289818 660720369 960117759 605566650 802167679 579365991 57447344 268187271 439262977 636030842 258157725 746595822 671592735 855803053 900719010 874916147 956233957 838859788 604003894 802037224 861598177 620188149 229130475 743686993 866955103 847656458 958396531 358355978 227621704 375989474 66618963 985299452 889039644 456931127 233177258 810906692 149661521 228957302 269650165 909406402 80657392 192560785 928762804 927197756 296549601 842940485 134061104 89592257 536682021 995669941 831694819 59118583 851690283 976056587 517359159 851074294 885844612 998726487 718272767 619748609 997640766 750972825 521814274 273360543 491926008 647085376 55437887 952133817 198027410 979104412 76116016 852148940 607157894 294375381 68047950 218841559 740121573 950886675 475095102 820555593 847977551 973129740 505570976 179136200 164918562 883844121 167158894 37652286 900531241 867190722 478838403 336210453 826037983 325727568 845870226 836801247 32666206 816259285 699070735 747519682 476334011 885701003 689673475 937490276 736927095 832180513 275461193 267619330 785100333 552673488 111950949 352612567 853158149 957413333 61582205 64082545 681732019 762066570 327380205 950309963 324616120 845496119 39363515 832080425 961932185 302370725 969791339 255169747 137568924 928324018 829256293 991085180 753265550 784226523 777947664 136108761 560072901 862361878 566394811 258778247 776074258 259905306 867442752 902707563 386650832 365366379 322409871 296357614 759226996 604771037 66444154 819380341 415076949 400735920 349793649 986745543 928900404 975072241 20884886 965832706 345240306 959645939 224909948 840022408 33770718 79842906 446536845 374130892 116571928 921898497 753585709 825710445 889746861 5089297 479976284 741413780 481067423 84221656 710652574 169273134 906288672 839619037 440619406 50892643 207789243 862571260 472004133 933578450 526569995 210755635 545068319 178559165 880669922 951177910 478265909 455990293 940888497 867494318 848034616 681203217 190132466 854404365 586074056 269767991 764119369 108781498 817224405 371330172 524477102 908675884 993563215 470100535 949229096 959578718 633215544 799340231 948546570 865280857 342744065 358992302 901473702 755377645 893118859 493776584 815195397 143729944 184959311 820297991 160483703 973602628 379152633 193435841 80986414 759992459 822138264 923681573 923776509 65970362 181997367 667055644 390835840 967416061 826863061 765120275 993674106 814524208 975553567 440025243 917556735 849423040 606807130 822350634 524426237 290341126 819568874 342439507 239861468 925322210 403186522 405226826 726686954 283135430 753989619 475969306 376394800 564284628 672080578 623176885 254311488 442958033 441839220 671592695 626212643 464708039 859086514 671726068 955470980 858825108 942985086 86308507 259350096 272020362 332355656 659042274 883960077 421732635 864091475 186465673 133831009 711055329 829785987 977259657 921244308 945490281 482905760 846689639 153922203 967059455 883472701 407615003 634681836 731838177 838391246 936621801 882783333 723311650 954329434 492095376 851405199 868146900 828792591 251636146 755762989 998005591 359567411 832119490 752389776 102054530 59944186 394806149 944894902 949445867 989719691 684907785 754850141 182705089 377606098 755506923 810391022 961693399 969240863 878196857 950960667 259778752 551666640 668710379 325858865 481805073 809108950 900570791 97398230 840702847 855095283 547596956 751716327 156609847 886911029 710727839 969486420 841184062 202563750 150763164 357774715 996046590 483484575 795118232 716884437 768939096 390147336 792891829 305418732 654108557 432411642 841863315 738830118 657122707 760584720 711203898 840172697 877658709 959269444 774873871 568586988 115227408 188829888 237740925 878267065 845583787 514947316 626759767 801737924 399559094 539924598 934361563 343041279 832097240 256399652 800971540 70540472 749830509 411277561 754481425 980016223 436133551 884257169 63323940 535959680 854994267 788065310 924296337 798531595 230386822 855086389 357969917 191922497 775290593 983795302 171318615 14520013 708762977 498240743 832258745 950774945 545402940 979003438 13489424 965082126 867559501 299055492 924810032 875837560 919591085 692495209 21407447 478102207 346098382 115024764 405255865 981753836 936187937 585380433 416343247 457649011 924898474 917384779 842606006 838615634 42715760 23779773 803342705 242574175 816879208 808966814 545025281 47991462 372998893 505368134 998843932 914812811 223649718 945537881 160582481 832402910 992288888 714595315 770056310 985750426 978499799 692004600 912853282 906690784 813314818 28813261 420565379 760686098 578427998 961137311 746152374 943464257 765281152 389839606 750182491 366709629 889778633 806969295 134983179 421834960 925231590 271814343 879018313 12066338 845289817 292094965 893025972 135061564 971716 627301790 5046934 760546389 790420453 955565816 847904193 390701428 915911364 8485872 897624512 845358122 277488331 925401171 620897467 309316954 106244602 618333049 372953506 960216464 802618933 166103762 835165967 299107110 979735343 819490230 223825998 2980545 776865448 623856945 963209944 100256902 731414061 757795812 926974340 274454964 392588126 936775726 286115258 737020247 793199349 574288031 634052001 852425293 632083406 366717538 396820514 545283268 793223961 640998363 974499091 141330494 649036650 796344722 389968657 905272626 965124325 893363934 795294902 741976553 525673286 277275950 753553005 282869795 914854566 989184143 532758745 771120104 175522176 290829163 649405404 743685343 844422589 597729196 483093473 190152863 235889479 188994595 961145508 763363301 513597639 880902009 804228940 280517857 530246634 283455803 806961904 610221776 997661224 826832174 740902920 575712688 786847162 254742805 860312593 77874808 708110481 801245554 979567469 44805817 931541839 398970751 392125390 22731675 708829599 850986360 817982311 150515418 145961470 916942905 213005876 858060996 759905263 971634940 583106250 900982105 791111087 424127886 808073337 232764762 188929753 616283566 785297942 130806634 717292070 880008415 136076396 925803678 734918483 167203362 765095860 746898315 773566644 525948916 911304900 834050609 977557965 738864685 231981228 950180402 936240949 825372561 202289942 917932229 826913849 773266306 760021099 291613674 53217108 397116719 170628507 943997212 784302810 982001688 938607445 793569911 961296355 178471567 50252855 592657468 945598050 908870733 869392329 100725277 912707205 859000564 297287784 528717603 566235725 923780201 420747456 759356880 331933529 516768918 680274493 861973366 898862716 991455867 743544347 855423945 865948023 891180078 995837253 642527800 857317882 900237527 859877787 856428339 959174818 737747664 886615871 388251399 546605002 975062055 675544073 443938830 951060991 737020247 740961132 461681393 300512905 979373558 805767572 805241494 874970488 947738621 851398617 520148630 863451305 398560138 222422607 397366614 824215124 949385346 853912267 901732012 598158163 929447100 901323583 872731368 942949777 79866782 953864915 254992211 927428603 420819659 840700372 884225070 945491179 196404853 913991182 18848667 469821373 976028027 513081782 946285501 156653759 903117442 243177217 893766729 409380931 874429434 672906889 405108008 124199768 878847110 764647874 245607081 170223886 824500123 905639661 265838495 994649317 947222969 857909396 973045470 43648411 72353266 845794202 10052929 830744517 193424942 798935617 599388960 913849333 943508122 820423111 950975785 750671160 70070177 448367315 842428043 929391963 273939702 711688822 858013744 338232758 960406084 780497872 784768488 732938885 726404503 609117041 928331275 961892360 931191536 934875044 889853278 864183266 935602849 592847788 751729539 261709452 175005698 854991397 970931503 275123358 248911368 753910260 923137347 669331704 487471331 969183703 998057451 953918279 728333674 132937446 57420864 68515019 906674205 947920620 501853000 894102781 892717172 197285569 917361083 907013270 444229152 886107101 770135520 497660183 941215586 898136770 333078008 149523080 771039 346327226 973562521 655971915 401480489 590336257 856625720 784258580 733756253 691910515 765376807 778396626 803592979 885771697 824943365 542374159 434967495 978066602 389132967 600597310 960964110 955774178 755865297 968640980 634731279 935132129 875265838 813832468 192961578 950862051 623289673 675881779 387585062 167354699 836590249 710585847 436110352 326458501 459032332 274822787 48561458 777458341 861590882 802850074 737999456 545131065 308291218 774884044 286539221 679432693 416150984 484953187 692956169 152537555 766034919 260351463 738882764 696272378 741020451 853717210 517729225 190562442 215696263 752625695 676436811 738546296 939684101 575886234 635621608 977131976 564805490 798666243 175143725 368593376 445816510 932460693 742110271 534834722 717365480 922277516 702668671 461453178 511387843 590434618 78777023 128472143 24791452 615924576 261139921 326423343 900636961 126823531 39370895 885128565 904141771 819832844 45328299 212713520 156032708 944534952 890783700 451108358 792322512 850275511 165738906 931764500 490449743 737745377 585889182 467043479 791192607 254354562 44261393 697776708 849638578 874864202 971178855 29868157 628576568 909067470 821860852 35669110 269922272 986295725 626634038 962643300 629650014 877796792 567790087 601445099 411448881 941066978 328399954 542071935 91116112 975016674 765124018 196913865 237239849 990374420 895080465 797890853 658577175 34778337 411711064 550679985 204463354 963687352 869335428 974021622 445297765 856544271 751115006 514604170 543982862 856417005 592005003 787377303 777963201 222436901 808296544 833955549 28693891 806303081 851170574 563346099 187749421 411819767 825266441 2963802 781031065 799396354 754671795 230599886 980758032 8747766 67575860 649884815 9536002 612487308 594684132 178291893 264413831 861716238 57149332 884373066 765158708 76482857 716632936 281636107 764717292 778759267 184780900 679723862 900889527 671637894 472770916 871006379 467113858 900532780 794874068 893731763 188890333 904913322 965293786 83687798 336752890 927710867 862960926 926911768 905327360 457384940 391728193 946781369 894779260 921324229 875764225 992512738 970686778 691695647 730657917 474138650 735419434 838009977 734594909 971786419 179392310 991313682 22585402 702721891 824887924 799804567 672825648 986519058 801013119 899101646 667876274 646097907 787238460 652783370 334328608 884334780 962062681 776026236 914956803 677549841 380448053 606362509 742716096 723168781 389626530 226947735 860692453 904633078 910930414 888236319 807545704 754115995 387559573 746506853 826582505 254673147 393931764 219085932 468306506 75644717 822162417 804573359 955426802 969389576 406354727 907738054 909792457 799539512 906461148 830717527 171310946 745485042 886025816 86818228 972485440 134457500 241261604 912639825 60282704 540179104 78292019 339542755 371498161 797731976 849267545 817244942 492770000 955076736 869725682 762349305 209323140 375101701 752024649 45331888 972027075 953928074 547662890 761165808 939155312 883197517 773661630 679842992 969494714 501023323 702390037 171904658 391783160 634607881 289859801 844602239 438005330 90775550 387733591 785156745 747547306 783002171 753766796 530073914 295357123 945771390 691102968 886509332 654119370 68099937 2246062 946585646 463489967 557669612 379972972 527905601 940088927 122419438 127498401 335100893 846242325 202585339 379646265 798863056 98255048 717262303 784861846 619808236 449807534 21040349 764710172 961274576 78075093 758546076 813283233 856180324 976983353 866309359 359086535 771901685 754677428 47094278 296973247 948519021 423944960 154369672 326716424 928876646 131571688 994971540 310287580 217302082 535308510 924673543 448448822 990434309 976818684 194314317 748058500 779204793 954727605 277092910 919329967 741289583 851366067 620409294 873789070 810546939 149493609 855131024 238467611 407304185 742430664 925975151 607208289 454782185 733214155 881595250 982814413 979559206 841600514 802185523 656873276 875063665 889556917 823811356 944095726 649743090 283975339 315625877 925155534 31404318 888252135 741864230 253266929 357647703 891654349 830982224 507484044 785781818 911907311 739801898 858432818 176569691 915606677 419411130 853387016 876408177 975190700 753693080 942606770 974330293 748080009 675156509 415828974 494009468 566733583 621451520 844903747 429006189 845646087 908202503 122515408 749001504 742753783 403364562 156613012 808655198 327079215 46389122 106650826 638485595 999345255 205863974 935975546 460731462 913859336 221091584 747138682 808242956 937925262 328212711 220541115 449763007 830559341 269184124 920212484 867414796 931400967 861155394 724602886 275589423 954007001 503135224 386473733 892144802 992765053 926161186 576368160 405960298 852815435 846480187 690866302 959932209 855347856 809191339 399632366 467519308 883243334 846501800 658897345 752129099 796509630 794832104 926675016 976869006 568408794 624061212 344032537 78769746 825322978 948132256 948451649 846093618 951820940 834493512 618327878 530907709 744725326 228130721 832583827 839227463 814058041 988811783 572141323 825943353 887542250 951921212 886648396 955871800 345601384 753019156 891615847 120916091 957734309 932361519 778567589 817709398 689982672 858470745 920286824 127841090 624965637 896242995 239284963 752582488 990813884 666352224 637650301 935006326 313626086 318676756 312214755 716522626 875161351 404949629 737784571 705567187 913182527 550257805 743980411 953056288 964153098 838268337 358855771 906194753 759567992 678963650 960148152 299211297 800143707 470193370 663364300 914139231 47610460 888962883 719588118 987123541 942504757 385236008 146316991 561213730 330086347 664048113 558699126 299316605 754799729 435254174 882957172 522656025 3332276 852810929 542717736 851728328 275969788 402092276 966961642 981020145 854977867 798798518 978272886 266290514 917168518 762849109 836658942 944893641 772721317 805587774 298844448 909135288 998889575 820391919 941077621 878097515 798591586 168527753 144567878 389143968 736029189 32037435 939672378 101114951 828748881 878916579 157314312 867868449 405263895 928744368 820396924 716268912 371256994 986817023 855513318 348487921 620336497 944484600 869250888 150122275 993981331 948901576 940514973 703257318 831149856 996486344 921322025 994600702 337239103 714446258 55736134 675049476 900174299 896205089 976154266 218971707 465627837 227236941 3938220 801806576 967155369 819591595 201806637 886026803 840696595 818419715 791872060 342551936 380651108 3634751 765442885 216586240 765947723 843216936 733393934 589592847 813253500 790868914 239676963 251167360 33132184 979275468 273593597 936558934 844998158 889826599 815810026 336771840 765908995 440788440 790834263 981829290 604351069 525810078 179638309 925329439 689476867 364810749 981457813 473573193 761159160 678547968 998280571 917888156 459983423 18064922 851339879 774293192 403322981 862820808 796656008 857649900 201279566 624684484 80630786 16557782 760604518 751942579 321789297 356337790 250425785 676697826 235723492 989548805 862103456 719410798 939726343 709830326 517555880 842192534 263268649 809904679 415971005 978578754 441476790 788151809 818871077 888750241 315628383 35947533 247478135 888541208 953100512 434389885 544022394 625981026 950356977 182424598 957432863 855878664 898436451 775027264 760965192 917859766 142092262 820021209 9114940 425000552 836715721 484053427 737184529 678046085 655348714 821043378 949572171 766394959 759155801 110198809 240880481 815012911 320647526 328537181 857976016 804611798 35253528 876009018 961578830 961280723 609815770 584932131 216646710 968102897 882623739 38792382 722292947 742910547 656868319 771687187 299930105 61151779 374769263 107020950 890632574 333842112 909106556 751332401 192805238 822080165 228674710 523387259 879907786 583419221 760503680 580077499 244439582 868570144 840037412 324447548 199623013 578537574 738783279 358408701 901371334 867028412 624595162 982762761 857613620 64914369 479914194 821654928 690635207 436110261 848720509 328505060 882627954 429536503 949824113 451181429 293603580 33442801 685307490 202540892 989111793 920699543 301493092 343335743 986956028 938868274 737977633 13822632 11019740 915768649 930009608 423377594 287502690 611245976 490237309 798309679 982210476 817781272 333684741 987221741 820423810 620080822 665233787 749816314 475561647 859642926 991325356 447179658 83612263 131551267 520696908 374300504 22318381 919905362 862940200 995566871 198046085 437131328 901117106 851190981 810813772 809106357 961306838 87531773 984897372 43262089 921841252 356448814 630676085 327905676 173345817 247211124 380433806 989099274 10555336 398951423 855967090 839216537 566561827 802425060 661659799 910575186 209093309 906329353 833848625 508290696 852757276 999893125 424985238 662809335 694788498 988499199 265626911 911224934 52323156 899932915 998216348 826585379 52162941 500751601 433781116 633539729 999646097 800592721 784570817 933970161 869226454 547560821 255094652 138873678 363705543 897819735 924288818 878511782 865098205 792734061 447767623 758877584 891264503 835235317 692395633 932121184 22182872 784737253 161201639 939007979 191327923 931914365 947238999 715557190 487672569 649929907 37677984 781516209 742147625 349309784 922383344 955624178 446973706 319248228 63672704 783182343 477012276 341915286 803787178 618575345 793538847 787507972 336700199 79757219 375247657 981866874 28277772 744378638 927844263 952179224 183380964 817507602 199996977 442617908 738852832 737350259 923241572 101132872 287511596 221234617 647548005 980293570 932950543 923136098 330443820 909330489 876196739 845674890 783888909 546110808 520125118 857022285 201321427 831121407 900159449 819073410 517516984 452580655 944140886 857998908 509247185 241021468 805495969 796473124 998659678 810667609 329104539 44926805 763985326 866214688 307803517 149701158 778915051 951947205 275432456 978888485 899875411 872759663 918564363 938175544 866412869 103271969 723973282 238298358 265581801 687451107 328114820 123038257 771970981 737020247 789012053 778679151 451271622 991730758 405270061 300018860 672463334 157272575 809347082 793424517 347212708 763321122 144776883 765600061 853815175 800570257 444893477 998215671 869843736 953915714 30777095 922736964 677856625 744766700 892460659 746374128 537734343 914890095 991550506 831930770 446965300 793793192 826836226 370805521 215885005 945699208 973755419 974254048 606825191 261305769 988130138 977517131 693356449 426874630 863687545 48975605 480331111 77801348 807684167 620609471 996101654 899221998 480113767 314836793 801419494 458667061 879381776 880211649 97249060 758379342 775233288 126054734 757375134 746924528 716632919 907867570 944064879 900912717 894212407 855737622 252260307 218655242 113200676 874842778 139425454 405447912 960876569 811037809 976147924 367319715 541699006 777493627 350301343 334128678 841885824 839116050 401518497 838194450 628516663 326438371 857797903 344236367 902687076 632335880 846739020 921283199 895060455 919697616 356333215 598353727 945102546 428933619 833873657 990918529 510782437 763936014 338584961 402970604 922496400 785793404 826859707 886023451 356225707 552637869 269051218 999540241 939839331 496891582 624783682 961009256 443261468 498132889 503297022 823679219 983450788 962343055 805872513 952516256 801938078 677960276 545723420 402002571 672425189 794163810 899613270 848110295 93187235 703262866 49712288 546524960 918817294 87564073 13701292 574487376 245233771 427874216 201724677 201607192 777355487 15888243 890925685 776574154 172283465 103396557 948376375 217851710 938520905 375963653 827926840 834311542 818739687 953678037 539581817 880610942 780067839 479235960 70294447 802519403 793810506 876993409 903970955 972811293 803594517 152948874 833628764 767050918 297564796 259121257 566038693 785447695 249896223 721170074 61601934 543425212 712780994 254291610 932745924 800698227 117818065 975479135 86666396 939725524 308069463 890672325 815708646 973433744 558193000 718661238 264134444 214917016 770283389 814066538 273310820 122180589 835283567 385450156 5608565 998949358 353876279 915694749 960237237 819172483 42700263 292025381 937743350 76547386 315689957 914590091 366229658 567715816 630730496 277333442 513637678 573191697 385382384 436000528 895557229 465317930 849399584 46108607 763731144 485317545 43840321 24770606 988259473 724287579 887957044 707064884 151419446 807497000 933280595 792448366 643229757 14449344 829398021 731618869 519837873 915076694 768276982 965426866 897109486 932647483 378276095 839832427 778236425 176988926 370458714 54049869 978481106 896221112 176349895 865867510 212305198 867401157 925905037 629758978 181614099 507436245 622147810 938326281 538908974 914293648 279660450 972516134 486477591 686225837 735388827 789472030 502072404 935764207 949285585 784784418 313904911 220147189 942995323 548937807 124443045 971250098 798145147 104506422 291827023 714586854 916645308 699513433 803588984 517855808 794526105 793638336 969974287 801917882 874411767 876478054 610693341 425464359 842365160 774610412 953307563 737845013 747323651 749619637 840024852 791267923 808253207 980816087 139240059 936184021 908365285 845334562 841879273 58166278 949139450 476043600 604911056 837357516 598539080 842733650 797370404 692620028 872158097 759082599 939412319 32013845 256498065 344274228 204247027 402588443 876229973 675752662 195309856 846588478 801802634 467501776 591654273 664374557 906094665 510798037 296649334 349233700 699066344 505434951 782842904 262784621 782587885 10297115 750477147 170621185 238555739 752323645 231867552 790491903 25465958 425814447 750137203 983896616 859263240 819167089 407420476 823139996 851402394 695162211 175136525 746167333 937660630 60237904 393751036 871405601 969599909 622984573 760238254 828369870 717242719 976454036 904160779 516253323 453757391 216980993 201652600 389229588 161205848 991165733 62523195 987632247 990349386 690846751 63654816 289656954 981514077 47713963 465576970 853379910 177020586 24895335 689373 846378869 730640795 567669024 592109324 18874455 965416452 172366897 852179942 391673144 909760909 823836820 261850671 981192429 762424983 829064291 790053842 368570429 672509139 988011466 735458537 724503794 738486744 705561947 653432863 82773532 737020247 788870152 21392405 811848690 370392931 11851832 251129336 795378338 896632440 831617439 327031868 733401961 747516367 807150880 234403605 992902074 752028090 210734764 157327070 811036960 729253616 969652747 950994261 448087435 591337666 472800400 842520100 245265592 941289453 777788569 555022216 485881589 372191093 303134683 623917642 403865317 278859888 787739769 956980631 871240186 139299735 727468052 195457484 651226534 46832242 232142940 226132549 792809518 691474618 897813718 112922466 644095177 216189353 472428189 890987480 739195921 844463 923646050 581186590 832830124 515429143 803556133 800100983 986112320 322120965 844231932 263442257 985626412 205576125 116621153 597667138 13843201 868109319 900719818 839616160 788146861 23809379 955232007 889888605 96349776 883870937 439648299 890769784 752897483 760136957 730914081 812625792 409984687 19968699 175596786 876922509 868907377 298314283 544505526 549291407 253280235 257659595 479079384 20153470 737020247 66373404 831890625 394113680 762986818 279153720 353312019 628118471 677200670 489996433 188119583 490207303 478668035 753914676 607730271 789936648 865957075 876941962 914953394 811585935 13911318 726376736 477425113 451327530 201080490 778324635 221053533 161267654 679426980 782284192 57421908 780034548 799232856 617051667 220435960 187647952 178464495 219802547 748707116 420951796 628908175 894782601 776434671 242151112 2370818 336325889 834621510 838417063 499737638 886840713 908529185 617231145 806924661 817690591 921223924 460666066 614291646 995824557 407668451 869393993 822874654 870359000 479895835 310936150 689308762 164419112 959804742 935979955 631009752 545719255 142342871 800851565 376417683 855556587 786607684 851055737 125711036 788348489 341950021 365420926 350851199 755550717 948516667 101352715 921320679 761813100 906068704 4498790 103410434 670442908 492850370 574813215 635937361 444256206 768809680 855632997 385827681 805466962 655854508 657604132 2150355 655644518 272940784 981434940 863825562 995306065 828918222 562176960 154335193 802224290 894195327 168801662 786517036 107286884 564565320 780696848 259108517 224660394 701328665 208463666 932132445 667265292 83713965 5588079 250405012 811789161 386624766 267977724 834075982 757997873 635604095 57301501 372358868 185903049 442998353 973508233 818316658 511961885 864700848 486368550 354462287 33128941 702508366 492734832 317526094 968877058 924942026 775688189 961925704 795868163 719891712 384788529 609753650 121936452 901468968 665651280 958742563 619206645 756451851 598222397 919547957 551088532 920711452 738866349 959635772 564679614 252709140 965228864 123467670 681681880 19529891 277134946 282836453 77989695 108203127 865521384 959938489 984662768 96403719 10537220 985054615 128127607 223359934 800905790 614051662 207003070 960253147 757159222 749252850 284729172 478428462 845999790 835075588 670003743 822263174 949691517 157764207 889892355 84435005 598162836 723875718 489150505 895520694 524490632 826358541 848712657 809281332 695040662 948275498 666464915 73178289 975044941 659829966 12447864 868744754 885803704 758939968 878624947 936921896 991051977 74467982 272964022 911301017 420260183 623419531 524648944 794592878 305328562 491775684 454237377 761652289 305771661 621797562 276184648 190575611 407179796 926895277 869753280 878650707 261332930 212621957 927422933 578866571 975720772 769260931 61487679 309857901 265542172 875811081 885586073 828497928 774588489 937040160 359853001 855376847 517837186 690394796 295381918 638759019 813445798 789575769 124764814 970937974 880161858 783738552 184569820 947381143 170469920 770624175 784840485 731201065 90747358 389786619 51574088 752764886 370417701 823585173 299265798 213957012 742394462 593713113 347953213 31116664 949727434 415119436 587409410 310325131 713224342 326693125 886187592 660366693 737020247 76983245 280608425 321716253 304357221 228873361 388649285 951322805 810964057 596416445 118245335 332940243 767031954 58935030 104095262 762802877 689150306 877809442 940455944 220918012 599840496 558565721 915842256 245280001 484319733 137213577 762375789 820043164 782364585 233623606 893921410 521664846 764936664 376327457 155606213 806257989 521992840 823101718 823455699 961561651 798835705 772244088 960718333 762652220 767594648 481103060 980704741 472671054 326661116 530891100 37710366 335431577 938801762 996469936 955265163 531039366 772446137 268899255 915562141 431654024 746656285 85173006 497135459 232241608 862583797 464159302 203277581 800144207 760034707 625959105 990811945 750970792 31088796 748247942 900785546 897245071 845665876 86792381 401830730 744706992 315068386 339925600 787979285 930340546 969369909 627229894 527006215 222204805 903304496 270636130 131977294 936053292 578713084 890291885 827579583 929297723 752941818 757607955 267158783 761972938 787029453 638737681 872296273 746671133 106020930 961427867 814630300 965319440 861555022 796460765 491536390 697972849 961300978 554445196 838998534 878183776 546270844 187326302 819191939 475986875 922864246 985585254 948290480 267307394 945267015 805391740 97472698 756375065 766489677 510536238 737020247 76143774 212530506 314588087 803033744 726957301 794411309 917747499 79187710 775759084 720933194 156858856 970157123 927902368 300324931 970018668 729887200 851976943 739199662 450000391 348661662 726616030 928893961 625795213 651610901 823992778 822201420 882316315 658566003 340802203 937146317 453863108 781594529 998205303 193262739 841909865 799274097 841464100 35836723 768429455 701811858 207850852 218768071 660340090 781101239 945356650 825757486 135316513 560822159 579630479 742231462 134407691 60280611 852798858 31553221 913426441 544360566 882964008 995469982 849658540 911333021 903657499 916580716 815064505 865953389 514196074 880808099 966874126 749250649 948302176 876499599 883072685 746822423 824047527 940866919 483801458 847660801 91290327 794875310 993690800 911063432 710616653 505670497 646607585 47653775 616390271 212626748 811435541 633921406 586533273 534175500 377463529 885949052 758014205 755166573 156511771 889697664 495118836 73296488 447130359 748433545 791576151 960312308 315978325 852387149 931723556 958993498 931012085 617083903 882061634 329208884 833706288 432008009 760942665 454365417 559709084 715348835 805783072 850235176 516864164 637846248 891755649 660488930 451852779 841424304 780705413 168441868 486633981 884300168 184342634 542855065 168366162 834672007 340145398 191709765 265775446 151814074 813378780 282827979 893497478 950257985 704786399 956363409 330001859 757888154 841870700 929423617 312522995 68570847 852915987 843132225 856887927 626297663 344928978 663132251 884323319 952823279 762439878 802757189 94860162 264723452 905053721 122052702 168560937 19114783 792178496 812908776 782505659 819831214 723167248 825407701 835726680 519954970 556702014 798519959 382155746 68032759 893265700 255932038 376179171 731043996 16987484 712560427 738476971 39025522 882348793 915466393 910687369 918282549 764125711 49872049 138564802 152249078 912503583 103693191 956716283 1308626 3565203 863021631 798071234 773311177 445628148 772143455 356059752 896868638 772653451 328004246 822212015 462009185 907555107 333456756 517794747 615666314 643727800 429460330 49029258 238717310 305000071 909022618 961909259 193966248 572317534 147767998 942541729 662703062 432913882 430372117 919507160 614939188 919520117 690305721 559889928 337384516 481955793 946263258 111892976 932736422 761005469 352271615 582055167 781245894 854973257 270478196 821930524 865722215 938927531 21620427 566441242 333980481 225991990 357578605 738790452 629327471 418496509 290629426 149695684 157734190 905610910 269084268 968394929 723266699 919146107 447975450 139002639 711319717 665004379 242236047 958334300 838223867 728487843 57253724 749861310 479248264 885513935 865014889 760483033 823668726 869335665 148119513 331180160 993048586 837546187 635106491 46708448 749589583 342287232 931675608 786305131 953634674 110368367 782507816 737093550 76818058 115545645 782157481 613166231 975557326 168121479 899875178 963341458 791487633 756751684 865161406 39925633 611657291 851985887 456629113 866610464 795399780 9034453 914746291 783732252 950649672 892524055 968512825 249569098 709078470 762919367 897618890 745817102 995260293 585268032 884904924 788684796 955665272 742767816 861118732 131904873 832615932 971337377 867285861 964446945 1132083 210468790 935640443 208344056 828774152 831208076 813821223 693023354 560366071 56265009 974468992 919665482 915196592 889654893 787420027 755170500 815077772 945120780 254793688 752790451 734132728 113423899 871952377 584135799 766370411 614713901 696621533 119625241 285081565 830302438 923728730 617149351 709789259 179574969 901373557 137108820 305517380 833299498 876339076 786671972 477960812 859381663 471617247 720915306 888119918 926197423 983758451 54502358 34655006 436872568 830233971 124409446 358386376 324455459 140873208 285758562 948191794 805294157 904861324 771638164 387911876 985183466 725147209 956829584 991826618 682856596 229322499 770760901 796807104 671596747 966811081 887370787 690564099 897120832 773523441 553690384 114608000 776847037 162567309 831657570 963604142 803214154 747694656 855666669 769311421 848236255 838364140 426142763 945008325 709922052 66800357 373830260 221438202 757439442 406961642 807921261 699266635 739853573 988166015 55559578 740140281 712183498 793018193 76459051 391964750 935528435 302951318 970471738 930271948 773195098 465895839 883100606 265031176 834169245 874053173 809091700 961331597 299502565 155821370 940797083 988862858 851705746 924211028 484995407 926670469 484590433 508400751 246848856 707131325 812941836 832053827 51788042 22377002 687281990 206867735 169512337 72930027 633385002 825730263 943668889 590483188 211011333 724971628 531098965 649425830 823572118 967264232 593874484 474047885 827281484 200151402 835063067 824966122 868719450 897055206 831071530 522059085 774772337 931844375 991005016 149097778 751507396 986714128 413724472 212181646 995599301 832443321 778793516 595668717 218469356 138600430 161981373 351958583 85772228 924522912 580658971 800259274 882659251 54201436 262902302 787038068 437065631 140809235 441872481 433889935 811347956 947834774 66902064 357772836 289344411 964970377 501150173 998959101 979600241 16816122 146550083 169509054 588477861 112195489 778548481 709116798 896147288 789410045 637200906 817551736 279174862 771052381 570245094 616790339 954175700 515266166 589139913 350188439 786576700 590014029 214941238 779366103 207899954 80415302 826308330 436219587 804984564 300958922 834046034 972866102 321808126 865012640 817665777 516803816 970323291 850714059 814366599 970357910 638752943 596544751 913018191 918925666 971098781 818717839 204599578 454278916 414999739 307031066 966721319 875366875 894334575 303428901 881017205 590274034 781675435 884897547 981823786 747680387 216823356 791421683 114846853 409161148 632708060 465485753 543856051 986574848 333666366 330446965 788658358 122394321 841556461 930216848 640657535 137925431 752953317 471402800 810124242 810928760 865865837 539517253 931267728 359963921 302022427 145891714 928640948 229716527 48075325 485335048 824288164 592261941 865915138 187245450 827878674 703681058 353927146 961879918 861920753 800152398 395837785 958139703 11085795 737199340 981830871 819443921 310253959 680512768 751846287 697048708 889750540 929245655 679296166 853316704 968078912 746643592 915591026 883834680 569110386 827050619 683921072 316179659 815486587 944002028 797710079 884314200 747099660 920054058 702691372 158477340 795477158 667926372 750266485 815641811 502927101 996291889 294806298 830750946 863439378 371432665 21602979 310231962 914279330 770573284 624846009 857292445 772063177 988769430 947288569 400393675 899934608 795319585 906257834 771113173 911896847 338025018 416718912 16399140 972481767 895283635 923681253 971930816 950072491 294240278 234297240 875022519 411520513 191476265 732080706 746187036 307482492 44272271 969633356 838006182 298720773 833790793 104726034 358719299 847591148 273652905 842877741 876003316 142354001 833295426 293821263 274829343 944781557 875311765 729675507 136615465 237172438 683756528 744261262 760286304 856626035 675563976 675944473 304586244 990422352 302309117 788937984 920596156 933501823 995913834 782020247 851455875 914504729 959047619 458204305 745619049 928147597 527161403 263897003 742721473 206109813 551080837 148264383 856565289 755136987 646717114 16037257 756973525 232621913 936894446 592699813 296662826 162219808 773756763 890729210 925867680 549990016 975575252 362020121 564288236 861618060 171290369 599642192 905694040 787338065 497972507 624214584 293841453 875700726 286070776 876756451 747005587 861067593 242039335 842395660 773794361 939245248 629649959 489587874 27811658 832300566 725468952 913339555 753533386 868258991 611970101 978634293 800909759 574555737 645670097 824025452 826572691 320306691 852172917 532835625 480370007 922574624 862012109 665290285 922236681 496445610 745185426 198619539 116797366 807661392 334238227 965401806 458394147 553881865 930532088 831270071 746606484 458040219 147386759 998355277 738014890 949323571 498358961 902518788 842822336 925363305 907621004 457062108 780386874 748615972 937216562 530379633 997444972 162075976 888825866 896357389 144220996 848687078 101472776 808302809 143158422 271087210 893220999 75414911 609427539 752483965 999232442 570743953 879186408 676504650 393048700 672942202 807612743 967110735 842715568 455532522 590030612 314393361 230868373 907785611 398265190 862932146 526327756 944017730 951635284 925238185 110080727 807944253 578471307 985210569 891397138 340310483 877000303 977387544 972644399 152137948 765359348 365256078 981609918 953306436 249789344 890523519 179015644 878330834 793791039 720089882 896719148 845732214 991309274 335960506 632549653 267631452 592881415 837288244 62013042 433036204 858997942 461259905 179816917 793349902 309931515 998757870 996782259 475516023 829058109 328642517 101208942 13809794 34692270 260719738 237195129 261348800 144599901 772289310 647316719 559785132 795764429 286622537 848550867 538822846 803729705 412976900 785408044 412465847 921649552 758755122 924378484 877315626 103599722 619714364 100982124 930174960 808001717 358574132 957690739 955159303 174396117 664308270 539748626 71026147 996629588 768232124 923135748 14941968 787667721 808768408 230048924 760729368 859396339 695277015 363112987 843408827 30451069 593561283 761627878 559626410 137319001 917925023 395462387 709861786 841143263 772015711 6819946 774936941 686498508 220061948 747098348 201583122 684851605 971085174 880684108 729788673 221999031 970255897 129132800 113664378 241175853 796487634 380528361 849189724 777185242 753927402 434929834 750576981 836703577 936517289 968360455 108546629 885078560 760822708 581415096 849693724 810150863 989111434 895237175 990275538 632266946 931150687 880205715 97198961 832008728 263545489 963350712 940014104 937774481 940722542 985134761 877159796 839016527 877738376 951705581 879118999 954002242 775901839 536404383 746698702 274622511 661460256 456264226 887226476 91669123 870419702 774725292 276772928 506698259 331598561 837758789 823012194 516585926 675496775 823626818 332888036 147503080 460297945 839222611 786192109 990995717 248279756 427645220 281893063 414300093 965980009 677006447 515809437 909111378 936759849 749912198 617338667 68344900 845440010 508619841 71245626 953009673 821861687 796594869 751409237 741448986 852365300 398585367 189412400 400489378 92836825 648070659 472244992 332702949 833861692 449993947 16769282 857901507 764380089 385206816 818949000 952410938 37919565 191485272 777658620 853698341 797021595 161239433 894928851 264813227 43178771 898578854 583526250 580783015 12651161 607937562 127194238 761216484 876819449 698826943 778164299 821007882 768260683 473295702 549630315 448256631 775114070 825347707 832890264 767489241 743263931 299667362 852104993 990238965 749284169 126706269 293803581 979656867 50904869 397408348 711554256 8375910 543728999 518285004 959762006 406759830 181241987 890545801 71670732 888109835 964841582 872550267 280787547 903638047 730153205 639493454 586372701 930425474 468242230 812305715 305597718 447828090 893174026 300195818 865770870 932199174 888052193 968683290 927300663 913686734 448095354 252980259 283665062 866025595 910301882 110766954 522942070 597934280 674446287 933782314 167573733 233711887 752190694 931793533 998207031 841678303 894841977 741603261 640998880 589917401 923282917 401021922 401576243 198773095 840002122 810109428 969840012 48416442 497424623 967866135 80855395 881238252 865019201 827684861 108483661 33141521 59910955 520917736 556291391 250839810 139909091 903595693 791421646 592733487 821078275 828230236 811889264 264958209 287756708 38430138 741009202 16679695 862304653 930396795 506746128 273378520 763618514 903453297 406954168 1938858 524421908 739105439 742859692 844975564 540311961 879577851 925110972 938668161 988530801 210006640 864775614 169953873 403662753 435571077 628488022 775649650 429934735 383463690 688196053 789919303 321372179 640219709 765851536 224654909 876818307 314759458 701970325 845133155 961995030 653092383 518943177 288639980 84178290 789681831 3797302 227447983 962339572 847784132 404675583 396282590 803739259 938338343 194351305 783930872 741198511 907900741 153071579 553885965 995790167 91035439 629277414 540475200 480685258 682265349 238213507 314100366 787564428 88052139 64749940 958534999 926820456 326130419 231978783 766205720 445994223 15807836 313954607 814313429 775593389 671452468 576213511 973929919 91648969 974402242 112862267 487766747 737562546 447035633 417383869 925627753 561164111 835189313 940681201 744751348 199842583 12769652 848199367 846095269 82256982 749787431 776837145 504361856 578857831 169996638 478749050 468398567 670240940 912465921 995787658 963751791 981007931 900188514 818202197 282581553 250846925 865745043 901365457 235185522 144252093 570374944 984545285 417318773 845350004 933163718 924454574 995818532 35542780 589320481 347777654 480999005 798379696 815776182 898857596 56026544 88207525 920603001 816782604 810381578 661682641 549380220 153250732 827602432 793444441 558254370 897240202 379892689 714291437 411866604 828158085 937989436 284147633 182055632 122938685 140616323 986935096 790604673 922851592 688223419 940289338 175252166 928330274 315212727 948162023 277323035 407847454 999256924 676824722 783972500 767140626 1400962 754886275 871427586 866848843 891203867 796808900 252547344 474371096 877189806 818103081 944383315 845216643 632289220 829856143 120112094 968544647 856806208 379210600 513776804 29635230 87190106 785828324 641366803 807580248 831972435 833639253 798512296 865299652 513381581 867728734 647472354 902558688 760801779 821477857 803561243 878251219 617488844 996294130 799116264 938725542 583571400 928198759 44492709 317586071 770968859 451495768 699690129 73454714 752488387 218713750 788039450 360085135 482612030 956939160 986373415 466228179 636227370 357005092 795482705 488567956 850948086 601397834 995148354 98562025 334859478 752377095 759960444 768967954 721372499 923663320 195441432 44917281 843882370 826244831 590956650 276256873 94740483 965606177 917414262 647089118 98089685 537051702 9048936 958211529 701695098 823133496 630905936 201462338 91618610 56515726 318241948 408464914 219155878 220294989 781168459 786873703 535610137 49291075 736119388 891347427 890364834 468430792 192498381 997487855 257763604 540977720 728492270 245436104 749370507 928668084 917684048 110940322 226194168 167254257 125295236 269712085 476278715 26805592 698620846 938336747 668239510 251423812 39788194 149870595 810986506 218026151 833841281 839888613 914790032 819601550 900403513 526884266 344901865 856053050 807076719 884373309 758596718 941478735 155839364 742919236 360335714 107870310 978459369 182112127 42000820 915644515 271336253 914842140 179433044 790088422 399692357 128418299 169953092 453118607 27587768 528242430 827218045 618315087 837655744 345570055 863192826 830203424 103442797 772916493 264327042 89797960 32529761 819181645 428178157 68725944 39081159 762779716 896932991 420119693 795699231 642575620 262894684 450272911 806543546 960333573 982424676 935487134 373363625 76510088 640250079 793225086 985584315 268407630 953314167 629935026 438178975 51858768 119663021 55414996 41768798 39370892 823145096 977980964 933932192 856179552 528782950 672317840 817708705 835529348 640297156 927325910 541518674 945977051 864235896 422671336 904645762 423463803 588868339 159153265 248212275 602040008 137204960 687888492 852335874 866590807 98964305 111224021 256995082 688388302 925098086 742387650 877602924 817764869 789509447 839681375 883524757 608805083 26223755 467351531 505068076 487568842 645756859 173056927 219854710 960893314 951553208 896407709 277355067 453776500 988878293 374580230 51305767 737020247 880005747 737020247 968152948 367820307 926829944 981986803 278621016 237359192 411451672 831231778 773752396 690980257 939594199 960899266 122863695 445506665 952289155 718125967 986206899 793555483 803512415 993744811 897519784 961854732 288551647 712224712 353628484 840586255 900757206 942698229 251571708 466612396 90406485 139490579 655987278 7693158 769078263 36172112 862959775 445058646 774554676 858665778 451286355 271643686 969240951 303703821 166424618 223753410 364228427 177371280 450637363 344866702 339784795 106967481 776644966 683843104 87163204 966331396 976080329 824024972 329294581 755801818 391128226 862729602 452278614 882099255 998665502 755105517 965973896 825442944 854552530 800358884 201527384 128751818 860858394 855470860 270095954 427484433 385665167 288805470 147174811 151670511 822019244 326421442 810337882 663401195 662701659 780179444 179270196 889201934 773513710 707641878 942880977 750431769 227223551 898015401 272006210 591315374 818142319 878822119 987777758 496383399 271253900 201068259 840896565 728443888 186075369 925126904 830729694 810970159 162907937 647059066 306000983 477344070 913667265 922648809 846608636 960751752 207029221 823769271 889763526 517721157 737020247 482706497 869115319 814213801 742925375 412549474 871457293 751961000 976969176 42185735 273629655 590674344 763586611 800827311 871904772 836250142 109912911 779379605 810320648 997125649 396320667 722713131 976897579 519350765 994252274 490223367 97643774 966780958 852218594 906168485 906558318 261089705 451987106 6036263 808598213 969852383 408908557 551603431 316781591 76809710 48282915 856472895 824961536 103256049 922751488 588694112 119887954 939144936 214012658 650339862 553853145 328008715 799116987 763701678 496652984 34669855 740815345 408940732 739072162 480555686 348601407 782006665 967973576 890318967 906074400 628284392 648353963 636233795 722223550 909143966 876692597 957123354 83053179 806206970 699082672 881543466 256723803 83236346 724869511 977838239 800618414 755461998 837111277 30223129 446837088 980089925 911346788 650975709 349451599 905569739 806103671 488422036 800935744 823832834 462849616 574942615 322211252 876800884 591577256 948230548 753287787 931754208 789932199 241114348 638353130 976885456 858706948 638414865 755238395 896600467 789231226 403718672 873133278 742927922 318223900 779036466 332601176 312787064 959409187 940213692 86343758 131536997 331763237 538806772 840943964 894622422 501900511 239670675 155361176 440936777 229342641 583604316 579742306 799787754 777082324 66559709 361364178 905301692 566346844 452632588 88605234 260827828 797576023 840960585 423406945 977506804 457497528 891787343 983303200 347578460 153537238 293903127 245314869 219861045 982459761 206003499 760255532 187149933 813146467 788388458 296343996 403838400 828848809 849817362 581107742 905037759 863256338 457054985 798316136 925047792 731785080 419995331 938261903 932090278 843869277 539389425 811937218 286581438 344302860 271786515 117641251 944454371 77025820 768327215 244473071 569144550 532325061 802605193 56003105 277833923 896051433 892426357 856728600 489276589 761407109 250908712 742947885 78523436 814468739 500739494 393172066 670834490 616527349 361053965 946116825 77024506 965368866 656069666 901193862 42042771 877910123 985649480 920471444 358232961 909388162 843470410 763022392 213044393 901632494 239446059 907503161 793996707 127453601 776394458 29823616 834762184 797061907 574884460 917728709 926690265 671900844 650518567 481798754 791235750 63523761 901894818 805633427 386592100 215561633 346167029 795723877 186028633 367608291 837126581 111525461 919559094 918476954 785010611 536067351 79695649 765483551 477377598 279566501 740968239 290711449 560091233 81032902 913981081 890137316 896395857 393584546 958745133 112844746 506439490 685352386 563606183 754980147 349096488 22227862 809119054 51121448 939823945 951513363 548514544 955795155 831322749 52199009 65810049 345498544 644811108 408432129 848437455 741797661 209748476 298135705 910995035 992301522 980900044 938257050 280899142 846945127 367907707 835677955 866887957 902779581 290775036 561964147 135767078 361802256 285592003 509745136 370958460 101947760 901941473 724416679 725513435 31972002 210470898 902035683 290790079 994865443 721159843 420285236 755133428 683128801 72090301 672301513 343547318 938823899 320568680 948630608 804097641 309841335 990902488 904498771 814789383 748486709 902688380 818918370 29320670 826929105 756383709 976548352 135590545 898815103 159363592 962473439 41600705 87665131 934169375 106233203 957894618 803585923 279637173 299723749 963276399 908911004 79755013 997019791 231497320 937001050 521109957 830060933 962649985 805664390 192843129 232374438 821821292 802551802 935607785 119276462 995224635 25350233 656646823 942394565 850530547 909244254 982437844 373555296 766534533 272445022 356473818 233312745 324661481 174444728 499453366 953680438 265745423 698614573 811311358 955365600 810506689 4001114 772968181 866816991 671171382 314019869 36610834 789637889 840558214 851005146 290250201 925109796 797380320 769825804 495275144 803547854 356249086 278530899 935932452 448776572 510477180 664059666 615651885 757641591 810357256 568586088 843553484 806523683 296423821 695102959 677914273 579444158 401137510 16705692 585314207 203680240 870667437 865834968 779265306 534520203 966078838 812232193 840486210 385645618 694678783 18742689 991625217 424167552 682902643 290299814 417054780 825717201 899517254 34733353 191003170 116993606 987540386 687348314 182120742 229910881 93821758 530701593 341758702 189323677 898063496 316060287 752537018 849878507 607722728 994310046 90693505 935501703 547791709 976139380 122881205 164962214 953327102 952862696 814038940 978464328 624728193 88209008 893363914 398414262 318932766 752320323 795305523 364149836 603185505 252969733 58143468 955154627 967801295 925487753 195454027 777706216 731308747 653322931 491390516 233228862 110734715 831479039 880162245 813524850 535614993 972712797 903443995 944931561 646639243 151619736 102877094 351232478 990928794 642886421 883174131 911307798 519109521 999819912 964147720 266536766 986223924 122123642 47800487 797176959 495484154 402578739 892916633 205235149 150161257 982278674 590399886 839012011 193886341 351541700 198742881 841081622 935044269 348057723 339532232 260538027 516800278 232496230 809699566 325628618 68495225 916075919 770294251 445766966 855586995 782830761 982713505 631961232 973690387 887883910 136916403 815134332 882970260 155788490 387777181 831565749 797681023 911858546 490627286 148688903 950336274 338715967 909284747 21594058 32357470 732238328 168622983 425678322 376100869 891168890 975071439 806283591 204182261 785095637 736835432 800693695 984532609 245434053 936235031 444480075 828008736 636707530 700468400 719109422 439002066 934649351 813067210 761180792 526867374 869067676 297400613 25153932 829842012 273790892 609736519 972838768 296802465 686691196 260328717 935570904 988196140 969121674 933759063 627977760 404571941 840976718 742276255 18208261 171626746 855714423 663786930 15393105 359639159 803991274 822918180 206533206 850545907 897151952 817727092 483057170 949865725 389411204 892384238 759101961 687938756 420458424 884428303 407783733 89260071 418824633 835475059 780835493 137185362 629518099 316627120 908737077 924499771 3329632 72429455 105946618 880904097 460923099 257542462 678173028 867239730 589782036 300854368 227935647 358498843 446005976 542879731 344346607 737020247 378048341 819468792 619803957 749202177 502400641 26500327 267415149 740114987 852951409 318769947 989508515 429609741 123133730 377592825 143000521 499966818 861122226 764290482 884983297 803638296 962904249 158596602 795472384 756330709 859493519 974307763 359465762 179624988 472409134 874631988 881426354 991586354 683331283 306989967 934522645 889420586 39871684 785939327 363924760 446961858 20123596 486540133 664372479 593644929 493422627 545059655 788232866 815830884 80572808 370287428 657233230 176780775 358643551 431600354 928997170 888036814 852036103 758858790 301050750 949551197 92776360 747910795 836623379 253233776 910459012 859951532 511340562 992009290 843573801 844289304 95257825 928674269 786102993 254354078 912119095 628948279 80563262 954062284 835372673 746717488 996353580 870262912 878683101 844119371 545354036 599966190 758607487 724438964 849640567 773665514 939074492 300828099 469595943 826729390 130550735 847544577 396269699 754468794 844612773 933605670 997369400 931324465 222111405 736186541 903608225 449342060 839917316 863628714 776582578 306273891 794686259 926177652 732980511 963563692 724873241 859849097 791417281 81549933 182049474 852199796 285702074 741501926 471617403 774327263 548517041 820784047 950146420 788467766 361768320 933776397 87245588 601768210 945288345 800077564 511769639 137988471 768193897 426770390 985381987 749824929 989502528 569703696 908668194 157193665 774511660 240527845 788826252 941123760 323715879 486730402 737236116 306255636 689723882 917387374 898360713 901637262 561920436 80483282 911610227 216621077 964712790 870207720 320850843 832716886 655386616 612653193 816125104 867886694 895298065 768723928 772268917 540916834 649884643 731421067 579678104 749740921 746912105 934600457 678332301 458102015 704225255 216018856 813316820 809004406 713539353 409822589 288406041 981328240 838458715 985603149 783054048 721768602 932084349 900095168 436653048 157349264 576216133 946948931 799041855 210954905 7950239 241524217 779348624 804639526 126340171 968396746 53684142 372512137 691520946 534397306 324685528 257740792 885755433 110362038 896666242 871910459 987604160 360414658 839350069 687322679 935018999 453863562 874510843 658368975 399090723 282652358 412041548 826596146 675187921 890032085 864021465 444113582 770156396 875013580 584532987 1734641 990220210 861121044 601835273 562441410 751034259 561013621 575563444 136763810 986998730 326871741 54666734 682891014 815848772 793761431 939308988 118082999 250427949 758267119 978825325 996504140 983631744 832333112 708389757 681436880 865256988 362161427 875346605 829075784 895925424 440703525 739872617 856005752 983338529 906177100 922901284 792204498 993431669 596401157 965861492 328787000 638605941 839613956 864337901 783634 159885578 766816095 798905032 384613015 841373122 906132144 335913421 624542435 965222469 604119477 693981962 390647934 794793956 847823487 538410211 853439319 775769522 920874429 589099697 235131952 904994267 782953637 903877443 821618852 905388764 285298105 750457169 871443195 907562752 688020590 894596917 362903358 328010973 813847444 559959177 742220242 986131789 672782577 765677215 420661266 386253557 360330606 783399542 825602219 874872268 459262955 598765889 96313181 20859216 966379258 798331418 832372007 414260311 359639743 597388330 655830901 281286624 789306449 720539267 95056329 509758697 285693539 984695576 685125404 871746681 979736952 783917748 878884319 309702283 704910070 272836711 927281013 148310425 307990142 723368825 246349056 152939961 200101751 971174182 32091101 624492051 344070434 807467477 930980127 851161855 755086146 640087746 828827871 325166278 933054728 780626660 834254270 545903697 8340606 354154781 352740361 532521853 914661768 681293000 46042868 862727188 842052480 967349818 436679899 791716789 897929188 733229639 771858265 118090947 264139216 524643645 894063481 594716096 586156674 618828412 304875431 623045518 248250919 806740537 738846971 834856129 805259601 855829807 766715897 748003333 330671387 557795084 135281478 45749553 840673510 820310179 130147437 325894228 797944700 952015328 860030862 292318109 416181057 312987386 181723644 343843416 785744856 339654574 956294431 972833229 939460357 967132537 95059447 491926675 834048714 375624427 849173655 738251031 754040949 374713660 154325770 662830228 282594705 36027066 271246517 746135393 813084956 741839075 999754981 527387043 967147912 681487718 882582068 486017339 837135591 904632657 114006967 964165810 807848470 826787723 173090611 913035703 769628004 893244333 992921047 817554198 318336101 489257671 885842251 46286856 451491091 316765084 811782222 633814480 638447408 805718437 544100247 96840502 901999377 834474829 472250329 739337770 795332297 772642620 910301801 980215691 494887104 984917030 424717558 775858723 779100175 857070626 906354100 751012683 91869853 882482693 991893683 24016316 457837514 993744054 902435587 789856800 768446542 977212023 900641053 299080898 964432873 682220558 896363138 845901562 772801454 117897232 837273369 704982227 621230524 171272350 962289792 672145855 212154224 784885003 461275403 904282752 816082941 990920856 975666572 399740278 809480521 825496011 974914336 962801604 301250889 192871245 912164869 973073173 905401613 759939960 356350119 965058324 839397046 614277743 122728734 947688961 848120253 365630628 550489854 878468404 960025253 548986504 444187149 911166658 894055834 317256254 985704522 79521049 984971471 351997262 99222936 315992442 138473402 310554872 926280924 46846018 757834625 972303768 827499200 559267535 645976016 660130147 847341219 909475401 861640159 114301910 184945258 387642551 267497573 723615744 882898166 721519675 165230532 117915067 509419483 250604218 198101925 475099762 140229053 904746063 950615772 768188973 807445812 809472958 903127185 620166381 970007344 367990661 81819341 318093563 452059846 941038295 914354395 843831793 696482446 497538259 744886713 145895620 715448316 959414928 973582096 809229235 437129570 812145786 146365136 805693460 246580668 486289964 835383022 858802660 942699196 390587522 255530166 845849799 432580776 982622280 445180967 416478414 394138578 931761994 883918007 615003465 736192072 774790008 880136876 495197331 257819776 740505450 798387392 918129886 163046412 803206493 760605891 314333045 948444357 50802164 233439508 919434212 89674586 634481121 473395759 976468218 133123964 589056940 896030380 924664195 1797077 737020247 971264837 422442012 778804089 138767956 971727394 995637560 204218641 150286042 895470607 775241676 203221094 862320685 783378638 879988608 270563603 892193970 855259390 937704015 632480167 733302117 777696442 777015331 368504085 985964650 37353284 960507318 418108203 748894040 85552938 666562798 783600209 796746709 832416070 332771267 774387443 859153078 903071236 272105991 112291432 630141627 887453730 154272355 785177926 156976789 422170777 213631365 789288568 449423512 293035368 653382139 901550052 705317286 592453000 9176727 4255988 939575574 888387256 99267980 914341537 506141852 526646737 941311120 902815474 650471007 967193212 866499944 292887414 878898693 295821201 11299196 114889887 527988200 987500063 631701171 978360405 899460754 1527315 727882631 106959648 682993744 138525334 910704721 775708404 344418495 505175774 871381570 464977745 806094349 563384369 779300293 840990391 751564139 232621916 849007456 213262466 781588897 796259571 847468916 854832499 590837704 581831724 952455782 973851963 944091828 144209194 559687372 264196715 778045380 351968823 517118807 979278401 945357544 688940527 850669972 907274164 881207903 987082417 237586416 272736807 310893998 956645065 958147971 791875570 192925085 999309100 203726384 587431639 888274354 776357322 784301324 903586614 451349961 168225358 624686490 338020350 312144490 816037127 141759179 850944589 218926643 898223080 825215943 991591816 503646020 947876519 916169840 11750760 344556573 805825025 634683363 670785473 968443738 918007906 934630544 567099326 743310894 784984316 221227791 858390460 812836433 285432506 496272574 895630489 841154664 870531775 879863301 490791319 905896462 593985671 267676641 637767201 825260891 518069947 633442720 912589112 933995685 990112009 234996041 707439207 885025729 198300464 6889641 786896517 907734071 626521672 767680441 423001922 862740409 779688124 213661029 124659568 781168499 826726881 748422813 853859132 228781105 919128737 792890817 783319902 677148419 572330806 821733495 941860659 713184321 56362760 508012605 983239397 590476567 19589195 880357070 618660475 765693776 753469340 939175839 851111593 829231586 56189877 792063384 254560738 427203778 462108710 932301993 836072418 918582954 991282803 879045721 115832554 444990251 587811321 754298411 980352957 104705588 284555005 502971919 919180679 930071035 197397109 903980027 836020326 759686963 873419513 906264087 26601086 969383390 617490908 803406723 588925630 908594294 965264727 945759751 20433969 898309457 915341311 710004408 627570083 986127613 589691293 753067256 989203766 721309821 892568661 903574334 917493056 931030899 805285628 621451471 506680447 823953801 919541375 781164218 859583527 835712036 993838494 724327215 706930735 688399869 519126443 768333859 196778880 901148034 738389702 811867559 319973642 310051637 774803190 994851523 289801566 638917912 743572939 752093467 675271429 181192204 755145822 915585773 725905610 408290716 760240538 278982902 484739266 755861945 899405633 972809985 810208558 957916352 987761945 754605445 959264602 374345222 474858161 969860718 929423111 629592006 979155171 882556592 673516800 954817752 855507024 908510447 953831543 907098256 802156044 36099037 396742872 916921275 320497451 830828048 284379882 765318539 874714334 949802683 673032843 775725356 776372261 840575202 783973444 772379734 657302854 755480490 837484214 659817330 40831597 643954232 624594041 293132839 778369842 817570551 632126272 618408801 512104994 24475803 766453309 199191710 984268207 751506117 186428018 715822326 226640926 746870935 810150156 239230775 909077809 789929521 24831752 813346567 917448441 682798533 380668406 341062576 854909739 469975602 889196977 656130249 979782927 191120427 899435086 472289441 835986564 42204493 174483451 875078236 239994260 864266851 502379573 509784324 208019103 110194358 269804540 912702297 655088130 888812086 155284569 882923015 287212670 830088981 420468767 173535904 424188729 336450619 62878795 837336464 280986991 979133361 65199169 808534408 425766028 906193652 862830800 888188646 862738094 866023652 531228909 771268730 142682942 688063569 898868155 67398738 841710124 810890923 997863494 912271524 740125859 852934440 807341140 682272998 253292007 809250121 480298801 782308764 950618899 771736503 855928269 922870913 652483577 723735538 450256411 978205763 809793596 964820896 870673315 971612613 822303329 513578570 972609113 754859650 645547640 162592228 399926012 892970692 467618025 849679015 408348608 893869596 819630923 439196201 638773552 435567753 51766567 452534040 957396513 736833317 887068951 777748450 913470785 816578271 367778626 467033591 693469956 199275194 998582930 80404982 690501393 906344687 73946011 667204261 776649446 687204260 928250061 857233891 660174571 249896873 904542217 8504575 945072398 111797614 357551078 754794728 982224610 740656417 970532892 290402815 436886338 922744435 953194238 339907687 763675952 44480582 894587170 347777190 875728004 106235387 409958842 797301615 574299134 390532856 309237274 916297376 732629943 578835873 176107192 526730458 630703159 789278221 812954338 211137232 892803481 495140146 785762795 880213844 907138072 990530616 977913281 238102852 469702855 93336758 747073440 821540452 764980308 119390169 423807098 741707337 839233001 354067346 831123939 107891992 861748042 636429283 742183408 952160122 864896082 865357085 793965186 858150326 414090899 983377349 140116284 953468447 814559763 871454276 641050507 519753213 797191019 14875229 418198837 883190286 847589807 609976740 781930357 417992317 162619015 93712368 664615298 28256846 934490993 146943151 846367046 806933396 646616731 996406679 746834799 887473673 987776899 748969994 865737172 253319147 156940809 844891497 927399199 758202388 873019855 557203337 36204582 488297068 890467030 511694659 92144162 394143671 743657477 321556471 776473146 385617931 491630450 674189580 93962425 282958590 997480869 655016474 879560312 623886063 901050324 260969506 967916779 63378652 978356010 845111140 429093452 948418382 808896054 813074547 37658865 809446491 852299921 339138802 65061923 601372926 973827266 941374858 738634051 849723724 190322353 912029324 816768957 510852984 792906780 854724999 404917728 768734884 708825900 901158672 23478644 83483640 954851751 721149699 965662646 187387976 454488533 791677558 541520837 991585184 320765629 506778332 234062945 904524008 292635667 185507352 298704585 155931599 742947890 799479851 815278303 164294921 372145865 875609554 585829556 9264861 23277304 989762954 855827522 295701750 662111899 163534678 968266062 247481204 119391317 903636359 39054909 761740396 891015409 870174118 708531193 685916400 990524562 517039468 839073495 712419817 755304916 872363657 572666467 968120843 583311654 958527202 716884879 836826628 861787043 621834400 838245442 333664722 408863862 362034891 677625789 383678450 667762840 478622479 672380122 809418574 339801622 7333600 865314104 811803688 698672400 498242481 628115964 783033202 731329212 844529083 850672020 638919534 939411511 759590407 432684713 622485741 835457840 757375651 862570648 907355496 224374523 455911856 373020588 869757300 827177177 510504886 78947353 485259869 928478545 537273057 779382090 861200128 862292882 972958365 979044724 478850178 829024350 940565154 903806545 884339861 700125973 520367848 942332513 805352644 653743488 679357597 374132860 933894570 475941369 159164302 622273313 529282705 718949730 971088230 566411819 93194052 627213625 820047891 945513611 328387421 811137963 765228472 909423608 344193961 783968027 338074551 85538751 207499742 840897266 874404935 929913123 24096782 748374700 867407336 443139734 956255954 739762938 771615830 651440168 621408432 417727555 695888268 942005589 749136598 990723657 944091650 968596063 955013091 846852865 744048742 56299284 796123369 138954612 827388213 685228248 748461311 774793527 190608881 773993773 913791018 523639445 826480412 634512085 312412051 411079868 495769131 785517669 948610968 738809374 921423031 980492916 916887849 488098245 997816331 744776156 853075691 337743018 338743269 779455040 743522872 919199365 696818320 646679577 838624038 693599070 889782893 691337473 857753735 90714935 204017635 6887486 289523708 23938170 747247267 840778041 489709284 761743447 849027028 916380969 953011659 975362468 356274553 197194072 895084935 638165422 601509512 693300008 657580104 255120528 612407342 938341076 708469436 795406501 731281386 585949060 640251980 930151565 785987470 892035551 477964944 845049458 826455263 891839144 785417278 183134302 93240930 783992415 897632589 291649575 374534806 944688085 435065124 843084204 525074137 233030631 454492928 832960306 536034180 220577829 201709104 572102049 518231135 993744365 152299940 689081138 840247304 862536462 771375484 991886300 957484646 517960004 383306797 531148821 24141151 468069205 50125759 610094539 847301319 81567697 444882181 952662540 970132713 373358661 737222194 111847828 797305539 858734670 971932418 426196461 391721216 432341978 832663330 898901251 193290951 996002309 951331729 766656300 390172569 918670138 212483881 602723963 796890286 801122701 253828627 841670702 219219416 805237318 645579354 196292833 885941632 26797804 883586821 982584123 114110643 758897204 532749801 994385782 78870232 739444710 505834463 429011420 874572158 249801243 695906803 284016753 890268143 12502674 237094234 834290424 943364496 984131163 768326133 774014941 947752072 810795168 862662425 341991993 922084671 995705975 854861856 21728307 680739501 812146323 111963967 747527366 866102391 191732803 874217031 421337266 757677712 913689347 514692743 253716747 668514397 789951639 575310720 725764778 739206367 942139536 800049352 397539900 907240078 340696881 834170274 905119937 215520040 447305097 865915903 768476405 596541108 910825958 387073944 759428237 899739100 841736934 659887868 828438189 335792663 157866378 117841743 988364732 737664082 770545620 961851102 888532118 954132315 211123158 891905944 896406606 972735478 355197568 929847235 136826664 307270689 324193799 325725279 908336892 762310160 181594160 633635970 307542289 134193670 779504343 742628826 232391046 366095402 973524193 999106064 943058444 278720499 646955678 917599362 586513767 773991565 478163920 111033478 179532648 537566840 603799548 544457477 418326366 864326722 548186974 106453289 781180122 950694212 190652088 707475462 444594472 786677204 961310464 159686484 864008987 969195131 479243372 356405307 928582522 280724039 829634672 262717532 325809335 202791843 871769896 763089725 838181540 79669941 280340201 873568208 874210472 643196174 714188765 846615279 191181506 927555136 890741023 907130988 892262160 672425689 964697635 252100321 220247988 878207234 851053746 75820196 535009140 580823538 747759749 752635811 767656946 877215381 654923646 772381331 878688936 87059542 733117461 803741102 22037478 924587106 536398026 876349904 955150562 987381676 974547268 748171907 849959443 415873637 284170772 308293283 7861845 122135496 607123915 614802695 976098734 995783551 373529853 317630521 784370592 629441520 264679394 205376281 739415742 808511857 934911904 531576653 129770235 560301285 584642027 804192157 194400234 510383521 766498745 390762804 519734520 375488835 924602658 234178051 801300676 572727369 824864454 309702353 931860567 417279077 26414185 771099715 841268705 875501528 737020247 835264222 771589495 948900826 479768046 226674109 916730587 895409529 509701435 818247031 757145314 886404539 627514627 884671738 362131852 737676975 973333994 225725024 975660468 863567730 383774023 193140341 140659726 776593612 727591427 765879765 806122121 79905010 996484287 806169319 344025331 797096523 38508819 762852120 870759948 883993311 100607023 816155366 357746118 800139711 56295518 884219706 54000358 922436615 755470872 751826248 940457884 783150343 738187484 951202113 226512608 328746337 775981104 137949946 235932668 69273622 6592062 263209605 941488487 145473100 335130376 92360846 240590515 6842097 924179588 461452523 3678991 972425367 695295055 880776741 194990651 72545412 843498078 569021550 428021766 839466179 421717353 87915423 793274445 897315632 848672015 880400493 94303035 201785990 450294777 931885346 814298743 931811957 625244683 972379808 769836294 888567040 745505668 386418782 91602375 838385989 499643954 947717342 570244049 957611744 782578686 707609093 828587441 215592277 834200414 773515894 424567877 864863654 963251915 961259998 651684196 835883872 861078688 38430523 3137713 301740936 727534576 595648639 865148623 824431139 690688602 600278760 217613180 503191133 827392366 622859993 748551241 344383795 212474876 111543115 737220533 71748772 662374094 297707950 550307766 945269889 74586778 548869384 996899885 774597520 779755279 831361674 771013755 520705659 815329350 790762265 383136544 103559163 691561473 544829235 209594395 991955475 994093743 571510882 15722214 513827679 80335816 415209282 923620337 974935873 179537659 530785307 776686206 827608858 414807408 972753701 167858787 920873825 944227685 888201405 221119752 927693491 139387651 916937271 183970662 709354708 938305128 824306697 230030231 970799354 661944061 349060163 624016179 911858580 664368701 971397078 219350249 963522984 95676002 330867689 981484550 629559796 854590818 505605404 815404770 913993373 633376400 806836384 905328553 820512740 999303357 207892513 46610412 236419931 413039619 216029522 726156408 958050337 147526200 763066013 798844255 390693888 581479366 431554046 463030274 996203276 598583650 422370829 654483438 818459797 514154382 876795267 395751656 726922482 591830643 763027778 774559475 2767425 796674000 661469256 797792635 510718342 970481725 822856464 829591528 841137122 63400050 933474734 919579193 855392479 168520368 475571170 758272567 581583074 825076072 991602253 376086408 814448754 136135532 844928536 133249060 155893002 622257442 8502694 18722372 997663929 347590571 856985227 186820074 135386965 963091675 891188738 901567122 754695041 668117424 804654030 805761934 915982501 902947329 397399908 937532251 607827270 944868167 200696526 755028983 554047988 55954407 607973529 390059668 759345154 737975857 738654105 614516816 854219105 978821209 621396506 266881348 693586968 141538388 599734548 970575794 947749978 591313842 988525322 280400001 989120376 989448626 72653199 930832085 925935945 767040909 400911580 843261380 974813818 475976337 895758350 638241516 909994783 746666869 427830068 960746334 391496464 805305468 993613183 904056644 194135725 896311076 978470548 456677424 351194501 202328160 850804117 994685149 985503283 784521374 797544498 663127806 292354589 663322893 494375520 538015201 733899889 806114540 406752397 977953347 793341468 586391216 542387370 822625159 919722475 776549791 860066190 742223817 903598136 339493901 917939093 726194540 442082993 478745969 799562115 796609234 575932082 55994607 245394168 899194951 990276322 843941283 964778570 936607489 792943244 792348458 58587196 43913850 712906730 131025078 726113927 747826951 896839387 226804975 943486462 291583642 369798470 780678182 425925793 963366699 535230791 852733787 283585533 859308484 917959783 50773988 869762060 908774205 331279885 141795109 837306981 413427022 560960058 840493838 591818894 889557073 758445372 816723965 739533283 916797891 833515134 926635928 356842317 993933245 762159172 953809616 910274644 922759678 585323956 223436669 912181798 823243961 927319017 722091930 75458285 415714692 821430419 276474224 961769599 271370422 190263364 493851978 190623990 492071654 832358280 63766447 341486301 448264566 884488083 842504110 937747505 462182927 302211036 813670376 798339180 546055567 267546529 773068879 543153241 202422130 213251820 321797606 12865504 684938334 822977838 547481008 886085472 924135744 866267825 978950381 897682891 915967426 734696229 989100716 463118073 844271393 846201016 669668903 795998641 947220035 812539722 751669850 688235768 864527626 964179094 998366999 806660961 994384374 737020247 921563853 778150310 392799888 158691373 752297305 789774721 850143053 352120825 55735560 707177502 928813896 471521842 87047550 598331431 917185421 769744854 147971513 997298080 4207859 450652896 468686061 911122917 780914171 917593132 980002929 238485595 284798904 859437057 145693225 624333861 690717473 611186657 391746493 863829091 617591192 20485031 578604030 921636884 155371922 673669996 915887602 313508685 343737055 956692738 172428052 630171471 956970019 867096906 745971101 715320638 81309467 752156660 987496168 42338257 190132128 282675170 962208290 939369572 906827057 796642220 714065395 891791875 850876922 808004496 718137074 22790830 122955136 875524501 163198772 669964010 389922675 73019860 452154755 872493809 481311861 632267969 930484923 817827144 385371454 333850720 883603987 887612894 876482906 927774385 238500505 365700041 894455970 553826362 805391231 937652410 862669702 300857270 933757215 339923513 942063228 916155941 952730418 484105193 422346459 966457701 78797922 598721745 876909239 909897480 753633823 409827394 760236158 947345229 614157264 878158184 487030502 796320479 389491987 264191251 891034113 390091697 853845159 280017637 50758205 577717768 800908701 459535323 769831167 866662548 602623892 980568020 620189665 479982089 508822922 740629051 792526853 837193956 629649208 946262631 963044633 527526204 641744553 357834954 908597373 165138145 29161360 182119885 859677368 986497852 984777979 969268417 983911936 879511740 230922187 463122170 547104839 915153290 588763109 790358346 20249927 659686558 10284571 515402943 858622562 581754835 428841371 421486806 252720280 296541693 10544618 938030630 617909872 857287894 581560402 737661911 62815653 905748821 915671423 318523559 838817387 936579169 629164013 930192653 475633647 530947496 833213200 979308939 909352623 37756894 364879567 140103822 855950985 161379980 899989739 866333413 890494667 61119929 257596293 879416784 721595117 515565435 404008312 549489160 837424223 810797374 438323194 729342912 313434640 677383214 522639915 464074537 917055771 895352644 614376045 965393178 953738920 7796418 221449909 409851329 956118830 219077237 14623989 610435846 149734702 857590872 62236151 528432569 430403262 593996365 755885864 803710403 436373535 641646355 840555895 842128485 288759997 792963914 138840279 798308973 528320264 978749659 402029418 750272006 154503576 610698641 823674542 512986772 934631581 912085460 241666025 233761540 149361439 789564525 991921839 105620502 967297549 710904946 952942700 301701643 588865007 870855471 428128969 867574935 801172546 19584246 650549066 504058022 770637012 872993648 796938981 476104599 793739403 205032415 738877070 878290036 900899215 748518587 115650869 999260624 830600926 737816150 266501359 1470198 934078455 941613537 813545961 722956259 493178193 859860796 385009206 775375999 430969658 539606672 911217726 117888063 205425265 377459530 570758681 798897895 874618917 950333797 884137165 844672940 949790342 990344571 692312817 794387219 272455771 989490590 899468719 880068928 918150599 541482270 254097140 784257210 129670430 952916129 898833250 289804104 744036281 199015992 525128442 631677710 5742150 157269028 346604782 89563976 856424110 549053636 807692551 392780721 962019915 850942263 786026063 382337968 983392250 998344264 528703094 282114880 716386230 218612467 894818941 912264345 665034570 203484415 162765608 990597649 779403563 475030361 552089418 935354660 130118945 639037646 902931852 92216275 978779943 87462717 848486251 257300519 198574350 233985989 782218466 482501498 994147368 377253452 575107551 816767996 745228699 757056153 964124393 846655597 124290622 188129337 127409749 708396640 659422646 166578425 885042227 998406523 808804169 875965012 592115030 917150565 109077586 577223734 813814131 558846604 636388593 385764019 430675887 825088830 197362741 347389813 884436540 548296861 217434185 746960362 171964298 798599250 997676572 948482340 783463785 764185495 995432903 553077755 997403629 593822973 119234796 234817791 944634298 964253784 786396806 976266882 999078414 577698082 711373720 254736545 975245791 145634315 891247589 814509188 538244300 396201815 838614832 578173798 740737783 130720113 915796827 964180703 978742635 992348393 419672668 965184923 899514797 365724008 664202066 976389525 442553019 308144495 954213952 620458901 948593903 794491273 845320842 400599683 184082440 60611134 473931103 802768243 157345239 694344170 725984999 712470270 800375357 897529364 822909744 155205448 814301213 683004759 496865373 997436368 434054824 925774249 527497665 289811433 408746488 987640192 155452181 321733424 966202918 825386304 913288952 326551790 934647295 751893487 269409914 6776020 863453533 357836096 946744935 261663299 816920894 584513246 628093153 779033855 894794350 967549275 524258858 688097376 49914768 886891419 960073471 691172301 796122228 389462845 485546909 399524428 171483289 761198288 8280882 875174391 997197436 853699644 432486519 258832956 829282949 36173492 840339546 800554263 825614455 17033579 560588374 379257781 870673890 466688430 497935132 707041758 294570049 803364493 503546368 991477265 944956256 833151033 166262758 841531503 985613820 460051747 206702155 805157349 470669907 68114291 697060603 774779793 416922703 810999558 450725551 983863822 886066012 860300612 868587880 881186419 793688063 535422391 841937643 848124834 840540426 500417798 630030696 118495650 255596086 577681822 907255253 103591060 230452949 768806127 754451022 749694957 920870513 146579745 761013940 769210015 355279912 789257682 873291134 972640389 890368232 784290354 857137307 181753667 893896288 57471300 870832390 230401577 957822971 63311859 595334688 971150105 400932205 113887945 968276790 905679642 684847284 909546444 743822950 829058307 823867778 5460300 336324794 737958152 332203111 951854350 114352405 743327799 799574695 430018760 596817107 407520243 445524563 420590030 664833925 969378552 191887079 417434607 188207646 833271779 131648349 879106329 560861574 791117559 881739065 295327035 540816236 986339562 827665564 924890073 860382969 779050324 912551478 683648207 859991150 713259597 866423376 778063726 802877105 269904446 759718712 77123409 657129030 857792332 834643861 504166489 920512375 922708090 916361114 4308095 792682851 978406622 918709082 982340323 395941668 741042742 194185490 772111077 85390395 122707800 191698987 754269235 892826395 348356752 923822641 429154363 913192248 795439240 311082088 187344371 988219401 978019112 712559836 160452386 777487539 164467184 972797360 855873020 699888261 909091844 785832484 834369765 368366580 785619527 351981735 537937638 617748861 352103403 3107903 756885641 272418191 728232905 606776601 867328460 71313572 244463393 666942295 242866265 939260028 179115779 838037503 642872082 4932137 504931923 39181864 981106122 845056837 874333626 958305668 124626516 774196804 191014567 288142222 291855948 815847002 803746572 297075456 912244997 928298777 844513067 942058307 437101048 655062241 670960541 300812545 556981446 876802227 861300277 903519394 99622486 797160462 812473865 827122141 937994734 396872332 824238086 582984942 865192525 904347922 919451549 437465836 720605140 26731968 436291164 196027628 939297289 893110874 750277409 767059098 278640033 898511660 264203385 672048778 637660997 890525736 260003462 771999701 75957835 561706027 190994268 114477817 721142892 870872209 826675357 76674872 724563289 634875517 542518417 944799654 779165531 822641066 871625187 826247095 898689174 777065494 310710817 373706601 884329358 632442347 701960977 180962009 876006612 147365233 637787488 969725410 218464167 11188758 991792887 327351220 844533120 783445488 513263597 520638912 866125964 744023438 965187349 400906035 797557759 876807646 964665301 560677116 957688625 453751907 895205216 792001421 628831142 319378699 472712482 970970555 192501794 787452751 874960901 954953457 624555756 785129193 784147815 548042070 851625054 386422147 726380359 96243932 831695538 858909362 916154631 941348462 840467750 602897432 241521824 864099780 926482241 549398595 625901439 785219391 598406549 951780116 830625188 923494573 968183906 977848273 882938987 55176387 918193357 944381576 41695910 797524872 950956147 842141907 305133205 880501777 996884638 785466422 762849510 390689027 757260003 528668163 448668336 815610901 441204185 595873848 949404936 597612815 215679363 898164823 686498213 163579337 166892328 755641666 880710807 258516850 935549875 964902389 433164293 257235801 838092698 720646966 872670020 827278936 216812975 430469428 575100782 445342008 741939818 354038495 916867593 193360891 971147107 946258040 422628053 910210302 818159637 866546494 677699636 640313958 756533077 816582161 387116193 985896880 227090584 304604795 982405823 817534946 796685464 17751366 943274975 808901270 771951506 71289798 773469009 975278343 936388124 368067018 195952037 996293582 295827716 16147446 26632381 29071658 500565845 780518886 629198114 819284514 733475257 730488680 882089758 975518955 773176922 689256944 761131793 442889413 417455348 119728566 876824849 518208055 949915490 545825576 555764570 502039108 759708862 839034166 833033228 880548931 98606786 294856977 759026148 540835227 974175032 812354304 910956228 911983486 829485958 934976759 764880478 930546461 981104017 989462848 675666071 761357991 999647555 945557273 529596742 60653887 739213850 144100006 85584491 570868591 778825898 746746291 417025214 764286441 420311351 67110380 802268766 771228590 389948506 685635598 680609436 378169352 615356101 428350610 70316164 896368162 322741622 219137848 874784175 811414504 751521018 934486846 223354541 536784039 350016790 412235226 378243889 796473226 409597989 816142295 64768699 68689050 458794995 357338482 930205839 332248816 777768678 969726323 378565721 287943999 729539187 247672052 831817727 335232260 529905653 963137155 599961588 255596190 742822657 428511567 222670981 945722634 935330586 922225574 306129481 906846785 860853449 864245831 793416661 914073412 740293681 763875581 790847198 669066216 568510839 308212790 167205254 694773585 362194403 539233876 833937127 849552247 285385207 454226081 395134896 391724072 186020535 966835259 991353709 916043380 152653458 907126571 42800234 774322310 984348086 719177087 773616117 607605023 922859150 895073599 555326742 940942200 933245213 551146781 122505413 169934848 744932955 703656551 828187405 894578710 838963959 436090492 359683071 387637377 922687693 60095493 771308040 495308157 432859697 397608985 167562174 508208160 525081705 40111310 863712856 718020059 848195512 136785343 978804492 82017502 872025204 990877149 798528311 628477304 426840387 294562029 965379509 825817977 295957340 380585534 960011659 957823216 980475912 860360975 794756080 766647741 923284711 326221262 599428469 258334110 860283639 738043064 862829869 39304672 794833163 271820491 909716854 956605988 528682926 957479382 957429428 795287100 146857210 912309067 916681673 746396526 226935976 753916655 48367944 118879611 932997974 958242845 872868995 907659481 450489820 815036520 814014950 663496743 828953064 804311986 874471437 969151365 302145116 932575653 810566788 637816204 174897295 848121102 524507066 896608862 877765914 795004701 716343655 989975890 636786731 987534602 697177589 604459967 973793721 229646432 844025666 672083054 911407172 971319528 931822043 957610200 992871250 188692783 627442666 347019522 649868706 552252459 838295626 849560622 353552918 834717719 818441196 918043425 513021095 879693532 287208153 194067390 911396727 249323518 695228620 211783544 790325393 343980634 213905317 518008339 783111640 946629552 698214114 173199063 144175678 833031496 100114265 468856883 966609225 852376652 858372436 976282541 96029543 581617159 305001318 906415016 892782334 355386631 807565678 967420610 659560102 111488250 777204142 879502957 30585964 704367105 743329254 787505568 927634453 349529290 907096781 808100183 34658785 139805867 878594442 670397350 754018593 159205445 872125504 224859813 919364799 914533957 814465582 771651894 445558209 808357778 285806346 479977589 848055968 781250580 120665594 749562788 363093230 188664736 977649322 359287771 446155271 923196285 751272794 337997313 904893713 370005741 216723791 145804435 654264491 894108242 775767254 404633728 718595438 158441102 989523303 358206795 234869382 858286582 939385986 420835281 843150275 760910186 905888645 785896800 557523024 513741496 6671463 998281317 247018731 940331541 489570777 832593637 729122821 808127062 358097879 554144942 828627039 975253765 525145477 451799676 744097225 723148795 76736493 836349570 814428043 181892656 256839639 896241867 40137846 815039693 909588845 217140392 308833646 580036927 116227855 680647830 911772048 737020247 384970774 802162048 961572164 906015848 563476851 977489090 841352441 378622856 977002492 749247023 92103029 976900152 873687990 846168918 310477352 898614412 528174401 790821631 961988230 744571044 670565083 596037321 963864973 762559354 266630809 961942450 384382163 917602331 771625014 537352085 312913190 3781502 253611651 381196331 854510098 5711305 403924160 869997140 21360968 90603898 769407761 920964395 849499412 769451764 739098256 989039669 435787971 678607160 549332561 128464512 215272202 906461341 863199600 946083750 996064470 953259513 935898363 998383175 755850382 567310105 727999217 905597828 919711059 835465318 458606086 6660318 737729249 695906559 863349372 971991170 958076245 571449619 292140634 781444022 40001395 618426396 658577677 824890171 9698042 468627104 194906463 930133699 72855596 950315409 906612206 810709529 429830997 765583433 492408544 855318642 959054953 603000744 621211076 918498515 939772049 989551420 837699540 18510672 370470857 974192861 947777623 757772892 999106607 741995760 853594754 867272405 831162132 600262393 597550989 928317951 212092458 935138810 314299466 449540516 850941449 795733584 764930360 868003950 105046144 584736644 812953095 762643962 926261694 975372462 154318090 917356693 387195329 975039143 966010722 857116525 990517191 918930117 256352348 935690108 975651164 644527785 621098809 950644617 791347448 803945259 617951436 760044013 294140862 12572146 862249241 18484960 808952716 732952912 253675187 972083461 743918914 940923747 705698314 867295500 364156433 993572183 782193756 796578073 793540883 705578528 559952298 484295672 902519018 113845690 975778650 178622054 735427978 555421403 137587647 385781212 122624160 860137548 812401600 701785600 751547369 560844073 510222789 826528884 491905800 924729278 899191596 800149938 992999804 740713559 161752511 986933605 956320078 648741778 969807939 803107311 212280436 944761136 972111986 786252861 839340648 583879556 798166592 872699095 391177051 894351839 771628116 776423890 869393218 445419630 927358474 823725744 654831663 912665693 364846623 420253846 772732795 461935153 422430459 779946981 769448756 634532746 199523754 798379620 569371164 784807450 432060646 965462736 393685836 580038955 798956857 883347004 72734738 122806355 881774225 809426819 932630366 242139618 816606965 56013328 816974706 5133782 698876233 794520587 981302581 822730370 557868999 524151931 229579536 277667239 199663976 971907541 377775410 60205193 894771372 15349436 794845945 446198126 753518901 558171591 970353148 937638054 992933409 944415544 440071885 988256708 117374649 579914560 947752476 872310008 690254918 559924207 620968083 554085319 465353509 999674020 437297463 944715704 737239471 943151821 129543374 825305780 939548436 446459192 829314124 881116613 952178150 508947566 624984447 679546050 460506522 625655251 359714814 649275585 967509562 913028251 171397785 531938874 806620310 532613741 926174384 964515973 8448126 323112439 809338261 786283283 105097414 732645522 791417129 872290069 722342458 770053106 967125559 270176264 791341825 79321347 857166054 743568663 115938991 162333082 779161755 666232941 906884553 818901747 737020247 568828666 422859954 769230592 355462554 532249452 952783615 195760634 430671371 830510383 874910579 811553158 621571540 824966121 722361623 930402242 982247039 748990860 5966823 78992937 253363922 337209802 842992532 882090116 133227731 557887286 429570626 892160014 825914651 855399462 492233118 816994658 858595926 235112247 312906631 216654791 145612377 970761967 922275654 276213619 892865758 442404099 436504175 882111505 778541609 993255135 848149565 516528414 696627754 532041596 737020247 899882251 307489816 742368127 832206756 622020240 807723535 869625694 595698056 89040944 717417310 930548387 786833349 703373114 815048603 255660366 761926599 79201427 757165963 34241853 172843824 834995325 714955052 425333791 876742927 109297599 698419103 820579033 609684639 430372512 124120829 902662195 340787826 799022315 470503526 604464148 116457095 407492799 2496225 628250428 730262721 382057170 811155398 823395623 375884779 226514664 832163301 858416728 283361694 267032503 40481539 992317670 101215521 475122345 514030901 760399933 901805139 932323430 601492486 845899711 775984476 973831073 550138172 125212524 963870553 746261376 103033998 928023155 164904240 661858572 955585122 720457041 207960662 894151661 778199734 130881954 291248997 159680023 689482384 306094570 705390926 547044551 562998436 899489915 997502041 817006977 423044158 860911520 423261367 461291821 64533600 907174079 863078416 814473597 931715525 993715732 749725899 792372903 33292032 990564997 123380332 868721951 390601294 191061267 808182145 867582493 363931465 849610142 463838998 576187930 889678773 213595978 611987260 445446349 898172891 125680349 898318216 945187588 500192795 752108326 949631473 486945625 880451201 625849885 952326432 861902026 912831407 14507394 807596700 260754642 823917434 742988721 895078509 818642922 947804411 733311661 973038565 118846174 447209222 326213523 232377978 974158793 926268662 476848689 369989598 269189976 842927049 663411153 786933868 602062863 942921826 377422655 344941752 536021381 802862799 725960817 61226849 762096684 782427402 877602322 810469141 528127479 612715394 513270629 664090066 276260789 137882617 815066211 248495855 992251117 569398494 418289559 875263375 737020247 102948372 35588516 811720979 339137094 775927659 52719019 722281876 725360064 272521203 333158761 933289053 112706932 556138515 466923881 751571224 379144819 173333742 249321949 307771839 821071292 612693875 33649167 757292991 518774545 978470760 779546879 760261591 740133115 874245201 358928845 942029838 671409239 190646408 554231879 787812201 852585569 943052085 918106803 236656151 789855111 258187251 660297255 276996944 914735974 868372755 791216764 447630161 703374180 791898824 720470360 857030474 918207601 753561231 816103700 821139234 797324650 484514557 948278870 813872073 336171469 832655696 809019362 937964789 206937175 573147293 883101313 858387315 95976933 479391274 202254741 929486755 943505858 839616131 139583217 162104949 993809502 765328862 807206935 629020051 985179519 748360805 616077086 565438398 906303289 926950771 888307756 866188215 361355734 653213847 997572013 766596968 482369052 839507906 17082058 850026790 534952690 172216317 954071190 763794634 509942706 888484272 763113752 994016899 135039870 441068794 283711044 566008385 686834948 945282268 450436049 780101314 477306259 215712568 436593776 981764869 595521929 824977121 407607104 775819781 573356434 996954871 342162747 743818165 942598948 246335027 461600070 445884605 71388075 919841740 494331258 871618334 972101805 750989452 171065574 28241743 845519104 430614450 342050792 736859216 126464387 474893982 492552983 758426165 863914621 247520570 104707648 331448342 894696415 203541302 947396895 32784928 421751916 573851058 317789942 299434513 676766549 700418321 880855923 35497812 321819905 824143861 767473340 61522160 781210252 500262976 998749431 828168662 445775985 717988316 999586975 796249226 167567879 271723930 636532318 987081466 293866653 944157755 968347000 741281590 873967589 511901512 564984082 868862709 794061572 535785261 476593112 861715780 577568951 969436365 983924010 418337919 808864616 92265840 986454075 750462764 756923043 903447417 753280877 992168061 673209704 570097386 707916949 746262458 932297411 853340899 498419830 19512632 351542289 262113006 145817901 364133397 587884088 848687543 828078959 982145782 714875807 884873235 459777105 473534592 958665554 760818246 835200937 920412620 766747870 588653321 956992695 337256243 99176843 832457348 637434507 903273627 673188983 136141944 710955736 384349094 708229794 886970239 676765811 645605962 738122718 949115993 647536840 854871083 127470260 758854056 942391154 886322984 304853845 990432301 637799153 991968112 161878068 527443204 791237332 269998379 293913311 723735217 358182617 829848324 300100545 967382689 842321272 364732235 352234541 406434292 803811743 932692729 883552904 688272450 2256634 412067669 933674599 833307826 380507572 322989643 947465598 880594324 477721774 829414974 194715037 808837533 95762930 892584017 967024151 816629797 863694554 758894441 843964117 396317544 784957043 798039319 793656078 850819331 866883906 962352415 296028592 139486556 528400436 893796448 779503236 134169237 572347169 991969926 536240849 921575063 710303926 949724952 800081664 889278460 403138897 903535965 760653372 91491281 429458342 294577430 221858859 379637758 157794442 460963167 101248361 561295033 698470251 876159845 874992995 361432195 776752913 421852853 743178505 420590216 658325633 229599312 735046195 871315387 758814198 681886721 911076647 682796714 163753893 780548101 452651438 741098023 758661364 796750525 525650379 788438061 250991582 712270779 845061781 79915278 936980992 998452717 592976588 407500189 835269434 251004102 814281588 694334776 920518112 938218260 289287399 906590198 873278393 898758059 963413160 991314203 724476801 872467460 798323141 226007626 963233729 473208153 988580550 25820608 877945426 965336237 881683070 558955167 990166868 856343719 610957022 376509824 957718267 502035412 108203941 930994608 301119082 426374372 679907352 929137363 315331054 837875835 778769477 817607040 937394435 978001336 9566708 106013794 978449666 292920117 743219830 91855583 913474170 577356316 964030657 935964869 730926927 447633374 900813646 397593412 849878198 339330857 999885226 88873770 882354007 982891750 873200560 676095592 813665835 848133751 804031329 799481477 493008813 293490189 573634250 365063402 848695192 807934802 288888709 178668940 501302358 201568801 917525548 929102848 807851137 559464086 812199325 540545038 351347533 469918325 467680685 870086353 483887071 155049438 808867847 5195650 871077347 981920679 768003047 830480268 769161348 563886733 625917025 240295881 140007643 964177308 747186877 873289044 442812364 239329512 872563275 806212854 829971066 733087146 28362946 289637894 498604137 710474253 756936957 26666513 518725810 941025122 290614220 265549198 937007494 679657277 212677839 207220515 497666520 65755760 579288202 78012142 837230710 207586982 676843017 233118914 968490160 55569182 73698860 448632202 407868535 324766206 810362371 915893535 778317284 745994999 911556587 703113627 834126956 17854643 889732651 768736775 721511755 835752676 872174957 549020730 623820542 940212639 901072638 986544386 788420103 827035247 991814976 457338291 772771038 267763777 512837733 711761497 742194966 991796492 126545449 336916202 746288995 701548682 756858287 692958311 21050550 639849531 994838911 156764132 768806674 964255771 251828325 77002246 967813346 954517046 148809880 720887609 795246355 39453300 656981150 727728356 787556590 906340883 206531030 947025384 383827326 734458662 253125916 451068524 969340979 874065689 982335967 985070296 853988445 159234317 278013383 427266289 779604457 503601311 322704727 215342301 739940381 574938385 114244167 295031800 855224114 642795289 422435433 844581643 24538626 925782529 674142916 118761090 954316391 327285126 903100950 846113786 870118772 28583980 233665778 605949326 651535405 386710830 521675532 858348897 502476656 65431873 745035309 801377831 752738835 388400858 83607189 38855292 837174125 964777846 353882120 790666562 429400347 304951524 125529047 282937211 756500721 841182646 795502273 681818009 814289259 896589125 781852690 886754335 548696117 803674170 595305172 785088968 150624209 712117123 840529855 745056374 464396481 701472 644989773 388193180 506828092 18920613 901573696 549879986 876985484 752788251 422169592 333889207 841320703 878557115 823184983 721843677 4780536 814375056 690930618 199460043 857086959 598508504 429159646 32902197 849297603 751742860 361957066 877757537 936785037 883170976 822270534 360751879 483485494 122144706 892691556 791563883 391461244 249702437 156586611 873552865 456526509 491276123 953208283 15005891 374404889 110615990 559603990 91839898 204073507 308684530 587669127 677192174 466023736 979954521 816402667 360073089 956377092 763265755 483955931 248352551 930447868 585617532 294862889 180174783 843194898 567895181 884847526 899235617 765461772 240092614 743565172 815614803 249567092 491744989 758584298 498687122 227337883 794071849 874806057 898850915 927571417 330230959 646737821 806633392 534436852 524900973 40795202 320493829 827217244 900755070 983284340 12820128 998807343 950094843 642283156 972633005 323608915 857874458 272199881 226364565 836921835 858982684 983690756 875701733 868007388 759319865 946985794 732226100 892716907 215757915 985505031 688705945 497486808 918092870 391386369 365313319 755846609 830794256 948417917 862620793 382454520 481958616 990163606 883904036 675088973 775715808 490205628 923995285 314766943 829860934 758605114 637047642 105935443 549444241 774854839 961760494 753348865 174408967 541467754 960272107 842761741 787147912 831432033 637337341 926810788 831982346 306737790 589757178 997398547 925232678 871635099 316946651 658536201 984859585 958140595 958366407 962021509 821809657 978005087 960520301 773556313 683358757 525040446 849055115 219075172 206143889 80528315 899062674 813064377 109622028 539867935 332881776 763967177 999056417 974303216 451973884 805083512 701761584 395233504 753129072 819621937 287049492 798244115 927527271 881467483 966694693 952300011 616832783 906730363 991076149 472897397 718563902 791404015 766010821 666863625 65311395 930801231 787581865 914675446 612893560 845993866 875627934 166040156 749889094 498166677 999757630 162285018 689243847 425817436 985488607 206817760 826655178 126738928 115403523 891007073 968274358 605735988 934641557 69072288 796326832 935479685 791887560 498024943 142878344 629456713 962926072 968481057 26363404 855270650 778630036 991840523 617297890 586340567 937378742 842746628 779695800 762894606 845019175 977799978 20344664 937346700 839089217 525803310 490990318 832210099 746014973 613119910 595410404 978709824 783455424 822178042 208275467 41822212 764007635 645643406 58380786 296556512 819179003 869979260 818655457 208152012 274162506 41585398 349242561 43605185 385647247 773903931 249251186 8860169 911084693 490245224 599716945 787347390 691481919 305037085 556422844 525857845 913882199 828384370 960945372 816041185 740795285 214876916 892593261 158995026 869563837 758309025 820606146 982941904 171049649 842968516 737783209 871747906 898843716 98012108 773577325 767470766 484851757 816062831 754004065 417886236 968784138 803037771 913294056 700234878 491679340 212603688 177711924 864031427 887292935 844057310 39064868 112263248 740461729 174584037 90298290 995736897 676702212 823297813 522006598 826435758 780682595 68607875 999043850 159696158 367669555 571776362 299606365 563553472 634754488 27697945 21948938 390425653 140769891 961546896 587495259 650045879 992512093 458475526 84792216 937887358 339686811 494067831 780035354 760000919 961214827 45984617 917807259 863710245 838046717 837167122 711772149 868556102 900457762 855685159 937253488 611338084 419377082 625288132 243541677 850379258 636282815 568102651 631521505 800567922 285087528 963632936 495651 10379842 873349107 333901987 866869951 980288579 79409 703552401 196298263 790474889 205856353 859770183 457781106 971866697 907122375 480750580 199514833 387728615 726758074 646911247 732281993 856627703 148755423 48303143 769565207 865079444 21786348 52182548 887609031 785927214 794396136 289675542 280348267 887679137 628231485 700255013 165927867 945686069 328041595 485773774 199333626 178993811 88303362 496928405 476911664 15025476 246910416 121355779 492413768 686412169 819081562 537710262 624890070 952469360 805699743 308002743 860357845 428597308 814381019 875161371 20192811 23133226 611674306 442902524 784636423 102535785 364641305 651919022 555093906 995137570 240845572 938407665 945780995 154638636 570289076 151150454 100028538 726413838 954965608 366592438 770416868 767280871 877917897 869922330 799097124 969887920 920146022 309368449 196261987 811703886 714276285 428457511 279755032 59173268 432717286 357496200 775554141 211635660 756729153 230611534 371500874 747559037 992137817 975128405 81060412 69292637 4291644 626999907 622604241 609321678 874842562 747280018 905269239 275877435 530314355 735057417 836113531 590850453 653786676 799406394 947989447 487761107 494198932 106763916 777441960 938867859 500502325 660372631 37969510 932442541 796565703 282117485 827786437 276621182 231335780 333427964 871137327 630884529 939733562 624316222 824552182 613698707 989762569 371148217 720627209 640183507 388911340 991127782 861854562 845021089 867534307 872516480 339887907 880458022 95430391 23818203 944920579 857361338 568574489 999274752 860673775 564635292 754023023 580754453 809013963 703866325 968274357 951489547 228137325 668844488 562804677 276283551 979852358 337723753 896495818 954713664 923849571 897423415 133258727 782676306 169432285 320810907 845995969 994336076 973112453 381799216 453979155 776553141 792859520 488146842 732754053 388231810 830837500 461057383 475376485 232931054 963477578 269848953 250858263 201645048 211463690 783131038 876670183 415441166 958494060 663114861 730964135 264965734 243322542 788182693 942241728 742514988 979220391 886613712 939624961 10416162 877852075 722457758 481454085 126683568 89153703 950160123 45940980 860606086 992005181 846296250 601332113 95349337 269301239 44480562 481994740 701357857 941799971 206290453 310163894 214689189 30685553 702809946 978970318 782197999 887033667 896392058 759233224 30549339 47506393 160202840 973888331 110592021 768404417 188800412 384403012 887736326 866739237 436058807 515810993 262426577 666247394 509573491 604347255 80413160 418297476 840862488 916491930 793286319 804805625 812599233 77703181 547813463 62535179 911790984 878943320 968100594 49319314 723243501 229148371 916610509 471468480 151536216 73150098 808847727 918605853 850333742 240713691 580499280 178319273 343311174 795305084 883095055 565704894 965732846 670021422 998461668 883462697 915275332 775783172 413440913 455831916 331365337 695043866 461776814 960604676 410296543 181047461 489587486 962808519 19515528 272693762 875189943 17142280 99363170 833127667 771144575 455749692 325887137 30856073 746862987 852362362 101439976 701698831 842795532 978234253 907580862 997671374 962410592 84001981 804263603 732079186 735477766 922718102 134301548 287359773 817826443 258706723 855019554 916612346 737600922 844853733 758884261 966944750 929528935 958841874 248584137 265292002 514875538 675711856 185228294 872160008 741899880 977652649 321747981 881135223 844321697 114796665 570317477 839577621 941438364 617088445 673176906 850919225 942926461 821059777 747255050 975751311 152568008 601760314 992580312 704035653 920754945 605486254 422578595 959870937 737878218 860362171 166838727 763072222 978829911 983097864 250191489 787697437 884291580 375621898 979369705 956802710 525710330 902179795 369599724 874645901 725551596 550011949 993063023 920451646 559788872 809713188 753098006 340605029 885123113 254807345 171888208 25238471 324604188 297940674 493706755 11938292 568336987 887178066 39899264 927609551 553241535 526118833 213249292 880961472 529969561 767865808 951939845 536924636 453319680 360301908 353847659 141610555 862858579 542904119 721194695 966357772 927337777 941312476 680070541 289254788 431975355 237781944 820856732 552303314 796231959 60762136 511416509 706760 869535304 612706498 886696672 883616065 980100112 948162794 884316209 872746562 852996244 309271410 948573490 263207151 455651245 852961601 932406655 930873188 847244260 774108159 893781157 811726822 373157769 813269092 494190210 794032276 899401998 885405344 678534205 868482974 815869963 952647841 269280203 562578581 985916305 686101710 919619830 113347125 595422212 563088946 785222334 957902412 840854659 789441125 609488884 821159673 745867812 966616946 925375059 57593374 347828813 287003663 365114080 72018853 753824450 858299481 871195096 326845553 911522387 845828004 281846777 849138682 808571586 878059342 735999094 583016790 499359543 896884693 903762253 64198609 241651373 416076423 687105659 446751256 904071735 830500272 745608124 195085215 999232827 879594502 876129149 374689065 752921804 965619104 852760227 311790807 64442878 971839948 617792400 845483983 467847387 996160554 982805904 998258537 759379362 763741218 315825284 29400895 705699879 982012769 844500015 442880381 777494086 384840292 503859647 994661051 76983663 729060561 941296035 715087225 918015258 964325165 887188717 975094701 339852336 98342288 937606493 21683718 232431763 912236922 602130424 949550781 685723613 170702249 748747599 591543229 458281352 783121410 184277792 263594551 843991791 472066621 707031553 90128796 834668720 231536297 410468508 580796101 390918955 35598835 270022718 996447328 974428834 870162091 90632338 334284914 566812214 794460456 672510080 821856403 884023196 239645307 374977728 751164909 605844265 876641171 754562012 749351735 132591250 358444120 950344951 769563487 942697501 435432770 696901731 369520563 935358385 672965449 570605108 435266815 901237817 973336401 427245735 908943450 185568022 745372097 721812420 949787824 108087222 331845385 178170154 858671711 326417787 76649096 668262785 478351361 148337734 911562624 560380944 941141148 993967289 321465216 474906059 919793958 305298992 611485716 855733181 284552604 473701506 433302776 771222999 571563839 423137992 385894853 814572131 453623102 63832921 80397500 853222601 498122890 412353124 658898061 211908537 617086190 846831563 721953687 205540854 736830907 298933173 147635834 743232991 924298763 342023498 306162972 928320137 78686860 327768558 30966240 828285059 929186190 130932648 915094148 790498729 441762963 366701141 905643857 29378899 879642230 836681545 773217646 796902693 849211858 794904255 798119905 650558732 741472790 193880781 339014887 849172315 677208911 16235946 178122611 437979070 63808146 875395472 954205586 962962483 604161731 473857614 853480262 60212833 887619206 554563233 900781893 45072852 309728013 361185232 412066092 454439951 120310272 92618700 782567872 925551729 856494757 836787698 628622271 964242905 872776584 990169913 121013367 794920708 699593054 996457615 871299820 783978179 980899264 616511673 91640318 758500945 817587832 980621317 984204185 744199812 86003391 170091625 727892300 796552509 520390645 791794603 342818215 853913442 705861473 8898433 107959032 835385084 841412074 114549339 717599157 738567719 920472034 817080095 182383887 871219427 743521307 543112439 911311827 456663185 793899085 884285369 862431885 631688451 894575846 53212910 239451322 894873767 737020247 940435852 163489999 895984426 816134692 716383591 894262457 131401477 147687567 870335147 35747720 861254005 471252760 926746690 763098520 436755284 525253171 872893396 850165375 211031519 96366139 775705347 769521366 876555895 358459509 923433203 757611495 308092039 827038679 836044825 802992555 307589483 758368351 928806466 997743634 807524180 897298194 207288258 540796792 903188782 877023277 910776761 95470974 875231110 914751612 336666297 515127631 912383245 878197714 906580930 970427985 992637905 327087499 483342654 920613185 397461132 714744517 998074843 234733188 847989320 474388542 460771600 248957964 737496262 96080193 929655306 212520086 941026449 974253123 836508266 513495988 745303068 758134640 233471403 855978491 157278479 410466597 696148690 895860293 275799648 812872549 68577168 764702879 649755452 964957981 792972869 33674511 861368193 453226273 359377487 836169407 705334362 203571351 737020247 704765931 856283056 822888774 944897265 857996349 237108236 923613942 609065987 889506501 842893846 934763727 908602757 229222395 194484937 766988495 236637068 834227746 247592073 14330950 935751884 974489365 54186164 982899298 799250050 169071334 289601502 390843594 951903309 171938235 97363152 898429539 154557006 902545970 182688310 838009593 325223835 998436265 898050638 771419199 116330364 373298555 688277802 750995934 555343188 277985540 832989180 432067991 448250208 238328281 972250714 955473665 793869694 912532309 846735589 509486932 427165751 612279293 985139178 564902869 987348725 768738231 448235842 289673859 513435280 677953372 583232280 313730850 161640393 854564148 887107180 716448593 992086770 885343457 192405422 852278550 136361139 940522261 848066107 779962736 651655572 164445709 642394304 402171559 19320509 778029664 818558227 965367728 826982806 894872677 29162581 441685928 746416609 501432725 924957560 738219595 834721893 967736835 746719403 990665068 47848504 894054955 33633324 628136594 763927313 205835672 895628968 232892035 795783114 624410013 38002456 827549740 887765115 111688065 904900228 134648171 333455515 744474058 946908341 343058181 979531428 382390354 848344994 874201571 968927298 907032150 796173387 2261045 931494414 879816843 602545296 963194289 788512118 136773489 767837503 496956298 639991086 819791302 67347150 338638320 947630274 187106939 236793930 891818958 258006045 885767312 599463800 862073929 358953748 836851313 206694806 989003727 498357924 741825327 806637381 913661996 460708881 814100725 473958652 893617895 407201688 145581716 868214954 910492171 753098509 739896403 907058286 915643133 863606741 613376644 586441530 826731944 576711140 347549270 854701902 296964426 964078218 780728973 209291922 882198377 836585474 596929839 32930877 804159545 98013423 566594510 971835710 831043956 920624464 492313126 704808699 749194799 164031104 923459215 805373540 414947812 864631842 344636003 816118187 121824919 396294007 793112706 925019865 801147601 353872054 904300566 531442145 979179458 987436487 18824139 640155015 955582455 768546333 971144044 489891746 837533185 6131762 901459184 923322783 799103171 842670303 597505017 695695938 226825303 780126795 766251495 785010159 150857045 81228734 118978726 840787960 408782980 762224476 381682474 776597745 466043827 967179747 901140097 993152134 988940284 944475582 734764535 836057783 954766917 312518213 802043088 8667540 433914612 501537370 555256144 473839637 88031461 445003399 887899255 999683938 31930251 943854372 931028366 973061124 143650105 176117751 942124448 281367088 933875335 153487942 960983903 199544836 787010343 850247430 928339829 756443251 775680180 385332818 743546370 975098903 564087300 886188629 414317648 828460382 920453636 761934040 293707332 221705859 442690578 175708279 79333609 199214384 14683108 955848603 912487241 848590043 834965067 609199974 769179314 831952656 468271892 944406465 430394588 878246725 935401720 989509309 308112939 524849188 826678876 973520694 974299546 501815702 782207611 226398558 979805000 934963177 493542021 966373303 486594777 560867864 904031166 408059214 10519895 772642394 255048478 878279713 836804318 933781894 574881990 122930884 437570100 474265267 4558737 698374780 820823296 998301501 980437160 151322911 706524095 652267575 933623705 902645712 956989493 617227471 744997740 907055621 565421781 137172200 913232322 580147073 919093237 783177613 347332804 750341084 738756280 696437215 636813066 820174833 712252736 755100177 432236896 646254910 94589844 882231800 387094676 781209408 82917833 856547219 880425970 765213716 377034501 779171377 871138807 71655833 10305364 195125944 592593154 869525675 230834724 901429776 917166976 890391996 808625468 16280812 618584746 976777129 625975125 965519314 868345524 641259274 958097026 574172197 497904391 762629460 590503774 326951370 857154676 299102132 86125911 869510849 232361751 860848335 391448616 792721149 872120206 909107382 955010428 945581363 430166952 40838478 911640737 978446112 952014665 738410992 559164736 168981589 349617712 841010574 946707102 961686054 394126197 131047429 975251899 702206945 17530360 584549241 869891646 216173796 968534736 783856791 957134552 783522665 485783532 873745269 9348368 449935060 42887559 813908016 989760891 120046962 779237841 384253580 865216811 678860378 68270253 809627269 186690857 834498300 753026980 846006203 976639466 820185687 628416820 495462507 829894735 172247063 960596737 523253911 669013635 10901442 816175542 301657005 397265528 892169764 870739951 864321902 817564216 974098181 920708944 931403722 779833915 744200912 796224528 187297599 644170555 89961790 874029624 537470494 938901184 722331855 197662064 945099441 450865935 982226321 891073509 152707391 680472236 841207678 272254057 513559455 492082770 142726270 755997382 612429326 784373408 979348639 151973960 780987370 184886438 857008002 713618863 971454962 956892840 885689263 888154503 746311731 902737402 643560015 825195606 814699085 29236690 887921862 385629948 274383116 624115176 424897615 689946686 171761926 898333397 979448559 879426122 348837752 402122780 512760251 934144864 29199892 928985281 254132714 915980840 215502600 558198044 887992427 918424258 421078985 970359453 569071112 234183487 746807814 998708943 978837895 816977223 958795653 786961712 74310618 935486231 752437369 914028499 695222736 759246021 924422762 903691802 101917837 808572187 812193076 663264178 930895056 347736533 675707510 176659964 902823525 439933918 761266614 793846295 283510576 49388669 236531690 262960153 747624877 843764961 991423962 393891610 589900509 638649633 864202809 431441581 283586336 523743408 589300411 199852645 575276353 685584934 257013223 919612928 693244261 898555495 390203809 882647472 501627214 838770003 864809170 650374903 243369083 924534791 766281373 756272673 707710212 998294204 581482695 574612300 659737929 940988143 739954032 943082639 106052845 998867594 256096809 255819466 197766453 877996811 789508091 676220250 646740394 864730702 370649824 913695035 498562709 109466599 340806852 858420531 791714073 850153338 81889441 959733583 846896270 428086624 589906409 966926023 831225098 867586814 154354684 735809359 740579938 678529488 845406900 413002812 81704360 956611055 801065773 663862546 824270779 708155865 403407010 612469667 479952741 932470669 311336714 162669216 885781440 873147153 909255784 388387264 856866686 114411951 950131846 793313904 738824048 912670020 930148058 758298264 838947280 669826563 409923597 907567617 778242643 805973087 230507303 429791260 931757242 500680357 296037934 216880977 982087747 55450322 140620343 583467627 376765379 20830776 430599741 801033646 200783990 764217716 953156221 895670618 775098729 911942824 475121508 744255280 822880066 871219808 58487697 504741440 72383046 543940770 49947840 765680359 307031903 88849020 980974487 479772402 792002052 100990555 895000276 747018232 572928061 939925527 816622690 979033975 990858861 961497957 663525591 935761189 426439605 726356958 221663783 771378809 873306874 399117269 508216517 847976217 997755846 18715278 322124287 973725433 436669661 913168697 843614815 158986448 676820867 648061211 218892717 428390133 462604779 552343169 341315724 656920953 757749577 895159420 624986609 879880221 355301053 6230878 890980591 935677005 950038427 930094887 700473938 969812939 447009527 776216425 96709139 940825594 831480339 793093703 158913855 592914508 888149288 886539500 647087509 737020247 236931977 44816681 946460231 19847864 894555375 700084075 519973811 31556768 690288734 134970203 781262195 417775123 871633095 815101678 933195268 135912586 739083302 988294485 506176610 869247620 736946790 96550806 398678831 607074940 248387468 59190752 932507490 153698889 618422662 910411964 401121166 900762488 625293058 377166723 176143268 824466550 4722228 896249519 764739063 423967384 566379221 761320338 737459303 339661051 865700051 455309155 512012950 847415728 252504711 754654599 676590862 828643204 442439422 503659726 976162299 738411500 453214751 967635062 683673316 132308416 146067929 464254560 349428159 912004765 642646664 517312880 746888908 895386904 958760617 309092031 777042094 440813302 846830380 245054721 757813708 870787575 802754658 982189753 921773317 998899746 794017649 976030350 772755624 843078219 147344680 873991297 59562730 970829638 606187591 680940498 772287036 983887148 741093016 304987544 738677269 891148653 279819949 652259015 121314120 574140533 71984090 781726815 850088572 972426421 954097211 266840469 659120922 738353730 851562195 929798487 868364237 506383606 356737307 60549485 380658957 415419899 89460326 824593554 661062278 143120098 724565239 372240879 208480724 751817791 23909887 977957348 579512462 840400778 838577824 583437985 713587017 221449970 932875234 900193132 817799523 250304517 817285298 855366971 873221319 711772465 759586480 813745613 990614051 962432326 652656101 458593560 245453082 739494002 878538958 862405723 737020247 129687919 986115401 984725963 873012864 973173334 885873981 567257227 800922386 960018882 576448216 216567656 800613763 230949876 884135884 251828492 974561017 820970475 553888259 212370698 469581107 511456689 897014732 254732483 437270517 982634070 350747661 925106733 469291738 847064535 599115962 700772073 838211864 825013012 93305650 914267084 942848094 706623402 426472633 183586091 3815477 550232839 303623028 802661088 446765888 911148694 755965869 369237170 401858748 992179866 844010982 810631638 93741594 829086310 898572246 697508502 768258876 690073006 971478665 535322153 515713845 206420373 493553414 352319797 721002473 181915754 619890159 451810829 318209843 946137181 695951902 792374525 972783338 255404585 957052367 149623249 217089294 842952765 92995574 176741426 418769094 185408434 544611595 187423218 321539155 716929710 972012631 515978748 136116330 682661946 820541288 811585323 589397283 456450152 402879946 916289735 370703121 848352478 809363280 977772201 310436606 796494789 188838398 261547574 78608163 873272743 801459066 791067216 840453522 730346956 295927191 101541746 946697370 650046358 752727131 771070960 737020247 258594923 584725675 870086153 908870045 527564880 963352716 770298099 766609112 420437689 499068746 889439694 530632143 921638504 678191401 357430653 617236984 762477227 387127624 590697520 89846354 720800266 296789347 782782225 55679520 564704735 307731330 410771468 124478108 987634943 857740255 790867012 394306633 906344147 783554312 893166441 913576105 965978079 351864627 886683551 771249660 802709142 472593388 760496574 901098365 886436173 946199858 123313653 60086557 882163202 683426391 870940339 896673339 364639986 434366684 431514790 305421966 256595299 119211852 970950838 480606837 852783319 686541078 702579185 841700849 480209568 780829827 612852286 88098094 873578760 796332048 591906975 927354942 456415307 596888788 219814235 321739545 364932487 964230307 14130957 599231597 824316688 89740918 986440750 826736942 179010629 161870873 899354944 122156032 619821026 346257640 142017429 477062565 786075168 310300896 128937024 777355286 987267342 844516739 578812179 821795969 799754288 918313056 565211492 270395617 926243552 149574525 959223627 547392375 997392490 790428776 801667283 346278255 957198532 221853466 548786372 950718284 917726964 655042021 896686877 748674291 601202491 21163383 90191883 940242191 509868151 580501261 912056532 867279816 114274023 721284287 835736025 795771823 977105522 998038948 943310658 11975888 708009867 378100360 172891613 516771908 889500076 521761966 245963286 131985659 679036960 915807615 789999288 834070126 817253085 741677049 897331063 782288628 164208821 379771797 946786927 79372789 887746934 374503863 781761026 885729309 763311237 889827892 278055499 672838752 797831578 194134380 745850674 930004187 998676506 948465371 559529202 414961226 978662820 491236364 985694684 810193440 321917691 966946203 789893223 869516042 310911522 545081551 844313948 58085240 568235810 283737327 43261348 496324854 802159692 98558692 306636130 973472945 923670685 654542062 126953479 895416558 436410983 367174519 432131718 749922240 26312535 776254809 952719742 12958177 21226799 763011049 799116530 809422175 776275371 767657326 287956317 914920636 997237702 241998539 481521815 960173558 204377796 194878217 389363900 688262733 976843882 826659812 763661550 781683956 391518391 401363609 338185557 901061202 926917897 887826271 378946004 550285985 834791882 16770081 861842876 805666125 537291932 857807094 825195352 648790467 955953490 935028686 893060342 921634755 984225309 610556532 862102489 832487178 27978749 392322182 813280254 861997057 557456884 91617863 246443005 348488515 891835400 108209067 29157488 894604173 463340447 416720483 871341779 995058153 976514763 389071410 518686385 830751180 770818380 325008985 202212648 843012717 967743962 398461288 974217662 771861443 995025387 773648325 810384301 610629827 559858865 340633682 600852169 73579029 165192470 159596400 362162971 114512711 181968797 995097208 965336597 982630093 478567413 918405423 805616057 976920932 19815112 869132052 191530318 905866811 91220084 847327709 981443104 653017153 456132219 925808272 984928540 754254047 857163731 55030967 861336782 824882574 465861372 298237075 882581743 763721267 281352607 361954546 774719557 820311316 910521736 398673811 870253026 878033265 783696658 660752557 722102303 765408358 236349739 734075148 277764632 566473193 704994373 606025583 938981141 357139133 753075851 788060495 895060829 116611218 627976214 601520674 933174363 954030313 429328476 156594203 568862757 613157796 833460558 861724509 702905244 73564129 234635911 482805211 819604226 348934943 133821492 234371960 856229880 663872691 768025328 218533120 890561003 465079694 958004624 728216572 823814413 48934461 467752898 857329481 729384797 44175497 944287785 870207349 937799608 754153568 510274246 52246617 996296333 785846275 97220217 78000166 56299407 842343330 110453674 132216450 866437823 280948933 858207562 651671860 359689519 755985784 611033408 569738445 785878530 36143872 826835204 887325089 831741274 780658177 839544732 473765630 728678568 855228333 782288156 372096267 252744455 425342087 948087091 399311926 980357682 884098308 390114438 329617618 268739938 959450057 956625561 867586794 184905217 873677329 610855497 970729164 375644792 691835814 916610321 895473121 386251803 325844583 305279732 999088851 876056114 945568995 980057035 46651749 148155317 793889653 953006664 566408367 30294928 746321128 922398314 219181642 903516653 810038388 42394319 810706687 230163790 359056945 144788435 631156890 177364383 960191183 935786820 47399756 900305822 594613146 16135495 740136465 52291687 924481453 794010380 288738198 238203713 386823302 508024342 584410441 132291571 337472663 994772584 255551117 166731574 124213790 785435755 734235999 905805121 533836345 737020247 730565628 857631159 913631347 793388588 737020247 803742051 513433580 758628172 249554505 754228096 512572097 841468826 301116078 756260887 741685499 584305566 448848913 894013203 871752080 70057762 873883239 287293409 677251447 992811756 910528403 31663510 948987325 478963947 966160058 886418980 779656828 938390604 890640291 377019572 776980009 983062753 934211351 934931521 189462580 737912797 775738194 852314723 356173616 837793075 228520494 883636179 822566018 951409299 770834700 164531597 16315796 912272797 475938502 855352164 773100516 856501547 870675913 539918146 277838919 108701459 903639660 92662973 503134138 755723961 20180147 838479888 955455845 937889164 859668188 90918566 775387251 518760659 979432159 870477272 861088406 909212377 965509619 748785878 464154557 554117587 524514508 153792290 149909983 529534791 773774711 958323833 707806646 499119397 47732195 547582017 156176736 784169453 517759348 332847137 901761162 128743074 645833414 749215608 753497151 246401037 990847550 752429029 945696614 164798651 909778817 948590909 513907466 888269211 676139596 791190622 928048141 804479291 348044630 780486398 858338039 210199504 883852194 885092824 811097621 784696667 858872612 532349427 984274266 577582147 700921475 272010095 930987657 419463613 465612670 850096643 609361309 39343209 732269139 870427654 939380081 358780702 808684639 315373842 631606591 21277765 972205580 792997605 252947585 946580415 936952682 921150370 862736505 655567579 917317777 805260585 737038855 320396181 242792123 471531448 29408896 755954747 415685126 863897640 738162024 642701310 936837318 543972583 782899366 303336072 687947184 966413700 788677638 330282887 706616754 346277718 922262991 789206902 871107565 950804708 952471687 808391433 142813572 702032983 911526826 851679443 917157092 756460153 887034573 889627375 965523275 776270565 13624197 748176192 692365742 772974290 895732139 63823242 826407494 971458420 912188665 774722377 57589187 592052637 686756923 601506818 993138413 968741915 451624289 496923557 603274476 209092308 737281474 630907483 45249144 900618888 985667138 990224735 761449606 192955585 479315586 743386771 829953336 966521942 795786913 898082377 884510553 359998691 829191768 459202383 571259367 995471861 873530968 9457305 504135991 955874878 277296879 584578348 793224755 804007026 371783151 927440124 380689142 600418189 993160019 62655184 814584101 968351021 349059760 632502547 285428917 773809869 483100590 843414975 488502536 590927168 927600468 44695762 356779754 941411304 856606919 772415250 353374551 854456645 278928074 507297998 635604541 358716592 464050600 469639333 329908909 875315191 903707076 148997878 940124121 157690986 486327047 206299074 869603914 832114801 169380836 364588620 917577934 706077251 909075822 33811730 429256117 498173664 442937712 973383112 524019936 957218498 738608124 433188484 933998692 286231989 773014386 455023079 24530719 507817821 734612341 493252127 740644242 962080031 897802684 951269149 651243840 135881395 585207150 737020247 980310747 644480966 828485931 829135346 202511464 53166354 772646692 657663282 78780824 879536595 845215562 3661701 530091541 948956490 340104648 829338542 791577562 623135455 183378327 206524088 799649690 290063553 78943199 672146590 988946154 519087715 745426368 742439169 691455941 310700139 954682005 985462413 250418844 813300819 748107560 156890696 363921915 818578588 819218731 457897194 673220172 929072131 951974687 883514194 76219479 469228499 649709562 775637887 688413979 727620852 718687281 919782237 223523099 761777053 273973433 704819828 552842155 929051060 356926427 782609592 201752232 375698518 373594428 137594980 809658399 782978517 478051288 136327272 882451105 759823191 64851222 775574535 412815602 895853282 436478906 779880993 947657713 849061303 929774711 28742428 898502732 478682033 787392865 807890698 47112250 233691602 849766370 246520923 708277500 638063184 232621890 414979103 66190687 168587653 170961226 962378117 498611454 837288373 732037766 742637473 749508379 145144827 988117369 239030131 542561968 850456142 41001539 718066614 837077350 942899941 803387864 989304458 747837305 973217838 991612640 23365875 968638143 936264349 284438126 299515844 524028357 621125037 952638897 709772341 769571391 663029884 442342462 681997504 503287263 553337985 909301668 60088924 450909966 718333706 378423444 861639520 562582912 833323081 949101498 977506935 610916598 995552604 912704909 859590841 172723869 805709043 367419694 989840531 242928041 62074629 975952447 459140110 374094859 952524446 882553373 910895395 862306075 94538771 416174222 836232882 842639381 815658834 479174315 809801368 979918567 794275083 741368288 854228164 791758141 839463950 813099614 289009701 861157439 828992568 576626924 778308316 418776958 752811937 282718913 18806699 478025998 748101298 818230893 982039068 649111642 65488216 636878294 899745586 863466865 5287864 105026957 835618039 944569736 641895823 893119995 968348882 434856377 697159459 917620422 808339725 733285677 960075862 730432997 585191559 663529869 843544785 813469058 872885507 690531500 776976275 64054682 982761987 57903958 856042302 381971907 235326974 639528797 693475818 473634308 512946961 843156113 823285123 312652737 759698973 819181280 993399973 493219078 664704382 70108848 202769964 898975687 567101653 835931290 891791718 645317322 680781517 86320400 982127844 792367648 929929701 894095394 826605917 228930294 976746474 334046607 945952428 221497376 187082586 765199467 919955879 889974453 933843915 828157009 253744535 163464576 433067170 32118824 892067820 379334757 829487136 727916967 279587549 746253055 997458491 502111758 929518011 373121874 963715025 931784819 176176842 811982506 901919101 599166095 292205642 661259300 200265364 185283070 149888806 835779219 915995300 101192437 923757100 749138201 962205913 739500247 997014883 448084836 787705588 72477400 755765627 437078790 706112280 140824976 801376052 292479166 815970284 764543292 63196074 391199122 953026366 301908300 172947196 737511937 967604617 633239380 991694379 331486050 181220948 664787876 816984031 707746053 96681395 886059384 834811123 770891026 936634139 73718439 867039226 969402857 822249425 772673595 760110720 846155170 974029532 270000711 777773088 296861628 749273503 555380990 799627885 653925059 636456586 598232111 918502385 454934699 903627709 25601650 185225645 980148838 992351809 46659574 804452118 829457613 363857284 202727446 408382866 766442354 338085513 486832912 629540262 612048752 795184093 591646810 871184784 589904593 753327974 217080567 815880532 176879609 405121689 735906930 958667272 405965648 688281005 864448973 476066935 844916278 769340484 921794725 694025290 290327201 478620280 208172030 860308635 461177884 460608015 770911274 290297940 898912883 560127437 890623256 858897666 999186151 914091997 711585504 932589226 871926604 351638491 190705807 887174279 948481045 205879254 134160220 858980248 545218289 249148513 657546942 863493196 859833045 920003732 813494462 153235859 91280311 986615644 967998038 707150130 808768797 752093331 891561758 802183608 107448668 832390959 20337732 845360644 737020247 940876486 853345684 411154039 380071655 109064631 482555629 842648425 22855672 770890813 616434189 807963889 890840038 111628652 804707359 894341879 756415404 500536564 914154714 616686805 906339148 203323052 459299462 874095141 864177521 508425339 797862685 75415007 768987825 757158721 826003889 904619071 223058631 775325581 439909578 915982129 527729629 628510160 548540352 759454845 747950384 868852487 347906121 739046577 978150249 739055510 48590508 972905306 256925793 14332690 713632879 252318665 225331657 502981596 153021691 770455701 760703066 215777838 916576862 614572531 138432153 550588993 745079225 656622262 300752482 982106152 66416679 462067366 521590397 976477783 782011350 714870095 990201570 280358147 888980312 144835186 832703522 582183532 206221495 779912774 579815140 496738153 474035143 275005725 889159698 373449284 959212967 876528469 265441832 657829023 753062045 90798276 685261439 989664107 974992887 875396263 669742817 456002094 876115134 847872499 777120115 767903252 793051717 93781565 952336386 392228028 350093662 507866220 899068412 106478977 851637572 437386078 555034264 665983111 127087426 877597894 690049019 902516491 416872671 134973917 999708035 842603060 958382994 875488162 666286782 814308445 813315943 870712597 430055487 914404908 987532722 128344029 250082004 270906107 470443788 836392057 525444308 754459528 692464320 250457385 970391182 777750235 128206519 298939950 147682597 965822409 350488136 690424255 211729345 666020913 892918023 340347054 594135426 390178025 83465446 612987172 759854050 923692157 108937430 230231851 954683628 930223962 968107185 906538272 60907985 996246873 788347108 792372422 409317530 745998919 335422841 680282490 467924923 986193650 996328882 159338830 349627852 834521074 564197273 964574024 509195571 909410247 81068503 798151777 815928449 822941188 372050154 952110114 642755661 52245033 974767362 368007174 909096070 812868884 349448615 317853967 842512468 560409268 692714605 498654361 958111917 152403738 312074195 982838776 505120270 954280152 827938276 803703020 984676869 859729435 570760712 13751476 748082620 510580140 813854401 841756496 826374072 870597127 832919918 889008907 930541421 932136424 780751745 291560916 786271828 781097436 479312693 905026063 626576761 856130774 957252947 777025412 230907817 128239980 499346572 982787041 457894319 845367344 75427514 920661610 933307425 311349003 876052861 817567339 157881834 855325585 202496585 252607085 528980504 727524200 579719494 299104647 912637630 968153229 329902250 449459687 334816431 136125636 345597708 63772500 250871401 224422909 163413815 913478969 933362405 525746741 721528832 592628576 861378140 653940589 745434868 468715417 997318745 938997900 776966718 972315654 827760302 57571853 440777756 926473512 74949481 581573154 878242485 644774623 165276893 249232585 978461443 532711881 542164435 575431640 187208719 940792927 775483285 582594792 554623342 961875590 955180717 883942994 865632816 992641293 842709277 92806227 264974603 959530857 257066635 498583140 965239313 668321476 604679700 272873545 751153645 506451637 415492337 553227069 964947158 304925415 945399271 756831365 815203101 995111915 354544621 361686588 20926840 790476181 933108884 294636640 985575534 761449071 577004445 974962676 811908264 549315292 750278097 614241448 922861178 229813864 958980134 949790914 238444804 808578859 858172656 914907391 640310701 940611992 463272848 929195477 871828349 838445478 845079991 670944302 225892064 233229987 962609166 878976436 978167896 937173113 226450174 244183836 864682352 919193898 920067860 454806627 933522267 313240003 420720938 917325450 946332784 600562791 700228113 656626885 803030055 58995065 749100333 850980859 884720100 631462502 749086847 479976759 900418832 117799108 244047277 857273242 275376695 49407438 801710966 265385755 720822032 985800169 419317706 61157163 809572836 173260763 369174945 765947038 777182716 928295985 954434814 774459529 846149751 941927355 129700803 880528090 668140164 856118298 976656503 948148285 902918840 888427496 703388840 836036712 885511362 758524056 223797993 70705471 239005307 970917376 915405038 303571115 868729956 770461713 870958961 296367720 969975797 876727266 851031393 231380996 285151658 816052762 911738905 751222468 636094968 712908058 341667490 994384357 765796705 501861074 602197146 836070873 260926576 984087113 542030262 624653372 801488039 963442237 310631284 580910820 908442254 950819829 222028353 736093184 944080014 169088800 420613542 434843333 911167401 520913844 484940 930439092 91719145 885093704 169359312 911841608 56627854 59034048 885427284 769306900 891443481 65501556 227317363 747662016 231781810 972631626 448589666 957732487 994190462 954853755 228207820 667489633 934513012 17981458 822798052 484371516 292624801 994353825 935640788 609906346 113756274 943063080 895302324 687325354 268183518 698299578 393790290 607091198 971229026 794985790 869830502 312975613 262633049 609455792 145954576 959535914 932134429 921906936 802061870 990760426 375038440 919781937 810264554 567082409 460971201 508012098 994223414 966096203 720208261 259635231 984064436 556991930 715108833 827058308 900008871 847193821 249927973 946450295 295248612 832260987 730645449 83420584 843616121 948523532 615352193 136256456 947995117 700737295 664368526 784718202 933855572 816138424 999196856 520212134 795029117 174929309 978344024 746304041 806774076 387404190 878018960 907868018 818977832 368492680 218040927 914283561 522969102 174636222 338901059 703507758 509709858 435282017 910985937 823775956 589786950 784351080 964144099 792700483 854476097 413125609 972608489 661017496 631037518 980913623 866788506 795069416 991620310 646671880 821496231 332440704 893208816 879194696 810749539 687076398 896687554 969889585 395303487 991715075 750393350 178477912 951767942 245761526 737242580 451896573 890099168 570303960 798161657 684008989 835360424 883564281 123073039 176526688 930842141 830417205 349193026 917143183 234165770 211499239 745450745 845893855 777264629 795711420 530916202 414851754 919363911 144322168 589311806 482930010 742807146 864777435 489763501 805141963 467583957 307825985 904454818 812480985 597433936 834567042 913499696 467197942 5823461 570155969 626677549 691840510 218921233 745388985 641500608 897713887 865489757 429070611 292162728 849840568 760534305 277880716 614918276 877426915 147048863 433131679 87589526 771707856 794067354 706555082 713398891 948018069 597080131 835894830 813046847 408434455 666452184 841611465 751132191 732584628 952255419 723883008 597822963 681284963 633380534 27547232 417260870 743361167 387518292 685484278 102312117 626371092 930571409 120639529 71189404 272998959 129534811 519929433 999658700 581974648 313736808 326194894 465004551 900893358 768584272 483645559 745984417 918838442 291826885 458754777 961433823 956710294 965773239 996798317 780266078 944587690 614716549 843807140 992933576 837993364 645979220 49273169 719258883 858036555 816552399 826199859 4522171 874870899 635321657 169928235 506848450 535847798 809222218 11107009 847443073 649786412 382532680 826180704 5300200 881357678 627091736 549388650 222381088 982981666 614873016 571518134 740420297 548328715 54088470 182638999 865690137 461679074 570982187 803231713 342096637 895192959 571290934 731384680 767544123 14900870 741251593 257342446 179373740 166166075 931989360 48495590 907445696 150332561 737267215 170613192 695022989 756877845 838169248 959417790 637275559 410149678 430899075 826825066 966248484 220261116 975836352 189157976 61905119 232352032 493262947 838854523 529721899 653514104 981922685 250201369 813051923 963328725 885980300 338623702 836082434 872563528 873399243 193579243 759727639 438508040 121306521 41327594 141197217 305420599 931274529 719440530 901121930 537915374 899911454 709119890 760560244 987278002 744353278 965011285 230374747 992372683 905260825 278039870 857427375 690044067 486803161 962712110 202052237 880231895 918593592 965437500 949870528 278086828 842474662 813222961 751627451 417317825 86368866 772365654 381845319 953552244 384825828 826208241 290092875 613140873 774502289 660818898 644300506 967886231 979785759 778587051 77097799 864751406 847165275 275555591 279426977 312782237 854815886 162210245 837119829 945564290 516413024 827227318 67269163 81072158 824418800 711554796 863426796 570730587 520567014 849912210 827953337 721046635 822554107 774982653 377392161 835820043 785831151 919838228 574074293 582414302 578345953 988277181 539113757 192573405 238069016 869442520 801376544 592105949 71602901 836944402 884926901 919552231 772919281 265592740 864094611 804420314 808511618 948638889 16537218 660548991 433215297 686412887 921988566 14013590 191472634 54597249 381266963 748974137 139058752 942400762 968636269 944189731 783648128 691128762 1558456 845569788 556554840 753548813 262135325 323045134 626960099 961268875 108461156 359070830 910151205 87194807 931874306 947065939 944681374 858152812 366973446 817512726 992886549 509247749 583776721 796049352 316557231 948617426 180131315 111154343 939033590 930184486 35907983 921432154 795155225 888114107 589405670 930860209 176801363 924689395 244425350 740203761 932930916 16588069 219472907 517783224 862999087 142982972 46213101 745589412 862110033 769059967 411230427 962998024 996666664 612615113 617875685 797145766 909666654 187936489 160816662 391571710 790061924 931552876 973924372 289841405 792437239 345689687 876030668 110530122 855139415 999194663 986193589 672634592 123793465 331389410 547352761 884955839 855869798 959694370 890628018 940089995 764084718 923296499 971546948 770682084 406064669 843525032 870383385 409306715 107538212 104516141 486487665 817782390 8366448 786309250 398520949 681462954 831111236 360458267 776832146 891616387 307052455 789215444 353962524 55572618 539622587 663531035 773557036 176682812 576662243 792996140 707557772 674121919 301745497 471968153 811056916 919894352 471511090 396260740 670911097 683974661 835183772 360684748 676688325 637681794 743673707 954661820 380434473 921476860 419947760 734391492 229524802 527807286 295294419 341583077 461877862 860813477 759422504 95028787 887786533 426332365 896544269 998336383 855308069 44691584 661214743 759755688 693047247 463818053 921701822 11729980 878283290 816346889 868325191 764554254 903066160 873313543 236861664 329865981 636211990 92232538 770793215 37449675 781688675 555375908 899434397 607078797 627769916 793243923 971924460 857392088 799517759 438367026 590272450 957716154 971927707 924345311 764659061 760619295 791115236 839881962 153115874 329151012 751023430 318022838 771511564 676213525 785015199 984536216 784195615 946851203 829768759 731666242 228265036 768093848 857942125 418464900 347532600 781687279 759011864 112893718 726783949 744108498 354688020 796070451 783145172 183894911 839388102 889254824 721755735 945200565 995580993 760643080 905398825 871953071 743707322 856794459 119594487 445323650 893216660 909752039 857761561 827379660 278056697 752588204 244711105 957212259 889247469 361190107 784498241 982601226 949168023 985040004 811641292 981228300 223407112 971537816 152078671 398211867 564840710 755802298 791433511 745957153 684804153 743603292 857543081 59403167 790550453 375148681 727708777 755254469 187793975 99660805 448524075 978860541 347763588 679391819 829785159 894113422 665710430 904085472 219307038 493731071 845420540 610780090 785618410 972510348 995397237 27940325 282966991 958384396 13965527 766287370 661871208 909138440 510280301 202070106 280434061 865483737 330251459 269933001 436816827 859437930 574249328 104221809 350129668 496017814 827800307 819331765 137286202 922126110 807949912 756623962 16215350 726687782 362992263 481096321 274531827 320807666 809099151 738456216 664617795 758796545 53324527 521340971 495195908 812816330 958332338 693947551 970495801 929726522 910926620 889314887 994653032 351039490 968133694 921544292 13290785 506451247 905686906 649073119 185488604 745755958 625309030 742356221 741100428 506884071 342724927 355222756 972247052 168302229 906837698 705380470 125951624 609794462 381769503 746897570 861631540 352528978 771085364 592901617 436358351 793345086 611196822 817366637 388771742 50024615 665723002 913454155 649521238 206150342 335867144 538785635 159145628 788484632 819577898 886349571 912360276 174801505 955217014 229583354 353242825 783182860 792996772 381217225 996382203 464665756 944794925 812557794 40986124 349894020 819718030 692376954 552851145 956772857 634171770 927675367 771391467 257736042 514488479 758840265 806618526 554222572 821609053 283046092 634287343 737020247 122044132 251453566 955035349 954620868 864292953 964626461 620895279 944509846 893046603 939887473 597573892 835607831 768898541 375579817 906991498 800517632 989350739 752470010 997250605 880749277 739120165 530413820 745912713 29021087 91432248 337241648 259035092 889021745 873864872 946979133 816761188 971283211 486183128 459561590 823160559 924822914 850445308 302196490 678776903 425140798 16210714 787830129 819335528 789457135 975019279 26112388 871628331 989151177 986419020 559663020 986490418 326578634 233857670 742506513 920883968 775327409 497814546 618456543 738048412 977873794 522605530 211187062 868342771 423565893 592626121 838604275 886851550 172611313 958330782 373699277 989325198 183526875 960967572 925573328 165942522 656927143 893289765 128010536 795259079 99890902 659581411 805528667 304204713 842424881 600603301 263026927 527573480 526310013 877525184 505599046 983977106 340810839 962611478 394044863 815033172 307534972 5773375 791657900 939350920 857888609 794569030 811284180 888266867 959360627 974254083 851971979 997773452 737020247 766405501 613614358 816219058 958244405 993287586 366496739 438836147 750017975 50197935 956478258 157771398 886758033 847715879 652736986 993026981 714057628 147100909 868808087 467082940 52504044 757716000 506456193 389290426 601849385 932134686 510600100 370365897 429236784 4921510 890922580 612642897 991902552 668347701 480811091 840021514 353331021 256358383 169756020 548645924 721196268 741454548 838743325 865176514 217418774 546535881 935802333 650287685 855526308 222746773 764093717 226435974 766017163 502511730 103209966 746989278 44080660 847104504 564799317 132000708 327498282 892563345 433413228 525490818 703363935 306147210 945886085 296407140 812508768 612543951 869839126 805251654 891973870 839113587 803437618 401895193 270104679 385922708 824932116 921808100 685370793 981465887 84870274 336756588 201744990 914348064 948707046 476688029 427500493 58079105 165953086 999345593 754519618 786274294 843398801 321490243 196893260 104271022 316759653 358351106 941117576 433975841 836889470 377308427 387677043 751336931 889881956 814554540 111342095 287820838 480940269 588974747 793743572 744340936 877186142 752087680 432226354 443939675 646697109 591478980 606406259 440179911 162975638 139370003 1983349 583295488 125032219 591292439 307783329 261704349 308227664 251562299 193898420 519608373 768785101 866651684 525487121 901863939 12719081 148718094 683921420 14769952 915380845 171980112 177203359 739753349 515279028 118196914 721658982 277056074 740536029 23166142 346650984 956946981 272531264 940123857 518463651 5922709 902461657 317827867 761437230 912383107 403656617 844157925 888396170 747416414 860579803 912943238 783422373 502158835 946596325 885741446 99319029 900200894 868642316 625913701 952621348 866519716 760819964 857703861 850583987 531987198 690947057 730166618 833932735 573697567 774989370 970732200 895093928 913349317 558484583 813472760 841066870 904633816 829629083 742597773 978055942 832468261 724510301 959976525 705477104 68368883 196399942 743166534 768523981 229829881 345003426 67856083 859477848 951557495 884238104 221688528 737020247 622500044 181815332 947344710 766299498 531506499 835568532 116926062 500602955 730834779 434206304 822877922 865430072 999750505 790704424 851242182 588856802 930965548 703073198 886392799 284784840 770876296 925041790 814272502 935921029 132870584 298216598 161580323 801658496 943840743 599388305 921477433 773152637 141977237 807416995 521356415 48694509 632295473 957556457 378878455 639092034 797318162 846366155 760248939 990262905 912518625 681021927 618684374 62087127 78847345 904666554 450887256 794806806 149039818 957671407 488335317 847408451 895644147 802770946 252568289 693929178 902768092 14149767 761095810 327752930 416837433 244570044 339902495 264521141 52594644 988917022 365427409 200370500 989598444 813175154 255531828 881276781 996098331 899256884 419209896 225781239 243037190 552630301 166811826 761564400 170491520 520101169 117097712 789335696 21130785 381283807 415375900 840423285 586970402 818195536 536538541 604861998 755724620 360848241 672972585 277678161 819840348 936625088 26454305 904238664 15125366 159975671 937831576 898481236 876567970 928529061 947954254 858142121 294619366 643188685 317144009 944504071 820738275 228418042 528919298 872112520 121154024 869804661 454507190 854298453 122752821 828916806 90576984 369221014 781330375 15905181 340782242 862101978 450537999 567070639 907069733 742928299 513740619 841933153 845492195 47064670 953062359 593070627 51441165 515376266 597089400 327164894 235455951 365831432 181575741 890051548 378860705 325210570 760854258 130835497 803655049 661543623 903182883 318012409 832507922 157847422 806016784 763993703 829437824 742743951 649221321 819703103 965695573 843518025 363227374 136250031 543593788 756263469 180888132 868016687 227670592 406777373 269521196 832805671 752385550 751336339 997727035 750339952 737216335 825601986 283565273 997246785 25391785 876656209 245416204 301730384 889435208 769863200 421957644 798312254 675371674 788015549 926194984 414846128 801013649 170622954 664172496 523318889 244280919 886019155 580508246 997612373 839394611 939168977 125306358 565563324 669861310 432294849 754932037 220679277 802691290 629873587 568013518 80198856 836205869 395262631 755965373 438765396 645164237 883028580 689531431 513271155 753008961 991156537 831092224 920552091 944922507 829048411 559307023 922806871 991971540 928389470 176998184 657752877 219563189 650098871 422595703 235673109 255766675 785590883 804462548 114502573 764891863 434060233 921445024 788286241 879474634 824263065 868654802 847877105 860445634 896617240 853427197 85238013 712378918 569553954 189003692 576894490 245323717 61242985 742065201 865734449 28622968 145663518 752633603 275042745 412834410 845528694 947484951 326880845 887385796 861255305 998265299 843950614 847676751 818677991 857116835 753256293 941402313 842364172 976811121 717955522 575062386 869223729 868180592 914969047 856972227 326200285 52337693 458660441 967494573 170690925 61248182 800588806 872001334 806610673 938580347 818302422 794777054 881061946 850572173 725377588 677229698 850814384 776551337 905463693 800308466 829706512 258930460 109851194 939754970 828899426 107454182 527648294 693891045 275284821 480223948 780404315 103348848 964443901 316904237 737950536 811899540 238812604 885724717 143202190 996010403 49969958 4423353 931807551 744150438 851598624 793239900 753127486 749677527 46557196 747442175 405076298 820839555 965041296 497646231 396326923 916152233 610359706 811949432 366915984 746108295 775516628 636657100 617769669 703377453 795484973 138415460 988670519 181594491 963127301 810655510 293301282 928225990 772390600 807984087 862359525 909330834 263121499 568234334 319575433 990550229 408115111 855043866 674080297 721908940 629967784 144870690 683701988 783103737 870990639 2503548 37176769 486172580 999361935 881448228 794829880 816683242 625429067 262136762 949307900 942435686 910990617 429272964 901840220 452592001 771379895 595587895 281293525 536103816 738799035 955708583 862945078 471057659 887553211 810545630 546857272 48524624 352241710 283709223 60697192 771593028 884569593 985745105 429152960 660462414 438443651 852792229 579139425 183514119 821841222 856846143 272428899 788567655 977541196 829063090 830629931 289566888 121075070 860976086 52725681 209699440 614279821 812252240 489110879 32086904 854780463 921337826 975704190 839167005 849628551 218971787 550826029 852079106 896435432 105665276 301184234 755055292 833430878 883605756 969345528 47320009 506375729 781167709 918520204 505976952 83913881 799126908 472973418 612419425 854538550 894551385 795834193 122571011 843905227 801775946 900198051 698799482 250200494 233869416 805586969 779394633 65909257 748632806 719854414 670197170 722703970 392518793 935958186 782324190 545279524 247153896 982459847 944436615 885488765 13477707 103426732 772328037 838900325 595655733 271078583 811683931 937842760 133930375 924934513 851174070 789388985 854519316 950769013 130670295 850395254 565271803 528343040 835086420 857365488 258987364 584972117 816189765 110735813 856917818 940056716 938114018 809687203 213231561 996066043 316279462 83216427 439437302 328499302 737464712 998085501 62726317 183364762 99467907 115092090 20036296 899435958 149815136 823204970 916074233 283961591 502202937 531424481 793449247 467718793 723454095 717772479 851533521 495140180 258763315 478268723 902263969 426972689 993869995 108281505 896023639 789298405 743652444 921978083 907428134 432458110 813933392 867147493 433313699 720774611 648531298 130538785 363091167 428698385 570832542 903625391 237983164 971000745 915832730 890648665 262515980 244000488 777955593 850606560 303818640 891299443 872455326 146425466 934203894 839620276 802027485 972912391 674706397 948984742 387494819 795403518 920935730 694326632 607977953 712798639 360585262 459472372 584415337 989358113 897804163 856657465 76739810 933841537 926508838 779444730 606938440 619479763 981638179 903500683 870481325 299214877 14046898 114031974 294327483 852333042 987419529 843546239 999536687 394007091 234299694 289419680 762332679 604223938 477176427 75920420 983112658 14975794 864860853 989040983 892960998 877850539 855356474 984572807 939947280 946918185 807161323 327823908 329640748 443644932 341333962 534225583 122784842 882866727 889453151 917370050 572373970 671331550 216770437 751665824 870999978 934572966 807028320 630967006 995956640 762132740 811062459 780316522 35010299 101556225 113456658 428815148 970106877 548816485 699992860 805506556 135299662 930230929 960407960 833402788 210551156 797653201 42749042 875694189 738715549 988975327 880114615 834090431 179948115 816209310 166372365 434401744 913800560 829698715 487360965 948568070 405691147 234445559 827454672 415966257 47310371 564073862 866803466 967721797 513348454 649595748 673375240 640954977 650835704 762003883 907153498 737090791 663270123 810874304 692355621 932786624 885548113 972762923 83401622 946421342 401311451 926926476 539224707 783143304 203866678 502268098 538147404 24216030 808104838 867626284 984902350 79994652 319476564 215977227 654808816 851725740 379195405 77908111 815704925 183784228 739071145 868077885 991454367 61983848 952765997 65294979 915486368 67520993 82676766 827151428 375398696 328691391 588350523 784501095 900940231 789760798 815446678 643306247 151590277 881096084 219935244 261425753 807071850 16415105 763063478 405234244 345254227 884874672 616092934 299212528 395183401 264206954 861974946 914180372 511038662 994761350 756203478 290420680 720215228 503966880 812355183 617282226 109098269 820988335 618167499 579597902 146322905 740147476 398933955 854615980 469829372 258559231 909276632 724804959 999573208 683947080 842197105 764725727 998285599 959002812 858172630 879519894 778367012 870006766 852276620 998164533 727970389 406258162 839293691 915511555 139987770 439145608 963015275 460186801 219387554 858735963 764251275 918489371 394001738 820388740 788810120 292530329 949397718 766593440 107519961 192142400 900002788 167102127 38392380 664352133 867507847 997034377 52828938 837419688 890218539 139510756 65683494 749966090 531494222 863269355 880876043 165426665 653288683 768577875 922026285 828262749 289706236 750904410 996763096 243284645 666029085 756020419 560726522 943646582 550513973 978506947 608232023 959181553 787334823 933884099 885741565 853312087 207896223 56251420 547439416 580856316 248364408 190943267 310947702 46641654 552741079 650575101 911922151 950698031 528765197 927264806 759682260 767420106 657379081 316824827 487184935 135229 426378079 603110812 735088637 750186539 241795773 904863442 624363463 957747279 519689861 538965676 213140674 234184075 942732623 681218770 964051571 848049316 133956469 789418890 778921040 744832307 679502924 123872126 521089602 961338187 768235450 215885323 555467213 958457954 563504723 917327210 324500961 131331681 920715416 819281376 892992472 785192904 256344731 25278662 752196101 848550180 370171943 553952587 214101429 876128406 172872017 633963589 741163968 37298147 222520313 961735943 772897354 848538755 836453704 187531036 527524840 984078951 496325417 871026065 323755401 33313586 75753012 926484568 981293413 726843205 949507301 680178827 849722756 778415157 906174314 503953710 977208025 704392136 895431252 39288235 930301942 14613654 573697515 892285913 700916567 755701142 227373772 361181267 83515569 84684806 851251445 150907994 210278191 329508157 780198988 30516159 507989049 986799277 878316309 228787192 63235149 790502758 696542275 8455511 980943487 455756504 741252575 890756825 335301319 912301660 912603991 724166254 41685091 626616037 815608112 338813616 870982128 789961139 771652123 861214014 854239258 690016955 841016244 965788907 946709091 791697312 313376224 75047945 53888266 598807253 404370696 980255652 753818750 862536342 432913352 837409160 477400599 765786354 141771788 497472241 13931300 640846339 403918456 657029793 913380873 963736047 369960177 801267306 807003376 938402992 8642995 72401658 875155555 949370275 207045512 349309148 432833057 647431896 825093649 917698982 989676626 185030097 948269767 939736794 777654893 814308395 795865044 925107463 664014699 796836247 365020315 984283614 903880103 538425797 884621564 865780268 161202069 746700792 884306713 825420038 754051855 711209922 994106082 42104040 449625920 968090923 67337467 878934444 960714009 623688279 172184343 95515993 792617060 269303556 467546262 995572491 537621887 157506019 613834153 926261112 840568002 947745986 868455790 905402871 747479837 874740839 916853613 867620915 818098729 632094016 575492223 958884007 831092860 981052795 638058280 833083811 178750528 251067969 964315353 766538423 26637665 136602600 747387549 761191530 872429082 791335479 766675671 998405917 950175515 999255801 860470888 828336513 785977636 788554676 488538384 32345332 465075844 743945616 936792442 807870376 747664688 248376529 618419100 898186876 919840599 942357068 982907759 354168813 678921122 837523988 890989061 739415877 552189995 434495864 765769546 805962979 966411092 38489583 976319301 140169033 575555204 901845894 415144402 949000920 86973439 996595585 737579965 308559958 412749466 939674516 858746796 874977242 496982559 357817340 822363526 746084496 707354772 734134916 521557530 747484214 88595296 325454144 573084882 747996986 746195778 302958386 979798015 601392819 714130474 240955057 880627430 684277937 6531754 11191122 86947990 846741340 834513985 204975844 52353762 284273541 390835179 856502612 156490335 933198336 771945604 964933996 421965167 512517476 23608678 807820965 229273150 808440631 807061266 579223777 583968809 692187179 511738240 575205190 222074644 711895856 622890080 778342020 171274742 421056931 179696230 377181261 933940550 533757487 286020411 317987314 847734461 309608111 75765362 770632273 722757463 901363933 791020178 907027791 428158891 753287252 563049894 988071108 880086734 247823329 757142275 6946199 993801483 775757507 382303057 985848530 361827872 198706447 253984118 904122454 11451758 862503109 790990621 370026493 239464340 644555611 745537864 195537232 931880906 138973712 436067407 754058228 445028222 926984302 329595959 271225416 888070873 198878035 397147949 979250089 91149580 759926450 171588814 937840386 913581298 967238496 789404572 800594313 857387235 557846178 50439640 738349798 751531899 984017973 534496916 22976392 125221790 145585634 771562220 895415448 148446783 876071126 693174709 801774008 591989397 813761726 696336067 570850470 894021873 930941666 767964058 890825932 245540111 121677742 192595345 946526607 550442979 545329764 571118762 420000230 131002931 890827735 345462746 882177044 838240452 595093615 448600963 611027809 3925361 905335237 530521328 809494211 401041826 85859872 361169455 673270366 746056610 864590605 421326937 67294828 367091542 6586534 88842041 366467011 861268759 181393729 163220530 848567899 45691030 589753515 744426455 596599355 845453257 352467017 199270335 896094472 126957373 990460943 34859434 109884007 778823412 950505186 991471218 614226001 810842115 161233061 891589162 979416782 366006552 539963654 906078374 815570041 391907738 476563013 559016159 772227864 926544688 449575156 683630592 598135264 171124939 78249402 877161075 931331590 959706775 482564585 297388973 412053765 4543362 557616306 229361728 333386633 26100676 390448453 832032382 774244817 566599164 602580100 760318570 512432530 765929163 872213756 224535473 740712257 862946006 288583707 852394376 869373536 667485836 287776794 238137854 536527674 228613401 527299742 406391542 488393972 759213935 534397937 982356460 186404824 72312153 855303873 800061257 932609363 840034569 14595027 582947237 403215310 899929916 632405617 632513439 714792401 527704655 63648515 362691198 894548632 752424075 761074636 750393836 55135502 343478698 87894017 893144135 243334031 622618977 973580561 949415702 783472950 318173521 530015670 923690480 821482715 875505800 955399028 737020247 72861016 843748681 720687257 805362090 695491919 76687003 177739524 500794773 60342972 840450448 793178103 216513552 849661819 666254772 967621186 826984639 500431829 192224443 599518491 249329399 244757083 918344778 812841827 803095163 63519928 904517343 674056120 799634703 852889768 794294470 908555623 728248968 892254631 949940268 612599707 919021179 214086291 455134189 144016516 989653472 918761899 886622187 198843898 992423588 677312193 845094141 237806560 878022213 888803283 896964125 655046936 980402637 987425746 25313645 287841622 780668028 812190998 952955323 375629973 989888460 154924439 348124960 722698701 610741570 822651543 281588966 917112878 833684357 836831802 867798086 915974578 830590452 861158463 957331946 783174148 330503620 527854478 745830681 753568243 690042029 474964390 406379243 292386007 616602534 374727985 980622402 967656083 773532747 872713070 404370593 662453262 807824412 186650420 789101394 965528336 260043305 20217163 760431766 869303848 389715565 804329349 325015010 614436865 778657940 661714417 709894153 707843694 886172304 490715034 950965233 978346932 812746320 493491786 512759778 682221973 2348490 327907765 804153203 399263132 964744583 609166536 824991883 266053930 674752039 939870228 194588359 183840129 13421692 846408171 32591334 994022413 592876582 550746022 846604911 979660363 556885931 482510577 762114861 618664048 440002215 818111387 871425784 575362554 947148467 344867403 883064746 381051683 642908082 737921613 128783042 292955579 741999455 154155374 986129941 438940057 798778950 535828606 951346835 637479511 557603352 860504232 838288290 715533258 737020247 971583095 367960545 917145649 981119938 995875135 732396635 993162665 691157445 182355374 673102337 19850185 821582540 699066925 34051928 964541814 131066986 988840669 676932847 999067995 922073314 585295723 303672759 800766830 704926417 932308480 171194066 982756180 835336096 934816439 577130401 210255495 565541577 359554019 212164063 782844869 752650937 147154000 56026634 278482084 817532996 646441638 858236125 897369800 919861856 894164138 522439676 960377686 724176763 307337994 233902890 808497622 983537736 956206474 944818600 926619722 962067581 189988924 714291651 272877691 598070065 936160092 791216586 490727877 993680813 393405838 804882227 947872461 46921844 916390957 885534286 516165447 95844090 386019205 982831891 979228367 378002632 965757205 468022726 551032981 599098695 332503819 574139760 531865223 543095511 911654613 980366827 920021027 963756215 731462036 55307240 991344445 506521583 867861967 616430886 60563936 781821781 872452356 404386346 149618972 740193493 345160810 770267784 683780522 930088188 857940790 915082617 871838141 571351510 381877145 696840140 766704088 806560609 919073067 908988823 972592813 428839221 780510711 879154710 970748254 631338291 500686060 913685239 940094074 799891585 917750359 820199609 853060207 479387092 995153314 942048735 740352481 256069532 230354317 433306826 874387802 846168025 798433959 617616558 827671770 970138630 521436006 131034030 901384588 862126575 389320277 430429122 20135037 955948473 129908860 53215000 822580952 775845375 119324676 737020247 127875495 722576892 471344668 626231427 588344737 989125924 694977922 236898052 256525524 903184547 951514088 765780291 999256888 978823958 989230275 236675846 337210884 857720761 772730433 70115990 558005530 996452036 547207695 301767231 126757902 889167953 998792736 121359388 16508382 900698990 417607982 883234420 910622823 599483802 870684349 955490751 792297074 787980445 687224103 251964307 643362251 972740429 687537355 760664696 934729724 992885645 842140613 108248448 914378325 432623431 874200383 744800165 166319885 853458004 935343069 271886454 493287751 401038622 242537503 508870606 161540531 952789321 928584543 299204614 276376542 24315932 131519872 429137644 774561092 941419791 881061082 925873960 861298993 792442800 71700293 264537322 954006101 794679487 747459215 970081488 866862509 977737964 921437630 795462179 501832984 889402211 737696235 176522753 891683635 460870419 956054869 832974733 881600457 737179578 953614277 15663747 841554589 820975818 928396941 893837894 860182521 215934065 888624805 546658653 423715486 212221354 657418241 206174981 406724134 845215516 118167288 851702905 789045426 114880606 592958039 619519040 803335104 601346777 753111292 764596732 879200954 900126425 755421611 268183884 888706517 847851860 662094812 164424546 534194234 292507208 760744129 413836872 705901249 740257064 755457945 901073533 763415865 169658970 547107401 717832397 246377032 845848304 932672834 707374275 846524875 954371905 806545164 890412673 947863598 996779276 938235694 916877097 907314776 753156450 360515658 780631404 194306198 177337933 408915586 551954729 460098331 486181279 890627909 25609287 495913500 956940634 927488764 784234350 752763770 441146812 330982283 740597932 763186755 982810785 950156358 926261199 779527396 964410611 3232931 912024994 979534651 843782241 192610189 942136089 597323434 86891414 847913662 564032735 845491130 140129370 854959421 955741990 531914943 962304566 777919545 589391826 834536676 859494938 936727612 925016309 441318620 358500956 761370695 622663930 396878572 839950611 931427240 848393199 459615115 978465483 958980244 741062736 825850994 886916366 969986316 451165083 513443686 826308636 630224614 871479426 419480201 20736775 860892525 566309488 514201937 754657393 904828742 173637244 57488000 346949556 496840793 844041845 410256916 374946209 966010913 302735673 370176324 877113876 498992257 783119606 413804547 284997492 968870178 28823477 188704667 930735944 889244167 366939189 309793413 419047100 894752806 856858316 996417572 612693666 458756406 354248709 977873482 472917035 258034254 98048019 190517187 324096822 11205279 896335352 904117817 545207747 875578730 774865445 507189861 872334072 754820911 354517656 632008434 974772982 801977428 808732703 242767643 859941096 294929256 298532836 95957481 761103919 239748074 793928255 499551960 943864668 943208183 779869889 187417622 879508872 174377639 800588268 738314854 60353490 187102006 363850195 968850906 762911150 144782573 670786039 848793824 567257094 909478056 775233039 136973739 356284323 737020247 927762972 936838397 965624080 745913399 649385717 871591346 978091518 68361161 957736154 643688183 869627928 937075573 784348801 838742528 123705871 189146402 870817505 898990255 890242860 335512561 924776886 874049876 870601997 267245484 917059851 226246499 172395453 750285488 339605371 92762061 819688980 812397133 793781261 676658571 968291319 666446324 460472597 898240816 905926268 221395351 355820657 285878824 370233191 97669959 936540425 892068766 836484940 828825568 192723408 229903258 603271196 348488637 54779182 943826961 242918329 314270945 809719594 581785018 538580086 561055959 454568710 940320800 739428548 476408446 507845270 452566612 822564262 239023452 493054957 985815046 255313436 962676822 574668577 817621349 123636034 779460872 561461437 245756939 325433933 876979918 191464562 6939407 811925147 759000584 353987286 774116998 889027449 465717592 900372893 642979604 111790929 942802664 28968546 487820204 712059984 865500864 436799444 549147402 742097224 603931292 390467836 316997764 838364353 971164660 820153054 564504518 827162416 774740873 418079835 606141481 834729906 376508936 801654925 872192759 902557140 946312939 341906706 979311379 765860771 899464156 21085821 749716405 926583524 793983934 959908667 950572839 874854968 834960870 971986755 938527219 341688012 945285621 265586276 634148102 412137268 129586333 894871854 423754599 783830903 949460447 945194641 953346540 909411379 735137089 48569041 962285302 745913328 825484861 214313707 229988089 91169417 997739085 87863127 951833786 33377660 696013960 823649295 655680974 798879933 616638205 984060326 764082180 534655979 702581331 890221399 908559796 428679602 885680695 341873528 803894583 146247968 894162222 424666894 666615165 990465705 771255779 348288641 917179170 361268297 778634708 66826685 643127951 981980733 737897768 166305032 917921501 743111572 920583731 516267257 773695386 670414035 619792694 379621974 795712835 764226571 302322999 411368751 913856219 398674021 330217917 918425328 658393129 837676737 344577668 271660378 235043370 747345741 802620536 890526882 811360813 284680806 864749664 925059439 906191060 548703154 803442181 833532117 590174298 923587615 761327760 367439410 923984263 416291183 897505811 596417354 944800089 753963550 861514091 747656261 932138094 368528277 868704270 825537861 500430895 417390139 371012206 718561218 315579936 504793214 331039320 332535819 802698428 368622221 445905970 759919475 225431523 984043237 241240774 804544931 621116256 702250621 621542305 989376574 763331854 318648162 951036435 744851772 848990928 751216345 880315093 550362939 967591522 567949011 274112546 265531738 725160826 289193823 5186989 41721455 915004565 6358014 14248881 751552761 884436374 836721753 378332202 65794433 984519461 926197480 184156784 296096405 403443761 963193652 864508861 656635703 532143878 928284518 768651137 950638780 781601790 407358410 456882828 742934900 534277141 995260047 948183729 816667900 997800775 432402740 65622292 471852159 764212245 65708379 887922542 336258783 985880045 30161135 732101491 433312529 952410255 27148184 751454708 469583854 527073954 838104597 948803496 414645479 739971472 810661311 642545842 900026390 264225853 831155316 308057432 770675671 33604 884054166 776123433 87476384 613762359 970876167 812641414 855103152 822494785 958513265 873047994 455779559 613631208 174858624 352095878 665746151 990922147 5874692 379831619 966083729 820012695 571784957 155534555 829638461 524281084 884750643 147092417 798835687 737020247 445711718 882795246 831914123 876014705 900173546 991153700 822071192 491301600 717329661 507709065 266737991 579635676 401814691 259280768 760612312 712945950 7305073 287009497 114646922 487071712 660993990 235222676 879559646 786650738 563057261 265778169 63887800 182320355 256879591 879005012 266540493 946536699 926306490 925999948 872606773 863892607 863247680 938114032 831575895 969025183 905400693 890813886 804947573 231009161 953441885 965931455 863104782 764568319 8971053 852397267 720356710 805727718 169434715 796449915 204486837 975700615 376925735 813496911 304053564 889978111 622097027 872271508 375892606 320414800 344444484 302245594 502384829 702342239 78295541 891378370 894632003 783377730 936644948 845344462 844412656 922622966 588188081 877921655 77848617 573487964 675525060 65070307 606533035 411305439 595664101 821324300 787877909 190925547 249787687 333153524 723690874 743137954 794501425 327811579 495012111 829252221 522764774 435991628 10755451 888954572 235744584 783134393 458761366 585746279 758414043 578570151 820286201 795023521 723412210 763801043 921698196 200686119 797040100 796966167 918184635 836737485 471531227 333719979 695572216 205059119 940969278 988323238 809332141 872297621 988604986 552847677 948571145 585339884 118437030 744458448 856908865 13031399 978718007 889101040 724318503 662961552 943958729 957410539 873301198 783544562 668750431 770614018 296521682 414079200 468563236 101311945 904366285 933843731 141997645 877903935 366407181 745512880 708654456 762272420 866522233 607795458 774703588 517680816 948671420 830987722 125550190 882192343 519226541 818786116 936937967 839356106 596641782 467014765 798404749 897599649 96168160 953053041 522055973 785080034 767709702 910342991 806500265 678780719 983602502 359334259 914745384 768175132 582072295 870463254 836026024 652717260 922860979 571778119 313676507 403455894 697636547 70428772 212415058 821172395 768870447 776215736 669810285 15898884 985464377 40708884 38946856 751344329 967985647 710152510 875795976 943127284 254438501 895203730 445753422 965972619 349376673 63262507 187772078 908620814 814694199 982789086 224107754 127241110 122550068 334038155 914972846 670773461 750262866 901637233 862300542 59321750 836541130 204928949 657051716 311074831 47351764 395133851 394486561 852428147 392752667 38511117 801046817 432384800 724203177 317344683 930161700 569331616 992660585 274091267 848504911 598978577 844405232 730808471 763675035 353011945 781777708 279355268 355667347 927615025 962924563 189773929 192288080 942947043 115214156 324918091 360099211 601216746 821540298 929006121 754830635 158426276 752301216 839294687 288232603 238955114 931033327 854502975 914360257 769922920 192932669 616902877 103606827 489569603 812257800 50035978 904074669 486839310 633261773 152901699 820094789 260219893 956075606 763208650 312091500 61700721 319528105 345716745 574849881 613173694 54704466 581937256 675708711 898727082 859984503 984611787 909118697 56185994 829384074 540745539 654447176 618274141 364247264 466906092 805881527 114291201 50127355 175715480 296546348 852755126 346909981 200143234 978423625 455734485 32854446 666695213 136975976 574430156 262219106 64388797 519722378 951724071 128514928 782485545 563045051 160825268 971148792 738881457 60941694 257239269 847629086 949887135 882132112 122937477 849059413 907128036 115061930 849594997 575536198 309330210 786514140 147771761 814880480 768813840 885981499 360368368 435448377 754000529 232042786 994576003 396042305 485024720 541101258 969687371 793372455 771307429 484767791 493454327 261867572 924980407 828474209 699343171 97119298 546930224 950455245 350018581 892328777 971697979 147818093 390525817 985347237 375450782 961213358 466258245 275296031 934159080 873919967 40544579 323554975 169844971 5690051 254826041 967650627 765240311 355493993 556439042 751006249 857364632 631111972 821597189 698597778 214368456 859494131 46449654 739235977 820856862 329469224 991308129 841548785 84402092 24623986 934626573 285709302 951050413 879097748 94764270 40551386 850497255 794063139 799854392 206879696 395834645 807420786 569173518 818255141 551207202 564489082 924032023 778119211 904153113 810331886 603137575 839590398 817714666 932863556 138210809 624054617 367787091 423123389 325215547 884178139 742043005 893950882 167249250 551396340 967907869 323819820 6571636 216514973 879345669 905766770 909717862 782203195 606707555 372776829 830884957 783157607 768904087 840005734 588541970 913732991 887373555 879853959 811300643 364895475 275057968 496833093 166467072 947925030 75755481 92230055 194050349 473819538 957432564 386180722 8756803 942128856 763024933 879587460 933207634 985396248 708793483 943072222 849720376 753366536 869458858 935729903 459053753 911688701 563588287 737647523 867364734 230338246 654943878 902669895 950036429 869455112 287532462 838929793 408367053 23170327 240763017 109813234 452924943 758258856 505351834 716830034 216721727 273581375 870350597 726509558 930212839 253040574 755307848 990944413 855788906 784662153 571008804 812998495 855810433 940751408 238103894 822331997 983764486 952118246 923066931 327405343 737411232 562685775 762170755 253066663 74430150 150088507 771036659 834084578 965229826 290011560 160475852 976814269 990254989 794169213 931780322 814648604 831739794 745714041 423898195 587415270 80958869 926471111 129799967 319085584 869226011 750723133 597217304 983945110 72807286 251231686 863440248 784873396 871326294 930327876 859005983 337551645 849039521 75107277 249889447 829628571 740443133 979530799 185069372 286421300 862133908 487264859 694147722 184673545 808783726 84730507 778276368 920616564 480888257 246577068 377799128 759837918 155434196 357312281 767765845 651911424 336277565 277803149 511953729 272082351 369844025 441735945 800084100 661403361 911422888 917048653 205181156 810450623 976992829 883051489 760979845 941001938 485441892 604369425 785251246 402593855 235016740 312032864 943385168 690048204 183822799 188676962 765900430 982707107 750379450 492088000 198029285 747338998 635112042 536861608 291802637 925749145 272895803 886028237 601168204 784842974 744931090 678131172 138264085 942285313 774861462 103180259 748508885 639312510 854415409 411761304 187507986 221838957 912298447 727918498 756806082 663694531 151691346 968124707 430448864 885591739 996925553 796618637 988076181 480222607 305483379 351329491 546110404 203570741 952979309 797845178 591962329 170536804 219472240 868777055 888870534 908741608 533488335 465762670 851729016 940309783 763033884 809791668 631368008 377676990 694215636 611469894 16274153 532627688 998142248 804188881 199584305 521283949 885285758 753964936 555879520 806410791 658873180 749836046 858845057 251401360 715663961 545253655 908052347 776005551 843194445 74626072 720532649 909251269 904080154 871948372 694186477 606826274 260848690 221669372 763477707 955292817 534005242 249368779 479830803 87144797 745355856 899310503 522030050 919027892 927145770 458840821 37646338 272957499 511684280 954199726 984181766 742683529 728203719 789984014 259425875 866630608 120024482 810977725 925476390 862238865 866680584 464856922 940148910 763193548 102760562 175226484 511236404 354893333 732693205 919360246 217954465 985815289 790323894 707271619 789081346 458273367 650491234 296668239 24977155 891779884 864354540 739150236 772782087 957535456 10893816 478294693 898522081 944063598 598823618 373944832 970741024 265505423 981996778 132666631 100049602 132060900 844346888 929944728 920074686 468013999 677575645 596965316 952937104 931080228 542811929 833338612 524911148 494548307 855957480 320937013 770336312 138070783 833717579 929366616 910593884 958739679 704826107 571904040 779217717 742787458 667940200 976096298 744007444 246985104 831901577 802956695 790181464 763104629 911685912 902273981 847633957 1305706 384876621 814366544 882500944 634403926 349823274 990132021 263241604 830050048 704623426 424440525 823642733 289681143 999833258 233429630 800096981 844573897 538127063 822783871 871791230 522847580 913198268 755916598 200513894 757458411 873297956 788532580 61090471 711142176 345245445 937322659 850765128 968737290 552205807 880285528 368485114 118214175 494329447 823691881 976046370 955130824 256586780 630175374 325794891 769660401 869503722 387396280 612880573 39668505 746999694 809592741 812072871 685848104 380068967 949851311 922678941 330378580 589199044 752405665 946711347 882603706 662469496 794199368 822271491 570727225 60529213 883311501 364832152 24715936 848572547 988797759 481911809 818553480 861654994 354263614 523580484 364106475 862572159 894968217 236105386 748380883 831517915 750717333 940804491 841182208 190330625 885516081 911794197 535404485 46214544 970142737 162663048 802613682 906119812 799620844 986726373 458052632 852123300 35488198 995505495 783300959 855908815 864952711 806497300 878411393 404175612 133509844 103325658 220724665 762835669 893686499 59603554 630336118 843008601 982433389 464503997 35152278 754765071 258910928 896723538 855383702 291356979 452270279 24791909 353534600 873694157 844143420 813667892 942369243 375732320 381407626 330115871 742125164 778259761 846431595 870380857 837905180 856446902 56609219 504725450 928456930 797121794 912231149 688766884 972512987 258032120 632682675 915709616 823651303 926448055 860230423 881974568 454178973 742038896 954168168 932081293 576797333 171581927 136925961 169857526 637024759 171167821 795910701 590550406 901411566 213473707 884583066 374960814 752192783 890543221 850251848 758572468 274759172 809531465 952202124 954606897 365228023 155831042 745454588 70081318 990721463 906364331 926041083 217073168 763585886 909715885 771307105 688063930 873415992 880791989 898273911 831092503 793891475 581630006 875227307 781169654 766305073 952001855 376359040 820989698 833131021 110802174 622475059 603465717 653554435 472230 941541632 206639596 841749078 678892809 852189935 100223650 688692135 824425273 618109574 964804588 928948927 352155300 970490979 896629092 395102253 821586274 940556250 857777739 134268914 645399136 211563325 247321491 67837037 972953669 862889002 106036326 682436211 88226022 657522320 701659405 44162747 833144793 354957528 737020247 745151277 820560507 695071459 836722273 564666865 415791577 790621236 994571618 873884618 934658238 940242380 159432075 142442750 908624895 972869190 976957505 827952943 882307790 191660977 313890923 862159496 14080386 199641392 908058034 948461947 597160645 522374269 609144844 770107350 524302039 617118144 623549077 636785523 678847794 19038308 299628252 277276934 87191985 663818591 604141762 250712646 103452617 810451707 609612333 176695258 755373115 814895126 7654274 796133183 372826264 605131555 504246709 320316000 639856413 119343472 126656375 988859094 159201444 830986471 779874372 681871359 789612537 978906471 512438096 322743857 705711557 849408560 50176283 764808642 928961594 864451418 19038466 885642008 819890037 335777126 663644406 341527244 29761713 222708234 754277760 915284575 3175238 771051234 929499471 131805060 313533316 677196418 176317339 51001490 538386512 842070807 787650518 802304354 52941630 951016473 579720425 969876602 617545409 703459169 945310352 846604628 846075518 723470058 832926818 880565710 406693952 768848616 855851531 816476878 802917105 113671188 614786811 532210500 772454350 900409734 796156160 213874536 27922516 842357746 43712891 978787200 221514171 491704581 535411471 380011813 980604666 736429573 800000191 332784242 832567488 656547782 138508338 982324349 354267252 357266354 865474013 981851628 112133657 368959926 471399447 662118443 795561282 906714803 535463344 784130364 498943940 578132966 186633429 88441948 332371622 614542078 614416252 858880643 828572545 102095570 858597486 948921949 873700634 977302162 810067393 510543035 849896035 784005349 935098719 508373327 504503510 849161251 772484210 957056316 788704485 646512754 795425917 635087146 704760971 880612227 70038549 995116890 373734566 868504235 675066364 176896059 755216724 998040486 258286877 592624166 916255653 989154225 999764137 977633943 625156321 37519435 492130475 809925664 979608618 509236795 141363647 755892290 868598634 220747275 774400522 423956958 796622926 830902897 914253388 817679369 694804198 612841950 844605956 599455532 876155308 174335933 579365293 165639185 894835567 995606157 366127194 799760983 970574974 475485480 827074872 582437903 472766015 624992383 702195611 814195752 762684267 974282831 554799250 238736054 861262049 800843616 640752987 451793887 821894887 764431749 52567404 130227491 949117635 961410240 741854086 387909589 840709289 116934509 371938188 778394208 895116401 861220721 78233545 591079038 642799119 897059454 574147829 343742216 859429997 964110469 743432884 893757735 120614515 979466765 587051826 813307271 809774831 777364349 790864469 859774964 563828198 179727917 24339458 268950992 932851260 475543052 294574284 766241064 557573819 889901801 801426348 691359625 818368710 306932255 451522128 935610326 528844678 450226250 545434261 332216988 580254376 733722846 936767995 916105212 983753921 537063543 981909811 942070169 74122224 973963490 966853137 266581080 946649951 464693799 780399702 953932818 85554004 169906684 755778420 389189336 693178130 189705990 931868492 899395671 347740415 250844734 874658824 899506279 734517960 904434811 197063040 794507210 442031699 844820289 90400611 555796577 860569107 792876033 478069677 863810151 804827352 242111820 878511440 384226481 681632910 881797064 911968587 918699680 230033262 961075784 923963895 737020247 973598502 193825429 917176340 901737679 924078404 423904867 141092147 943861659 654676865 613267816 939402332 142310013 948245836 473636382 956290701 21700682 20883248 826540296 825226132 937599592 738737311 467496833 645287475 536178188 550878577 322978104 308675785 740729967 319344791 910346353 313205275 909137731 635012990 819662475 174521387 832095001 900964069 439034924 869093929 258902477 536006770 509880461 265238255 331437756 61157774 826915321 590198250 774976572 934532120 398025915 13787162 632191559 698231198 988096462 958694068 835476331 681115352 964580034 634625960 902233459 254887492 821544406 936413921 939721210 631336488 737432021 87657847 597511845 310604582 904093361 302156173 72741443 812287002 804535239 219933069 905686663 58999718 349036948 873101649 881008893 281712502 317112524 665456408 989637595 745203436 19073500 319097459 883705127 740761795 995512418 575201125 857710427 840169244 829620016 596725694 106137536 176967102 492555694 139304387 967699849 755223158 531594747 876714866 216335480 562984147 304125613 42332269 772388267 941876869 937542802 692263962 757757961 603405376 950889338 574221266 744171923 806192554 942320940 997317387 661004092 753794043 606633951 83325493 888111532 936622731 135825868 579222157 21529714 960556089 204998409 679382293 997674970 232026767 475430481 245859670 238349463 182579446 79927484 963492078 887705393 8696799 836524290 661443687 973931301 612895067 94931643 909899035 993271020 799235283 848007909 86207831 94547420 718297412 851715290 157260304 276165779 931134934 925636748 681048806 442360935 96492762 441191251 96959812 977059030 395233106 869471747 999613115 450673676 290814662 958045267 804474173 764898356 898351888 874173433 238322909 856199720 832601410 818267442 889304964 719703619 866519128 273818539 134982276 49978668 204667359 844968240 801725784 862732840 153078967 796603766 544951414 804152837 227416068 803564871 227769093 939227771 847287769 852037874 636670248 952746507 941928528 808584175 401602914 8567631 837814262 165287148 988323910 864494730 295375071 185484547 141845485 967984824 872181703 961775135 622513838 656229197 52165986 460399252 901981179 847645292 997602263 915290530 820936071 935622389 745622781 917532813 328307788 349509554 950676626 479209339 521065097 701961367 271559022 781557119 880103109 307920734 762228824 862219174 207744251 457109844 887384507 962124714 253629035 880181779 873746549 372633977 754687622 378901788 807019397 674882317 815822442 322279996 382641953 557307205 996712143 252654086 611894859 589406152 617693282 755715544 430843944 844138392 996724838 896497694 679259007 475092277 915060789 194707924 786538570 69189441 6687379 249461582 921552491 891884116 837609298 804537934 848144916 126606043 268090211 846103040 512456230 758066953 708715181 782151404 487808153 930742196 277225827 126037118 839513364 881536725 610219305 519480219 102693631 413104873 39209766 944259832 957245371 604384046 597480040 298185818 843369873 627639130 521023446 70732195 256453671 991272318 235763133 471292746 423648620 788969489 776456626 920087443 10902462 633943125 982670115 158712807 755685939 912497293 785730778 983023004 794149315 934923551 218117874 113941629 162124121 931549145 756397461 741369424 462601830 832258345 274685751 817249452 100601137 862799183 996948032 392808622 501702638 818211277 946426232 957924073 466519464 756022429 824087106 89085320 843911258 359493364 614265330 190104192 873823442 807104312 217223850 450428737 151913093 483589363 795437986 52549835 130122523 986676043 36191501 677772705 285230929 754172954 154655491 925879644 960168862 949316308 490883312 568872092 840695630 915493446 117651887 355405584 307471761 165765770 174426162 760924939 596981250 920281175 956517356 534398187 952526275 54198952 826562465 968770008 983050259 864717136 381005220 696233817 741723203 858839238 782982866 923841813 809575931 773702811 511850112 532029584 830881754 964126186 791052448 268205583 771396076 790812833 799355037 868762353 990280135 535255893 942049924 737020247 768245786 214525970 761413856 849386799 826117707 865339871 868932443 770635522 507420716 112046344 773772687 415832021 854819258 728673344 15989031 802610216 810732642 836250348 785946315 836508711 810845307 475121954 806475360 973184367 781927601 950734881 167519558 409331050 226759135 847271958 247120977 809478637 980154975 962964090 907699104 848878731 511181294 950239209 78263272 248355512 256348209 902675310 537764329 786443846 300274633 699886836 387031810 155184018 946393950 931803580 196102264 220515364 939317431 803065336 653793232 214120813 456785559 257335957 976596704 758173000 932204463 589962388 374454156 10031047 914789776 372309303 146089183 756835324 380386392 40745626 888717505 951261576 25639904 805288718 32738129 963728250 254939441 267174083 138821186 316928766 950340785 771680493 920196729 45098690 804865285 885609793 973405056 211715730 974645944 891936460 101471234 880045360 760220382 964394367 863581168 841724312 662580977 939175974 767437235 915067622 388658367 789953253 852657148 80484666 823142227 857254003 986822783 435587243 598675942 888114442 955904994 770972211 703873775 508632965 903058866 181763421 900218983 711328697 250373890 625587878 742143799 370677961 868635974 915198375 800423871 582741409 98711358 780438737 244783533 149795978 658596419 739154395 940776372 858928862 860146091 176283526 982791672 216179801 81241178 981204116 910498213 8470117 563952399 201257283 760150485 196074083 760095154 915467466 983363262 811503342 572046621 833191160 965118858 483870780 866422100 800253925 549894283 160151566 783069381 930623674 749221027 859587942 819783296 986391286 940505244 108591708 567928361 335618187 952657658 133890673 110761931 400003632 180242313 868147487 822659789 932215920 861330906 842850649 144801871 262090219 851731940 964488350 486809892 467763840 972576658 883920414 456694440 681356539 116289565 229283934 500889734 710710861 463424040 783720712 662599574 502886087 942372413 243965042 746250867 900627630 391693042 160558400 681116957 56523863 265026205 815106529 164919161 886472160 832532281 514900746 149657520 820735079 302480611 657086402 285901908 846898273 866070768 387315780 572841391 771638915 980870912 330140905 185494490 954175322 334678833 510249259 778713350 997085118 902885168 999032143 438647006 738487437 801912541 998300211 641716375 828831711 986422164 984924908 214480831 883155133 202268271 389144774 405179788 465244188 870926648 463753436 787762276 331002650 851389955 435932545 95413785 177314656 270674799 279539099 909440340 579830715 156167520 939727712 256592941 758808182 702220779 275738545 773935750 941576493 980540884 848679933 508658968 881364120 958497268 12299382 828714920 577997107 951078042 138171813 948381863 776435588 656639742 918965408 566629892 159555804 507793698 757882439 115133376 740781033 741619480 144372361 468696941 76410073 337760319 204392977 785449979 149858004 382794454 760821044 799104294 388034779 799377773 250491784 918877607 713080226 41881197 204916007 304242088 100973994 782866105 402755486 761416834 545774278 765607992 659160605 736693078 857358998 829978826 773672135 873237069 46621579 375443668 227441645 282446229 167832405 805878074 952023340 756320722 757996141 560424304 942370863 273670931 555625531 601577951 67921870 877878555 753272012 876991258 362233992 896882367 801886703 896398665 421153766 808367889 451518762 586737529 424352375 155802485 925875587 272462715 281558622 962215782 761393104 201582475 808776018 718234754 153887331 840926826 838061758 812059461 868019786 897696638 976802756 715176179 879812598 993178421 351269068 720562694 326117438 746140160 739887598 889087844 572192398 778281762 207722721 992301743 234352160 910201225 740816868 979961010 912964207 761233516 284971824 890843752 819228653 775379884 941655156 225123708 286465079 266973970 818644866 520972712 433227118 852734286 460499720 573701983 889866545 935367444 954725267 998884821 222681643 297420355 79394087 67515244 899099371 401683391 626141621 562999237 286484403 140505888 857304695 440719325 913076141 722220928 998097527 844398992 804801080 621496377 854543122 417181776 495002651 821992354 836741719 20319439 323191717 783262611 759866028 43445883 723418205 13338703 141958664 523209660 335976869 875092303 857545651 849867663 590210279 428965246 546784961 821445185 589098430 563901391 550403395 974378142 993760099 739601054 926963668 836830951 779487035 934065198 914477357 910384914 293822143 454916342 873865884 559428242 202082962 552034181 907549821 254924719 825869068 681570015 797685376 265826271 343936766 936094881 896144860 390673993 256932223 807448871 988043013 649176727 603251829 859884361 891357547 745629918 901060415 879609036 340053234 859593528 655608710 32203519 507307552 18379800 73427089 222681168 811273204 905381440 900982608 377459285 768061609 52963409 965401806 827582760 918398043 800018328 701482726 836060647 503763428 833514889 243158764 1007055 702892150 807959789 495082914 214470424 886310681 784169253 975695541 841059993 111455883 771219682 11382545 837795019 853669879 908231088 211395180 995399237 787022483 6561378 941226655 945837141 801644745 571256565 701781408 62007125 737020247 781144767 942540501 958013629 843980606 222644696 500542622 869361903 429943077 737191651 605584753 875115721 289807104 161884473 170999653 819307947 881544188 11416686 334182472 352959240 433334484 766215146 893322872 846486578 818483611 777917811 747663379 855139826 648257474 992591774 988001371 224366480 434472823 744355818 361383429 394396908 783439264 252728487 534807907 860021093 973076512 185391367 474341200 558988425 175705852 575391761 601596261 983517490 48687038 68688264 870132102 762808657 840027774 34486880 746042477 827062205 329042000 946188732 911430115 408620630 410132998 927878628 948638293 777494162 827516052 818643271 1984848 892378061 781091179 454389109 271852173 760807856 908048794 846341032 526284534 126740102 728768382 866924124 881436096 428779601 15527546 977508170 293585264 992244466 884130153 728707755 390985493 894751295 770210186 10169968 861800539 52019578 839388830 399803217 369961786 909501112 920789251 659363529 996517852 132780190 792356618 959382072 704584510 676805606 951997793 829644289 802989177 100771702 457180141 76899110 61052204 850777778 132244 857444431 7017694 548508768 867685469 125154285 840065453 852540875 878594947 166466097 792326937 681109730 569850053 47496787 92566338 138871134 872706766 454007243 899411073 896781246 738036031 865533658 864313912 455480423 834023248 389921187 896492688 453525102 506151149 867893002 192450047 919256146 503450554 899104667 758056044 774345092 947060876 944463851 806856169 860546708 902326013 824657057 585280024 919397575 434246512 343273136 46139987 419214550 604616384 162617722 151458220 218183784 666012416 764953023 865700966 994862166 681268707 667504664 787305300 626562646 763466474 870698446 653954187 867452643 945257411 386605518 240151269 364711714 839272353 33964427 906787872 879913881 823977256 802745402 846433736 253788366 936270253 874744706 846990515 897515356 586903684 924018313 739887257 378892061 205033729 849335429 399458013 405824959 772250027 403989392 866427134 969536215 199634739 896920645 847058731 877516619 246955465 311540516 591485136 813456316 463551445 772662616 801047674 995370615 34398146 924303172 570694044 911349939 286247574 48102223 959339980 28548042 891397738 63102161 537175707 93801719 733717237 834213604 217297256 294593365 890494344 379621879 990494810 764006326 790684332 455908306 723530129 976787856 763899648 830835100 799841032 105681471 100552494 473374122 574507418 884133204 802036061 376544359 833205341 273556987 481873921 924078314 789315268 789221823 805449299 796838897 518202281 541520134 849044987 896602507 617264728 475308030 817486167 345048923 376659730 62550879 889651799 773703425 253587386 291690059 134345038 958143363 635866131 827760228 91633510 944210042 917648773 341779315 593926882 663620610 697868264 757045177 862058903 52089854 915301390 346940013 974443560 671048138 777995199 908267949 573664801 169001470 292183477 852738539 206635328 672238964 182047162 335367569 829161483 973756682 862089005 855732724 670749490 812905483 800390711 786533067 786798625 509203345 877525970 875859837 691191954 983819863 963237953 641858022 319971380 901704473 780273241 737262562 915086818 308385687 950853498 926483968 681889240 75860757 958684882 802267259 878523439 356632316 29949233 880629578 173785004 769072256 411088219 472510794 961945229 366337495 554663871 754292692 316005783 387024366 105429681 203997251 811822391 796377814 80551073 20898757 748280489 173579717 472382399 196014727 68580203 285507222 315581887 237431807 812943031 720674041 827792874 758908197 989939966 373267829 763370678 760240247 915742866 201589573 776202717 220565399 933781318 847897890 928436205 826046931 898357160 830030798 913761762 817586655 889804641 824331789 7795958 545824191 939097468 304035819 882007430 785478076 328739364 819178609 830741119 410037883 510469748 622778685 802755703 563232131 383938982 895162902 726345867 121958563 286438860 974544667 959072480 840060660 32273512 455460044 994859137 801044909 841520073 830327625 5650746 744712408 833282007 484883144 509904896 906380509 920384791 146827233 610887923 649739922 527074352 820035109 882695828 142818581 560025709 950865145 675151821 820127437 808790812 348693519 75582176 780117468 569913360 580490253 592691133 115679618 581808192 821295096 473023724 751553442 960050458 879391919 352606228 939782443 335846841 107212857 771181808 332754998 520718159 882174873 582750157 856681013 886836908 934294079 957434361 380315906 470362830 864603251 687512665 889182320 699404591 989705352 830129562 706598039 942901932 107332298 903729865 979382673 298070552 127002164 985330170 976568991 315040842 645636849 813330501 307047072 961300775 979775751 942716252 778630221 429982146 461504211 960797426 751231975 760064269 258861139 195026738 126123669 612623434 627498898 880326362 549391238 150237743 969603230 584040970 930769550 668112477 617753325 172160908 32498282 677268970 907674381 866900207 887204586 41990185 949277300 847617419 197549834 902515509 12371650 585361747 961937699 920377737 534067125 174162980 123149161 676322273 278814451 130944514 761103633 42399683 533413989 151673546 190729974 834702327 963731159 412842503 982259550 440543197 332103485 6303511 28921339 156412463 592092532 956038131 751930799 658002269 11004533 187858979 102587777 813529229 502498116 980765753 742142819 801088982 909301753 747836822 917333620 947067 182530927 375213838 928430039 286165884 825842853 545997356 326112879 867740214 724321918 920095556 961177955 816170752 75133652 108791521 175646236 33745265 753610888 768948756 161029265 386322787 545558960 358005542 871632501 982909835 826108265 58720154 75391230 786020815 319043060 126069127 122857366 11702554 827409436 841135384 892162544 515620493 641326847 886570736 993308810 927643887 826004687 35574154 894972690 761539375 942063435 983486894 207795605 816284516 267717815 513134404 963505500 785148836 169692316 17942882 437237602 239708901 904955762 855344405 845271320 924118789 477417137 313667236 499638478 732747148 134582050 958971789 812912423 986275172 289945197 22692614 270361946 756532528 893607408 782169025 789714553 911495480 38431273 872039630 650861995 706533839 807543123 914891057 231030734 236200716 977466092 83707607 404291896 306974301 270822378 414075623 882258544 273063799 737642442 344520932 398053040 761671612 448429520 720224525 810825295 746411770 808046887 267973535 799398447 503909150 229614751 616514162 128853149 369807340 865210707 350859063 452888573 30807076 201637925 435006287 830921922 233659879 787766796 406909000 742199178 942130604 976574107 247384275 93427561 935891794 941890416 236486208 50831508 798457577 782293849 908351705 896089695 326144404 505706818 754410228 737020247 974533766 173192657 787591834 965012261 228274957 454012077 774443249 980230165 979470338 962399256 634013701 394113415 821167361 523547572 68429859 300131361 949125867 178019409 772298357 806534029 911338821 987219108 110854268 593079726 994065137 964550714 783734043 803189553 92189769 737302328 679944866 397157072 495147285 308421523 774349401 871868493 855051265 436821846 928810482 764982401 737720387 982857998 3926647 840295103 761432295 970649108 390814002 930889279 805346600 597338357 455678965 787398985 466046766 789631490 17263328 554780083 862048113 888791997 176370204 349280747 713096950 304214509 832087725 369349964 863370217 474554551 248095065 980826753 740842755 966602208 809436308 358977609 842229657 610837653 877583577 987972755 675503059 455203559 930115105 836805161 804302071 639410491 846992058 905557812 470557264 991203978 980642418 764439644 830953776 447299678 895517031 709530362 54600628 647361602 601371223 8069323 560314893 964958299 76511477 943370920 859650411 207904561 938338421 513413964 878490035 141260030 114716153 889450563 833193779 119245716 695644066 862994116 842885602 273662525 869732822 673309676 823278141 910674329 810316834 242328072 215166954 963563697 338803343 494893862 896310305 181889273 372307234 880874541 828346227 800101420 706140965 584736700 981162286 337702627 703076169 998243624 41071799 613766196 270544325 776763639 261697558 977843779 790334032 682167040 893239105 64847092 943126332 91588241 921969926 792884395 977798659 348338961 958550890 21862680 55324121 104254507 877912437 291920270 143698249 960458854 860102328 418104902 755829908 946005049 53108684 645413544 992590935 525046336 990301976 13727927 233552296 585261208 315554045 653190562 680120517 930160979 25591394 610022024 48809309 918657550 742964649 751883298 230057257 973832117 60352450 637406456 742271687 861122152 163420848 820603045 74676364 907024038 903959662 280700818 648682681 298144573 765134099 162943671 851385641 113239925 827848466 593746454 164110412 786846546 475534315 175927992 365276368 489052293 891616390 745473246 742901674 899865245 287314488 270273098 919182199 748367167 225808048 833135895 960365741 502418676 657412235 946076923 846634500 322186495 18544256 805709096 754159951 847362102 755005637 815180659 837252840 782401685 58367373 175715288 718438490 578359017 922038332 960011449 612995669 994036707 694314877 825392277 808516886 803254110 160582263 566521094 932146317 420596772 44872431 873533186 950898913 833786093 627885355 807668129 773550253 106207626 450257620 918071961 993426160 225406153 848736996 184177521 878526858 809381175 880287919 305595156 993887046 363986225 797816318 842804867 46076246 297769647 667375558 805895916 946875636 561249690 301525608 898990856 929433459 374286273 859479412 527133879 947638393 365281975 929671317 683315004 414234053 118431111 953945883 559997276 991906617 121525655 962544493 937365420 177196253 487103060 679415558 702747396 644884263 996344660 978304466 838153450 878359331 353933215 761103027 698363460 644445866 290659221 911690263 818748908 257526795 736273866 414600768 938134819 704744366 611396444 66447717 652707917 792311188 227754178 522093635 800884057 29160219 700591742 831441627 348957317 757192678 5555277 164055689 490970713 389912966 808109001 982867470 876178838 283135546 215516920 500527519 162579208 800386067 614959086 757980599 686054510 932883720 919603297 541936073 639107689 843434297 952663295 968638606 844147591 739135831 999405203 791427657 961123795 759652199 985074216 998391493 962534785 821355787 942544308 707787173 786477937 921593954 810026774 178115036 829645595 992266463 443911476 538210409 117865454 925146315 534213713 579599706 767033310 320359829 318898645 845524776 993064787 595933927 91242208 930491167 460650576 972448002 313538852 888419213 769299366 815371204 873458444 794253660 179778070 975684334 958747420 752932182 918121597 952825828 868475572 592139017 634137999 841490581 109576796 846400783 973577844 703886774 778242613 969962388 999563473 405976302 140093182 549279194 747759298 989172624 924756118 885238269 557018991 995478514 176233669 939900928 571484830 809388416 878684629 606055945 806254171 799209700 606997739 535711563 196177879 964974376 747851788 867463670 792843259 986717322 981989432 388841903 865482062 841623504 229249149 973049022 314797558 363170250 978411722 431487275 784709037 632585361 7500393 907781031 867351347 813780754 107557247 972724912 740735934 835109241 927870861 600630464 169540390 851367944 486980329 651281247 189918349 942062076 323645474 689110722 478401411 697027410 227481985 229116180 423140009 896015025 924234254 938953872 908186676 616747613 321506018 214216515 845197153 986766417 851154799 902621343 940196716 823797034 552185091 842157139 754674823 266998037 228143592 523451080 795082789 866348513 106563429 788715046 784472532 761275481 804153880 937793267 896032668 350219277 911492940 371071092 106727876 138419979 796432440 999086754 197463170 607729696 584713289 829352720 214568875 649820107 338794920 915216070 659848165 845684926 18682170 710258515 489089047 407317987 30541480 94691885 110496828 577942221 941033845 993431006 58080390 848978196 453373476 474202213 934857584 528220953 915545791 160343602 836624840 195519528 953677787 532994318 809602949 55981153 899497948 566903401 740601635 268076729 211785221 559627391 610407730 460233886 905908837 435709276 788392750 762967312 801218611 853592747 819441190 720382418 850667242 237081121 136518090 430281751 25374319 223900617 995152921 35889673 749620211 946531119 178718828 111918791 939910969 179001645 847995178 792841303 597431192 805560088 199390308 147284650 50311717 984354617 568071074 573892899 889880879 906470184 44063167 994568162 565050289 817584742 783548481 85919141 743920515 784092793 833712235 281770069 391774079 508789149 236713569 490359190 79341009 737020247 216938983 330190772 317273005 355908887 887435072 516909041 828274932 824173445 424672698 14683849 744429556 12413969 649532190 790287855 267084036 309115044 463414678 162271916 526235849 801432095 231170638 691304021 465260363 931700096 890288082 532091801 847025087 346243017 954158476 537717308 496683358 420282465 9287372 496332996 467147855 990887794 760444985 972964455 168921408 618230177 711993234 967879956 772853908 660191828 753946155 894169190 238394850 909647360 350680867 584199841 777283241 727873366 363759878 570134546 114357937 848097698 820487013 911263131 2741891 298786939 651409510 892182356 839017671 651620539 682024478 108770760 288079359 749469571 770305197 380390982 877398765 627796133 854928915 99920765 89289354 170592506 580750198 792518437 894139837 759085449 598991005 926548245 318848421 740813390 288633497 763204070 334987363 13733260 832745537 976868210 28233211 881859453 29555491 655036774 381374138 719738174 637786777 546125926 437008543 564492534 608244445 103381183 562794788 342016874 429555274 813439279 482709906 178759838 932392933 939300691 322870722 984731277 951120696 661411515 100324775 948430380 522218494 909630885 432657607 785537952 17074638 307436478 989354231 340975663 655576465 821726132 813552713 232583170 284927419 101904381 158611670 315407813 594262379 906207884 149066198 152060032 787518057 247307394 650934027 280275577 810299151 213799531 887120545 809770746 759037090 873806528 89388364 317663922 901795393 270408059 913412873 889122147 956740233 40984255 873140081 848536847 445070797 822178345 987762860 921593091 100903477 279267911 904502976 702600235 404591510 868835688 180128818 535903975 293893003 454233812 4837708 586305135 954162708 620626847 801696707 403860971 989959305 366528596 918913367 23299252 123435419 796990445 936502783 521225192 25883156 278658238 300918109 414586028 898976555 742936888 891994997 994031881 641388529 768785039 510715859 755722098 914692051 792988798 650387737 391580668 450171415 103108163 57807588 961650768 426450927 782692121 71884008 236998526 801244536 613365269 224385956 853754480 932665732 938342615 356186555 194004762 915648417 923347410 839267502 322994492 568170308 41502556 29585317 783788713 855436354 167321078 75064737 296258537 947959172 109313518 908129043 652445398 196773602 774847027 762630130 373417963 630117134 672115964 359143939 972996221 968040005 926514012 933185373 972050507 767845699 884872509 834959737 185514240 777850270 336611943 953530765 68623425 151592829 737020247 273291331 818082682 243698378 58436130 885701765 912128909 472102496 868485589 266197152 375937357 388489325 796828140 713468512 387097904 902813108 514640200 750557509 788508576 810575119 871117317 926498854 985379567 389512911 981572749 819065109 830869718 98572404 694827831 639511857 977632120 269584339 374639226 941235633 375370495 1703531 331496079 82035214 476483602 371568519 988305067 942757263 961764515 802576997 861433761 12171713 980923382 57626918 746655006 826053414 913078124 760312573 66072996 939403214 892752262 964024543 631212847 991635136 803166021 920908892 720270727 923963095 784319515 924692525 976054665 674883998 276509233 49577654 997607663 765650934 918282063 795506748 424327670 787374074 825894387 382258960 892198220 663906076 883008718 417382363 187359957 812191984 789094330 818922719 482426962 876860242 243315152 305038949 849510539 966878043 938548368 840775357 798266164 982521417 432505669 268888121 203402466 263485543 533517883 755029101 812388088 684586562 210692757 885991800 945817419 945415951 786629244 901579344 685965365 801430818 615716260 377641742 26794604 446736892 609405617 349865493 921430175 754581563 596371167 698728509 939039852 266417574 768600572 671229413 382023100 310201772 777750140 716483199 786357466 832674992 150689105 795317935 980080618 524705464 438568993 159526588 149446352 745951067 147145222 870433096 763278177 756938555 938747809 800566906 782866556 698004370 948172879 771540794 986236809 774573458 630320179 876792069 585301850 27216525 372743522 549753018 567732323 747044138 717265922 721583867 900892972 520244798 604613054 788701998 925694925 45720544 984765211 954535701 790167604 869743808 822893202 659359101 646371264 117940943 373919539 979170030 487950536 964260950 980436647 961473033 726676291 999031879 66432541 857974795 371205894 845864513 859003043 841361776 729050405 71358535 174054718 755362408 405724321 797066982 241088436 315025779 865039368 737020247 758134261 964295824 800428829 818922413 898283104 630897687 842630001 17970275 630723490 914325163 925542326 138800729 770994743 788612372 667656265 980130092 249077442 858496695 920251355 474378691 437427955 194500619 422905398 400590172 157994762 247471289 212475712 837681278 47377513 769032510 63299797 702305632 861660812 740810548 263639102 909282770 615298498 964948924 536872238 805154055 871681951 956200372 784201371 682698149 20151680 894332855 713927101 905568318 562471574 985890698 248092261 289796336 379726599 446916127 911860104 882490784 796802551 976061527 956026525 598626012 236581804 7633930 645790840 34193029 909429096 971326876 733949153 821358887 755453771 314391023 883878489 923526117 956619948 858484032 752017302 766071262 337620946 534008708 724131775 9277361 472698957 842736496 780221875 31107254 968008415 791276881 910113219 599656600 753886319 948970505 749472934 954729767 927277393 296082021 38032545 843123556 146917386 737020247 501428989 994514790 616331746 48770487 86511294 758281888 692371163 977085017 220468912 794653423 853336945 241602668 632059887 510025344 470079990 933832479 679523367 774020330 547811736 977614200 205600063 766280662 835025367 343847515 6743382 359862961 416499854 959677854 712079052 361607632 531571162 953886149 547644980 780149826 106330786 637796023 901195432 492230225 336729410 684982076 350065227 755259353 995823106 702334720 21599880 840942091 820921192 825186998 162337753 814409020 809183722 901305801 838850178 983199990 74470488 995156041 985296333 377063465 663216323 589147975 766793461 837805618 201721437 956471665 430435324 4444729 888454935 51553572 618426442 636077511 981209086 444342464 895235350 851251652 814570716 877559282 862796647 546311790 786451774 652081770 28576424 700386313 344037118 839702592 364576042 912953488 24684997 574858825 239166236 749456135 951485048 572174239 692959743 549681708 758820256 901248236 511351393 445384671 835445784 551392594 608731419 83506637 999699080 695322718 475817034 852824080 411193568 744739696 981833604 465374325 791415233 311617158 693850927 933471215 504102716 132638825 617299477 705899584 923109224 25556443 861384294 767197049 434707879 438158421 589948300 242276182 700781518 575907063 924911314 195133508 872655857 122575526 437248939 6965647 934507155 432658592 857977726 333359365 659559777 811913087 834771573 813681182 853742277 853171225 274373506 704056396 995749848 250110471 829178124 192523410 513699622 929703906 701580681 120939340 505165783 870205092 97255216 434160372 982982606 857734025 94295340 138524912 357456771 895984091 98842531 464729580 851973101 859651337 179271383 740132552 406964893 598098045 979265230 916525324 746417358 644376298 996234200 820034448 329169311 351612736 990082805 911228308 120929525 706766875 835368291 643775208 216328624 739487396 36502856 566406468 27201358 973984237 135283526 546989835 912059241 669255235 159640278 917817265 867604240 119623128 315925203 393760213 288455380 289144765 19181211 785420189 874969199 773670030 771965075 778454614 327705802 896666752 156396234 333396086 982935916 802272615 526121552 613215223 925802646 955510981 197388340 501566260 739107787 565981061 417463088 951064912 756582327 996214431 229710194 826951877 992396955 868741960 279789740 899758856 867930586 19502492 181183626 778713179 826259045 870599717 689720167 868297852 876332423 751262019 834986233 970234490 963963006 867799717 48862275 394405827 818100792 825047124 378377893 965984538 800766236 347641071 309402067 991932891 312135961 995872311 18556007 115295617 815763845 460502741 874031181 85919634 304533752 739056592 689974719 630791848 172448764 882905372 326490667 312022933 481407879 308003761 966686276 282183845 305901927 224743824 866603785 847997003 905263219 345702999 965024348 762016396 773960566 88097262 980876095 500984407 561543585 625093985 791437391 886378594 453545910 153007698 594143869 435924164 896018111 712428798 841959009 702860349 951397282 879557312 956359434 859879413 265501902 586651701 505410680 738852335 208837906 175471809 982177257 420008468 172979986 167641226 810677239 948133667 911916039 512614099 871286719 957903419 897552559 5873412 698560487 543781203 40097854 783381217 960878664 735794450 855985980 854450733 975941634 691942932 93607339 661824199 766295247 961945588 679950283 542670731 737462608 515754493 302300702 970563113 162464894 919113905 810712528 994420518 741517318 363952986 958951165 980573358 711735005 11398426 811312636 930587373 777548014 70372460 944262292 404816246 154917727 156103006 766057950 704492967 937415702 757824891 955226450 959769223 466047647 779056653 702826767 997138835 920183747 605478945 444779653 882511975 801070519 897189573 840690014 728024627 822985201 894836718 960200183 809028278 854215630 170201114 46598401 535860891 972134393 626626881 122228808 914652773 418413125 643304078 912474471 819509510 589625253 715223165 860730228 738865666 753807346 996216992 774121222 876338849 346672908 225243194 737133701 490655633 956563347 147927296 780898485 544279362 870830049 451108089 429182474 222873958 304469516 540243637 104233072 950933042 576909467 805748561 714791285 4180802 647211612 765252656 844570930 837696738 934475946 792023426 963694600 1901533 835025264 695024295 862576589 386416662 171657915 619422418 931443766 905563196 374520659 962588205 141441741 985806178 778368662 817504579 597892393 268703489 288455009 550722212 240185801 868068060 658285223 522952008 997348402 917492622 229159998 299945786 954548237 792155271 8782900 340010163 72391436 951375696 894106977 633695001 129569658 131722925 189805444 654388303 969979774 826394152 458357535 183109944 569820809 615080827 329946624 418781519 382492614 483016309 185939520 801948760 506766779 417351271 845191848 842584936 795104392 16647347 973142294 674642273 283234170 523614459 820585466 132106419 926535023 895387848 14220497 863546560 669798101 995882999 796540272 18152276 457939049 697518900 487460517 222651815 57590344 975487607 791644153 306620344 185145052 509955294 305072264 986514592 209464406 704321165 775309923 501284161 287738646 448231938 934118536 678146879 644756262 977007441 963425481 563726080 370383852 934022133 980593301 749929194 749424356 886712625 641256932 853434271 760608301 105737300 899458459 738214306 14055433 541137710 320554992 445085523 865584505 918809487 42905865 778842835 434795485 39237622 922396283 903029106 398686388 825289900 808505323 981406139 362844086 325585574 674493714 863071042 257395656 777231293 840358309 371951348 908421945 830510240 821329497 938498471 868146628 818686831 965713353 420143731 517304221 395676670 800486890 459225291 129911609 304039034 281753669 785332135 217900083 766293085 478701844 304400 822759010 467689821 333414641 954897133 876145950 741131170 333965229 870115741 188839355 848417525 352590022 805455405 847157509 104030070 197577658 741814912 588407441 101830042 153014429 849052043 141274586 495170220 407689414 753469195 989467529 178482098 109032494 499823107 892929144 745586570 361222479 593537066 842193549 356691081 423487109 650967117 746947597 813766832 294626666 326772602 488817160 746547623 481375634 572275084 512889511 372045932 142833559 512600459 902405006 49514093 175082932 604047107 908538576 786188337 775489409 735334222 249095722 735562839 930793724 690654726 878625482 910744571 191794857 583411648 800683211 769980933 347564866 886600647 295237611 592167843 726190691 909727765 699675133 146971737 662714870 232809018 370137513 816225936 980670989 932708737 874349958 889705572 478581622 594560278 899326847 994013514 949111269 912426652 801704557 30766477 974614526 934306998 641847351 834896929 556780076 870439766 926277350 941084476 515968570 729566878 798161085 729142623 983888398 811370821 562788135 257195444 982926555 722530678 151912550 763968326 834535257 29796079 622186962 972388524 815725459 705126551 458516571 860389596 909433771 829667939 766626867 28615888 756110566 891984211 942624643 946460003 332240867 973471941 303990026 79697839 4767710 194398830 47795175 511299669 753261946 937500029 835103730 736153109 478014205 559109819 745586937 854275454 161952334 956998974 872916161 61739900 951247439 985173411 775699080 968890413 638013164 241586828 459698073 769255526 583960982 270567174 414928901 924006390 930055562 379397686 766444506 112274562 975815884 682082322 622489606 700188177 276965930 657304764 230957000 941664651 864275163 17533877 971788692 55624996 789255584 582513450 361283552 775599667 727992096 896470869 313448986 755240910 890667981 846672189 834916327 797029908 973397397 977311800 547689765 902459966 876348646 114225555 539453963 909732174 825109025 915830966 871573191 73655137 138961854 168670973 203693778 436272040 17868576 956228208 868885417 935709655 209653870 412855970 136151251 659774005 782456796 782372705 180230274 470716710 794356080 948608194 829354193 785324115 407719528 270286045 704230196 666113721 800158342 856014658 307624256 646901907 197122184 985170436 197163031 436495546 303398353 905009613 923271547 646320245 972966210 847732433 385989306 465500422 765920774 30676572 922022327 637706549 656120834 254401667 788427731 146815951 921335785 708881610 830869056 661226834 831580575 614283932 216941821 978109648 823293432 225451002 529268763 530707732 779567589 240247344 500748832 1523925 376825613 201032847 156891504 845501000 723345476 980855010 540379777 832403810 561796893 118098530 937953710 972236606 288516020 293769961 976902251 333369491 613568701 904708963 263081969 951551561 84180621 764982009 606685146 919567767 831076335 186771259 52758773 931347416 757567193 658235803 25835072 866867828 839299236 669916892 841056386 881589413 993578685 886572001 991303078 361115117 964797223 973888027 88359998 560688282 955124016 466472452 851806329 815814001 438719111 708596081 783852665 805646531 939678547 927211411 912383322 52012623 880125833 939258264 421312464 73632762 501170878 635248146 65169848 331119949 761279329 797872636 935364915 627359646 601128553 103160622 573119248 982437547 297428396 841537758 515298266 981628788 424997664 478847266 827573282 204047108 586911501 825306509 915819482 453387916 963505661 880160701 350710426 530670299 842954922 661529574 317185645 753461521 285010398 784772459 736964623 815310104 167543786 955421260 983187931 579713427 988279396 777203613 258180686 973359880 679117794 954012412 607224518 127419711 763201723 45203633 34141042 815856033 599129386 821451480 979212295 237794520 607487725 520582708 583861107 987552755 969140083 904365562 291325840 849614798 648109486 756126342 187074509 652559484 723614100 122967358 836749698 675118051 889462358 165878268 997398729 116425738 744163614 857079873 367504695 641001255 971211377 315137071 238546576 717548438 117728083 66189559 939160654 979028525 880243341 992411039 594542646 223183769 935582986 974800379 113668041 553490002 392849832 355860059 430685526 797535905 691257498 128695702 504797163 886315471 228638973 994209058 29367292 741984871 696319530 866389396 983233898 637989017 792684488 545667570 741949909 392269911 976516189 23379395 793022134 839937586 414776749 48208277 840756929 751669273 842525178 899569678 763835012 999262083 800032041 26592304 373928720 806327338 768187597 680178179 941274329 935005425 814718936 931558299 827771906 960358795 205146756 818509575 431994366 760043703 956602712 954014241 327694497 331717645 797041107 885823245 194370157 955183060 266719359 878414379 247147753 457779950 931290087 572650339 824934539 669430402 13905045 805331033 782215140 839425039 745466710 831425448 298485326 64138598 883102067 155286602 743520948 825264862 14925080 432652850 668162125 789937063 343294793 443581142 206287790 589823853 938788339 113012287 836819556 168909250 848803421 61217373 788976747 492916229 76374095 749022306 932086866 976674538 423425633 713224283 104641593 438733133 579033816 343090479 750308426 213139867 173607497 957437356 497950052 136502422 137795204 292804931 733337433 548328123 452763528 764995477 436058360 810931694 369377056 164618073 322064839 174803423 721597465 991615986 782181354 305633940 896390308 923713655 848745145 829993259 25558611 834807038 762199242 746258052 937643966 703128703 260424217 957484753 452732619 845538251 849832968 715273774 989982438 845328755 830292991 402802597 794672382 570632438 471643460 916937347 872233117 903740060 871864687 229411312 671212490 74370325 748143934 581681720 655849389 788488777 592198392 904937066 589902516 724813844 888627143 134755123 994738353 151874404 723326937 735967185 750539456 698305030 956317650 598099305 801481333 758569428 820448188 968185026 809848863 773405628 991547414 664817082 31935855 791465745 743602245 297453418 764186731 747245980 32460174 482216340 93548444 863339648 960909422 395700023 15548061 970749407 856896896 865177026 819456656 144724938 166660533 810215552 936693742 784593793 879241660 526247523 864453239 645351131 145156420 97719455 340669879 824931529 564483301 673855809 465382012 741385462 205731263 962977281 524574449 841799590 506026490 610561238 522786096 952705694 368402268 135945369 980074202 952505994 608374765 86043178 602964456 946554620 258776767 269847501 340351631 963200392 220852800 12779564 816306221 775801627 811611649 842389826 425511375 952789285 875720363 63169141 777731461 818672143 964075082 869709059 738077362 360083488 880518490 843884822 989529048 924345483 860050905 745238868 468749864 479146765 786262899 854410407 897866227 871054846 287347661 845337766 937622296 912215555 819754188 911471246 451009007 875160461 803205843 966142671 930327326 824081200 901196201 877683379 846948302 712796262 480773815 672939404 42747566 825997309 803174872 980891631 775978568 750911875 307986320 665803761 569387179 544438268 369977404 897978747 424163627 719685725 307422041 943182235 743431969 605173559 733904852 956108378 522100251 977766255 433595072 64474806 841431022 414530676 84487030 169015307 803749547 585270084 187905030 614425696 645035656 838806276 215400606 422588416 219179479 510703546 346774924 318833177 789408565 919949318 304527188 444377460 221448133 776024655 847273893 232225603 947924982 828021612 425207190 273153797 141026255 860494200 600861527 694751899 933100043 151972567 751132064 879410059 742616357 863698018 398853734 494698091 480333403 816596021 995980162 152920049 754119050 172454818 388371628 462061939 984210707 819000279 726863108 268677586 952167957 197888248 343770996 331689673 449720715 737020247 377898660 993476513 848541397 915235056 502604912 816430823 793260997 602107063 329713580 825200278 670357034 976571680 689957040 933738327 802311924 716789980 715941859 293642275 761930738 962636464 699131089 852468827 471790792 855465680 959029367 828967139 15050192 740201830 749270670 759777862 947265479 943411377 968208518 400327922 46601720 51221308 751195560 935889961 58619730 209898195 854591868 806695625 431786594 932019355 689439513 869731002 563848893 742854362 929858806 608840714 782618625 622452621 816697614 184887231 777456324 906828636 305328901 494076885 906749396 177238801 537244447 620987433 805328611 222605421 778418351 796863346 265975002 825593114 862446982 758580088 678605177 878958539 686466398 885998222 922329955 833371467 753573219 358410100 98127243 831378274 975743736 711570359 501068700 252373197 104298506 985021183 517221890 909571377 789466469 692623717 992895819 937103481 776268567 306839996 844617631 908720313 620701971 602938415 889268554 713822966 784769718 911220491 896492784 681386367 81634606 750514422 151883594 136206081 423022343 868101047 886909170 130102317 825905572 854867102 503782448 455790224 454530665 640813164 535630948 634927542 56732564 775172884 462608107 900750921 559248313 784025464 47517858 134017064 812817863 209910409 916844282 541388807 674859482 943015163 422589528 249997925 900590644 793321323 739932128 241256625 556715969 227072983 579125791 639656198 383116317 251090308 4166237 803646523 856153620 503946564 150927931 480112538 409288509 181512968 196203088 804681485 587622 4472510 429811616 791812156 66825989 787162928 133806752 917375275 787996215 645027221 77152365 272446555 908279232 280689731 890946141 519741983 906661193 622932099 746797311 766342805 813072086 902874861 888793149 555701892 92395258 787913634 348124366 737857548 752276153 479616994 406346431 402773986 775807059 855091773 913594443 748348372 954065142 125482765 227025540 312434136 741753189 528246666 384678084 918504435 946217679 722832600 891956713 347981447 245759221 760166146 97866715 194879447 899738979 464538455 537937717 138825566 669868779 984543406 607110031 292869188 834529894 124343271 862707683 377176681 18550109 790500865 283954347 199954831 270582852 80731747 573920568 393474694 863616175 324219059 377727180 577108524 353684599 879023178 919060019 575221998 437712409 900271485 615667352 624662767 777588473 758588416 905952999 56281130 365325322 795611322 887837839 891285548 414480314 967397581 293059986 337273787 515247319 799554374 459188428 740481579 411180540 859279187 717390513 176108589 960268489 763484378 376934062 814811762 494914012 798643768 744878732 451650034 631325376 775270144 180206208 927756260 775665689 901540024 898583117 62085015 394513588 737020247 995741035 968262041 809129924 219634653 889057854 700780440 780792469 288268075 22276271 956450515 968795580 76733690 747989217 581045080 955335431 93076414 985897929 791849050 199850904 729489624 950269487 173407408 874047742 499947562 875597557 590068964 782598080 769702253 27586825 618833373 106493200 667755029 958986034 966055659 974057594 864201444 895886498 814461790 787335451 716046955 991323274 655640716 380417888 758791236 635781871 983030470 198096455 891070343 31984794 841468190 231008570 274150110 767633319 916093374 991823733 902726880 228523355 388197511 509682934 766250194 924541964 100286407 1865405 279875900 512643453 933038133 967747869 726247615 995041715 380710262 477104540 898586718 425607090 414420236 927581580 912784974 485455888 155756557 205356393 921834986 176018239 976618610 961322649 798629787 745037562 958878980 868248539 411927906 912197604 821303958 773941496 474061012 849347780 336019534 890296858 953315065 817546003 983431777 462776870 935074916 792218858 319462653 696351239 966151484 858120983 895266942 183231994 908686242 404750391 860971023 821487722 989804581 327514442 773010166 584923209 526707773 505246546 681562462 254640651 241565584 773861309 726111527 809278367 948813077 496613388 899326237 27642751 331097434 925419459 424632402 795424581 221550955 906742501 323229232 799112088 203588084 242630644 532147376 597222498 68251896 350225317 563662355 823837943 901296948 934818739 271993892 589169388 775529795 971615870 795733776 837547486 796765356 985215349 918517979 417697819 912636684 778187630 992292343 977109193 451354108 77064602 763535386 866567980 73090242 806872253 775725804 723960114 859442354 148088330 793538730 784551204 849917005 777767027 842824935 935282982 828720090 969260882 881600820 153988440 801156984 893275988 869242734 915346244 272730572 907651234 894851010 700685067 103599711 765896782 752783533 913553483 881229130 763168974 283053142 347915340 389783638 266539179 784760880 804737458 944429480 954685418 428298975 240908284 462579052 892155279 735802518 874523733 480015166 673398260 737020247 504478601 918288132 896643615 463641425 882074939 315639841 833040612 848862354 361935942 739925282 943371096 42501938 996103404 635671772 755744396 10131183 944201923 747312462 936721337 316984743 995281313 954100093 10202145 120357722 964306745 483736230 308178227 824601746 927652280 161805246 433838638 467288045 813678368 230831332 998263910 961835004 102047856 799177097 44824403 38273258 968885057 860871325 937316594 513554968 932884326 812780582 343943437 170321572 620452833 765246307 743926365 919447012 37217206 551733774 335698649 880316495 862225608 414266137 349481217 962951812 242066223 808954220 815391515 235898014 383936060 453265314 966677277 183701515 20458110 753238889 997122167 723015419 790492908 935986235 221598535 828936434 720107230 736232095 494516583 374100875 744712665 874051626 768153242 209149702 603466066 400326621 521600749 896257138 824511694 814055524 837276210 42087899 768813230 555094840 997046994 991912530 137117885 851567244 753331457 525409199 293115139 921133542 508459109 78217388 400367126 802045397 886760034 419659246 883586740 70535177 736364443 770123280 963231305 292720099 499873061 938189126 779645304 911748508 604484451 972842565 955175614 978296468 100203097 731753752 784500964 687393250 363381586 722792122 974181913 242543008 234038717 930575925 616590466 479796676 990586699 788282254 425145637 606618684 560760452 921266775 911105970 47705687 334546196 700797714 778710641 971566774 18647361 575200961 247044151 147437027 643408399 742253848 93804321 761480669 174979093 960173853 35777845 557681778 815773362 749012977 228886341 716322938 793498262 338829952 180623559 758168923 85713513 301341351 777928537 913832571 506224235 800192810 868710261 976300965 485180405 224629004 119902961 870374225 71090742 856723185 871861373 771642356 663762631 904698472 609129811 354615779 895357001 816639322 656614383 787947955 848254984 41269630 758689505 715208535 253261831 901319206 578162132 910507550 901321842 105203373 855489603 844652792 910022981 716551844 121724921 544906835 223009161 60934902 976784066 115489764 195405643 747566015 629731951 66199478 329518589 919585585 947277475 952417789 923978774 817891037 425467203 833049308 944882172 313730911 752224121 882037676 830220792 707893119 892579795 440374222 856445896 992121637 889402390 786466037 336877223 300297516 755011703 778177216 744593333 776653664 891683840 640840886 336814236 727574759 989568244 75467034 821025390 761311401 82644398 243493481 878513667 796936921 759342582 225398507 345158003 878697407 795840236 627809405 970146393 959801338 747644571 398338582 789385415 376782013 54963695 236424630 832272521 682088529 196923133 682624263 981856219 604479292 797848203 934942344 481508046 764624393 699334030 855787029 742613033 962612469 953036911 65682064 841593458 802312429 884443702 444614969 624018500 989302025 98125808 719270407 911654921 668029467 959148223 849815430 979948088 594902590 997558988 257617197 929192442 800672452 436651307 138401143 374079914 858135296 765148903 530033897 803813759 916503068 554455289 534553196 811663210 989693005 926157207 986126584 896701499 390488721 908009256 751384595 916434038 984844065 809106006 560807467 859617991 120775705 223349299 228690550 857014994 748171825 801392766 595610953 886069022 750706849 17283645 127517242 870704556 970970330 885862638 100363021 731622273 801459510 131176173 160472880 863404971 133312535 67202015 242218386 580876455 657000238 738160364 889774329 931320827 429500183 666734648 942848484 969791296 749621361 160146226 825663479 852995583 794342974 583194770 360774915 777595395 505312948 497143734 742695918 482831374 125876350 940237131 308168751 285283155 23964845 324492148 877335959 643042067 517733204 504614397 816499183 773841502 913035179 794109946 907848005 71776338 759526664 352329569 888040386 996072967 200214826 765227426 428413362 746319540 22045686 817670843 548330277 868842533 246307891 964476262 846724166 273056454 189766590 113601280 558540364 51507877 904401108 509670737 740602989 248876287 311557814 834301870 244628281 107303372 534735084 261334988 914296644 802166007 635567844 303707402 99361262 666991115 758923713 999447165 792429959 457282505 634542526 248829692 828329595 435839482 735417415 45502627 798521209 925983856 746091395 93772744 418422356 708844717 873295525 973871917 172665296 952285234 913452586 689640763 740433094 616663289 856735473 968255660 970338836 636905616 817173883 565236146 792905408 777268071 814749167 920802232 701741424 550538668 499533899 768306145 232009469 222140221 919942139 275395307 949438127 248197895 849270572 641849147 828538026 307648619 9226636 88736261 772004915 993805506 15323840 917974055 210704077 458174095 271697511 356478028 365332358 986392415 963117560 872843370 798851715 115613939 951947105 922072656 333337513 131610714 997255725 770644360 861378520 785087910 679972196 440914113 318610708 5735657 287197908 772606323 622817908 987890719 752182218 204927319 949545459 608428897 212247816 234783723 162385320 966900608 409335030 175555273 789532725 906394954 97003577 370771027 590539210 786529437 943375065 48739732 672837363 140717592 941032524 498290212 825326226 558194253 946771932 203302578 780177416 946263151 727156922 22137837 875094159 715429542 866190534 897429629 360871249 201473874 796012351 544511550 73991079 217606853 899827572 1184862 338561371 784226833 407949441 449988622 93782476 225818471 159001866 259322218 960872156 211556463 868954228 432115038 889666751 737820021 887821526 826684045 390153109 214957764 906388354 95897777 958180482 999751735 801416566 895209877 854297599 788171347 579836755 161627047 542638039 798491611 909147588 243086363 998743485 827947679 946313987 668641262 908780774 913901683 940484776 930255370 948563186 643500542 970336172 797361636 72991051 811736920 975702594 872939346 872809333 259997047 326403694 890932989 964959676 957759920 500036050 592245459 29883995 226945776 396577782 840883755 661458196 579633131 303519887 7683695 823653298 833505695 807290231 370455692 425144053 886528042 894846588 810920234 925337000 261217165 893784665 167295380 173370936 524525003 800085425 759724031 426181635 174751743 355284915 902482601 324257001 557851369 764457668 847709782 541813510 650846876 311957815 119937483 981986481 46074273 205593962 437200103 355643883 929759165 107219409 966858100 749743398 467359244 839540688 955253344 941390146 466593610 667139300 893414837 837752202 826036613 980940310 701784563 997281912 271350259 784928575 183789499 68762541 799570988 928027434 942683554 146247160 156392037 918422060 988656465 203236270 824081640 831863982 855463327 237179714 740570363 741470047 861294179 827226874 564619897 392988136 8070098 242383897 792447991 827829325 430767465 980750131 895444743 992027128 942644858 879168021 983863911 979026216 423911242 486733169 331441032 821677768 330940838 898813158 680923265 32452192 580619125 479682258 416329209 533237615 880401298 330246250 265635538 602247293 461341073 761374137 591412669 422162093 452167268 162879011 55051783 956793052 832196061 971174812 849851991 986280029 791266597 524525521 729150598 789001038 574205892 536238220 744524614 246608724 857770839 882062400 245557593 941279489 999912520 402810956 215918532 849922696 752385844 257353666 240370172 820090569 887000247 992673672 305572184 807216477 384176173 922556084 840955440 965497982 607809052 895865633 756131760 826796261 991464425 679099930 322046298 676529798 792946207 429361624 908372966 542061832 380189341 43743599 109379275 278050670 223273693 198723363 221807965 264859134 563848146 765821425 925257952 877055785 9027252 416041738 809830238 511717079 757298489 785516126 851450218 898102554 807237060 893087458 579464995 202247096 95673293 398598272 813763548 812091772 811733638 767408668 758896469 809818989 905715209 788660158 865235412 271588790 492471537 687638611 81334576 292904819 557007922 938195833 547449035 247601545 693582474 504619144 746519952 721665262 807952321 168056744 270971406 854562578 539740427 194078019 980541420 868924965 939475961 981587994 892511921 806657441 359653666 707325876 70431628 45670909 41437400 981670993 235035159 552397874 247687639 248662709 806160505 900340772 929094920 125029392 166745334 849968601 368022395 902880166 757688 543441030 823603089 936211354 952347642 603733966 751994625 805319375 988727713 279151399 519218484 754365949 180449561 567014168 980487115 124078544 61479507 214423173 823813764 306508729 959050127 293200279 828959187 621685321 946722289 821443848 901517987 145525391 809898123 231578298 63566453 751661359 551694065 838266641 551250586 454226403 954101305 800618733 430119198 123923700 760179960 997590051 869870279 102106105 567410672 505626305 311285712 874533851 769014081 194818247 760343184 818093718 834361715 951688681 207666076 208647779 734950306 866908814 835730208 175436325 787370660 812286954 898334373 860528637 759804302 535718760 817769579 862258049 963902840 511017480 976165503 774015387 874761400 741278278 552586209 14069783 866082247 850681944 783326238 14599279 883965458 282383678 254748143 970231203 890383250 64230818 897260549 698064333 875866485 386443480 947678560 149212135 65947849 891272052 425917767 723774464 921913251 971423993 28025194 46967721 850899798 995171520 861893721 788099805 679646632 949944074 100721912 791965838 884888446 934845918 795639956 946706071 292337672 773238581 881395358 701634749 997357839 258247639 804257456 752707689 756504597 698712327 287949713 667827735 872545975 68696257 102612973 864011737 828840767 203051212 687029161 509238737 539197685 828042898 816776560 81899907 226942837 898286804 820713378 954899546 283066302 44636634 451263652 401777439 982832922 818105181 480616837 50561750 325747867 222841284 839211779 419601395 943233057 894023524 941862683 759354999 739082504 632473033 4190428 858219011 934809330 285141848 877588758 897652818 943483773 596937000 790633706 351278962 332947567 587837024 690773869 771542746 732860859 741289387 253174591 943867309 829027431 961439558 363085960 820757656 573833179 63172647 66366707 996368870 179420365 920140647 233635483 975147690 868797642 838022926 515727918 722478005 289702997 753190157 599869744 758482186 887880934 882305232 6994036 999374627 511465006 991979225 123041843 841350045 934041201 801038713 297310161 974016540 714629243 680078930 955944303 270480960 294148419 186429378 946623370 874290211 10905420 586326419 377667314 638475100 60764372 320198471 320731534 510804342 483142200 586952438 254926300 849484484 582254386 522037604 89279829 721836136 626387268 606203336 13850208 837248059 431195145 34601232 885399688 798540462 121453572 851243235 750076335 610215478 935691230 320769085 830880359 807367755 652033336 828032652 595732098 259732730 2700939 442848999 703651748 905391516 810242279 880341240 791971202 808572231 66355554 842714522 176956583 774052514 873188138 884016277 570101129 420064367 258047139 330129397 688476368 849558880 774823246 805659700 871118193 783770575 913334808 970870576 528743222 508713859 457460662 922707876 942889608 914543656 902089161 974014229 264706263 955045293 826973077 397519230 766921118 117861794 112770998 824376516 517570756 501096461 112972922 842117990 760557250 778799039 568884341 499365797 930791801 798895611 746093928 988217014 955637403 929877742 153897903 627842456 955077195 137320462 890860410 571594490 90988505 797540284 68462512 992813674 644370999 689846678 555605367 234591279 54369490 796508791 140956171 673358454 36661986 331751058 569618248 988012437 309443549 2625460 911756208 934988833 715429693 968896555 913768171 959071842 107512536 823890486 851084800 990292165 920911991 567615657 988392057 841482515 766055748 768218005 212848048 809079088 772102483 660162869 626402677 825134413 927428085 587258176 864118537 970196232 520768244 413564326 882574904 991463172 832757728 406947250 472423685 463450461 509712380 278974743 446312351 399239528 944050042 670975222 879664160 414299464 409257103 331237403 990235085 867340696 928604679 151576468 509334310 835000964 853965852 891422740 834196626 42374852 741384100 968851445 718619158 845511010 855462875 252136189 134188839 320758345 429841954 641358215 242805313 435293544 209912875 605482971 867783472 819757159 737238044 963436468 615763952 433045466 655030191 843687098 805291855 764378367 775750423 400010175 488056020 972810949 892296933 35051451 551643716 343457139 68270095 367386497 199886659 768138027 963524803 760532409 278365428 208821621 804411711 293134668 885515923 798156116 55162485 748639201 788423807 897304107 507698237 945598107 713201487 784592584 846720242 809726672 413806293 818767506 875319706 765625964 359263369 502745373 264511580 973504416 45510171 758666554 116313414 403080934 968632280 795448346 310842039 322288408 403676974 241746270 927411181 32289499 863010177 924292445 791014029 111396170 966155253 316765737 312066571 219562214 872579833 796928515 841887845 816500080 958727939 327854091 946024354 935361071 568567334 981018626 703750187 973867922 125800033 779868348 551416447 308544234 275867861 688972791 856670327 877729778 166036423 891978996 507715833 63092446 988163252 830192576 81679231 972118422 600987717 9335299 246744405 300874420 563885850 785471383 942004833 950607565 431091760 706079030 119139004 59232386 588605247 86496608 116039690 684798732 995246461 800181285 844199907 894135055 847563586 961489430 751233230 480339240 748687548 853025360 755923598 911760165 906634086 914544865 128538738 760964025 702932894 330217445 280937338 50858736 761876746 866062555 821779401 128500179 481899050 505441249 998983158 9480369 473480093 298257575 365606237 855140561 929238832 757243817 93921536 420127701 985078002 651552338 668702365 998726181 803887285 973120796 798682973 770990303 777333053 121553280 902520049 847878910 596637049 985866213 143873566 649585116 82552065 176819109 748267819 799272656 103562407 183618514 552558019 457601892 806021475 746601634 585209387 740405965 81838951 446639242 411059013 737335682 818891354 226520328 661399720 418341282 37578338 383455713 833713511 999050127 291111232 450567172 839997220 958951326 89713365 315281459 998683907 898300112 197764871 784279270 965195667 336485634 530587706 440013766 844126560 702086753 655594814 856667572 180185721 905275169 754158401 965464568 889524515 341198707 350796346 743605879 983274901 426490318 385262601 343142462 384825106 967172386 945169912 941229604 639985149 670720750 133132724 494143834 24268290 877522922 453095243 523346340 959585636 850606258 785633851 110155354 82296856 746603390 853635368 607905821 817029166 59376658 901500713 635424505 334653394 968428876 903569699 750678440 890779022 599228256 758649367 999466486 803565992 926666118 708998103 934459147 981325535 772765450 702224137 845700589 822986959 77030972 809253836 906109169 589316103 882234058 983711518 198535573 763169861 638290811 324808181 885734781 948590062 14798881 861686074 523842148 127903647 175183543 868111565 436263318 813938876 566676417 794163813 739921946 767549200 386391824 708928235 887705658 834594747 237091726 317353383 171015319 966436236 962649323 669414255 338920454 956269402 969402688 159043461 299503495 824279157 434503944 327537021 653443143 381306907 568813189 972027649 933498265 661475898 93163863 384062782 382269448 760682677 940684312 789590461 88655563 705788767 564630497 801246159 824651112 814168083 585289622 373417230 862017259 266888089 915618014 936836115 783898294 832725571 819829694 957485201 801099890 883631887 106671873 642372837 808891802 295466777 880421699 162085384 753609447 756678314 722723500 817510775 406380774 860723218 773260180 941584056 760501048 446138595 833991831 773361269 893932972 49698746 944019141 545325498 525576467 948878661 576600466 504009495 794671315 655930143 988533501 824112813 767528144 342737692 355298246 938240343 397863967 959823316 808085607 50797876 970940063 200260327 766668636 603374661 919239488 853804021 781299941 985211752 569724583 777696122 948776953 923044514 826524236 510876381 660677822 206084378 443983318 760713194 283536078 629136472 30373167 493309620 403872087 981684382 305489860 125048904 877564581 943719 917130107 773495045 373039848 426407701 296217109 987078111 651856638 435689828 99031730 902452885 799601546 25099684 850184751 894129997 817263240 959749303 785455611 39138807 845693921 887295833 748138752 766835888 601306369 543396226 159010208 672950086 616323099 7877802 376450074 889795825 563724528 228519041 117378987 814638277 82522091 963512552 254291476 180015671 998489265 745539681 474178088 990146652 104014171 888192640 939874802 351800783 196990731 791820845 248788164 887701779 576714385 914140146 52835462 941687939 773485932 999024557 623691127 487724460 960059428 894975723 420820913 909451435 655773307 853758816 930664959 927293259 624655858 37899130 392021522 769720017 938838849 200022382 47242026 599971658 739558462 800283559 448594833 917037352 934891118 688869407 190647393 468569982 905057289 966822155 57667845 347647820 881246625 822421540 758081113 746652513 186107038 911577807 916632455 560906745 86214950 775347468 836933139 335122159 909118454 594567691 393506926 926006017 642913626 842728112 771693342 360211482 437796395 410139389 765485065 865673723 642720542 947722595 978080187 760662915 246426932 166862574 807629553 479093119 888635150 203150327 913872873 803743411 917627415 78877223 807273974 775899096 972877547 13720595 377871454 456605014 430657362 998318656 209815569 758321122 57240322 700178284 837007166 798817533 492020381 855529203 160032288 112661340 361759397 369296430 326653494 295614587 852801463 197470336 47507569 982865838 92166785 873469112 96855733 995939678 881067592 905282392 389717669 873000317 995615156 960213386 115195666 980140744 946161689 652995035 293710436 812249478 370622782 20266562 472921275 350599261 838485198 986595786 941076258 591192929 871714711 790367436 768399370 206340511 509738670 346779787 835901031 192756293 835816804 926833348 213890910 276759143 944691838 779040972 953495108 580990062 85855238 767085293 745501684 201442291 154813296 84210987 745609409 396907169 990943716 974829553 853027546 832604005 976064386 872356009 796713183 6353099 741397963 936900645 843114223 158017900 329891087 435720795 59638562 887802588 10325222 938352131 876473186 632688742 430743649 984379189 293022868 473870407 514975356 887203949 801112370 324456049 157615043 909033010 915166378 851797917 801177905 960061633 889395911 981511209 764625445 685535008 859036796 742865621 45471042 305721163 760328327 642854894 562337951 731460678 211895664 310671644 275272570 877643428 748432386 946459351 576292282 538717062 818966065 755559441 876007443 903362403 880636514 829724519 55465046 876836238 523286930 524281789 954417907 80929562 839358521 906557153 319228590 904334468 615687537 825156134 590232485 973295584 879765419 180225849 969044193 731921671 49968162 972043051 542960500 843637472 818961424 698634148 213804806 74671355 802871932 579934304 787084908 563903056 532267532 572352569 780672695 437035939 500593622 820014642 566128569 936215256 281148480 990249749 631982981 823681867 749332941 94150562 505229692 950239822 105672891 836250821 679553014 956064212 995173059 807000035 867141892 941940074 766875591 261419196 283929110 498022824 889639688 823277125 487064830 204678855 679140940 435808321 544547708 940265212 836035812 920874768 868436626 802068954 927295437 657486611 201716538 972500593 435239906 105274488 846368268 900407435 996076629 757344722 907704912 517540116 825448174 770422044 1472496 911131007 926400228 798467442 455225505 209357996 978087995 578161280 587192891 834604830 144640037 969028911 179767550 892856126 855370135 922896910 907242512 816910193 988249215 367554982 248795325 357710279 990019272 888819330 805251691 195439805 862528372 407783139 827038276 650554485 655472696 243820018 901296685 934266151 938102790 941741410 833323331 263397486 733994074 760943686 951133716 691499317 837219253 980526585 960690592 623744242 745969065 926708009 193390771 894857713 823459226 866206169 643713777 841217237 303093754 947536779 904999030 122671759 766494590 960840311 144647113 504908317 477596070 924831030 558978386 614102659 739911169 320139000 103279983 542503787 108774876 575540179 752725426 168896284 351288003 848004555 895365062 871331776 897140699 904823441 866995160 228311949 908040591 850092836 328335067 173057570 838065322 460281205 624276098 965622688 485320824 741860835 95537776 857077380 832859968 692898470 710760653 451901633 779728279 716634561 811130734 443275414 929702262 446982951 312244685 504178463 802236560 763641984 794983671 782812678 883693131 868060580 807785849 985806241 648091085 503702463 849345635 868147725 495667546 241000208 89634334 952711221 523619215 897749453 547436582 329449982 807485441 719756620 738008010 877371938 87285457 789588159 650292070 956737405 210598918 731079586 920825998 799983037 67277150 835927528 423729238 656107649 545725542 838938658 300201003 626391165 813230858 330377983 809021315 537359445 168223122 846051999 887717543 947702491 922720163 835271112 1674943 198593122 684423442 874012990 753615023 376803912 728770286 898590508 676427252 580945530 828908608 337354584 900773370 618048815 746549668 757510773 981140330 911462492 712883778 204549191 963930943 19633541 91018674 963451073 385060914 976070621 787992829 694587738 774370690 521951841 737020247 972957085 147387059 800885678 744736328 148457088 770435532 646545559 751047258 518937074 498376478 319290780 644545314 656581730 89820357 957090376 753426431 783748592 581812047 837464655 661956814 805050555 834583047 121473285 511556691 993571224 554016980 815914372 669312675 745987678 870160088 7869592 955391963 896215267 920590473 725933329 614211130 874827267 174745282 827880548 898961359 653198706 944864467 66740622 745174984 57856309 119692578 759644811 490812249 944411756 822199533 631697912 168039414 660425224 267572680 753240202 368109808 890755777 991059347 91234656 493346035 888843771 832594876 437455994 940978285 469105510 830796160 762860161 868446890 884129467 168233027 135014836 669831376 791062608 562545597 422664602 498465656 780476424 856093579 525181382 782974393 1025470 634708826 312831349 921297965 798015519 893524036 753336736 36133345 959729990 978782386 740836612 819888204 511753340 948980661 994016557 987370197 631587183 131906747 724530252 759212170 811358973 841185092 658684418 819412343 633787288 377801814 688372235 961918281 675458227 838393326 795065907 579357682 742227319 547773827 897864278 1062929 30939734 821748094 954898828 244564014 181406310 652718710 370674214 136767392 577437811 840453771 202537508 814375311 874477210 856585706 740434915 184391188 774146913 743564108 855358457 921354589 99992170 132507564 754148921 672531099 782661061 883147065 46638594 989321319 890970638 710383265 381577053 836826745 277248806 859479358 578278395 360219001 983698629 765761368 279403887 909659373 750031949 926948821 624449931 737390745 96670686 380951522 753438175 765247920 332586482 207874064 769301461 808484176 887154085 618725145 729278803 788602644 835744931 682810119 673997650 946202935 921742776 339767920 750992975 992499862 908062241 447552665 280611096 391191000 833114785 759263129 789086235 330224741 946646272 905675697 846624331 834878501 830943759 582646766 976510558 144144896 153926471 883725050 911927088 265688524 851599380 881373177 99317428 307188944 869077476 962237596 723077130 907353643 973845781 50534027 324760240 818904577 870397787 14235001 906855833 968315576 496216168 308531455 880879403 858593942 841192153 709052974 227127410 210541622 815155595 592491600 428540515 765387848 330955430 548131794 737020247 902841479 45568699 134191215 789353040 737243686 929716200 592035285 812519911 739511372 788078187 857706191 765718890 770514898 879200311 258288537 332702192 458941507 12064282 563821517 86771044 994656593 493042163 295521150 868456567 490124434 974811393 145601458 788764703 938479477 190732004 681295288 835099671 509079978 820312459 448525810 38877496 778785948 724428961 820389871 219828696 772869774 830205244 982941223 766433559 611531841 535060192 810605787 531623457 961148211 898870955 541816570 421764736 118785377 676479080 369660608 812013378 766997885 738547316 999021832 902421005 570438068 86797211 300924141 6826922 967556983 930407070 834219711 776821236 981053599 455155193 772301511 914089832 838889244 366801110 547477100 979604815 795823839 376271415 803485053 909480100 863871926 963937928 808598028 303847782 727185755 957550840 985316982 69097278 500460515 864641383 250346480 134462757 130573064 831049327 912166987 78897974 782964248 916220637 166025531 301553073 405699917 737020495 227214884 151258274 282368456 853606461 315490310 728280329 790884956 914550361 998496155 256710123 77640738 172661854 56225411 781882013 41177232 982872382 885978848 571327679 178983809 350727925 739751517 486717062 669627597 835866102 897338354 85372665 803729114 876770386 812623692 526917859 962767622 945749526 842298639 830282201 604493040 478851576 510327278 820075117 570830410 63278391 993125074 884399197 996062871 929027037 987932761 928394078 415550293 893653480 852608240 817016061 891340482 762046925 794617721 991805893 12508359 962546482 900722495 558154776 875895781 957812544 500427937 576992148 958057524 191818551 985508220 460183124 988987800 808175612 98026598 885671442 949120565 910889418 831684129 312344122 981007163 205752467 615503709 551494911 833520493 978454128 12482754 84385184 856038409 744816855 715751730 570033822 111757499 283603274 589301722 916244702 980305161 781734511 523871693 184325854 356174506 953731526 809924514 754427318 857629502 926701962 415685306 491421300 966904773 389996755 149142391 32283417 328219480 955984099 392895533 958004714 333945057 247773748 871477099 298331744 637274177 899607937 765339341 854385649 353105662 840283357 862564771 663097784 684317299 931259234 296376376 487982553 846052517 808231006 340664983 76575736 753506782 808584469 619790508 698270275 974818987 981643341 897772701 163057793 484526672 525752370 98965671 990472891 764260214 957300430 181560686 756884137 825548088 901368276 822482028 739529829 177916807 432807897 758630777 948219684 902251683 511301375 192295407 681712208 995790395 737216892 162195558 741304397 793261175 698740768 268541117 180630938 847919867 481518034 778415444 792646063 943925533 878538296 601528847 41127945 863527138 266492878 747625148 746799558 175220498 541402197 196129716 253688327 132564168 275466267 329356216 297460947 866641232 642578918 969845348 980829480 345899335 485746773 912567422 478238216 536281256 949169065 808720806 769510384 679168614 463102093 919153798 408233885 756810260 954078529 847567021 76375 224398155 917716059 766378631 780596457 750840996 899856480 538717500 845039919 693866519 114358641 182779947 822195524 333560419 455551950 795887994 592538757 995235930 62551001 990566119 798192684 142452728 852137246 82089622 607416899 829981711 902582501 300067892 401162696 830953655 737553919 997813845 750226686 511279904 808388751 129136621 558238993 241335979 155115168 452379132 322424330 905907187 320019266 664155473 504491060 783582716 999470928 476983572 924662675 925303512 921039715 762484465 887138434 947774041 269608514 323195049 739966905 805769795 791806482 916410213 894620634 967573048 162902781 915103131 950061329 770063724 927018651 839463651 851118978 969663655 560137043 934352684 743573246 544843175 754050376 665952851 574506522 874286704 717339753 760914526 167030167 740276445 52864381 614334819 388000690 485072209 935726528 216756341 252592106 128802122 109928294 799787467 148138564 534781317 916050202 825853170 106581834 905275983 474648523 888567717 874044620 971250094 927203888 649188060 615376715 661090250 906913844 980698448 739127597 798411373 198720283 993365906 957719904 228908346 751721622 298018333 615636141 117679524 469323116 745654376 606571016 931100306 484839005 733635537 770983126 55531554 704777073 770248838 954021988 177883286 624529232 929033488 934292230 693012870 371814691 410450827 671604402 774931946 503354951 769273540 922628937 740851054 472561374 873055595 321462762 846734748 820675462 613774283 559450673 978657818 304322452 986993358 843281513 57656246 638686636 458894747 819682704 962469837 588908674 988035047 932668022 927768438 826943586 751959371 944513299 501891063 489920322 910414607 44037558 854372860 527534186 303348471 920057745 921605161 217590009 740480584 748453849 836578909 806916385 740020932 665542529 707754515 706041225 7245302 473021530 792305554 76569535 774839039 697373395 925898472 239352124 881342170 418861759 821679980 920240041 579524038 917398406 814511320 418026176 993683112 766072039 813925337 620591785 996537468 220633578 268860190 791448028 951884574 911323341 760515832 172744851 812265555 861978186 756530008 964495890 326704648 796424000 961366151 49059378 340117270 366508149 234268506 154234819 859103194 881888057 489959934 701244362 304854822 66972650 755697894 220901939 61905774 105020570 883775539 203008691 4384244 828157769 363607647 917357165 181995316 470814998 721429799 988085058 317213757 306079664 772890776 555054416 529820879 479099575 981797724 509982119 702710452 886126340 892290887 988590394 762402548 194702487 304353664 321830476 912083879 937636968 789699866 277498202 770006701 906369539 979759698 737161893 851340365 990804929 905188438 288737558 753261845 820122876 254010377 796770884 118369304 500870128 854917573 512075796 378918738 763915708 928452628 978676009 833273565 512240602 354761794 63179324 862867983 948659778 92229657 848471737 321759535 737020247 981623834 839583748 863694908 824468726 45394318 768794447 889084397 791560883 791383433 883940324 845268773 21477178 74391556 809112632 807352595 356777811 459229180 496611182 501807172 429476040 843574229 615774635 901737189 946518578 411807926 859681947 922846414 277188489 216190721 395574014 70574089 780289175 972016939 484016454 66859400 809246073 697327307 252910010 206796256 648719576 371061301 736806867 902907822 847303040 276696451 443360997 999540801 804816676 431616914 825768730 686867192 853412279 885832096 902593862 362497900 169629603 332818705 951256422 509337006 181703883 759834239 176747986 837069781 805175836 743275431 74800584 387871985 235785546 698568076 990767736 389773330 665982321 755323647 664305539 455736304 371717093 820839910 903068700 951919433 491449120 288042996 58400739 412271904 900781593 960309356 153642527 472088986 255871749 345321562 737731761 375119358 756942680 202628155 738400242 158214517 371414458 220924148 904256097 52443681 548277119 345313073 376981024 812066126 779698597 442332408 822486882 591158427 891663517 719127939 355109485 489950053 274731553 566522544 818406004 944237638 892646352 539546475 316954247 195766491 352783102 945731654 757665434 755022502 434694743 742265240 69873975 315681391 864415833 4994134 108155767 575344660 945567387 778704952 194256951 304861465 991955018 813301758 859272200 799570223 80005564 363281487 387404047 163674349 911290905 917318126 737747087 598440346 68208353 763337390 842536958 718140831 182138845 942030386 315458743 422275184 677766391 867117770 493467598 86560933 245073493 972309891 765993669 827581857 108578609 659243226 58918028 974825097 795538178 838468597 365642989 382619484 295248361 844323923 765356244 450538407 983934885 941396682 478336988 860563817 637763462 244807898 236642019 986962248 898370459 527053703 314485879 740310792 446536105 389655373 342869193 203949824 864377313 900747820 741432919 820852029 808364029 928387803 277299338 826851166 22717086 646657342 954848470 573340114 956497391 888611697 856408801 963102474 738718580 846830915 646034117 764059737 562862649 962953458 43010517 969802022 478932413 749694990 570369654 704292631 949429391 731544819 857908470 809907733 19670403 667136189 480636950 734420412 816305180 925334632 407630940 79814590 943038884 784662849 911050605 614845306 966204766 153236246 179899161 999647576 948258209 671791555 946305842 945547005 890178138 991861244 175916057 220523493 395329490 667937883 764175057 759547690 891833633 538148592 884874196 441800388 811996733 11206148 871003198 850870402 831285333 544071760 446406741 806630944 843149499 887246023 888706669 158608030 918484637 764815403 713541360 678135078 808941134 805254887 745345605 295170246 849698717 747687379 965153597 890782155 148272366 153002786 930146412 600578934 865279232 892062836 187625248 840819187 862941167 817306396 236963544 877601964 982062028 825464714 925659470 977707882 835723226 244943415 833377966 938961841 388501640 823671536 641853743 918077801 785456626 937662161 695718504 246509895 268905910 243896534 105591558 287424082 89054920 617091199 890535881 845678144 990195894 840246237 856765288 573749874 892294076 786205620 930808533 193707330 893229528 538381330 754682546 45706940 837861364 976794100 607056087 980196656 734621843 829467905 851190409 877861816 835321919 911446750 750306580 882832227 172454884 358816442 172702209 953259808 592424907 764092316 974127661 945455427 934052882 965957494 750111794 897250350 908820448 87388273 439869129 3773062 681479095 758308287 419699466 762335262 323276532 890783002 840748347 995440229 784517150 877588703 917642709 152427951 222046198 426628368 199191838 619936080 267525251 143021342 242626846 847430576 904887065 928421752 898477495 851015689 253688595 273718712 91535153 850073332 829148457 167453373 646577860 962236815 980117165 663499958 125129122 834908193 976285556 845004515 992152502 978752931 766361642 927524293 540044220 609736690 821155050 188934456 896264495 847646644 932334044 455702260 960636006 17056313 33159798 911943602 326060175 102829745 701255390 592707513 628173783 431226908 80041382 999834364 974571050 744872977 738513140 46349496 712163573 533447079 864078248 663536798 989828915 517719663 829928405 833139851 15944316 922480890 243902141 438264461 757223188 884257319 179690752 767417608 835864756 623542819 486597441 802508074 779404329 804553649 286274551 941825317 164078097 487366615 82100504 950520530 294110766 66239951 395898241 9618095 444698756 29348477 964414877 837734335 469857558 641672358 545942981 377395132 916053769 744835200 527941403 957360639 432448464 182277790 228724143 899806544 698861521 771108351 10609602 957034921 882356041 877540675 647782981 828436954 804023408 669112515 57146358 78367368 882266687 882506729 189494351 842945541 949793484 59591263 813606448 902374603 998769587 600115420 920828910 980511490 780003824 746045363 902888704 812922008 765637105 362927656 853735607 482493579 933447331 798817777 834419694 54696844 699583176 38221833 158124543 779359434 786301484 491974680 307709871 11795339 635805795 524228641 815674635 112917642 963274725 853394869 266518112 438549387 836366078 707041896 749023958 848605043 216891137 250388564 182732262 973608823 605991954 487078290 430591737 419976880 275574977 638405310 910104970 874475828 814440966 865463260 834619435 913013521 9815503 98839278 804825542 72608468 900378567 465051072 650350565 492940571 944204495 317695142 770013432 737020247 781717491 780861778 953029100 398822744 109421873 986555061 980828218 893155165 757703031 19133629 635254319 421620806 903117796 642818413 179217747 513288324 637267500 791882601 823692033 46489484 473984572 362556936 927817054 971281906 357748162 791630467 775486085 789674827 621730524 879250768 868616295 950330534 891782718 61284630 271448718 570715897 146737850 587276905 811118683 96641341 71131043 217839975 311217135 608296918 803214464 502969768 475564943 607722953 788874190 913734195 799840893 279600263 782750910 640274129 906822380 973334496 740281557 711037934 803124711 646847452 462774281 943536961 866579107 548996362 273048802 808430758 800982088 807538544 781269767 906668876 918594449 29518605 773266705 442103132 789626214 762979056 634469402 834949394 918153504 293259805 365446923 876078800 805346457 802125608 969049513 936629729 737020247 305871417 338859292 775155884 309693586 905162759 997083216 280761507 96965056 530359161 832459919 398087523 621847998 857002497 971967698 987180423 650039198 904576902 586580401 187496590 517799905 601067572 79016781 78860320 891431955 525162541 927093582 836995318 670078005 655575466 554406099 587777014 670325238 939812726 309900882 847719952 906165590 851872504 765377781 56124639 191209357 994958852 791476025 908151789 112630547 924951967 846912901 757994365 745205491 313906300 85153789 806024917 914680592 879622087 878594794 748189216 902236146 825636420 705320341 233477732 771209859 875454296 870363991 889791624 576931641 961447771 570817166 998879576 977369076 828355511 57888135 775598424 371486260 479617699 870788440 189809384 924997657 247926883 470289210 717410934 780535493 810786381 851236327 795603268 908268949 693171682 503137753 634143627 724800212 856267566 620463497 24032623 737020247 81100264 916210120 694299879 966559907 85156379 764481853 955718111 752425424 442952943 61951590 940367153 743734561 513783491 296381350 9416495 940228307 591591626 340427845 389445963 832924725 886507307 739522904 916645252 222215204 46213028 594433224 814027582 892747181 767626382 596194441 529240473 958496251 710317188 925093644 755290026 930545525 379186037 937144048 856828109 99541092 97540974 690623538 894843529 829524560 794377752 695657970 951484077 344772093 116363555 816753580 668906891 233998741 927432955 250031453 44762650 859712189 834084954 423751998 662068367 205083870 864146992 874585758 889385902 948510572 877492414 948588244 61146471 931139323 951792550 821953187 929054002 772005345 340425013 90566383 856012990 326512526 844619397 222112834 809614913 915092085 960737705 867878143 369082228 467234381 359574801 964468798 952346567 287196502 758975102 759408021 165929665 866840498 737020247 394536849 913644436 754116465 757760613 577588871 497509209 805287383 938531551 737328185 820572522 811671400 274203609 635517928 832621907 815095593 821004208 517918255 960080472 913997256 772437128 936013971 654725932 554887198 454597833 975268782 218838467 366690287 150328566 693856345 940876106 812344035 882390148 675582912 779398326 129797182 315165651 919426962 955043017 852178081 850641475 355269764 506827892 376177678 703270754 286988295 806618477 985007045 746039309 756268015 9596677 33262463 989417422 634479154 754325836 860444438 433725650 427326388 977739775 927754659 995898986 581892835 814420055 219633081 945965950 874445135 771339626 815729650 824356201 905631438 281360716 909161397 353418317 512364778 183801801 787896326 376179045 972358773 943338376 682403779 899600895 945126130 300453229 722701587 822608022 116173734 785238359 802569622 822423586 462637137 752458961 272315012 891131585 961388956 665587826 986280730 741488393 146758513 441368268 25634509 690750793 883440920 778109086 967776423 884182428 844651327 784153684 866804715 992648605 394777374 670972734 869248889 717216620 826223479 678598147 844015429 769280554 927337655 964498999 288541381 861459716 655389819 905545660 442811759 886002085 591973662 392705021 234140948 973011413 970298263 666949232 17321760 757251931 991513524 463302152 256500905 619228604 75839498 395257833 926391102 852869807 900348365 86444751 899270187 906374185 674203078 876230109 844311435 170319109 91895175 875389347 933203405 755497833 461308540 420362831 52194149 916053063 225131407 840185175 459139776 892232651 43628987 906240331 156885279 615097187 252633517 856535050 928435540 753043957 586209243 969329326 743220165 535804059 746574639 548863058 152121001 550449932 836508623 120012280 778095196 852837173 284722856 591519229 134616514 979746803 938407129 744366870 125809620 527859169 432959308 731613582 825837903 974731460 806112980 546837084 854603368 633062675 297297088 993065886 992666153 969169120 204425672 189629758 282757048 810273796 888440305 418058808 853082906 550928271 153140247 869114659 558607445 492096839 881157863 139583748 985116951 589102460 820951808 559558570 860639824 971764422 789045290 687141579 859645125 939967375 207501812 123079300 931866052 745658624 878981686 988377235 936905633 953512974 418855506 769872250 948136993 796334025 801865103 121326304 570753533 891453344 470357264 906083206 879136946 718840424 981747033 109697316 902931000 541167193 485865322 772665822 885231750 826747082 243469681 796051666 468693117 953166527 290544778 997387212 213287393 829056557 585449090 745491108 907370853 886860579 111008880 134469070 863213716 470379412 987292376 313919641 769542925 394700365 330765711 766172229 602344830 210888622 920149686 841880073 635645971 913320202 166337080 587769537 741889314 924625206 974508444 500555121 472474714 934618979 280457289 938214629 766777508 530434143 307792178 275176067 993329465 864702922 750884154 444264161 776347630 218961309 248734370 228891848 781433091 761949414 426206062 116815793 918875793 461775834 383555165 133444580 970924766 743808059 888677453 924468663 943935566 56949010 402128898 8167856 336018078 368285919 816876362 739327464 848176535 183112302 802841768 827239885 800473060 755143839 959216298 944007116 419691695 923136525 911412155 955848005 861941154 180198063 744729608 836470216 854641433 153656879 497308691 937341379 700855772 779759354 799701090 958575050 165283014 604008759 923254935 724373053 840649034 112160302 840395041 418870643 87729662 937947777 851963128 78540940 373407554 713302094 187089432 997817927 479895276 683295625 975292170 142119353 603235368 585521115 152068658 737020247 728938253 830727364 824469369 890161198 222494462 496076182 370594749 210690411 957341835 820288404 488046413 914666959 818841729 862803006 387677526 363473951 525857659 756062415 768279655 924773036 762946596 869470773 563502606 386006515 538785666 857346104 907463526 835851788 335842143 858382425 766019331 866517493 906463001 888805655 22658290 125642100 849376004 215222298 786304813 824402481 366786770 61795416 365738646 238005998 337986955 107572714 974561067 601607243 412503475 599524946 946056713 855707482 895396018 598894662 876013990 189842829 275007062 898674676 318103156 640864657 610171744 796323293 144961872 181588325 900754605 837331511 707930045 784303853 968698827 776681463 910426695 127644720 809740960 805978262 849473371 979850174 429508333 961013392 703868829 780703848 928059567 12343735 32488709 533108133 875229129 979601208 993199268 317431747 323635082 561054031 831841502 487651742 749139577 672056620 885296844 303797820 794436186 593034258 912091572 13924 963015468 382451402 972907242 934873076 385855261 794251653 793500487 826442943 758971757 857578089 3423191 921086540 825314290 499962956 475674424 273526407 911475131 576671133 130394015 867689809 958810891 794820578 882844701 130552278 195073568 136772792 662803116 801710050 3008598 485813789 945911184 776201990 826438872 933679653 976034115 42227580 541925012 754232675 193994521 851233169 908687760 704633024 855920669 26547765 803509354 182778446 857733111 408667200 329450083 650372701 183323556 442911655 24329645 401672710 50500556 361009964 973537009 317996620 869228424 920643391 979659317 112779266 596967464 744587192 952331082 812430765 983062463 867017476 939697894 927505038 763274651 665339422 331781297 752137600 102990394 801603912 920053445 97831558 609212199 922091333 6771543 967775206 870658247 554498492 506709429 996252102 233071974 905631507 981078628 19879005 752034821 184194189 898802608 752091272 561859126 294490156 768465733 823879418 462057821 423266326 886010463 961551134 883358919 774700562 866444066 991399845 277044304 73311044 829572258 68440944 711375241 106455932 819357505 521755166 541636145 190773550 898771810 470806946 674467217 768006248 355400509 797130327 638281952 963768602 738268771 750661873 939411024 212184313 766570515 233453233 511778406 512835089 10001186 770593780 976945665 465624053 28026049 898507803 438321314 507010130 532892165 919891114 738134660 584743750 732928140 755491706 278890906 962018136 610286245 923303175 912472006 177376209 875746056 986740961 985055670 27119931 179426779 855017300 547665949 49800189 894783534 897453629 73267427 517425147 580171149 77861216 923565238 885118689 49556060 794384153 332260967 935470511 551833843 659936417 960039778 743292836 887302169 344092210 988379221 977580591 831791141 374377628 283712107 318025024 622427545 851939961 658958247 862564918 837689189 773097889 968490775 279663282 850659077 853664956 798476306 113380592 211705820 915418277 875945293 908027847 990674308 904500710 24596139 807349771 477067637 926465942 50483940 964006134 253677281 841235262 232879533 820347969 941880759 518300292 782250295 415180132 762733141 383206840 681634757 867020173 10464964 982715749 912336278 743270884 984537243 34404834 45518129 952027503 442313957 751528866 397990229 818015512 541781610 915939548 434494666 30030735 828296484 800297543 818112962 919549373 757712054 892143532 465179861 820242536 391182909 855016678 813785642 845841498 462745586 765448471 491062154 402147530 704518845 190019494 537782466 971010356 893600409 828680905 815068707 795893081 588038199 335628431 942405974 459391682 253354211 13160642 824689273 787682156 871060587 502041157 228574219 241442865 189469563 863209588 254698255 786199523 273946145 924992720 527195425 980101478 888937972 955295055 946094821 949365693 844379937 996348965 71898443 372709293 870721396 580568183 885721737 799816338 882771353 940183389 706743420 730501627 490556953 170053042 478682587 280861947 893422208 499482318 122885871 960907416 101246408 133709858 267884014 724117723 674752661 558195667 568354793 43696239 12860891 993258802 887083408 386023935 880017652 729520604 467138846 86679612 835537396 901425859 306257148 809826271 819712586 36686905 659195959 886855623 918504099 282258851 415203742 946379003 202579525 464833307 549741381 698070960 525571900 972215618 939656914 197500708 478993303 803512021 38954725 813469894 316541307 425567285 754590942 390269743 742360756 974397323 750208299 439235995 832285768 901921605 930152189 744516673 573983772 765204506 937105284 187432224 682639757 806210099 929137793 709065728 799354348 689587529 234737134 818629401 922789028 112683533 495519760 439854420 367674525 781923390 576197516 631640464 818760256 948698440 288394736 919156965 563276888 541413500 691045369 496979346 981855244 634238249 969337227 938708029 1743565 619620912 743734461 12958012 513401128 668084152 756802761 871056072 700614892 429779554 317384211 333365761 472035330 735828016 798553120 627962943 845184563 317594848 237596234 444982956 127557413 720376060 652915155 472977529 75273501 547995035 805943534 80201141 482107218 357606034 939787058 958682139 765315569 268424123 902735964 320496432 820282697 910516854 817475885 979544233 929480209 787731393 944798928 992255039 77407596 314833615 857253150 866884593 767477678 976379923 445423210 867201211 993725215 218092921 417032637 759358717 965177346 285116431 203355715 765787861 897529421 528010119 597271365 842107644 511038139 943595783 777694637 861587262 424265248 716700985 174301929 965801256 997736086 330155540 656446204 325210786 795299699 855312315 928377184 363957376 141116965 937826079 309668119 103358235 748633934 957033344 948889542 65167898 904388652 73833505 855516776 738811598 901294247 743317013 120830870 871595160 560445147 75967393 611996172 832685845 796991629 413656309 828359893 995104081 325533808 362476368 984002190 905782870 993149692 115674515 786878869 714073372 528189982 966221103 969642888 858369015 885886985 785259884 762619186 351701881 32934911 329404409 466528505 925886601 254777839 855765850 686860774 1678202 669834593 404737550 207096545 879711355 852517469 251677383 953299594 809019225 631763066 928163975 698979847 309369753 822195503 442812314 857005168 913434907 985264001 587090132 810206748 757597110 387029031 822611548 891939197 512008927 791931862 1124904 469841226 937056392 95349772 507687639 33625131 490709297 758079735 940995453 700162495 112382690 15057485 460051504 861950539 477579643 741141894 600355805 416762033 832502440 537039162 829512912 201074716 382633802 180656053 520984292 332400654 946882430 866633609 403943843 891819581 351413075 792531150 998803173 845595317 767495635 379366372 982348021 18915870 944644405 433702422 966658336 114843233 923398233 923274854 913858950 97073078 893930535 527222601 921376202 449290001 688607280 923162802 80840146 660637802 968308330 319659395 415521681 707987160 400846267 338279504 11870386 764578282 120827222 443146156 214587475 450551565 365845103 990309050 807452811 472041960 523973441 171616059 942852962 998106440 407114640 555496864 885504619 399113015 881387059 546829 468835323 38435631 485575914 918607409 589436325 219065105 910462882 303560466 190636080 845330294 122801497 993596002 340032238 105661486 307711048 33281790 904039826 808505525 278881412 771679228 895849891 935060438 484226063 444969789 913864733 777198114 944587962 869556027 642790876 72410777 275212028 891733071 943639141 901991661 591639187 823842068 55865885 896467277 594162032 909286533 856550110 159151210 828015464 670745542 682908193 41705021 875558690 815936661 825276482 790702350 524746029 986209212 611068125 242005951 892795999 625476595 926096025 938854957 27008092 707280381 426338769 814911622 724969612 958177073 828988218 352847385 821471457 889236199 577945733 236588918 551918910 787390194 932452101 859789951 688610248 153768692 216519255 755189441 323608790 810497702 195203687 496599741 962113053 606484595 966777408 864096529 864436675 279630753 201334526 454961602 524809693 508813561 79709185 784219636 742342551 421197819 998383440 313687914 847739523 159542433 425264318 45551955 663556392 995990371 23703764 986492344 176024827 616863802 1621766 837975010 746119324 854932639 384627616 847806231 319865006 107397431 969383199 737407486 379924773 849235669 986980795 452506568 217642883 145634943 63878140 358018564 389922775 909302447 931330178 180301562 401459382 984370027 664075472 869965849 784331774 888178781 302225172 731160927 917296008 765973255 465107213 877158756 771604300 912151849 822318074 800526775 750926467 944363478 150181705 940288185 568464639 870167467 326567644 131543058 461749274 80667179 192093773 367073040 855829741 699113888 433348149 906550073 269737121 833118152 899038973 772524723 893640271 276971369 938885628 202885854 858916522 890324259 142649209 816647036 517402379 82036896 406666965 153872006 807982658 665151724 878878638 939706454 983664080 971731088 505887673 787539933 988803598 301733784 924184718 451733694 217441013 748311315 310263184 761058594 862127575 920028432 151946247 47167242 415278525 105078794 898000149 756008170 916036955 460322655 763963352 52114643 794897056 488665169 792376218 996927528 79078568 162803555 196491416 897983282 349955992 233687686 166800531 900553521 812279923 739353188 807176586 823364688 344253571 379556060 778163265 480222241 506733145 772240269 450733455 985290880 336573705 139180927 898900977 867319832 579472796 250671842 393720444 392050474 689915283 880500551 518132188 77259806 845990524 301513326 73188998 971974940 497675661 364398113 894368795 963301691 551498392 295699903 740153859 943007640 767161006 239292134 34185148 915381624 676863152 528573625 983680335 737020247 748832103 989966699 682120691 906290531 747070361 803916657 820932332 172458082 483153383 700857837 953921269 326383596 728657477 813705210 992700201 794568411 269628772 993479788 921259456 818743682 873667669 825491981 651112007 830612425 802073633 872240913 353383412 760507162 165850024 749902696 752899906 816151371 731569863 293454629 815250434 782189126 770823255 449291650 274458834 186009694 740571853 315029199 507344036 877263856 681162161 853645720 770337915 930425534 789829593 322051477 461524777 811301258 608087261 874766479 17813831 822182866 886128169 936403952 959570089 941759821 808469555 940458519 973213384 390133827 737520995 883332201 970278037 808272516 805660796 978724767 875126691 395487796 340364653 937608609 903720022 830946377 232269046 371307694 652317018 801655799 756775416 45579677 801462378 911972423 592371648 891973551 940308602 951610570 473779747 883626552 502063242 310685011 627429599 68324990 32486238 671138643 580889530 857163772 787483335 786871993 564123769 874787501 80240668 885461898 968508518 782174075 793995635 474273250 816399948 862941330 927728608 472213744 973855571 677719091 533056665 60179041 860157074 913168542 803094314 217432661 622351084 944961760 888664317 308746727 908467202 953553153 827157729 922785502 400846702 192725270 846924620 434074616 924035504 142925502 41611430 527515973 799362249 711647122 166342357 396521439 80335547 289059569 368024776 150175486 112278741 977182971 826058394 779517798 722768909 8288875 466726636 817321758 433677320 716559798 880047122 264119325 802662336 703385535 931549465 738359545 773044913 191820683 792787056 864790537 57879046 55786352 101846413 553767766 81237033 844923803 318866314 893265066 942701507 167619616 258897309 378916028 914889073 141917506 386020808 110189585 885175801 841339169 960667100 783177754 294268089 644596296 983181558 750201422 860721467 195268608 60532061 511894950 548806431 396654497 875330897 501608542 846633338 960248747 878693854 779523179 564968060 763071453 385859800 883545896 849856336 960519624 978906386 736888424 762906628 267837038 837282737 200801206 846775199 872474992 606874580 807209900 935176694 992345148 310556346 652686218 997293684 212634041 749609325 813795137 953622302 753697609 57849295 438080799 973253646 565151728 478716967 725040841 993342824 773748092 797788075 847751436 400152359 891703200 619302067 20127255 394654058 931395647 793239011 204300351 830308069 908551907 831045615 782878050 834983055 5692532 743277669 21052935 685128161 874678300 182102914 486278946 634294889 285746578 844496696 777305779 209869417 615122521 893393075 856397924 278145003 253898708 190578483 660141030 7503290 305324507 447154838 376866198 533543240 783184650 928262539 959375005 4736442 660570126 585846599 936430534 840075892 58515304 284265310 623098422 869662117 378543250 890875075 167513267 436109065 908566759 72126880 475822366 826011063 369711021 770930090 954393002 792330492 347915099 405199091 154627531 290635522 653826980 459489281 773364172 784050700 902397026 489921628 808423840 462505639 520874429 212911452 752944868 922278416 394089585 932436524 698390244 161027398 516485877 846019182 613662263 928028108 517621372 756574321 565093134 983567357 275748599 156121960 768178526 820746955 752458849 857666663 279902980 929335592 893370132 839183190 944858482 308139293 876863886 146069726 737020247 826491680 277454492 337764555 232897132 512741250 727137095 697828435 380248603 859511079 590244000 122087481 342718894 879732357 901949024 828569062 718200755 912135288 910411456 781358156 503418101 83698745 658048822 89139193 527592577 8139190 229367430 991224665 305746681 202573767 111130622 545380862 844538953 891084888 717739171 481973568 943230365 826763244 874395505 984431732 584786794 336163476 950899638 941460161 738941050 365057760 770428805 772758850 392390482 639912693 31685182 808278614 284894038 494534445 206780632 770698118 112168548 967737178 496141418 89155932 932296504 714503991 776513918 231738539 844131681 619163513 271053976 286381562 48286080 179288333 877565944 255407140 115187377 274708320 817773093 305220741 342200942 744674059 964925262 136113867 176393432 479680746 160637670 548350708 112148158 442951162 569769656 844563708 615459390 86764471 421385397 392523477 267470525 819237360 980044356 682718152 863680021 961710936 686233610 763260500 57409747 917501682 126337407 162277248 910760947 625216733 86804621 131867881 32422795 365080878 806081910 631828718 274264173 920420047 568541157 738525502 833874908 899051014 805588643 934410579 857453479 992056704 935880231 841087304 966431465 947766427 778399661 293907602 533432554 818493700 817454234 436353598 165415673 838757546 790001897 978256462 467071976 868547892 189272204 795937769 461700481 590777079 32422890 242079487 892192020 895565021 810470094 19551527 946494890 341107898 795967277 851696076 968145814 797532548 657021399 968105461 376640023 331322188 842201968 397107906 742721380 825557388 651328814 93045323 541376077 942561056 459767866 929614211 311441420 827531666 99278099 313740424 738343926 983501230 419106237 772283170 938735077 989233167 694532553 676406910 68614348 557044961 949367547 922016010 47336322 172126796 864089435 976527286 353270889 840106636 919293539 877603416 771595579 814229028 17709006 1081350 381909008 974139051 94899823 921873397 558622405 953542863 798675116 792451350 419174230 596569 710951896 487844583 141023409 988916956 884689680 313425053 466271027 3976855 248416284 581385440 206462122 792207162 179352949 818924955 468765707 748492101 225869299 573280698 274063575 67783650 993189152 955863363 758475197 483797637 967527320 797445831 996088486 185551297 567265297 266749573 894226870 575544062 871699472 699433183 964800312 966950898 531493210 881971827 795620091 673975988 542381321 725932993 395576425 981882558 301265038 181141863 17421422 738645983 336898646 202312889 988364035 882555515 906090067 707136537 824598541 561569275 389271523 998032500 781574777 991409908 640028949 290275477 540283037 854151832 813621988 753501692 444530077 501656606 284339353 860737019 599189244 980145621 411142023 804447012 789469901 661205578 823637355 671759379 185510847 578500984 981530016 262614747 990337228 717584589 58564969 772377882 857301166 888326181 941134711 725165040 857394025 26849555 882352553 545379794 198687731 292603124 918958444 260809789 125160212 92425085 732143144 881136877 545142090 898341434 862382482 79976121 324826671 608890491 992591234 483482245 846248811 306369321 535020391 860309840 707891282 759301382 391393395 286298535 979383111 686221134 956209207 748242285 680795727 651560757 930767529 48490890 734653285 184970040 979959364 967619700 997506281 872260200 790705660 778265459 578233939 911473483 136748103 877832435 502871571 765162268 783319186 748339483 746138197 823976590 832575927 493142744 781207260 490367994 404750356 319499078 760481768 265026833 982473459 894913103 816401005 250311481 900445514 925397306 946798264 552458977 851788706 845767451 732168596 307650261 814910910 950081386 84610802 846112449 989908620 988034649 740045280 201388250 809286124 350650639 994195568 120320055 992091745 597333694 844963457 470463500 373975376 513240155 860621246 884101604 874952807 139356413 684958668 998170885 929916790 114774833 849672680 903450115 77042543 302665468 754069172 985460488 993892904 800664978 905238574 242806001 497984745 46903620 805873194 822883115 661258999 198280420 785942333 23147050 846587725 832177402 338243422 814906704 401010982 239641615 575631817 927716357 829551236 627932847 126257061 110398583 756119409 836197337 566328267 871356757 914467507 532826693 598965005 906099271 603972319 317805232 995440475 618937139 217154148 418515904 99403643 838550641 793095386 741324949 518044829 426996764 883901784 161945875 365927668 29738955 240545353 834310137 603887528 538240542 783507046 853296468 71962073 958094273 810765587 570012456 37795244 249824662 810360850 244232012 742475785 913519612 848083645 753550936 765019978 485646603 287613990 510948718 226427292 960354309 574832037 770087253 794071783 395106424 844558425 796382994 327990116 999732203 815360214 294095557 492882899 657166910 307188621 182364567 905415339 982746048 775028773 925432518 291444197 124726003 919020537 19490036 499184746 311930141 590553315 732497062 281820922 898707247 745614762 828130162 779939599 974254157 680834939 805825868 453680366 770987827 169829830 69658137 773978916 788787670 47400185 666298114 996597133 983806385 209710301 759578026 783294958 28084967 92047933 939557885 227029241 992472302 407354932 997001758 454472491 550728474 983132070 929455948 174644967 976594995 71813019 337555698 893208616 484423343 698311792 222961806 474464980 49806477 907710449 147102991 404951692 414675756 594340591 340167672 561457362 437682430 906278621 373017150 461741915 944981889 301845830 403560698 30315020 870989251 53971046 232303397 986447295 778725744 85116282 760115632 281463363 886853906 277605126 852352772 836852966 883216455 944170111 645944590 963902987 884102490 559593917 708257264 762473307 870960952 916965430 869316266 767197387 942472002 916725809 796179046 48319461 627003384 367749562 816773589 39649981 930510501 964727154 66076792 440619615 38906466 737020247 422118452 804780998 870787421 993614536 872483476 919703244 855002884 772507646 286863968 870986041 595706988 92870476 230246938 96563477 985265174 710499002 833172866 999413964 245217166 814283075 958477397 819176767 852948038 329922929 797441461 879881208 760266031 639742889 891028042 769572313 321337847 836642727 854010524 880562708 765155541 873718191 333522701 908431723 789462975 774314386 663656080 602484043 704966408 413466357 881418498 443866674 966778272 753591728 874793704 751290186 92430782 891383178 773580487 883722281 840030087 954273741 462063895 826122498 802238782 944137198 541271046 915429728 586144643 342803670 882732710 733650602 329729711 888567926 819348869 391490623 608514134 226167307 247057379 464547674 35181280 292776654 672148716 737020247 928500312 611217862 702591821 942357474 350377762 910350566 418242709 308384830 804849630 811486851 659270540 733403188 397246173 516288817 944651153 52934311 801818544 765084366 921857822 805927506 855174240 607796099 840962288 585490796 756615372 24347579 4070319 34372839 769705412 903442902 938121451 937319469 904592156 903527472 703251971 832393424 56777295 991413166 270691031 947668085 619978318 563279674 644482877 976146903 813901709 505010810 969562968 239089553 825415477 847764303 669023622 564798519 69153302 905860810 842427238 758142027 334110572 374383910 887806114 788896104 374912733 991522561 41452752 638423387 991601630 789796443 927294974 859262153 94932068 793024682 280370615 935685440 608164182 957082904 523841179 782607827 524595941 364926572 465168002 8765945 14950923 207481232 197036807 860767738 157733146 548334096 962275274 985158542 586945744 840921618 845477969 243152000 123319227 867369120 938062390 659046444 698907992 817923227 669319150 846147464 415210455 184398243 161827180 624668998 947355976 882381105 259507273 807855798 248777802 614211323 853928170 812870999 780255036 626892117 76098042 769570841 620332847 159022380 819213201 45107113 870057321 109859075 125937830 909565575 715088932 369183364 445923412 317190793 812727819 794942994 761301477 465115253 804363437 58799499 131587391 996383486 960187893 915179689 525632483 790970744 1121677 830030294 774678715 190517739 651053997 79377389 708335394 565734235 687892281 22395697 6029465 16867225 841729174 909225262 52406326 599825325 750534738 440634897 65889681 826624151 937856973 380906790 982676774 854559567 931049161 355619431 366384076 39076898 957496635 20594075 779441686 834743934 869717989 726621079 900667286 914767315 591438763 589376475 799308087 168898714 36263521 3012356 911472542 843755262 743267628 413111409 928292328 957045500 769184280 828561617 83083409 199340725 508609037 368281133 83072955 94420260 310292489 922700489 988988140 804862061 471976062 60156549 825692534 932389191 655783652 591374327 837500742 737020247 795331872 456082134 511948915 985503395 661566450 792784507 894472799 750062438 802467463 127809435 537414932 515870683 774216899 902525364 613725431 454497954 642435116 990327318 790912625 983195385 215673422 920659187 779975173 40086414 765495060 912342946 163808042 409645700 683784554 269318006 861481614 450115253 407506261 896370605 34337389 919260923 775799815 768015859 145737724 422780751 67724522 998801291 70206968 821530281 256350240 36035957 754765898 887940666 845751921 924610077 830046016 833704714 36039365 15230566 227878617 825949360 528987769 477312079 852431612 919337735 117467191 949466836 189522476 3253800 753068742 834531520 506304552 628500731 519127397 763878254 95101040 937308357 951286060 814895600 778086805 430342007 249866420 682567858 827727371 725487943 835682152 792525344 412163949 161547198 184077659 900194748 983803051 307494291 716410853 674191560 49318969 485058556 54833578 363266250 410226902 290011495 987424445 952970921 814145257 689291829 739631914 968088893 138723402 934286143 468938904 882454812 843625884 401451317 748428168 725911843 971760410 291826483 833397376 28577924 526723935 842082789 181116994 28888399 475471016 682352132 507568698 495957567 860788075 556462435 852362627 326211028 776261740 814568737 886069060 163782043 812335592 143710646 495463083 421077238 811219221 973945189 873914641 927805991 261566613 757819902 438670588 880334287 246652043 552058683 384741196 972869727 820613633 966359762 614042461 764130992 845332070 829666610 492547404 762723753 648969504 972880990 331007338 7169937 310359343 202189240 639931729 880037284 840728684 121950466 916423909 749997072 13767239 965478417 34347524 980023924 996684892 859178088 848007212 940652947 740857465 926769939 750239596 454300125 526800285 870091150 218477641 363636262 357298032 837755624 786330661 771391342 25072492 707124090 979361553 965514511 934750811 714862657 431851994 308245466 883563844 902150120 727678676 337674506 732179294 948539433 603624159 883086172 557397022 574813943 463828456 238225848 938327027 807279000 728444117 621212123 76650859 160966793 798194621 772891354 974766062 873823855 856123552 83395469 774556806 992994495 533449467 852186576 450078399 54155944 401173540 926344115 919697507 929846285 392113785 742847520 27495895 329714521 249228304 990346002 949417895 522597583 453287755 792311070 278444128 891904299 247018002 670198446 916868576 960957574 853131534 589050953 290072274 576917940 561890793 115065040 509928025 866735547 835680305 946955602 88516096 392935857 825754291 724792230 744743405 317479572 842629727 781128107 32413586 891212671 400675525 808889825 993067003 856855241 903772574 843589742 754791441 551396029 755662159 905620466 61113647 782343627 144407261 744635978 949627904 875160128 198244686 350591689 986759620 760349026 879570617 659667323 258238998 869743340 914471949 391209255 953858602 743396227 812783747 485801834 514037199 832258896 806988224 948429689 932242407 565164868 675630935 830877573 790463995 962988758 387699528 750317248 993675641 805707139 962754836 852024285 105104773 653487759 867050048 780255117 751785849 582625706 72657060 966090936 795273353 846694395 178727269 990295370 954975737 637035452 12411361 842185429 977508841 982824895 868622491 792657173 728402687 880317093 831853045 881996654 850352904 778693738 791391480 764337649 740284448 161325729 886832192 910662027 829827555 408419173 324262280 470683423 964953800 604405837 692497729 678324414 857601401 320638164 395063865 573428431 965997499 818717835 249760483 187706484 509350349 828458231 863235845 241429749 573199272 786332405 77795545 896530121 949070891 378094732 978969201 899406671 546960196 980856083 889246297 952179912 843837683 392798927 120098734 476804462 102134724 837174901 845081773 986963598 739222392 896224468 671304186 878111151 239515890 31290208 375311554 933348724 791763942 893646834 983004035 861762627 846795514 264076400 672602845 245086826 831450581 755101761 574006605 997223086 997758899 109103152 109737345 840755968 758550838 872818533 677612562 936119899 873814538 549751826 481586656 983432520 990602999 338914281 222620370 906983800 418195684 758057673 910685372 724417951 849663484 206183954 922542559 31966531 995166157 74322944 11495978 798265878 716058363 428161568 914542099 975357376 441001877 753345941 663635266 40856523 115801996 923186955 820617682 20305463 810856961 304060774 187583347 341200903 581173808 889138136 640610546 888340194 5393987 775000376 582561838 378566130 372841176 943986685 412212068 557058505 879729315 914804350 952512964 824889124 204882757 228339399 450453068 972766802 836791002 799269311 770906174 953396393 482845946 801297067 973105772 773280897 952794136 860225373 350093475 374113635 583390087 420436473 835221863 701861249 184083314 419564323 803934221 777530510 42329191 625387967 884776505 773558931 597132010 389068499 591506173 854831842 953507763 590766981 972677794 957269223 965729916 744432584 691785771 810886715 840741723 98333135 862986492 213557113 66745666 262625308 890387759 327053575 876508936 812426073 77196354 383299711 726092713 551763495 849271364 800079690 808274914 929772653 159894628 886809004 783718460 994942994 989200395 622051048 977366590 764283192 767393001 907640579 338838396 987039395 933799533 47579240 145262114 49986304 80709980 786408546 671531167 801273217 437430768 943052624 434236653 779579014 693880834 81520248 952778625 990374544 548456104 858052409 199491484 856394300 842601600 926126421 760753150 143990175 19245401 109497477 833155830 236122757 723276201 591660331 765488560 327024018 218254942 487149659 366590222 272154458 210255852 823680650 951845612 326647903 69841152 854407912 728697221 685912017 554410265 796795416 740874044 843074745 732401863 771157710 605523748 25255807 871285749 941544708 345576357 793061931 636093960 907863870 737020247 235308781 738598497 110769259 816900944 393607693 605994265 927071925 330023853 917741326 946497081 762830853 419767499 28403694 69943697 573159083 976576615 439167032 807119118 923748471 910963533 983303548 601202777 709916069 840640213 698574315 863755315 754118418 203899527 881427592 184315542 944766087 883454854 608879715 340568775 424863298 538882647 620563806 945020928 121112161 934806109 159517072 506117521 596835760 953248501 553924733 875149009 733133989 687237838 817491932 629817752 742849527 807249055 874196783 443806384 897418475 165322189 985115875 885089070 968820734 999587297 399854382 219818177 375932909 37316087 945892429 139320112 325703312 766469506 54526863 15442874 818595774 274210095 787653352 917291429 700659900 9109952 919413561 140610891 587214181 805284205 584137070 845954031 456077025 670024526 551244114 971991503 808292331 450644731 867036746 966076761 4638862 862506519 249286457 986012898 378069805 106616022 374805079 898339607 464431270 431796257 561546179 737020247 821230918 262492720 413925620 748580931 809836791 115687487 971616643 921052295 839632452 778694304 778990404 957520120 805860799 796211946 74962506 792830392 591172146 573640694 600837250 659272707 200369754 81724522 935937755 45467333 833240290 858292542 802623871 763965942 214503415 748828216 698047368 222503201 47241332 989990595 858711774 877717179 269614417 963588740 904565577 752775226 856053311 723188546 697548252 795499560 441814245 827596086 896797713 951301090 18192238 787831966 984661010 803260391 39499650 916812764 802465117 803683220 57376702 762894666 845937745 640630972 915201437 796495303 976923552 311859799 930162058 198443489 538261518 591028027 618708511 842998974 551267773 940710703 139214069 605745239 894769615 118513995 929115020 891091857 814237639 553169091 722302118 857975504 146411736 619766289 938516079 154719439 847012983 876351298 842861110 916963105 321020155 280131085 339228063 148453125 414685683 673920919 996236857 387038829 407530924 730279313 651952382 707911276 861436560 949076469 841553605 772596291 767639372 747107489 845278876 850597512 904289930 540280616 746131750 547965313 951791562 576244402 785838507 552347163 107009432 768351987 88416792 755293820 859551556 497683175 408511994 834154442 841491721 749074685 473723620 301426564 773430351 914651477 801329249 807487971 976414709 768425805 844403285 202925472 261167613 558850162 926372340 731438731 346870979 901829295 886704999 760203495 964244773 797812635 943647651 325523796 897513174 85433190 358193312 796076370 737020247 112317586 336669977 525303360 796053751 780862831 102251663 464428657 395572363 995299097 911067702 913425293 685036864 864408205 749435429 843918046 737882026 704465814 925651741 738527905 831338700 842810475 995168614 182075677 964397264 525243431 888695452 800664415 763450523 778642965 532102796 661613433 928792818 534592227 918318807 899971667 111475436 978915114 355406104 569497564 919462707 237263801 979112663 782406150 761054222 973260926 828686293 814338545 413100422 129531639 533913834 512580551 777738003 865238512 104211305 574007903 915199646 255292253 908802465 944821740 951278015 936098402 864978486 923171806 29945785 884367285 273959764 7581419 963545498 470668531 361094707 307514617 251574413 805710472 450178795 957643771 806176126 195917880 981633364 332787051 786950517 232453107 953101424 845071236 390190303 736107542 887966535 929908671 572263867 870419525 953640433 965554203 768718609 792864344 16664911 12746695 560737111 670438704 857753466 873878454 24029355 872278223 486685844 885102879 27928011 227232990 995351152 548428190 277669437 501686095 799971092 519071687 781457290 453911783 868955777 933548311 550306260 326469123 265934044 861272851 748489540 744549053 417251540 840648199 235066656 764249350 62241618 430965157 765407830 121037395 132829941 815988096 290759746 920127456 173478254 780434033 369627349 779166342 649182275 856832849 84531162 388221942 931969430 563413424 833887338 80146205 833110538 803228711 865967591 432737260 938558439 965926939 866027745 972201818 792756613 777407591 150898334 397916263 95810760 427627519 499366866 991428743 415640719 750017834 341494059 629550956 50335299 490817112 921227671 820481348 651826390 43452786 883328795 943899803 693357947 181126070 847252145 744076426 920248392 383404159 326131543 838688577 713185111 842469032 972456769 753899334 702552147 582894249 236638483 753200842 181447459 897068072 119826161 271724467 163628574 938640989 915773788 211806143 41297705 949232011 29745475 852944270 942069187 923595425 701684013 654527541 852448410 846510629 679616929 784055234 180241070 479172439 819901236 797884136 739951732 994316401 897117808 822407886 670764266 519774071 968444680 664490463 390414585 937538648 541562315 756308261 206676438 388374380 449380973 60855292 37317323 858850264 576255088 973516235 838805114 587833727 393285913 486293676 748356548 919719162 168539012 427612289 846322221 874837743 793807804 117340379 915669385 863565553 307595353 849737461 743301629 286978629 556195054 871692011 465069146 875113713 769552541 576856530 820601900 264445399 864081352 962082528 906760626 742052009 163932181 231080910 713288691 770203247 856096996 423997968 896347894 229410510 944544699 985208144 911356600 879664818 777610483 950722794 246414566 1996944 811232220 254380945 725270651 275596439 797662182 251542607 874736815 203773169 717897153 961095065 824733667 110639708 334364540 360768292 844312283 880152353 848362582 98566036 665322320 861189862 970377354 37448044 523507584 874032277 996308495 489783067 504544674 842818607 266780741 628081514 698743949 958602512 834893200 983644855 484356645 978032112 816352286 786376197 896493456 422590280 565506867 719646979 676860095 798200651 521055963 864713523 38110880 833612237 747237090 694074829 844674502 839578836 694629802 601804606 134210671 224712045 994572609 775154455 95285402 383930824 771553304 809276458 479880644 867615460 944311996 890731140 944220951 869006937 263225892 786410843 818440082 280813232 201533873 682173954 737805851 999099662 928833657 327343276 996006737 888724458 849922632 815288852 705640218 614030697 296223118 303994828 928656736 536138561 712040550 153216780 923298319 118234122 8034751 203408717 507433736 772132681 746531593 522729133 853904362 71873372 989455813 739977461 367501461 786921797 778681308 835330305 866816250 373845540 927415610 891357994 588688833 275071109 279523884 615663509 380910023 835971522 814810926 281527509 741925889 425336309 748691676 858155472 836341314 908815626 487332945 985535939 566624540 744637203 910490710 900888077 733024766 589076923 889505814 972343411 735003699 619056952 870510693 761300500 981827449 848578811 315150407 783970251 296562105 761962957 35317092 166124645 331775271 836736890 147417926 810945266 547898435 805324951 109910393 344202264 836524722 831352390 652367758 559450092 996854026 389290722 112976252 893406057 852499431 594875061 326531000 834436304 597426310 855386689 383856107 943247328 635388687 996716472 989885801 422809720 68825772 166761260 465994779 731393721 874895675 824451682 536657879 844826725 348119773 339249810 184725665 775441338 190834296 288123177 312354368 403104975 981698240 850164495 817763421 840465953 830363557 643188539 644742544 133276459 970037613 678960843 948445282 150387567 66768787 319972111 415945780 891590312 355888027 295017822 850355501 833806145 484821854 867306812 964054858 956828296 199820229 753884388 491666711 806212813 207621075 775639464 116204655 719712240 778872264 744094524 322735762 864780504 151143098 925940086 597812164 753441125 802524567 350240905 774071050 465351804 546117577 830871484 452180615 833627331 100203675 833047862 565414842 195024960 814949686 873804766 501108570 919319094 757563926 402786810 836059218 107394373 786180158 217124592 764740112 334846481 630985721 750898104 60307066 874059324 986349487 624683831 186299775 699265488 409287434 463580069 755065245 829097106 297642927 322302354 425600283 746815853 730327544 455075715 978215051 40165114 884533596 877444992 990512527 848283511 792505205 937182242 97073737 679692389 66848924 399512249 862908986 894542337 149041542 363599804 805655586 831947514 779711953 238298828 72268488 142034838 976854062 31477420 346136998 816250955 496626755 741821226 986997684 320105845 248127628 842605110 6454477 847882009 914917609 850060090 234984456 367069829 413958891 357181080 886757963 928129180 871673706 89745905 766103430 978618478 915361055 992641129 812704422 921345674 702679758 112320969 179033417 900262172 695510452 781341443 858101367 905283289 858071320 840115104 248312352 551636561 292207852 797418827 677733310 938114327 85554747 812081934 851332703 829829205 959209609 58647187 934988847 921767260 260723031 847246625 38849346 696018620 30913013 598666806 352314326 171650670 143786458 407510966 280716368 955337684 768968585 636682324 376588778 712025252 54408058 205958945 147018986 328428260 228622117 965991710 442435357 568712333 335519587 266838849 552664647 993614248 901206619 367944113 959900965 889670672 881236158 572762916 945153628 372339265 942069508 860096550 337879026 197324845 369735773 803490993 855120246 880328237 177512283 250732506 191360437 956321756 794362869 691051936 996395570 757353995 838812185 919793260 230561148 426713647 142981531 819796590 988010012 791949227 863657579 990293582 904795534 809142403 213447653 685398895 987082077 765506945 42912041 251352249 929441181 46066156 197389052 843383582 977364295 196346419 446075610 158102353 981571797 854111126 400883293 916828054 798225299 860924666 644708756 321365276 731324381 131109442 602834276 403429346 690351270 778357869 989115384 79592453 687177336 267056361 732926235 863119256 903548289 989526879 301899570 861369658 980118806 4382797 536013452 796553005 397843887 772414146 228494406 357378248 750918355 697735590 867062809 137279041 980594780 746136343 845702587 137384512 745291400 519941640 80539238 261438712 852652633 282479776 416609534 744819093 995777718 176553649 335150394 937673323 915433999 31939031 864101649 752750135 859112122 858742733 57039294 438599058 972793660 771362212 263489102 765004366 766067586 857417308 884076110 884254444 984645674 330889329 896613937 979289385 832296016 783001060 191902626 630127391 801060226 512713379 993955681 251982817 156289644 983394003 907084105 481550962 860531129 984912617 912323955 947495658 924350987 433902009 854015789 10469721 613238872 344518953 943501777 452823226 7489507 657367542 908736862 626051520 833704164 688218852 454625772 534411784 357813217 687209224 996683052 423381664 783560038 170281521 413294943 244881565 901294426 836867242 985345959 347420974 894234546 460207279 274649603 908456765 591980761 959404998 185583896 687981637 637817061 563580031 856009972 569603930 853553361 76090891 650571732 820366658 732722785 948404506 93998759 793998479 974736150 873867300 384739810 141948402 797468979 988157337 70534039 769921212 445342128 796243741 939901958 439908268 575201611 293746808 834082957 827725692 884836309 827967853 756119149 980498781 205570916 896022022 751647785 323085881 706677562 519321516 972665193 586253817 445153701 886245641 434367956 823584507 708030525 752875955 113563596 912752198 105100406 851302180 914457986 208559650 345513113 797508212 871885805 68911235 954543259 382545622 343045754 649572726 709611158 1524563 281356707 937804594 52321784 214608965 917518713 117853605 761982165 329892295 584957068 854932213 669918258 880172092 677690279 833750051 962425023 295313733 656138244 544750982 811647692 764244749 808828601 888767018 199060203 895086701 747151345 749527929 540985692 873175290 833976422 792647557 69590462 474346256 196632006 32683182 98900800 546194572 316802737 91651096 812648898 929157413 825340423 928971780 638665791 825710241 373045565 730513913 170374289 809912595 251183601 226085230 743321250 958610667 947989585 985476382 741846522 946084042 832041621 811564218 519270215 477922290 435340004 937030938 125291219 869944760 666914001 722231129 538996083 476118625 717483691 378052822 73575317 970416957 820338731 936411126 995907693 859835585 55514821 795284301 832976214 221436980 921243277 501732638 817963384 940600033 814778009 873511233 906043720 187983659 937257429 675413949 405506674 509232573 167902017 506438316 976114687 819702964 308838114 938397268 152902147 783956083 846246468 980453785 117276445 833644041 373263367 786141853 843475012 919182521 958435692 267615860 393316691 295193050 486866468 399005497 880873328 798422595 36850784 961271556 715172911 990638910 999023235 821358134 276497766 859662211 475193707 776162314 803946614 683357013 978261082 51620116 802628485 552867817 94154504 934812762 267963393 745797315 331431865 333924163 169014637 107871531 987739133 931424281 646039035 42205160 934211113 86466759 969139880 311400602 130844166 896830239 861291023 344306873 132575057 372172091 632285733 662871626 792648443 232697475 823597502 416249062 840972312 490020965 967068886 154067120 955154000 165022241 852486314 602496577 765530379 462318843 442638922 830627323 900475908 850347280 766574600 864734704 543575067 693810187 456296853 686038079 710287632 133900896 949976499 339385467 842281464 223081864 387538507 919439834 227400536 343431562 770073854 750372450 999095803 792880868 749774874 337690194 391073575 745824516 864182143 369670803 320724223 858081517 861667939 676889415 63143821 199185180 827974344 805686699 865460355 764462743 935795403 988745497 853767716 823794776 923302617 823821095 539705357 883254676 750967977 177525038 832522016 852256875 831453086 804563889 852713395 980354931 985220318 992506660 14321346 778948079 454849629 127450136 347588950 836545955 155903762 653891270 91396729 332189431 762787776 754663388 895154103 833836225 840858810 920990045 987695103 12330922 825133362 450389110 22887044 941805180 457790952 300295295 925996489 488557673 601874770 901394938 896340038 261112018 69344760 685452187 45553871 579410897 845632892 903232794 47795106 766840088 746918328 370457868 617980510 12187775 235433589 497052386 266597700 905873330 983027261 883781985 311488979 577247126 767180757 690822749 845810650 722308858 156941673 178594660 546630046 388262158 436708513 747745358 161838210 789607230 18896705 918836295 966197047 958258074 659580792 116357835 842603266 569575856 901475136 978607862 799323798 598337787 417732183 775606455 34515319 338287050 934941326 289956343 78353674 85052178 989286463 972672179 967061568 47533838 800224900 26050941 778371818 821784125 761392752 366761590 644254336 883888587 926302571 176647831 764370853 356989021 896121020 558307601 911250381 794084182 824984949 249016168 526767987 279876800 164411143 988121453 171770006 855652673 756331163 255954040 347135427 793593664 904526392 919819628 710386884 796275852 740228518 675942131 112341041 758259482 184286369 757247750 233848663 996852002 674914160 375689309 437648289 692886816 120821545 813702748 30766752 483238353 757760296 976044237 778060867 898374943 808633375 228675119 794426400 987978930 557877643 605892420 593047649 798867836 347559654 947878056 81105936 470723712 590319089 749135213 452992742 964300181 56873711 570466751 113267649 655646261 801101772 54169761 485784368 277331160 217083950 178625308 753828325 542846264 934461944 733345250 768092324 902159685 115471205 942764635 761766568 411891528 959136309 637116821 669469557 859796739 690710285 281072775 49975674 693853823 893399269 751813407 728236730 942843661 67201963 997944597 420592289 388834224 518228126 495247289 405777124 869683886 804252662 800818657 794761920 296106370 605292213 660102246 811703211 755596128 917372631 547898113 947916837 755011740 947054245 881631140 915455955 905287039 518068326 36807076 984750580 764070511 839792047 925179346 405338344 853018837 957996345 809648595 986345075 313470320 62871912 973482527 929393856 930492015 741514490 175560358 589536872 3214845 787542188 870028725 613507262 512226948 767558019 52739719 967344841 421320093 861870006 238865984 291565838 751061483 865576596 963691553 984162237 290322146 840440849 892268759 951630349 965934296 748499877 663342535 768034719 185858561 997560917 709713681 933552526 818229921 954917297 515708086 816584013 750146393 844449514 524118659 972917291 139463062 220146102 677539163 409843468 477912585 328590612 87458873 790212719 423906383 826332226 60831477 741232568 220481333 517556935 971882095 538535981 980699885 986792546 468973650 172354987 810829025 966249818 450608019 686124432 783868424 117199178 996780427 232478861 251601362 307942599 52925229 875739408 885760512 807388613 434843153 871681067 681278595 413865879 933593959 582950804 958548143 920181235 134282473 843468793 676794774 153435456 761944003 915880978 579902560 137251180 360172428 816072381 121959095 837319304 957690597 157071968 33752753 788011561 559614194 124719104 934398758 190503056 975404298 961566084 990757938 38524171 56168791 430133996 987610679 265541425 979786439 602572745 824089104 77490711 35661233 862843472 150284737 132183611 859068136 197037184 929407001 973036168 292398132 919578410 44017012 355308918 958288076 914088123 919666391 895220088 999818049 953417440 828615817 963692794 978173980 531910378 999888911 98413399 443262517 32794501 417265267 292391668 476950903 774021216 32959201 933409662 277298316 746097453 968105496 499344103 901152050 865233408 198261293 947159152 991089915 575935177 600263999 936205475 806887998 531774205 484809536 827220267 825203309 759258964 39953993 843460151 854416880 168992064 310782516 283761001 675086411 471134072 230364695 836081076 821523714 761003487 920932802 907118245 51291823 814289836 947275656 979938972 513278658 727619209 91688279 884654872 963670391 442824516 22099805 817982038 84537949 316521481 974717668 859228600 808283313 155675772 873901851 332841068 567887692 894750661 238339633 240375755 301558801 263405886 754719640 154438862 715785980 655697515 931339306 809362568 998441416 15318483 192142732 34486598 752385264 566281457 260936888 855873095 98008208 45929143 859401857 490630822 796480436 99786009 740812820 870288756 973070924 303348006 230781075 447883981 415801007 710817472 532158569 42647985 930637820 977825991 983017962 869206867 767470397 311227579 360673045 944113247 118762564 705589436 851910767 995834763 142739845 414177408 796729062 571172544 610723955 558045774 641857425 629525721 941248360 314576955 750903145 844402806 897785104 162769440 989819693 355518405 788368070 706881792 764693358 71120654 273363401 589412311 893421737 827448456 973498929 316928989 900522260 630421356 915350505 118959864 766932235 256422824 706558214 892745935 837574763 811112972 25443503 742629267 256087078 405149450 879524982 495473503 952833997 222600354 202978897 575802623 93639093 267617227 832736457 703233648 772207984 905593694 761138502 923137216 322073947 802159290 882993230 227187626 837164686 971432411 86934801 601890084 879049308 395080421 835287558 832507564 795619939 805255040 848119834 221006648 979316944 987534795 256884684 958450480 339802342 674840022 862132331 744716654 996969530 968154311 626574118 424492603 249102891 34676594 534948339 938658540 785554100 912272838 845012253 967602351 755055538 718823214 766970095 441760598 52518939 16635872 650913739 821867835 901244968 447371768 956281027 850198483 606444804 562003110 747278736 203636450 117839706 804643854 717678098 849624727 516174498 165935605 958771822 589387938 388526656 921302544 513772345 558896948 263796649 143003982 129159800 992916152 72225008 361633421 492256377 862042210 949027652 971146931 630148817 814951082 490361116 773508670 862427302 912087838 946808023 821215206 798258152 987373129 288467721 740325912 383054333 565686582 453062092 886021330 39149324 914274567 861636699 957821653 940295728 875306707 198549409 842743743 781555533 859773167 368008071 823550739 920728170 841552018 991374831 366337378 89106697 692606279 900357802 972727127 319252619 283053261 839160470 213864753 790724122 694752613 40877615 740905893 861466607 949986458 439512116 675538137 274362402 270606139 856250466 932345227 910233568 963280812 760345483 407609613 240433547 346622238 255340050 739722270 593483516 898496947 568396118 487111401 927577814 738471989 568779178 884690973 89076858 918940971 150911152 198362548 824555509 954146919 766538660 649439521 463431373 67370993 809016126 263185548 166112967 893535877 962338861 814389096 808834026 720389514 611768059 828765730 794052321 793575983 889347194 665147475 376607908 545785237 331443026 656392231 980472077 920432201 846977202 758914337 803140528 532995388 941622535 19781435 971596615 649836818 777189545 330041455 385434892 884542734 699876563 874074534 808354454 562164370 852707862 422583223 364563461 708417372 670222126 982941843 622359448 130931966 417001723 640472366 351018797 168455229 313599498 272657156 789429119 877171332 69500536 680595092 117534116 838596800 977830597 404585853 872581937 860330170 36116506 872501737 902283756 785984044 957763952 614287346 425181470 922574366 42549210 85890462 449118167 140923527 633897351 260848302 615946831 742949483 731740096 959893396 782444695 858306956 794371851 497358756 11609433 974720222 989452125 177059751 164329093 874722251 652433677 952296966 575303063 290686704 890041080 815045522 884545385 883429173 853102282 793842828 858951827 429669578 332794424 164398642 923381112 850787773 983303118 455140076 786310545 890453816 988536409 833126956 576522060 198623088 573247732 248520267 98202112 581146123 459565989 309626133 334742326 713229128 229098599 992927008 417023128 920697661 880299744 912640241 983344313 941458497 283113672 752235687 366416534 562452558 427293671 766302362 746378165 736969332 255804971 968875958 805578230 797328844 763848880 836442496 759724684 922863379 137284531 933343205 743476770 125459058 912437536 123835381 850010351 943792265 553306937 54703906 201659363 353833981 437802732 296854916 690338662 670786272 264140262 698619272 203384232 919508159 89363229 605337309 998644245 993497990 838690204 601022376 946356828 890109517 84002983 768016788 739127242 64195337 203789948 973907222 937332145 953873214 814742207 990870030 641889256 47550070 796798138 838780492 940925910 9412420 899200267 989014764 826350021 792718015 941199165 742664417 905588205 788476080 583837708 109729467 853760496 142834852 979065801 757612473 933943647 228204697 332243144 189050280 451142093 968223458 600717911 754123242 816994859 908791616 791014624 878780930 519525763 938102205 764644153 914026757 987458873 231072507 641122950 980243538 66396453 734644923 174893243 938408325 897188614 279178780 750625764 7493869 910176457 814164862 154412316 804243988 609140809 938475039 820118165 358270473 562191474 704125719 559837860 464934079 179595718 793265927 806948822 792110905 983481978 928766961 32408544 746378002 650590940 199323006 795259031 737950875 597677581 273504234 640728780 543938982 219676090 570700353 419522413 793545501 95369973 894320048 76641632 892901764 470491427 977299361 918744773 837515542 135381118 23411226 474522907 879116289 655174697 869619798 805646807 756055007 485607946 16551654 88489301 739478242 633584789 924209961 910459393 204766473 667132047 96785039 979507255 726380869 548771618 893447294 683804654 885918366 833691212 690471751 355116310 773219077 891895306 348984271 778029040 866997357 735654049 802574961 923921753 144165336 564614341 768529788 487119164 663998596 300711844 189530844 992873859 734729119 630767830 310601790 3330205 804070187 491650668 743713308 811731860 943516122 852987654 828548449 747848352 400439372 942275515 753251549 755232580 590116403 953237217 755389896 164544922 353421560 976783974 415034318 945973510 785859496 986484470 862562577 845392610 827913888 703324821 880562848 740016288 992062118 84821152 656215379 169586942 963050303 142724255 157436060 698872352 120825484 501669492 742949011 983121268 713054754 919960965 925834667 52554113 97986653 742090440 929937511 816959123 739675559 923291726 565152696 207562087 6618957 873159685 752068245 969053935 854317595 883033447 484266232 224045104 973229394 739020306 675765728 409934769 705246125 836906949 852752293 233762557 247377227 691399261 230272551 659433268 811095273 852721705 441393373 860281068 175844306 631060797 835067762 656948682 781911591 833274487 606976670 887726802 815175971 767544886 993114900 875542509 760838363 713074104 954547559 754971041 143960294 760108908 695950705 927187529 752622186 172330079 113804114 811307482 676592298 158492419 832250216 958591002 916618339 441606165 365389530 217061775 960378765 990368025 441640297 276077016 762014270 435457998 82421562 120282904 924790637 387260234 12942113 522961887 564382809 886219127 309426970 883542211 758948095 368064568 638415701 658509951 341799426 261526197 222582194 408593732 616214145 788848458 870925526 798951960 807207579 807810521 448831143 310589354 309380375 974936952 903235160 15225176 948130669 518322900 76342135 835877731 180322277 848679139 755316860 563906755 605937706 951817756 695422663 987587813 114244821 68926940 301231932 824725711 883653851 964031564 519238617 160430168 128142707 450354931 558412635 794419919 527825507 180809808 800151276 975645709 182842136 995844446 995596837 937472424 191324567 525703354 465567757 754190002 852706106 277573103 765646315 903850748 831901176 982773826 100146645 359878598 782992978 915724111 765574311 754620870 477374958 811028956 846884846 800299785 331880972 819095677 346816311 359901441 836470327 900625188 511812353 313172586 744492121 316648870 785345891 838551227 866170328 821919650 869542654 150155423 416308500 192598012 481762374 174841597 49354849 878576245 481632440 748519157 347891540 145731298 897110567 143003877 977335784 528442467 910535851 34820550 983359785 160344861 891670821 112431481 759995460 869986840 103932789 684123874 220950937 800131990 136935599 880863497 743932040 174633830 738275929 901923654 964957780 794343531 580605794 749944649 848924080 422076285 166665303 744993118 937976260 513564254 954682067 921955422 959945626 872597366 739794173 849232117 977272763 895395233 737460609 976195985 767364779 421896501 608378302 865333403 389837355 695146370 526826043 358927272 441212357 935285516 880206721 922542670 475607248 867805351 766961977 250083613 787250156 909082578 900492135 864261302 780157217 921636282 981065567 200269102 338232809 971895947 953341611 814187772 905425486 912919757 852630388 607278251 577259223 804734664 566155607 259622000 344303102 528469294 530027531 308911802 517138743 874271099 398282579 900012597 787988277 332604993 178440614 941352254 355304934 852355267 891333863 428244346 156129938 918643756 941805614 907859756 500857729 814261353 62657263 210367864 814945265 289979995 571850757 511173767 965621695 953311983 560606831 918960964 423037526 719256079 900664000 619124359 842235331 656359850 884345947 775073784 940695701 588430038 789311792 871673100 609668778 543910166 813725854 739681730 274772960 819290084 351730484 592219435 360282390 732232708 961113620 629408112 125410151 812427867 907631699 423927629 136702263 772361149 942861247 892039909 905061156 11649381 687732831 838796985 938805034 725074719 770546823 236712442 982068341 567531279 645532849 637936090 503243940 985077015 249899647 865939956 220005599 645058097 549184190 627589124 572380673 761437571 388188978 404739701 749871715 283812373 947694126 883666503 964648061 869586549 863365117 154601356 573611461 961581177 313865827 928696585 887472340 984858790 984818542 918814083 665914579 851061506 718258981 546532489 796466092 822986570 969732211 892975131 993325095 777809571 44028266 739159469 730215469 33491388 576645204 947951492 992477663 144141021 65514854 26772651 48910058 741845140 909424504 909130608 72053437 304755754 453187339 439876198 583295642 811812352 943386038 752751548 910567717 663638580 59778013 9844462 964009427 970912344 825908892 782900119 811906656 82380544 890427169 818261341 196914935 751344204 813792301 782474449 909631678 335836290 983319642 635097478 779392498 781291072 357990426 797916797 874898980 178159692 892140017 440839253 829114831 776043916 195190314 752923806 233081924 826935949 979845476 724146185 925641798 867669748 755620885 803279739 821998786 755176787 665889663 135566183 684040718 445319275 982472821 836094076 813826560 379536280 888620700 997961257 598156421 374441745 963057616 175897419 235739061 737020247 336170417 780315374 785840537 970936900 137593868 906325117 932037667 61563482 803101360 948264440 799290217 110138661 836696995 726022366 767540569 867685936 959257638 961725794 943917067 450397200 786172906 676592837 360692945 921294777 874943162 872303082 582920742 768939451 819999592 746840320 888891903 805111796 786072558 819530931 729475906 930527078 993683097 951171438 22542330 703245280 86443307 574528773 975708851 840269397 982245364 856790018 101623497 364297322 593526058 465895447 842988802 961363822 779899104 711931513 975300872 652170109 747435822 960777306 765034824 914967457 831748342 164123759 487807487 903143238 928283482 952919675 10947357 920523657 208280199 276615444 167908939 952264153 776922801 744081041 970234187 814955007 965938185 754967843 426002793 719649727 450329410 744200652 91320885 942097480 339131840 308390664 449715696 817381152 966265388 720974491 595605904 927213142 891314202 658607268 810676689 103554151 656851645 428379024 797426121 407178900 839826655 662992066 827265994 691991102 107404041 769171581 978045132 806223179 508117868 41714938 876393864 409724030 803572516 438961124 655348386 759430339 225504724 563328009 325755534 126080247 771323307 881114035 542145796 497518241 977350053 876966109 932318293 804930928 910863548 899462495 913102100 484626606 957683369 760187324 647416104 148895885 258544882 345282045 549284010 843114151 776051881 389152251 819213977 399268479 974360799 453199101 966890903 997105905 754406225 961895112 840043799 579963013 931248945 763991178 461192641 577511751 501772966 847832757 969040829 971590197 885311474 937424862 663053305 793557821 494759538 783058444 956502653 601345842 492637909 69800944 794651875 398255709 872844713 970376294 611663887 870746878 845754187 932987532 137199889 936720247 923176475 251841803 961985525 168170892 302759496 821505757 859513146 800158515 69756729 590881602 550010832 36401587 965646382 755232135 889681756 757370799 810546861 667847138 51363813 864700785 923526970 966027602 454972803 973854331 767504212 934377004 68402675 229668076 877297501 319989449 938013238 350185733 96075202 16691025 459543731 63676958 739413258 775115758 895705842 182870182 354147704 760100197 621746513 643772452 724299643 476483762 580853291 871531430 199309266 895682010 814146934 692315090 662866530 571094396 856553814 767032341 925076578 659643945 753711915 117579903 69872542 61815027 111661140 771873528 638386584 5756532 957023184 608933734 367872276 595515155 256122278 673669276 746693621 846968706 157256331 620189735 809709071 978413274 820526168 778327007 405599701 368023008 437373186 853632452 972035008 857974398 809653444 955495892 907336131 485854553 675633998 491569227 869388072 842492194 656593441 380290670 825359047 774904201 425587935 125901110 255457097 843799286 230590374 618880770 848678056 789690173 998136288 931343641 275247283 849380514 824577968 788470956 192588705 894512631 927423657 876462714 962494237 409415973 789319950 188203413 600702785 65802093 927463573 45321200 648325264 80844978 878920802 109603008 662046202 905149359 944631625 740632518 631335144 687991225 654209673 422817983 171361470 985608411 849014889 39864644 939245974 6464417 996109173 865979951 685696001 644277409 227711790 593912864 644325817 549108056 799481637 755413008 930568133 915561746 788390656 882180332 776333957 664131302 895886281 814605643 269945806 103584141 792737976 750730197 854654693 852121522 933636032 577645597 703627788 867661069 659136761 883634964 50201335 968565620 759437427 794776807 860769206 783615766 134046133 945750991 850056368 579176995 988943711 91266872 574656071 992814769 473255563 992833801 516997350 286798409 751258471 944641025 179718344 597409805 884948552 7222169 840932698 784174073 856773308 17551449 166906633 787326312 971397834 912930525 766461915 884714316 470557508 369328909 748679751 500658325 254563156 668156962 839638888 538643128 317219403 748469786 738155395 933134398 844939809 993479976 741867080 813971158 912646631 902873526 114912992 641602994 947888424 611539090 828320956 59132846 120497063 534235706 890937423 877883444 961762482 876605241 955774310 867700158 754059930 776625134 26414525 771879560 319905177 641045047 756575617 861955981 942421522 895138183 845437186 994341407 387480146 697181734 658758317 449552344 381865044 939912057 176955231 659144119 824681699 811615140 814667315 81100807 968469393 995147600 991136762 276590817 562245901 785278054 741278951 773782931 478194311 161047704 45882891 793818784 981118240 958625008 733845918 941258195 417252060 500332361 347320488 957908739 775312680 525220548 438225168 809078252 255032143 783844394 922512434 978995050 496444051 497556965 236235836 503927162 615527820 946193620 946623345 806973269 213151566 510350970 705236106 856980161 980896894 900588527 769473941 354092543 758599656 988122913 220723807 677321491 933811333 57370099 460311643 229067566 776059180 839743149 854702808 624836426 907532282 330705113 917315999 976031227 91052390 931273831 591762836 978603794 644239353 579710210 772648123 450720042 970457846 34885487 774149594 340258046 570712018 965685342 903545031 961610406 603312085 902022466 734917404 508973376 936677102 175246620 434139983 965278763 183424627 259983616 967934103 851057835 881695955 164738280 351236992 323986316 971346282 24848192 955078572 912011423 869398236 566354269 897196774 919884772 928365420 96279550 891445601 460140184 15213007 75787696 966195377 219671154 840613699 378549535 907902104 905273562 904357522 91806771 113734128 821082895 735002956 101655966 843999689 790383467 329461366 701197107 682840986 916748558 916145386 979919794 979356468 870583759 150265936 682269122 970406759 820315436 898935516 220543966 21185829 819840420 170453131 805881662 216151 289497073 796441672 113268962 45606174 647814335 555419610 221646849 282382353 280815869 864338169 823965415 869080166 333204832 373469335 342276263 822216373 621738968 210535254 749244421 122225558 186718711 963590501 868243259 291943218 372688276 162435493 750472722 216525954 123404370 283057219 327201561 310316043 713626064 310034332 150578015 752362657 894542637 320726083 964370382 698227149 60373133 577332272 967402543 895051804 998906256 905896006 413630132 789758280 737893809 5048271 881341639 29912937 659802894 810326961 793128307 434412160 181940726 981343802 833644063 918762040 520343774 115599647 853288821 787872932 463857066 262153807 87797802 835733075 972356635 985328866 449698265 121253076 765725264 441540493 844814455 795130707 941344233 942097065 757784980 231363223 733735240 639385688 392344086 897484667 920788594 85329465 393758965 515725430 61464310 822125396 292072880 947126965 888214722 526634981 297737362 971760433 937560549 909369523 506769625 488356670 105351734 833259160 457211413 964993882 934342052 994327450 71595163 929746165 565985169 808378809 594004118 298200221 979565881 531521555 854084890 972405990 857270172 920458138 968965706 226587518 817350922 170087727 832966714 866720291 522961670 979669220 969468234 886061233 435443366 427521024 836317078 566546265 760438553 185708365 391051358 278494710 27077607 677881225 852780578 45885892 997735936 465670188 934240337 304704414 795323874 801564398 658646787 133750169 100407356 564772219 249615748 520470013 901467972 980149403 403710854 90830894 822651192 590716883 847688530 104884719 672607568 462897632 115175415 754949474 527192691 738990332 638025518 738697968 925038084 909859493 587888817 430587170 978288784 996203265 863685162 918372863 955585309 101748796 442321901 921044643 895048040 400016625 734326711 161320241 646383694 912333258 739569428 116351853 707060980 635158610 644217220 845839790 561659526 490796294 742057154 899392424 776798457 116511732 870118037 71156763 605617542 906333333 424280847 760046841 933428470 910018341 152199729 437021642 448506946 676167297 512959065 831185784 776154374 995149741 806560893 766531133 305554286 100751702 615560781 897699600 48795338 633547337 698310650 982153326 188103854 811890101 7993965 236883858 756868245 902978315 946928778 124501482 767497905 251107019 269199823 685835232 157868379 28981626 816401514 894548148 618229988 750786822 878718708 992383552 873773811 201467334 32352794 933482186 990860119 737020247 445804826 855508023 856776103 424628552 892408136 218771665 799138548 673479165 26142536 935601407 988084224 613554645 796058917 577158154 739181393 284834255 846213798 306206994 455432756 149556127 792784690 440777347 839245973 953086454 813462595 322068434 600142524 674839855 886694639 713597828 200358778 345497026 880111702 501426284 786870187 357206690 778405086 329494847 609256489 557337431 258298246 71263692 9409915 841999323 446491882 235317910 606040762 137850735 72062134 269891934 557725123 941833051 866966746 565465296 87023896 255226879 607049412 686519417 437816412 753479786 722419620 291721625 871847220 391416800 37553492 979176765 496328605 204325304 505970969 760978604 453734974 679810945 381969691 194646978 781468461 343627792 263215336 899878546 476469866 359796298 785304843 57610252 595523685 852747061 44646283 797811435 943560470 985967351 767078412 947735909 831658273 340517225 802826747 880124139 917830647 271876662 950778400 135751477 28244205 848455626 582626153 967481456 754355183 121778008 875575698 147310667 758998295 166233760 896243660 113964343 759373635 947243061 38634741 952790850 773824039 946778618 289831531 992602297 935436936 759306817 759118599 794873908 754609551 381004286 890825247 154417426 449644577 578578694 787041461 434540280 681750361 723972454 303881306 998032813 304022183 708143853 6632809 856590291 835762750 984453553 3562658 36155526 874671028 703083673 617599742 866596651 434792846 435705809 930914857 862205246 754750675 945206158 803442642 746552115 882622908 819483010 254292751 963391615 968113573 930224227 783536400 318238722 638688431 886048480 802502894 507029137 982252132 7962351 969915168 480868572 848717074 135715200 707275591 128915145 108546424 338454882 948075770 149452023 416463212 68807092 280656240 261739000 930522091 868576794 668225049 795768941 982532162 988446262 114336450 277941861 447689500 700891364 57778342 639998729 943569353 689701356 34951500 956500274 919100465 65736141 822495042 820630802 788049472 853913942 196206689 527488483 866111738 31145504 796760722 808982810 357182884 684455644 757983353 106864674 771403653 29267241 814464318 353949498 794952263 48150772 343762863 684165033 761997292 835447514 884065668 164438845 13784725 377766085 905640682 378438433 902302455 916877620 804356006 341910383 39652066 811032910 808904031 774174212 823634632 465509786 647831397 377224931 775979965 866141832 582629816 934314154 738036045 956880503 556931710 883194388 884022161 895461226 731964626 893014945 289576764 220251607 599875513 115951095 691379137 780788242 991114099 814633256 852009769 316648301 978290418 542349093 917665958 879835780 794297396 47477812 685982539 875834888 805116913 644900928 459591378 304967269 323372556 248562260 804151564 809034849 829860809 181432658 164846833 231809359 228993910 836107831 171908850 745598716 984226532 179143875 923237901 871116584 25315411 769419205 857931294 823364831 884482852 764653736 422151286 220863140 749983395 791138500 177648354 924913553 808597465 384045274 997580156 773563336 863901344 748020979 835999871 501592632 181466785 605823392 258397584 906583463 892237672 964855655 381044248 346977348 922692218 947688139 955819590 493982296 769563206 858227766 518637375 896621409 644774511 591687641 979657738 772059345 818027066 864365454 268663766 848491625 54973647 802194699 990539660 679167094 186818493 942559274 676839963 886043378 770927594 815163511 726675879 652369786 594120815 951259849 32073247 870321443 287601853 110045653 521557448 15700346 805154642 20526045 960910264 705926713 786146212 260487333 407150613 812446211 905158204 71928295 835974407 172431777 512331350 862743669 127568296 844993819 218155953 624726464 742947884 146881054 456909346 556293911 727882811 958877211 45199791 963788392 240556733 31629192 395330664 506398029 800943596 152308250 650765558 974653142 792116781 551828654 346449994 53990922 961946278 598700315 839472818 882102268 287736015 823476315 849318506 512054343 847804745 41360601 86661322 849297527 861575936 479694063 848141814 922080234 750165977 131204058 16317657 994248427 842399034 619389538 6494178 129970721 165617632 939958421 603297010 880530350 393023856 942116567 778209247 398085264 122329013 913237529 546014532 312959397 918063038 745673414 295057476 786464018 837743059 62448578 87985034 15334019 719660005 342752491 639448197 906507829 378179446 478375176 4374791 245353466 837449372 720646663 690663107 789558368 964923555 913238127 671632697 219874599 780769210 541016493 795337614 679686792 6685428 921040533 846418460 167465892 855311697 660498699 854768161 589097942 772308300 539664274 834197225 700490025 820477857 182170434 791750394 196245455 837309245 253410778 72163534 956243468 815440049 982432281 927134052 273379028 255774558 981384964 813145969 104126176 930501066 795494633 753608377 964503362 633201304 36140277 288747336 668507102 789542267 792830430 905608557 951847344 708917400 950148006 737020247 175409975 382226921 468620754 741432016 766097740 996722433 508776173 666586757 832670342 758023982 779908457 756141362 320386065 793790809 28372794 462274214 741032630 136231960 25738897 784317523 884597822 851903326 853442491 739043549 764935823 652140813 258668018 827619216 411875415 866633272 780099282 854489870 833309849 841814660 442748895 89607288 983566661 690987066 217089814 890091307 81940141 726584709 9809022 916496514 413816606 368743733 949491336 893562019 249852073 92936898 347857358 907520337 163858769 703952021 161245333 359865785 695241215 776740667 701845318 268173873 854010685 769067928 771214454 819476974 957512564 892798225 796545783 873935805 31565662 942003377 580874267 40876463 835391048 175238271 949460591 819892321 86517085 213777290 860245988 265376616 391597611 813315905 125858771 435109358 93769848 419015013 443060185 756732719 190528110 797780684 848723640 685879120 972574708 954068981 920048855 938257206 670790572 768145579 405048609 998372667 901084114 838348483 880098246 51926893 282691816 789638029 745489434 807721439 713138272 875655319 641243494 302128514 545769509 757147812 94683002 865533934 514722182 916663505 194035828 760051540 828100254 842567902 614696013 795063807 253085968 583155568 816037282 943329516 702797925 712622318 366985729 786279841 961621734 912156560 876990948 797958690 777526852 176393695 808769952 39249426 841850471 128167909 801893821 909852013 927923037 474242717 665146921 233243153 308452346 943240968 991039725 871380682 887772169 906302056 460126741 572078495 877613396 16636924 963459144 26866878 950612133 869638053 789977115 389883240 630262484 974762034 815018354 186856483 725501517 983920735 955669330 839192124 951726918 801581469 155763131 976014077 29987393 477483904 807360219 781524964 14321253 751355198 674938247 410800912 85004996 932037943 913210951 783192747 705681148 495317606 878365826 333540422 901241944 815167444 417777497 961562656 983721788 668767416 972319625 26789139 969938265 741797481 38740961 930995532 960052881 536402935 968850736 877511520 813796290 210971583 909433462 894318293 207469840 814066240 816693420 693969119 794125510 952720367 896507597 769038448 417988830 145074344 946138200 190232490 948908868 925751437 953511314 263588444 333216698 794135635 514977549 840941480 981356507 443590971 593447582 995755192 224064061 977872649 761992120 808672560 297427877 307684596 800665195 848891649 203174264 973195940 277669918 994156285 176908730 790450750 258354079 745132650 833393594 460335035 774211719 535958645 332456289 747736230 968584378 890430718 647540729 179116424 895056814 497570696 425498377 403051230 739623006 862159950 422099013 912419880 676771252 214634236 632246594 530315875 839654157 773697223 63707503 643964292 527972569 248115370 955782867 345914044 97422990 759986210 580074024 948574341 138330718 746395774 495320690 810838981 999382535 166191627 869833227 364005520 895694543 974511818 251192082 929039747 680522712 389846284 110550905 905614501 158101336 344318207 388782469 907907760 845402607 191782521 749086112 333630044 24549639 832195463 746447753 882730701 719610080 931251555 529811950 907116114 863084424 963450882 882853145 499747930 765359338 776086211 228160329 807942202 873228725 834091162 499318505 436441808 834227908 822334648 698517725 780727781 904899558 901992107 107970040 871768620 973359744 85285830 65515480 130829191 593980339 218147163 786569298 239840770 257749415 957467339 191663943 449518332 975281032 771850454 613969527 178408148 852281222 51730155 481234663 567449612 582280461 461706892 996133785 316863987 973008553 944662405 764572092 778579437 946052457 898862826 529252090 453922155 917407154 428888270 881978650 752656966 304962664 917244738 909303992 761541735 465860236 771582374 859099529 627492276 471298037 994596533 247263799 977727636 879571039 968966899 332758557 528740379 313961450 796583537 439767980 321405893 843176854 844901196 920974208 441717056 467396413 799409842 805231519 456156737 968554975 660607918 881729833 910390820 213425390 999390052 533874807 806590189 737020247 327540516 951024693 541091606 229636141 813247878 967775908 980586459 134210386 924904480 341413917 994235278 856536098 845176171 907889319 834290747 460508237 56595449 995132045 931844956 785263409 800941223 490366378 886137697 4005049 359710529 364604912 816278043 804454729 697816929 950422630 904039260 295220990 826748665 98200939 702592951 546029949 748248052 559910227 938416508 174339167 582961948 698071957 368140614 527513019 270740212 365692864 561185184 552227388 951586264 987656134 966948761 444767663 985418812 881110942 887744140 894626320 733463738 354815823 597141091 751635304 772462093 150340532 130997385 753017647 221736116 493447966 924858924 526179016 771970708 537358657 979626000 16272562 211545682 126731473 47224055 838964939 242168887 858697580 1902660 838715837 836086738 910893535 108291926 70225568 992602029 430230658 806216930 839753269 759101797 321228132 602872006 571729095 550773103 264052990 605389669 114537031 760469647 309017834 757291444 206078139 676391964 726841334 878273295 718736192 982321250 277801859 637687558 692108318 120892986 269466233 89910118 495581677 195417350 995077 862956300 809827996 683939190 841031847 930419339 595348400 656926004 802516213 947969227 50464454 107468607 389450542 543952408 876690690 934888445 440730627 143385485 812705078 30831124 192673137 960423699 876729139 841550638 240486522 853192289 35975492 858539795 44907903 959323035 891760301 635483957 478456350 225521030 537871324 858535129 472936216 601774106 342034757 994197271 450533258 747498768 737492514 262123935 853617901 374660054 585572570 334993317 610005303 910861167 556795647 849200351 703250377 787196171 593127975 782555771 907429061 113500332 835609518 985133563 748602386 351446054 886883333 722403898 225855476 993076530 963504419 568356476 988386036 939320443 306121294 883025370 9821344 175098891 914667423 972421970 29921363 984506816 939815197 923409922 920678721 847535618 369925843 994279332 633780542 827305407 974999097 831264241 812929899 550787170 935096940 278970703 916215795 882638398 231180976 698492505 788834122 904969192 966701905 864932722 980714057 669314310 831702277 801191993 856164661 912123658 969808763 988197889 767666254 947402137 821422657 892013103 594415541 962477363 527290464 797033059 997265327 921251336 385909412 72485681 876654414 743767892 588211566 853856701 253969883 465322514 808850593 946203371 423168427 162310906 958974041 838907020 879522476 989820263 867555745 56525631 660537252 957088742 925299111 792860681 551705871 294615135 726014095 827370643 390940496 740551741 459794478 900956978 192172827 111908362 801057195 934496134 557042874 31934285 335181262 376154362 699792491 201092046 746928882 906005094 685619777 630312286 770456682 323069436 255223543 511441080 517178170 346503497 747473919 963693321 675559742 87431637 766113287 979042800 979287353 721693835 400383502 727026202 941035351 342219771 784718280 952079794 910559217 492485204 888722261 666920747 193377844 607574747 579334985 931846122 333729194 760259530 932086240 905328912 744167699 97968500 585122745 646219952 429982598 837789441 438926596 113574781 894906868 946278487 411208054 185404054 855613114 278105924 814367263 604689051 704978678 915895553 645276965 978285844 76153818 828457559 752564152 92373682 992799510 932423408 616614804 770038220 689141495 323780756 918364766 686280628 917156060 421527364 938923828 955486231 257397660 111273914 574597567 908544441 27913044 949019997 651674605 712951201 741977999 906335484 527517017 259701918 125871453 349804519 16692600 927208378 803430201 715328865 565188287 666903007 572699702 232028092 819661912 983897300 397262181 234982930 658950878 683096347 548808926 217578078 851127876 304418719 933438510 615056555 770408551 414397799 852242467 838136192 591571004 269064546 873524728 931008354 700240693 778716722 776822511 530178251 661699820 693950668 756528183 137930363 126344736 818479172 747489145 841358798 817636957 137676584 837553360 836081714 287576825 116994577 383407178 810147506 572525947 188154593 995299666 814531534 144029620 948483407 358596332 832499705 602683986 109127555 710817751 283680775 896519697 910987624 240417792 959685748 789335035 822080122 906067670 24886799 87264248 767488825 672238129 254774218 640528519 855648466 558759662 738839910 486226440 441233727 176711354 963498271 701561026 200123028 242694000 987071202 717143607 206619320 938258888 936577668 389296321 179881045 126087879 158317074 769992519 812276560 901437787 231434403 950026768 891692683 178304180 828539661 990850840 973681144 816968524 37065170 982664810 770905674 527836833 727686959 815366167 862787898 914546512 854176438 737020247 559542078 856653562 463911476 987823760 905823558 74109663 728292951 966273033 138500787 872584345 774374621 896916053 11455111 798848705 228085220 695644565 816475181 910230226 365981846 665095090 857084594 826208364 491111888 763626851 738573917 435612552 804230888 855382891 878997147 259300917 364740767 694428778 989950106 958815329 928389238 691859225 148006485 178468888 762534206 771204356 981073226 459465032 350150036 990759574 856150131 347505016 788001409 433774777 224932962 514891955 761031079 35497585 658928323 888011440 2204801 940544058 380396684 641098680 749450924 967443799 774307573 517383484 799198950 790015752 863960017 541037979 473300192 433760887 29447680 833947861 597734355 212820781 943952436 220567694 894097508 166992844 278466917 743473052 124490007 895541914 151192753 161675884 953611649 925722929 495969857 977815651 654514078 881067658 976142649 643090602 459554268 662939222 998420572 350425940 889312634 935648165 819045117 867500754 465623791 542178873 831493471 960502044 884446198 242808169 834236961 311070859 953993432 815177098 935020384 66052612 677133039 971534486 968428887 910759069 140125675 569093841 17862307 542674889 882923789 890538576 829522457 960967195 999780218 598328647 780978618 696451457 818978960 467062704 935703596 637114495 848903058 591734118 645142986 740093793 382941331 149394072 923693394 898816335 903220502 314605285 815673891 114607994 866515371 76429594 401325117 818361176 593262200 884447916 631956299 668100764 58860083 989096432 684844691 238449161 125684941 458726035 693200411 900401256 687572782 387754762 438569990 464526696 835982007 432879808 930920113 685005262 484232073 412765745 785300289 135918340 768807028 987288056 835053915 843907434 361485144 551572738 845790202 395114753 981983306 560460850 771581181 926735160 938750846 364713976 418185828 493468134 156433456 120666524 944313965 501239106 15542546 693859250 980172298 912550363 366487817 815785625 859683859 685162247 939969624 869683825 551799221 8179615 795273825 601040784 261680728 991899080 809849741 926975145 620563696 876419718 23803341 519463874 727300117 723983034 864538675 776468286 986596012 799436218 457807653 766196678 425688544 650644871 508417182 834590361 8357388 971671107 508710758 147064215 518742721 50335597 703738076 291948086 965277269 951488893 940546058 767053575 985750866 692515127 941779646 757880911 604490864 911932497 705608106 850212933 508032350 716563554 757104847 761721242 568635717 827250957 86275447 419934574 970604525 313106340 835325404 999942020 727356814 830365580 334594809 917957724 747052622 81563050 145737147 944014812 827364136 763596733 725757944 341957322 792319870 785896343 759644884 486203266 898361084 32409133 800904058 67439721 40193544 732440935 197851047 743982947 333695548 737071065 915228879 8157118 212782206 941793585 879210135 798872369 739419137 290002012 930074950 904993818 402614152 234895855 82364782 915680884 766678510 513726194 782400197 10909902 888789735 827524249 3989339 865010780 967918397 949116341 984097082 861126321 968014271 352709803 523380043 793635498 602190272 729520690 257886325 957098780 989219501 158147075 249121941 919185680 290075008 170507310 737020247 886086167 71023195 163751600 806622288 80899585 900475134 398911927 825690584 391793085 758392839 978690791 926500553 146726580 874858176 223332699 391356803 911676785 599828824 984827594 934207404 937121118 719874538 748380415 696869509 745949951 511068522 551300357 899678566 758574386 563466533 912167697 85516036 716942042 195284474 628262780 126959246 791515764 854246007 211029420 586314575 781199347 767199942 117960262 52260694 95932231 71614990 266506903 705048911 100344058 916668149 987970469 918293989 175126950 893034397 764674422 242887557 15473527 39134610 746926952 801154485 896765494 750988525 280751231 687758073 656322875 995531536 746021523 862507507 877904674 194287835 985434102 605923931 462119401 533733042 589165991 838783169 743551303 607517572 145864919 758792328 260159373 18996494 15365854 833063573 481063210 874113756 374193023 820379407 994029279 559655777 325327244 101338409 757123319 773623284 774469121 221261970 804488684 505340552 519812903 880665971 909599686 133353011 544563433 612027652 779330350 387075963 94179928 400718939 669807365 808927166 584781014 316779536 814863293 130648316 487375204 986032232 753597699 928154679 941684280 357719255 701103878 874082127 741435693 507091130 10546853 571381699 64749035 943630093 380272281 751687444 301304427 326858170 762194133 957469485 949995484 962181133 72270223 478852326 958146119 850930750 159440433 866725019 800172704 393638040 250350771 790055037 888010578 744716323 918945280 860739346 54447191 603805694 647783442 303569956 779770083 885103626 971077519 793709547 911940681 599988609 740986025 811774999 11819209 847016784 689362149 802157870 372225145 187317689 86438325 914793001 906999586 249732414 905784346 450246078 439419718 690576015 111442455 981263737 32804859 709330362 992190075 317636280 237586318 270626765 466587263 956669044 22603813 500394298 844714753 430397197 12675852 957599978 768997034 772256585 991252925 881998229 83905028 856472934 265656 849647997 892731167 402972694 824265610 901901729 171570579 780473898 560014858 886901750 370397991 853562000 26824299 6476758 865312313 104539897 935768676 625246466 171078089 619918699 915105802 18623228 541321171 740141467 87491057 838721324 787241411 158255219 151218704 378208488 756139428 368244326 753559548 917963539 933126460 894950288 861473027 858634262 902118861 276026565 67896686 925248507 851302781 765428143 747242909 815074167 134138256 775805472 378085178 862139974 910181790 800279685 711002813 925151811 247020585 839796961 922247577 948131163 78461676 998567615 817671120 465136109 785399457 776709252 986779587 172640426 855342265 827113847 311153921 339107509 507314386 799928684 658193588 897080075 392260725 761619856 817017058 857682816 878739529 607803006 506120795 552038203 286473480 745757285 940328501 819813572 566313834 807180812 792069742 519913869 704661185 55355183 960439579 818633822 384156635 793335545 896773294 922541672 726420169 752318680 727891552 739182751 476298351 408500823 233319677 893856304 297023732 799493008 323614712 165179832 188307501 585049387 442339832 940234406 513532189 771890884 842199813 119760955 863593236 257873042 884091328 990372872 656895443 699882863 260683009 291173487 943585234 330344743 912616825 367930438 908288122 582379684 977584973 808643158 772973721 20846407 293165002 908972198 949799775 941640709 796403806 987223874 97413334 822408038 132156451 186137200 772721879 744737839 949902543 802141285 105760511 407760271 970241300 559327200 406418743 908560279 281660709 847790439 828871582 346925972 236903426 970207007 786724064 919249497 50121063 487539685 821612020 939162488 376702503 37147130 426081537 826284112 802968061 512909363 964590687 384564969 867425241 797355347 639637533 314814176 812585248 541899727 935865803 51671249 888939754 962739576 519782687 870143968 979759448 316308674 832781273 876684944 41517382 864440322 616975524 293905305 483109426 906116265 887849624 287919646 335136004 844043567 350026359 377907424 225954493 333147211 849286116 210257435 921568576 750066391 482230087 545778094 868919353 239825685 974247131 409665790 181576838 171536214 955634142 803285979 577676000 684909390 791110918 610351942 345043439 763674794 138930919 922662922 536497570 455543819 807507403 243373972 499157662 762405313 609905925 985583471 686015353 955172933 565338759 737452668 544500702 816518711 266954759 609454728 961956534 743283659 928947804 441782610 505427650 610924584 694445480 772856668 478008299 23832260 528606162 859985849 704687776 936450411 827933255 882578658 311009805 988143758 931264764 721488225 600755449 739957605 909243055 196258351 922615167 56756986 390112930 227821814 988023502 81449144 976663545 584297913 927492315 623817187 984732142 928482167 327242372 963633254 287928302 854613180 811538760 454952978 304969199 745843023 472716699 561893141 372925924 809883863 539309661 519722603 206607106 833289067 153589269 449430262 742843868 572224356 439694277 776925558 861214550 756319325 930015582 359943679 797935389 283044159 215027209 61552867 363445330 566457377 98204121 248575034 744950125 608553717 230515293 295635373 728094250 373591858 873613351 826173654 945209671 193193299 211632578 243534675 365878152 479485598 998369121 215683281 503712942 994629138 620514823 757037040 955810981 285167180 796815903 535981103 220961122 739039372 58015051 886075453 725561140 874586440 39084262 441818625 983000896 312392824 309632715 947385437 433681477 740139447 921150971 315291239 258721423 935998035 444906372 740828515 482345548 254155268 106627215 331322160 770839465 771789861 937273957 784173085 545151387 982235272 461435641 97682902 944349724 990741947 913870183 970244590 832219315 695750883 838936272 920710395 860868848 159577220 641238102 836122363 783031640 245101234 896081618 182879654 762453190 796967049 987114955 811368045 682311040 992851911 815823301 464890883 72782350 876357867 827450187 893865577 794423506 493864117 864479033 79608038 896333820 876313713 895894220 109119524 52260061 877837593 484417403 776547802 896278155 641341167 494002005 770523723 315065074 985703575 60520213 418346195 500841799 930752144 508288295 886783568 985135247 990348251 786105758 910039000 172287688 891772484 856856007 686210999 742489845 73836696 823352539 310767788 844032120 521295607 945489582 897635006 756887469 973673635 847127825 624522706 907680656 246692414 979251552 999841865 385147709 901637247 710656128 261886353 243501740 599469888 586871904 939448442 831157038 825287645 766681784 835411942 263753035 890231478 389493291 788232599 605494857 967196033 995933653 455546209 979751218 908291358 784444263 114997617 939200811 367422319 44233455 146063118 34329598 615980542 972696944 752592651 539459102 813106643 483420234 81599440 789260502 854627596 437525418 912934832 383693672 759600108 920831529 873451421 864499329 204552263 865604672 962041121 251694645 876743326 815564301 40867328 906400202 399391344 858151067 884707801 400775901 709070615 928511981 212075203 555533098 778442509 510593196 963886196 147579901 816687167 971679630 97669477 973014473 97534481 346260375 419210308 671863487 634655389 219325676 742136895 845465753 813500809 956044326 44117540 936541973 838107896 924783568 849935011 747980393 447542589 294226504 995009292 747565918 551719846 901236193 252383798 204280175 887649345 445534585 283228148 54183200 743598106 993081246 623370893 366067807 264561260 971209721 327779812 490081275 267271512 570004949 966703413 810118842 652316269 210804952 975296212 116007584 683691620 955232987 18006651 936560659 51456017 535895699 862810741 861188876 43602156 892186487 761298406 742377928 900461559 792317162 817458917 808022005 439859337 844224072 482445101 830924859 61379631 509616293 544430359 450778014 730359552 643390349 90115017 100008560 289756331 324913135 84416977 895638729 535121402 213387355 513220527 868127349 855799932 903345056 239514048 992492998 942846637 811237609 854015754 903219519 494226095 941228468 852502667 156290747 478114503 616747383 157978740 774241580 852201216 770774306 970717274 191274419 272921646 905477337 755793112 750675004 13635657 938731113 455003821 995173480 19532099 230613718 765388230 752229275 208048843 403418711 930733154 933857792 755748689 987766543 986147317 527477871 3113790 740947759 744821649 716291092 977729388 450166144 80573328 815352038 759294414 737034387 773132824 9039637 131617235 258108548 78541046 844631196 853857811 223688948 111388442 915325022 925490343 59804363 760230143 274777933 949107687 946508592 951858588 289257576 548503763 461565488 307081749 841304930 856443563 263954629 934160251 412972534 393746521 386746789 871046656 812333679 371324742 464866558 359558975 806618567 642927279 143104034 975146897 905616200 126229144 697260628 109677686 929090082 25516794 992585765 688639657 502547145 965004369 428012835 833164483 516547457 834667888 857117878 941913491 963185312 613400418 743801268 785640291 185442142 894039865 478032472 653472859 463546063 711064762 419816902 803659499 212151441 796036846 77963719 349210546 888394662 149921067 807743443 839039300 834493547 933235644 985771937 638136259 628786562 62406243 942893007 816542460 957810416 923602753 224585377 766871062 702030956 80363822 54228947 958161849 946089980 661436137 877122813 834448716 304644309 828373075 984186951 758178233 321541939 842187222 769769678 566805412 571957364 979210927 980341563 738959702 976902855 64842964 140522288 979169358 893349450 752281569 115657960 853051261 295037484 351278191 220409497 797443304 548027003 738683157 812820748 752887043 641928766 779833212 796680088 426317712 483551024 764619600 906291068 716018993 390568442 221362730 593767882 764310649 911426147 842220485 750455176 972103169 305953864 150555439 785439364 898401358 627503426 748620862 212262924 132414942 613944756 817464148 952527414 788129955 808368587 906309375 954094202 371082741 909332453 377615854 683226294 897396492 87551747 747848712 868788971 754618270 443104142 971357596 928104249 988062290 290091334 867274972 894556766 232773625 438685785 322898833 782450392 910270463 769642577 742846470 984251115 179766564 151630160 722485602 861206058 875505472 74545704 901491994 817233239 274872954 635937733 746263190 657155255 805114482 114605838 851559117 770285498 787514652 155260613 873715078 488076557 225056450 684684067 73932021 834849591 297068339 809867583 771198475 908036117 773884790 991043689 964824486 669096371 809865567 190601187 22501600 950290770 840848362 991876531 807043993 590392997 991982975 988136265 193748676 960008071 508536187 236805733 700402512 323303409 528903513 826795921 48558991 156608770 672573390 486880994 241641612 273802212 988789368 358027078 594350718 94975703 745902377 97161022 330436902 570250943 986032728 22760263 811157917 657511265 939448318 22175790 145356856 117242661 170061831 834055418 784355833 761524226 396974021 837661930 766663266 406385485 264957203 704686489 684312103 745836253 397870208 973314432 290343559 512751554 947160887 948610939 48537230 121843015 966538992 805972130 135801033 765100566 317550259 862684599 236015197 402551040 878047011 70378012 466561301 786917042 362984590 660753063 917738602 60031003 472513948 942136114 931122104 781098926 911792800 858723933 377196122 992003589 56419248 494436974 861201270 307279011 896657337 865500958 950884874 39298428 346052671 182115152 255316714 821421296 589631277 1648680 641885222 796286307 788319143 280187632 892047796 344832487 791473562 997091699 860952389 725118099 869918626 857842359 387663121 525323961 281249817 365687536 343105564 981065788 738305310 607930815 284190046 726226658 921488919 742316426 93766210 849782807 405844867 372564858 854622649 789468596 640573863 935167508 389169966 937206792 885667787 740079934 313650562 948898393 981098987 891615434 491163975 954746067 615368534 847459847 740157952 68703987 227610522 303246955 606215381 937706052 961507146 554309280 945081238 662081645 19785836 497320358 938710268 461158665 92192066 921658952 477663960 928046355 934252824 633340612 72174414 508165029 357623190 239247451 855154595 545839255 657146887 996559456 67929798 300792526 809179607 773304527 368503950 559696929 913869763 793042114 745943323 926721484 216101120 923505258 644391925 780778887 570177222 779932988 208319176 802010376 103847145 276764196 52003013 798726363 320529174 42001600 858636484 846978629 975435044 817290573 839391951 989014264 422926034 302522561 995243690 259062620 448665660 655227031 804303832 638472218 983109062 451854067 150238586 803835460 811267223 629115442 893826715 741863770 41237880 751708205 992433487 159273607 167982732 648168745 825948272 997824003 873650739 613848161 802588368 839613697 640358301 512467974 803372262 885559227 875208526 293884924 934665904 946668891 207892932 812594748 164531698 897842563 140929382 528897648 943583263 738161843 858120621 848965899 343233917 235749605 669303496 91745668 766680404 841909389 740502151 997233855 765802441 696910803 962452481 899251927 843740931 293375700 406046240 864454481 755163104 815444281 521033535 517634217 880509426 433471438 264902295 809158937 884158405 787826193 931733137 13889658 827974544 429396550 826424480 630999898 807631493 865657776 484216020 581688052 409149327 845189078 692864660 918366415 921652958 47506955 255845366 472851547 452102887 927017363 695671956 999869183 250126853 609222849 705953815 460218710 510336623 123087829 559385058 842676295 968838373 527122122 932798288 890257870 989555608 379808692 738345086 327571476 235312632 706986952 526334172 228177417 816712420 871433532 110829734 544023622 897305349 61145572 757754750 324707477 916035592 514561230 673318319 835556440 295256565 863859160 318982605 806199056 296282147 568713500 789100872 527655607 855931376 255843349 455639643 739673013 146906356 827897984 829362517 659715881 62274851 942868619 343574094 791826967 150640089 619011559 177558557 742172066 972142418 870741033 197959050 742411223 409357209 972813938 994998106 311293324 787769840 993457583 671283481 436221860 973315451 976834077 387542092 43057760 565014023 873569043 859254598 141109203 643334943 791376167 348720348 750324490 355150117 921901450 245525716 838266463 871017144 257194794 946821812 512113616 865382769 66105486 898742168 754010243 856454307 878832415 977205752 768501547 476937170 856732041 894486100 912679930 149575996 945146596 873398240 212588741 978909952 57871907 692893137 182569758 946463034 753550550 929383245 914376553 898970150 915207318 141166397 14607001 328932717 776849674 231959174 175854899 827828172 267707121 905438111 933057181 954059970 905181116 719921304 950318576 322182896 603875835 831605654 936915028 125370624 877718953 827038731 91586847 218599221 440964541 625797152 547620894 71024076 303091937 675382797 55999820 363220871 971462669 685692043 819342701 854947327 552168169 905441993 804027418 75613742 822331676 944943728 159391826 542656951 243485705 965645769 335952292 261652138 984742933 828941457 814899664 967830306 963965777 268708800 54737054 963979076 920841704 917713169 353498561 184782069 485180351 999037183 978322904 905358390 139802255 916845118 536706086 893709379 982739318 582349930 36097744 936922921 858055924 651833329 813550792 837684418 458898222 262219393 810829602 967503200 872978018 507893102 113750037 853177015 45568475 51888739 847359861 762392266 600307309 873198296 767260483 780602247 164968528 273512699 966480725 802151391 740830981 708527846 929390246 411905895 902650779 461901496 795765776 284274485 484373705 746822914 305357104 731828533 824102791 951081091 526406287 34728367 990818440 362693521 856266448 829258849 766225873 899481712 768947405 463835442 954974686 538877103 51551275 793808369 6259739 745403117 768368942 744775494 807729878 876344508 130936813 116416930 50893628 951381156 979052924 196419791 279087595 737996454 929314521 138271146 353607928 925588109 140724486 646063415 183483317 514502249 862292343 743327682 827473938 845831421 760288658 331085053 425819369 421668608 821749508 549536324 903551276 838970864 600361254 780697311 665286181 264567618 122517804 397280646 778215096 741000023 750785596 191002287 758212289 780595482 947527589 755835050 331101493 925724873 923806189 427265817 2507842 140695407 644368978 911352730 998910603 720728928 952534152 903411105 789420926 798643995 987257598 740842362 994606530 827763277 849820844 651618469 34952788 898911551 145749542 199440064 420858595 944148926 706060414 975135220 382037465 942963013 828419844 523504691 883606430 977814535 323680830 744926681 615884547 513076509 125853979 195044346 141461510 835847335 381892462 932300469 856903721 794284106 993793865 286007554 842440953 800090194 601682976 235348146 319981970 847818826 199383393 825520295 470444583 242816882 462137155 589415785 944777891 152057561 754753866 748486758 820968201 237472845 280806517 269296076 248199549 935419182 791814247 986032893 951153276 50276956 529125414 80253985 135493413 754179396 819824209 829637807 624965602 807947091 589524688 249132245 67668036 853246561 354320857 720625836 181562192 61859448 234615973 869446291 855578237 943287999 525716811 613314465 847729832 862515995 202121506 21510783 762216004 955530574 313989291 814626692 786880927 826023250 403212817 871438301 902728 951110177 404901011 932734685 754437493 352835432 997238226 259889078 716376304 682485931 959183725 888621694 177194646 890883262 741121797 852426752 905330159 888686032 348925320 918933677 984045541 453576945 992813874 187467304 789840267 902673845 386657136 736005109 711114139 999109154 839952495 33915597 843182184 892588150 929699961 787277974 567323483 787080031 765448062 787567498 639997853 844228658 888530815 726117153 156862198 826541301 917033394 225665295 28536667 919971725 16558110 222805954 833681994 733025728 233671094 150665915 349604801 901994064 180451166 522426142 866196642 231536131 844909340 896005254 782089628 764712689 164962514 881742600 997810867 989172825 341211948 599340365 692632633 676546313 132809019 925119375 552603198 737872026 986246439 808038548 418705625 790694754 926584490 797963291 66251112 593743479 903735771 682964905 961862472 398686076 506017334 93502452 54935190 516130911 848990855 90258683 609288923 479760085 296118700 884549854 513854874 158101776 744808520 715278763 839923196 620906216 933664554 555778955 54611287 910230933 642921671 88137272 307317743 338045343 54168463 908093809 374896696 190692599 106337009 993111098 182957130 919432314 904036473 857117632 742275209 565151330 441910965 890932589 895401418 756831434 759215391 920491305 650232876 737020247 651492682 486518983 293709335 925260582 972747307 892361044 989114415 453252404 801812560 664137430 264056449 776064813 643350415 874274059 319084483 777998035 242630608 806629030 746190034 830328813 300277958 827472147 996355502 970549940 904816176 502695664 984493824 856199525 751051664 953894613 227902770 307486650 659597619 57064795 835463848 620675270 733226834 745779400 822603420 565914323 530870756 576681564 853609812 871694075 850654276 34755349 873834182 95797894 983481428 786533843 4906108 975683068 783500010 62439362 5267695 168714764 512847044 963254158 756999616 896635273 715165710 318306103 356872862 106280134 36406477 815826972 936473669 864927878 907293088 783078955 817145459 875267673 959419664 912728756 869017746 942286268 849862921 904542689 943009306 666161429 361063859 58906243 504341069 918293824 895348824 136412029 503669154 490630397 813553836 279213812 616573752 973844961 480870885 916299232 145652238 449638305 419765191 839042047 711772974 870625499 703380368 176863163 946431044 2156607 196496087 592058302 987569684 456539265 252757966 29830477 257548149 753219902 919352998 303029891 810698489 145751672 282893720 551642961 754367402 775108509 809833841 535161950 177552442 498207342 154304596 737020247 780075554 796362058 152892417 946383087 462063126 758050498 830551984 174867596 739858969 865508165 797319606 282191851 456181584 395352276 747294840 840051556 945405460 987574717 992740352 980238897 342794827 330945821 301346045 793643545 959026085 926196705 722605164 826136904 847159681 952346922 340250749 750212668 894016872 754623618 900267701 848464971 832462601 375458313 123436133 205410575 965432429 78642313 510432855 877393793 805521168 44603220 925209063 72519656 655248205 872199580 803245638 429759290 150530317 707323031 974503942 217314553 351406842 635463217 506073099 817753902 777309487 909767086 823823166 794842085 680901505 847225492 742692305 837228643 972496542 822217260 311686205 685741920 885066455 837904185 298039733 960152367 662463659 918662214 286516973 567029565 849892024 947574009 223633079 83472615 479327688 26453802 534299299 15855792 940459639 254932877 905661802 824103622 846508280 822492627 630413792 788072574 865329027 444504661 888519109 592782525 309523941 350467560 532280651 56662505 215377463 213814607 977021720 986785336 832645691 294210094 755142895 951981628 22018605 659675286 737068562 792532998 260546819 34505850 833628196 51923662 749594661 592426423 350432448 133965522 758977282 585547024 899555579 884331324 428573858 916469749 811181756 784058470 753073766 36600213 75395080 783873230 805471415 347089496 825490655 838316793 294603268 827409493 415972280 868448604 571394271 956642286 750012425 789325843 796095931 450890258 913996225 890617222 437612891 810130177 772573973 769146502 609865050 157859785 116377141 852913538 818393866 276332165 679318330 919392417 548818759 936316636 94884758 832768036 776665351 929116747 85849824 923788973 795743785 664481253 592111681 77487148 49499941 553466987 932233139 8766411 172800775 960107802 854019114 240324429 336416880 791239377 911998641 809440601 782366153 565859077 183771646 239864949 141845787 71555888 872501880 349931856 611274312 205701460 522469416 947629938 762538963 235315546 692956751 892167979 795961978 561240840 702023121 829462063 415327590 316216208 598768861 630942959 145120227 114896121 999937016 763482231 324363143 894269589 805739143 938376146 300438557 783055642 914803445 413944729 918544006 752930354 723769813 789998473 932552090 696999659 795360144 734637198 201717621 373932839 968110163 900375768 789346690 513626437 662673410 335538776 815664545 486901417 191873223 799003690 545334576 701492298 22939009 185010453 559623561 969731688 234495275 869435376 550639008 670551924 952466021 934728799 677064106 762197343 64246961 193411452 503127744 683612754 989601506 862949934 335094906 335637058 783736948 130013580 726606691 65443247 271131014 615050117 845580325 861691303 981774133 839534768 982339569 122666465 282469111 777964442 190051254 114853810 799532786 994192516 213638498 119169558 461802866 926180193 580150573 87180413 995688276 788140710 542072987 937776670 360338072 842410294 59992383 834688519 709097655 626518346 982584919 832836887 681862905 951958613 976951555 851869745 989028958 221968199 74421490 582000084 984474786 806782181 193433525 762594987 405463726 629774164 482449770 572036889 462574317 950495677 747416200 88725171 408838452 822394281 753992937 449024292 912603525 761801593 331284660 666534151 572495516 754419438 278813718 888538867 77502953 195207414 861046944 38966580 84883364 674217293 973550447 269849250 463269498 446769278 490804769 491834963 252311506 779419562 781469658 817635607 937348056 659315683 506175734 578161607 254551342 44988752 499914625 549565701 883731327 647284500 844151285 817730887 684132605 803069614 766804992 955879803 938664313 460047077 215776308 851968235 816166921 632041553 820810895 155993078 849605157 909411416 898246594 657918331 29017981 181661103 737020247 799978655 567625327 651310967 858523384 486070670 427065121 802704096 941249062 966749411 894193710 220942798 220119818 362804392 755933079 918234934 739336027 911893296 909731905 25226704 72326758 767126832 804865561 228738463 902994189 925194854 869074867 259947170 752706789 270024252 348534816 653163910 74293315 613629163 344769706 322573598 950096692 805573371 467755345 400707141 470379528 645431724 492378347 827607968 644263747 470907096 365022420 897674147 37315125 6031285 283092752 996955219 205056586 917154440 856071954 794021837 811695451 664032329 963888440 805583590 489404966 134760125 114793506 964853991 156444867 372367215 984097267 99010421 790233368 983602450 770594078 353201 975300896 951563963 687813651 161286083 256601418 862500079 422937001 528498900 100134579 914619250 902770640 331837188 153100946 971032921 92291698 907571002 958063190 753725973 876570172 912693549 853171972 896245741 908377762 475570976 768141230 467053701 349234079 217592771 424679682 975703153 292723676 879120311 17036549 797928387 617352436 770576994 240490893 959367901 438823011 897132628 768045204 654581280 242043975 904497921 846152556 817239185 983338208 384188941 895549102 912808165 890510045 24197601 948249205 749686158 931194300 803153102 221126305 287263350 951022936 799530773 682711746 744994098 331790648 861381388 773775238 842848164 601272437 828804430 960133182 901525982 465609360 881222331 978727109 890054789 775946951 81611214 322832306 551734103 814790724 674423979 845872018 575546509 763686407 982307428 871992654 601286599 654369920 198565120 161008876 109413990 997976065 809248305 557988350 773492494 661113821 906949756 267779758 755639085 789741267 784449561 999346035 897736358 432173178 572176698 871697346 148986853 342255799 115629260 399021124 410432558 105490999 63546027 636878545 499651544 685221126 834393755 517807583 450130273 857099596 276305512 751045537 513669935 167658225 893819586 850369765 139861025 815586426 667018742 426168160 727466330 871013230 834596785 842537412 811268405 922038102 900296702 35237182 815354925 50032999 835714429 908335151 40905102 743340618 696929928 823485560 520072822 493856830 456290814 95324905 763163185 59224196 190047353 929814586 987066415 749292740 794395690 587854141 821919260 933472038 718614704 18430781 83363020 621693280 867267735 852280007 240074121 896087837 859366032 802382716 923891065 821597828 304194693 374298471 908255492 232737438 784665100 596842993 62188967 843161592 836016018 724838907 986032128 38710559 541248109 367274489 692676507 878177359 363650807 978158457 966590193 529008285 540327788 227398355 796441895 744866142 757235492 800195943 780991033 746535023 781393832 69580130 112050316 345824520 326853791 983002426 592414001 254463936 765923145 741798036 978030974 598352309 603823137 891961419 632080120 510097474 662826661 343370507 531890277 349147315 558517896 822980351 515843360 447752249 290157410 156309859 758426178 521077651 425633233 908512111 768102129 61215132 166721919 809244828 573658371 739491041 233775186 288295518 163990841 116170682 744927499 542152732 947707770 354142749 816177988 13382720 66047278 414116988 25851453 926935181 676131118 930572375 75832400 110952811 764130597 751316721 158748242 910044239 883526910 752824228 416590899 77964150 114981223 112634008 673280256 636746132 404240947 230750188 962433578 795615756 922613392 782085706 991181408 255652535 924372462 255772035 864668415 817769506 278236848 244144953 985553036 818932413 820903988 336619146 936669777 900314767 961226696 917484913 922760589 408767710 290162176 897285476 829536096 31140197 984436406 839617260 471776123 636820776 442354901 71129003 157360259 287765455 954806702 899567852 271036370 880610912 851302344 362887458 52122812 822276517 998535632 709736155 310668306 846272210 865011098 723113929 326019257 267091638 567429124 971947352 931662102 405222450 603822153 531483348 751543308 173041009 797009157 681776111 744500751 977219507 83831079 701799241 795028375 425488687 14198687 971039826 332729673 466525804 798570271 936511493 922716354 877876240 197046209 903624615 888824949 145734185 490625754 858282310 533011358 856536383 162941050 766361824 530185003 873933420 451358646 829127845 225812265 290816513 156227137 873507970 773761839 347411859 906751290 726281110 738108938 337338102 855683034 822997382 922633746 216390406 900716229 386712782 12869491 797113614 966995136 616304569 806071822 856964072 141518239 901479552 319369490 839229097 300246352 917133492 756682378 963866094 337792531 863620155 915266443 292628977 277674989 775226702 126097476 902536159 740217876 807703298 976962462 704521192 198577217 220777940 660024629 34612736 970445231 433423496 869151898 740471858 834754839 702855989 841730299 497735510 993217540 976848319 713632775 323415969 686109183 41223825 874586019 301199948 820195884 712851430 648200387 130965852 791710189 856939062 999661051 786294039 412608423 165452040 516036160 351220907 977086344 806356918 319853060 201892015 269177388 221255247 556685110 312955930 991741885 545967087 274734854 953249660 797615754 780111410 791182873 243788622 998007246 776750809 642315170 229692052 943053436 958376100 902548575 873085712 893601115 883745828 25153615 639377934 927154971 726315250 489186253 278865955 232742896 327879815 820209647 896535542 857282442 75933888 694556059 910085552 911481674 162839635 212633057 677495208 386864732 874144352 673253215 268115570 819983973 845284658 845138599 830453371 171280078 471526372 931217017 946498934 72358729 334639485 339210327 102666681 756871463 988927029 938151243 748545295 738225959 950287666 792150988 746114621 887109625 255641419 465694352 639966837 128813983 556184968 65850641 638437795 209434955 681288122 305820192 877743773 769300415 393875670 518112150 460369489 361232808 655889366 225820921 986109503 987882832 337930784 967352914 566400896 852014051 280932288 896916179 502064050 1469873 554150626 773994915 963217886 953769885 500217360 347958547 780777834 904410539 868456670 199441497 797628419 846210658 258911446 344659816 900167719 364645023 548216888 677554525 862735545 346695871 806710665 823200334 974942158 879971885 359571306 737033466 858038975 36875333 604448311 32823070 839770793 921388820 370739885 954519855 905051268 529740763 434527682 348887557 776804305 793191826 949294488 509726307 883464890 40352945 70351572 915630757 907088913 994868967 116333688 8580868 207613260 89462602 373470918 870688298 604457324 986501706 790307276 746598509 850515066 72279392 897579408 693019996 887809430 578607270 885473231 401859959 912618019 448949216 295084226 356821044 305357759 872041855 976150585 598826793 793775506 968810675 669162587 765146419 810119829 963414601 725535045 700311801 67631671 291100379 773214094 697401893 470941751 179501681 743630316 922987780 18525395 275640444 213048168 935401205 971433461 750071915 885452299 322367155 801500269 174881326 892181227 801944965 500194467 191821151 779963706 783386018 639396187 663230578 844804613 262762662 858433585 360260998 295760945 835273214 333915754 973171330 838450471 738013617 348763741 907055310 4290880 723520357 407805629 941038593 824628923 771242900 695503199 691625316 212737578 607044114 811518941 584292707 216474613 852210993 856797453 841924172 784931360 679304744 761419448 706441308 32392003 453142638 614661178 507308552 952766507 903952293 280096886 633579171 906270306 422922299 820564536 738748414 323468956 350017314 764820415 346337526 974730122 919308493 946363323 901149892 232904155 843398061 479628569 354043159 919990377 867738625 313103245 771683837 833728342 307291408 219260848 981071866 759586987 843956621 396229779 677712084 847748239 557550818 948742993 478060691 752548314 949024789 572395781 5953420 427957500 544687480 347217569 738802201 311085060 755792049 105446334 970925630 673940305 821621144 821170622 878244522 978921234 264585077 29562606 853131314 916122339 771781951 752397174 998733816 854538216 36558019 103936413 690702281 430683447 832493361 346860404 332275509 903555400 950697066 184460910 145331240 753440305 320476361 365010901 814882867 853985904 975783280 555104450 216628635 171574858 45898640 433500865 638976617 950824289 814296001 639898734 612848870 391440808 966855604 46559398 234857303 197483066 464148149 993085897 832004110 84834961 539225629 829044754 848419585 661070540 444533284 40734472 3428686 811185510 825102407 267837343 441977471 897219777 817665557 103397922 109497402 933662523 14499363 814746252 653631180 68682051 984296717 734257924 492494173 356522909 33455610 521506319 557023863 923784995 992219975 933927690 104687765 939541667 298211791 903131508 808544623 468700672 715575653 770858060 872083928 774666629 982811063 545250900 207217260 400035769 752966538 995713872 508756807 763655176 943440690 602706435 886990850 201472635 511502037 301889514 989838288 917960465 345011376 304149739 192912149 501403669 617677785 387302811 429047150 765072313 922471978 694177612 612564867 794952383 6070441 770034148 299171165 177420869 334243314 289198537 39297821 405514053 966209818 138455824 870057998 963089962 981133208 984521629 415787820 932881126 413348384 821858361 491782848 407066200 869983954 900682989 556040964 451319783 819627931 824496229 462633208 466692978 991986535 427764303 763758063 120096060 261173025 628547643 931209084 576520736 899421665 77871682 519471194 977798588 637727197 981798903 793967418 599470609 29643506 254129700 768883110 986496785 957564952 791508620 433155145 743688775 563048501 603687411 743824177 959473070 945321535 620765768 472397374 716341676 918727411 699092018 900662135 921936238 549048869 898079354 876796508 752771964 330657236 858460754 875873647 911591792 202847471 830021335 783289440 891464162 872244338 346129985 359979815 419759917 827007064 849902347 973663140 89558305 602719041 427860604 119792705 512010820 366944402 722709963 958223772 187909196 840551413 38960817 809657788 760227491 572413805 34070297 758849716 236478344 141637864 984170174 738344633 288099516 999119348 799984134 965676840 690525714 319746213 516083862 328623160 125550737 75538130 239974507 196811654 74951911 829708882 132104200 870361543 80910114 254132877 730927573 871580217 191551611 311719690 767843736 168199761 830453252 1192707 901531113 709949839 777850782 300338778 470300679 995655048 843288127 663570073 998119509 913060652 118316277 390120460 816511487 472806149 337153001 964790774 876969673 919042827 196505678 294991593 855050694 204879228 755762509 620935490 575394413 896754843 846844422 596069303 506764440 362974625 735731566 869573858 910525181 912695379 902243356 887569983 351714503 790492768 899235505 221161251 949147914 833860427 638928131 459323233 374090369 359203259 959444232 866043204 401138295 940471391 200795999 743104004 858439226 698338995 968813446 889713509 854451795 280929002 837516181 425500285 250484670 896317096 802825884 116380766 936062392 77604372 814904812 356392396 22288502 979724781 906690268 768521296 798077185 942267986 824016328 569620383 328473345 962518021 751685192 810379558 542076532 730438133 782662770 237506360 687838906 675138834 757603119 452159418 788005585 556582054 838900540 199386765 271055974 543222260 742151298 752156274 988852271 718140619 621502136 518837512 696034053 834948411 305817986 860886101 213096892 45642158 853612133 961052902 892089418 918498412 897283264 619536969 478937324 774179468 5687081 948330320 400282955 701742434 926026548 946294542 173830683 941614928 880596498 897340695 121499845 938992123 956110359 39101873 784077064 979996330 498094827 881761872 445245798 916574781 257777658 642627861 664203167 41707900 444045804 37199604 427736563 857125742 115888933 760951931 820513924 273847969 839471543 814393683 762145413 831717698 751004647 974021315 511957963 775866758 897444462 682458125 594734540 197185006 956656209 79134322 927084640 166740197 602974954 696188985 973888031 387368337 702364199 473180823 253186785 664052817 554079510 932740851 530730776 78891065 717617674 40160023 310263519 967075609 323882641 867472246 990418952 359189627 919071559 516659873 167265002 795061028 947442142 517679010 829294516 601359675 956708882 225430498 600127284 44119074 884293721 726385123 822316707 962381880 891595919 513607707 886828058 756537237 55744746 777639327 84401701 413634382 955879081 894100360 780848219 842395362 99828758 348266031 858793414 138424151 733625224 887529512 769104300 911233099 993757384 636128773 580138451 735597897 82210681 806739482 320226096 740564400 136230475 544405117 747767493 564228907 748956294 90661712 86987989 563831711 786156884 750337148 524736104 996985828 819689540 980349094 749123618 203313492 996063884 289697640 810245632 529757765 721408555 230250869 874745824 797885939 910646304 841261294 390102015 967533731 948462333 690863050 574570433 313075482 832816056 974206402 409562415 956171335 888140915 239258533 699965016 300015895 865593616 882892129 502491651 829454046 816677607 189043203 956110703 639386557 932565891 158559388 987254930 553418242 918788986 69974790 742691202 957403637 781742870 861353638 229356523 211871902 476424777 784401305 152488318 840448562 252712533 222508131 443728970 851496414 935950273 896645338 844025417 168699025 919129415 960395892 986291112 829937737 129718467 931782138 913525668 868611460 957734828 832792333 858991609 753606875 913281655 992874062 216913316 726864957 204759740 451450527 515130780 342723241 261664868 413839909 891918580 299460165 958315679 839623606 833594696 620882804 445985954 952036372 316161643 351957585 737991080 874823764 260937825 171886062 754641199 221677760 68642611 563762509 74150230 760104788 779530436 906577165 739228804 873004647 795471059 945256066 810674826 390632858 54957883 308654528 871795219 22170059 260475862 86688912 474120817 471622504 353749198 989105441 916764443 491875613 643575779 807227379 301146815 837895454 632188381 866301456 912840283 962205678 842050986 570934606 849693089 791728945 977448237 377141169 433570112 511565577 349979975 334465099 861101431 862471393 776401862 692352259 660245296 780668806 882587795 900066500 773950802 951347439 516467223 62426182 885353830 874475406 929177974 950161776 374691125 930284062 288693544 61438319 832479938 783497721 25055537 838862985 747161835 943274280 867638208 762917678 372825476 684062540 121071611 870443360 267737696 904155177 33667284 147379032 289693535 871262121 928259642 309021922 334027699 755518750 755322340 487973204 660056325 654529450 535028493 777290452 506646945 621601843 856010267 996655547 671865338 818276408 635012476 737041072 539107326 159823945 773784146 859638163 180969830 494257603 805253930 166466590 83008848 818950991 944519274 88377542 95453893 506452182 762409231 670589175 753886948 842225828 159722387 110692248 847350050 638076373 172684650 988909595 55304368 995388587 136840552 254347614 789328809 408515867 686932134 790742694 871671088 755174263 609438417 396486243 298033629 744277713 862611178 53503983 799056239 902478187 56180153 571978992 795873156 851879864 712213028 32621989 32947780 720025181 531761123 925147794 91438261 878936425 805655002 757867299 544746558 957827314 40515424 274586046 297885163 852478091 808654281 939652066 906399467 583729255 436167894 840381928 405020633 436374285 955259024 999058829 977476770 529357254 598393235 740098893 853399126 659299916 311392478 432228836 410420806 490125807 912313967 773517536 795567189 738042620 944894599 838421754 858604200 823061503 813348146 936001691 975366659 903058210 813160220 155913682 640439070 884187266 802048287 887654928 848935630 737020247 844337063 889946178 818772529 408070089 773523019 800603064 923650918 865037484 467066418 765121445 319475145 583966354 758835920 212196280 613493328 781547633 144805637 130659494 968426141 884594078 996899442 665566903 127783982 907777035 957198308 582531795 860040394 929796750 950456513 488911383 324808414 223065800 840474778 95321621 778810890 845065751 956202668 984484357 930326965 767318526 711999821 795586979 183736455 133548568 434639489 879839746 764093496 921777871 970694962 275475720 231669747 890521527 674459643 789769867 224081420 832460538 901514442 213141180 769101331 576057746 852145096 850862414 896610778 427942571 157965026 417600497 914834315 839742213 454849369 839528543 910217897 751156093 779888165 190547189 928944754 89949105 948383374 765218425 805835996 383587780 126833884 189023162 523151019 780513282 811642557 996100735 880515854 908682971 513039179 456311503 893629532 952208623 976935495 778483459 933731263 770350189 711622579 884246100 780628645 152046397 896832004 822583631 748112235 507817858 935124965 407156563 330626818 779142653 893648227 85339297 985419552 914347776 851405164 344357470 410809982 69181444 921648251 404430470 833960083 852960971 874182796 517224000 846389163 795523659 693348289 646026343 467616956 752337343 345588712 888146654 557375481 903185080 323180289 374802993 310898521 847405132 807314526 475253054 68387179 343504691 958289069 806908189 742072243 54497630 771142231 462668846 853004673 433484033 3878954 182256716 322145300 573558 798010236 857902308 326160099 909111177 18253957 837148997 952907037 811248017 953856851 725302178 303966117 760415442 441987271 406028250 430940980 591346232 831610417 337841301 851532108 762874868 516554484 506229190 27032449 754011007 107718630 763319983 788322097 503989459 101295706 181078454 823886890 889636720 92224749 744909757 778672191 374080030 223178363 878306211 659977991 109500636 321537254 830079664 501684767 174693614 838807735 626937665 53646285 471036738 933235286 829877524 768625739 714794096 659934182 988480873 175138301 570038293 176842164 9780081 781796599 53048622 203838107 839563932 651084782 400854966 920139689 994230298 303660822 269093806 891483454 106896756 889210956 936830302 206216054 911632618 1590337 745300293 506510614 573674114 183297564 171677037 529600490 817200861 827458233 813310504 898699973 798418769 776023465 643260653 804233087 536825488 175515799 214875203 756489082 345873134 293990531 888750302 982104061 45903626 433684937 78510386 779762485 587701793 920008595 277550943 555313727 945477981 843419820 311606207 933654669 510717160 971329797 972469665 971737479 979924844 979967469 862125375 147794272 742070097 796435343 946333081 46933811 150926983 38186263 15382575 180999508 737929563 852916807 35505133 1807877 661459844 861684159 910525705 713907850 157526401 851743411 798813224 788602067 783648323 707599476 968017166 849497455 473387592 149464602 896430814 942844144 915271400 959523629 485047218 431819927 911895539 310010671 654849398 437005432 508007043 854848130 804686076 33935165 70006081 669502563 802054905 624303779 968996459 790423358 969500001 796245526 746136512 396239670 777985386 32269453 954408060 967360421 930157382 687187511 568932421 102868039 771217415 905523806 504629947 701538295 921909277 165907938 763717693 440197953 973559669 11891600 149427240 898469413 796143200 309180873 819517241 821001519 343664249 735216670 192893102 502215320 304691820 901698267 322109394 339189889 812249510 903199771 216045538 748146371 281933572 605760525 764976017 945940975 145945447 727522277 965559857 390490744 801991277 938320702 279796627 818782632 774655119 139216456 889797918 673133736 634512447 152339405 215297362 76611872 883349824 447854449 390569400 631736008 310535032 857788445 718829016 210235813 676880813 388919560 30693029 257278260 865923005 465358250 386055175 905527663 233609939 946585642 454559140 166961787 323445540 861483116 875155961 841125773 960845801 376203758 770781433 31528120 457632422 777580758 986462087 989576481 804597460 766255134 77852462 811316098 795647143 873636287 127823340 890429011 45234722 435712003 922483208 836196336 924208069 902327519 128961486 74859778 883016334 277304432 14186549 982456078 879350851 933625089 743704392 741063003 514331561 497708944 240452591 703412628 802003880 667518573 345591024 947098095 270309975 852152793 933900153 863264356 918838588 791179701 435513050 549283031 242388113 838708069 402566506 386945556 91760356 84729390 606711892 761937857 785432207 936082888 989233202 466601587 417401694 957859668 748909382 610677576 735819021 917660587 539565736 225823486 549938856 934032931 956345957 357660719 976266132 572817615 145451215 982858044 12812046 859442063 887643466 139395668 832493337 981049264 745878414 966237674 519258441 946049327 428085286 792764605 818009737 915461058 351093070 661533465 917123908 840699445 747344749 290200126 942432111 980065356 525718511 690257973 718930822 802343195 624089968 514622950 901769489 907525424 746679994 840899857 364665806 817199637 723602127 286092261 770059873 140761886 112825146 396436905 124085955 894388117 51991333 517813413 926622322 922582052 942293387 905371606 996134529 999413538 619451663 882691512 279205496 382415052 999383609 855678345 755808204 944698301 27060127 947898591 88298468 51457010 105535405 124982836 855223285 859976004 995216537 677485452 418399502 217825389 466811396 233191367 999031817 960963442 893852805 802300255 44911762 584007112 862638158 176645731 801617126 474261521 318928458 758177148 25553271 471732613 33182010 312172196 800068059 274845072 915086835 896218417 603001710 70906366 407498275 830626842 777211914 892430474 898704758 584011292 786887722 557904153 518930962 836996399 993467332 742588705 800375804 456951132 410380449 275463632 822507946 124369879 672721025 224136325 903841469 882342786 928787604 881645767 180725815 316707457 961157082 877553029 775835019 175546889 946434958 386012468 374394460 874365804 52291833 907048956 657017711 983747247 890558922 756979037 949238465 395594755 359638933 963263492 782759952 918925285 443581821 835833288 854619929 934258320 672869031 758173613 245067591 317318991 957875391 706622660 983944887 738492808 566975350 430603206 996169472 203182112 713932640 992158378 713348530 462774270 832704257 283729179 576608758 943385826 196765803 419360162 867996207 790427820 545837118 783372104 625044453 933890722 959177006 394134506 807678582 82183665 842490183 398554788 821794639 992304593 171339138 167431502 119185016 801509843 959072570 883832101 91890061 108112084 372212750 990189082 751402529 967872862 54035174 374146011 533172676 488248717 477399744 105123129 68367234 145179811 909536771 930400426 994358012 808331307 990162555 845212181 52095331 538568813 590858535 194518952 403999007 255350846 963681142 722560344 787328345 784175128 764545700 568053592 750672499 917761014 4585477 987898769 881608714 663045713 907070730 261360634 770100225 889276791 208196923 807879587 424048319 177330265 439068864 935048158 376239610 737020247 785412796 76892444 583856640 508698922 87453782 673608313 401429581 870700528 756606136 860542982 12411203 816842175 98612139 971659718 852646733 332731275 890425792 848157768 925706204 889124561 132444161 611860423 904772446 180891248 853640462 180366610 909051014 771323166 648408590 737020247 881180269 870228776 459603228 555795530 822898046 819571227 920238989 655966243 885974862 493920383 433445914 918258134 326360254 996673324 326828230 773550911 595910187 388219143 783264664 21562138 891110046 221564056 838478271 698235281 824532015 428115661 937182571 624703911 789740870 374952178 967071296 534292286 951294522 878171789 931612483 486725400 803054833 488232607 310141366 856441722 664109534 774889730 167001508 127338403 352804514 756925615 968539664 849492914 785615974 682493303 337484535 7234575 539962995 896019646 720175795 967352897 655287187 883582482 877839802 920523078 992084376 290741233 795823409 863938192 823042252 486982708 535795013 741943869 956769194 819408642 239174714 638719065 956001973 783411675 965921603 893832263 374065196 872672571 956645852 883033332 464490988 748075175 225248157 864587662 381850120 474154897 942541489 841187752 189985177 280152140 493696542 674301647 283819800 100146899 979773120 676122358 439392118 324905750 8065649 215822380 912047382 866402443 743331321 772115380 965181666 129233767 744630123 395880403 943508430 751820301 823695180 881695623 800295407 988301886 521113750 804489315 26061427 873912966 681403020 68143798 498503644 625991766 865734732 59662895 890227840 954365254 689943578 538009181 640034066 759301287 584359110 583357445 714722560 80360409 756775090 324726685 446932302 624550801 168556272 554454214 777770345 179496622 879041952 669339234 862383173 685108785 612838632 750810674 509382199 280706440 659928916 385997817 967002865 525668771 256415188 986957866 873656854 659178073 796105957 932065879 481641102 802872869 805740853 960774694 47406371 750142171 461900759 477116998 649738823 782301032 356345291 610210000 280035857 48259315 177651501 494623438 910673161 953772129 917209048 650506236 93106863 756766054 786096505 340418257 997970654 671599870 908113930 421631518 663776778 909998248 68540868 805092921 674736479 562895181 262681626 820044283 815406440 252640208 243172583 739682370 133148346 260540197 507954772 105199626 94396904 565332598 810783691 576670894 996828058 512975547 826450162 431290696 648140752 790872527 20905299 534973776 415737776 943558055 400587532 131870993 800167299 327757546 938252392 958525193 203120758 874648846 894248166 974785223 931388702 989840963 883866155 797585114 937930293 904930377 870903035 816204735 425036178 833209600 277393245 948759724 361276398 829813170 820330515 738627999 977034678 355450868 923346397 824369567 783136222 252464567 762484896 975275397 71905562 843105053 124600574 65552629 716026337 785041956 586418365 755199858 46180251 847971163 817196216 416425229 942258712 976824627 416412520 52578390 25113482 738533704 972496044 333077438 35719049 836004182 267265746 860833504 12021414 607923772 581117120 932868262 585538046 163946778 147799145 673702517 60556035 895924204 791235052 648366908 887255278 984775841 926156994 469104053 904824177 387650701 434065941 747890174 662380532 460208982 148993028 71030937 848411312 884747516 88449513 584107640 930882633 830104007 588761538 435038933 654263791 949310633 455239747 936675092 987554896 46398181 997976835 329228876 881367603 855685845 948315542 124603549 868630404 386186804 736138435 387000061 114312506 55351057 931845704 933906707 785945972 868792727 545296887 789921524 991651748 802497236 865299973 643303552 375457459 919345388 529309303 479700019 2445242 614235889 784905866 5685313 548083242 204777192 811596224 15910444 73525881 752868045 749135822 132357914 380894316 926043398 787540277 914265270 502278844 929531235 786078642 757804736 512036457 999614348 793162610 36435463 972031236 485218307 809770716 982598815 513649613 247868954 210073456 87992099 794886733 809717715 590928537 438380402 981061630 36634588 821805706 897014510 141923106 977794638 46859897 418121251 777047500 818939849 573920636 747623412 914130230 613528326 928310402 264158372 989114360 27474406 429941623 796884803 545563982 823388222 926276721 990352190 527138013 559755127 845919777 178674805 802256904 891507735 376527334 462025397 277236290 74198700 786481899 878401921 825872755 828573621 849492359 455536423 743811550 139143134 787705046 188512619 841229164 842929231 994851610 944539633 868549149 969567770 919813843 203956814 594010916 895888715 541293355 859510452 774995212 614336227 785674463 875586208 893891369 851056820 48542095 668872702 235719151 376229527 921179492 70236798 823936672 102431596 785860660 86926090 411723713 965009720 605019948 858681969 328181624 872437263 335974012 976362344 816415767 890566478 459810551 855309449 464035683 952192690 138805784 786949589 855778412 43056941 6367473 773606854 939580573 7535274 528851651 736573474 945359844 723135651 118342879 893845158 710967049 908846501 855566383 931702597 803893442 45387649 931574512 616991274 55139774 964759127 415814676 103060637 283922154 344296902 62642233 835649302 448099030 820723823 766383629 867817818 816574379 410515572 164153096 994339648 818370630 310810115 33164166 771979527 715845175 438258538 824348004 375998383 647348346 542927375 931862203 828886974 996510508 544126945 217212576 297522858 690492907 386038745 790269667 869634323 871743955 968043991 277769227 446835202 742517745 798278589 806575810 864593645 607336936 795911730 881682704 195227276 37955638 10080813 617846756 261319178 711148857 57751854 341680197 923995396 213280533 938028635 861908649 110858254 295650292 918546994 238498957 263447981 891410718 935571181 768735412 165942729 613615946 856846929 957091169 153102640 892980346 391740035 50606043 649418453 722183325 250530647 441014905 194936785 778859852 618585148 40029344 472232693 96303779 398626739 779229543 992965392 124122772 903995153 188366359 278593848 969043437 597461828 246816941 857402342 695854448 667602660 774667991 899855232 252636859 321598245 172623471 13863548 763753731 811390469 923021175 750543722 984164535 780752715 950070236 218912263 805237217 728642366 336829161 904106375 921641653 929647843 919962334 853789061 807435588 822708984 737020247 777140380 839712593 997633488 910945740 909426746 170059668 26928523 995477137 131444898 742760718 857503301 925658259 350190403 798840133 898034068 337397119 114746499 870972395 896572754 183995954 640101406 749748264 913677563 437309675 792843012 936316322 335956128 516541380 894227785 754760446 333989596 566628188 968130926 852238942 452904595 348592644 633699689 818172024 987575238 971812954 325285820 750336411 800607172 923772323 485383485 241271542 861350949 99054322 162190418 823331527 983522891 128690148 546705959 874226005 265455075 911365443 852126141 127032623 860516682 944546973 459428102 180682336 641962589 947910608 894118901 434318837 424075092 777776901 275032119 711314935 677282839 884473669 467971880 991098397 349235221 733336070 430723297 873703885 20684956 874399345 911352783 371489952 900506585 815198459 913922619 932084042 386390053 793398565 900626988 557081024 911324815 549548245 215726545 777620728 939240959 472721324 896615788 941083150 878700003 296563681 857928210 86006096 602665131 963424222 682345096 625277180 555683731 97865417 751134434 202538666 663463042 746353785 962761293 29095076 883273578 965349524 881693032 911314965 501403182 862048897 863251717 81979874 985630271 719573362 75215598 43911801 990662058 889342079 47831976 387222436 903517416 995334159 437447775 875706502 52495789 165292160 747747007 300765238 15523344 601273180 240947525 837760937 976160214 273539231 551025170 948426651 80430904 868720806 790392462 252236633 193268783 839579187 250658683 612753590 168601849 923475452 875874247 877981568 73587204 956342244 296315872 670706304 579767443 654686451 870473266 922118184 947396930 544867142 215058523 99668898 957847267 152305306 599455234 543325764 344913065 960967879 208385073 299122080 919338722 120507173 549383573 390800096 904511923 862566952 130062985 422268188 798986375 987893099 953209377 942199062 178976556 927777892 737418883 332868880 310892014 754855372 839396831 763022993 348386964 802824057 745175449 986895243 868592056 596342378 817850656 772389843 732664380 54441533 896977723 822295230 752134590 884442521 363133509 388021707 962623534 60688298 187403925 105152001 544570366 86794989 691403613 911590738 89626674 23758919 279552988 824205770 931109903 926997471 795907233 875097389 772934294 840477348 902807893 51573007 964279448 738698494 967123113 731259767 485214701 518924866 103563009 56513631 445983544 889837756 374276788 425108837 908346885 484042732 198233389 947667363 10744080 887676302 873146832 745208291 942050443 167698718 877449595 976414167 839905958 298231812 582636621 163922104 737463415 123115273 100931847 944758133 906395490 175450638 717793882 544003505 936728658 526161188 835589257 807550154 957138629 801104565 42531764 912921777 669763832 867615062 766348190 901393905 973205506 521985057 695337058 573791731 633976538 878556973 586340210 833187364 582408037 703269043 154197770 772646866 276649383 247612650 49690098 404136639 879104462 8421547 981752529 321669929 283729422 845945835 875512888 626153251 783135196 749776690 92980263 169181961 88910157 351539026 764934993 901965946 138808922 943348546 912057214 741438253 762669961 785373463 977471099 246893615 935764232 760242569 583694423 780447092 648258113 836501379 619658806 786290377 359744431 982390259 512001177 96971530 890058059 126494296 774334031 981062502 170128056 893218342 212607927 857224091 726743588 879421476 811583885 117663954 929701198 902618366 678600346 985337909 110070836 349661907 352506541 474718834 999697216 204946163 981579491 752457865 895062566 757858991 387491541 240095615 911236494 886384942 759632816 890977599 202729507 661599461 501080091 835750804 725334220 514593689 868305426 914974235 765915421 259496087 759109786 865888065 487175966 43561295 354475680 610895185 975947128 983093974 202943268 703280569 766795319 777996345 737170671 859106177 952084920 74778669 917432251 779578152 949026089 986483503 826135728 977359864 845297740 329344684 330062644 431872130 952217768 934635419 366510069 779007713 149697324 185924005 840709567 317270917 87007879 702124103 97239565 810788176 893343026 437349907 755347107 341188043 861846248 777155182 937767343 828882372 785014439 617095281 779471181 117441555 830082090 400726316 567750959 233098881 865642380 996328705 154879609 364599484 927756523 169178092 995420864 977054688 158768081 355765329 523427015 940187902 363530809 250871662 877602112 155984706 880644595 280404466 926245032 235361060 269998173 968233877 73575540 337329505 876664537 868632439 651262387 822498325 485387398 154925639 842857694 776167838 348703196 575302222 543268816 270572069 933968214 939179190 539196687 802409374 384645525 841773430 454370441 604778672 877698257 648790054 997915129 118460850 432544596 285452021 959056616 978971914 338801332 984422911 828825040 790024774 864158466 756904807 824621071 710510991 756412118 997246470 964370374 955950523 814857957 784001186 982874018 859548041 791113231 633936009 954587641 842619550 513329208 656503357 1718291 626343377 759752614 219230560 873647697 289025998 76554471 30592400 908466602 999690238 568012438 914054313 877880867 980553193 972434736 914691739 127760823 463020591 835590173 765447958 543634083 703504629 763877091 852035319 925949371 389567136 946793819 897785198 392727356 237203837 744414390 332358325 633344154 536044916 802786849 961435440 61398309 133925297 948036706 836184098 259069978 775089849 351896348 998664695 837384043 24700784 666959684 209268043 905754092 944520902 972959058 245366413 910924184 957328068 278230419 769710606 734254697 880429959 724395367 149495393 780547036 846326137 782503313 77230191 395153693 185328581 75588721 359151878 553321379 221332964 984937284 856624838 920933165 512429943 860423561 828374686 660512831 362170759 157024478 449872894 434355936 36486562 667682919 746365205 909588377 233272435 118306263 961263595 242566539 393305642 275628091 698199670 926566484 11715115 54016276 82020420 770858527 9146266 678124962 370930318 353420542 481449186 808165047 401030119 885385596 647952942 793839265 570323721 860122992 921727014 780930311 536460752 585269420 790573508 333943672 848688601 986287281 19441055 384127276 722301804 995777151 977312723 737128133 893705933 919243300 647875080 988709868 910060712 265772930 870664897 306204933 762938321 777317967 770830002 888576168 795176730 930289638 351954499 84258221 954421312 829074207 913654424 618994901 845485470 747572912 273152274 537618863 17249672 952079430 845535780 550524461 777499273 820265867 444854676 774279223 666601196 10919012 931932001 853324369 783336246 569352673 32861203 827123098 491664959 253910527 974132007 86020974 115664817 194334226 724788289 429109315 309769749 234621899 681342281 655024174 857303892 915429083 529006425 760554109 486876944 450270942 785187507 99782472 944774921 865602374 355322189 140292824 940813756 78342680 311729989 178940312 172856960 822788870 454460231 548518229 264477304 944934476 961549887 324303661 81062204 146660017 764952898 801853722 675734939 419369508 928535672 943645213 808373131 384693252 753852154 417501041 794638503 591288433 996333058 648478996 816923263 747036516 826128009 447115943 90503807 959515931 605597045 545520016 977098834 948473707 956848830 761409005 907110099 779127242 894858531 481825931 396450982 755254791 194195461 126459248 530027247 825941806 872274643 492568074 557768051 531208885 67068828 835158120 781277243 233660786 970871178 757758618 469998478 901008903 900685282 846171569 948286841 884894191 897919087 372038874 957064084 606412330 864271828 455697656 737082013 789802264 802571917 308002286 738350108 752978620 576292803 873075611 1427692 875980134 735235788 199617582 895969001 863815034 399372509 825930105 921382473 741987558 967773105 508926028 817109581 162186535 748897054 369371319 6229393 55466105 926510366 285547784 878363681 877405612 67408809 839311386 777676008 866826364 802396299 878353435 62710142 914991002 669647642 424662952 246642065 988099513 502068611 186888472 320273728 917735978 833419875 319250150 409579083 963252142 988950167 877778540 355440284 934571912 104988579 864963915 547597526 866869412 452591285 23033093 779762192 404583674 26562584 846468963 575075337 598996440 221128757 392319394 739440227 844163130 230600551 433606483 384977468 963460527 879234621 140912521 932906885 745225201 744114164 75447929 259292468 680455931 837706943 527168662 846803219 798003142 581386301 545400202 768431807 412687207 920492058 995091206 430555785 834339739 47816295 945897864 989596548 827262087 732236705 922483292 577769696 360428245 710420160 12638994 512948278 385015056 310129298 704239057 961171196 767962475 561248545 521680195 110978966 181511348 745684502 971675122 9067629 78909767 578783859 602263238 706614972 827140125 241198916 116163384 726017211 23213886 183644935 902921065 263024304 758638040 907882234 754891697 710636601 717419238 851707345 13191922 624660254 978702479 831949552 833477478 187816572 773344699 784775523 360700736 982939001 827813090 578523101 829762539 775984550 893868693 465326119 575289109 290384573 884791767 966634396 282695901 924546834 252785918 960483132 997351647 850840816 867262208 493133838 52675425 889485633 171156429 985244833 870171542 993797820 833120454 238816030 508322141 43306572 309200818 838626397 644147289 386928759 262848146 896203678 660838872 848947536 625641638 989981836 789514031 774845503 772490179 753072315 147633793 370025804 914786269 896756752 380300489 72980889 925575396 139556829 868697539 953000252 961275414 523927312 456758463 586555470 337975767 839501596 700754572 997381774 300133820 690566057 502957511 800568328 204185400 53949304 590827156 805657467 775896056 890498553 263434720 658026426 436059309 606534724 180301075 559019926 602938362 362174598 23096422 895818300 777521310 965626251 736686261 914164325 764343150 766661358 619144363 941604572 945749738 165154858 388858232 392461153 841044803 99658890 140289394 799850465 964612623 757611873 965690830 880324094 534207847 999572756 307561783 772304341 23363248 748621974 118659750 743447147 235705214 820587833 284096512 404089745 396778156 610817445 982302044 271737367 588733060 945256784 772127579 315508941 916496832 986333708 858646543 346383329 797215976 867732191 837770673 922349849 109167728 481075508 894445265 541510025 836557068 361873607 986432240 765352446 91601313 732977250 492749608 878417921 942564950 875073560 868989969 338956491 201158284 291716277 55120842 845328663 861373881 937611551 857524302 927821351 821050774 779644036 788808571 882057177 933514074 223003851 802564311 152464856 809586267 847392290 147227593 807238540 986396813 202492210 91300834 868147544 482917134 733629770 945760480 565912814 828606043 422777413 757662678 806445457 979254907 793169534 125286074 728665068 763258466 994736910 228488768 867961200 857961493 932622777 696079225 58900106 480231135 790697131 166954627 465173057 916783350 784914035 966240054 145645698 427105439 180718821 214916176 914698162 876867753 743466223 111558460 395095042 396111367 573877044 877569923 970750293 418645270 460904494 910453483 949941883 906392385 918194592 865964943 535425412 837335544 852167117 236862568 177735205 922155861 490921739 936759281 868635845 766630327 911732831 762529541 931009895 462775864 670011379 265525367 902893275 997431353 286552363 872184343 859883257 65508377 959761851 836861440 786099977 887427237 961497124 710154100 693920589 78228514 877864120 835760671 461872748 597353904 785862727 987074213 950894972 763662541 695498550 600040404 151163057 313527987 24036299 838550535 904260683 889861819 927807847 749165204 967121733 888056480 275123234 397240544 1768660 964078269 456372102 813099469 843847553 923560059 745642537 159586900 865896392 659208957 101258994 90906856 353038839 976753387 37480454 413713939 810007093 835423482 974007662 324673384 300881289 808792366 893158951 740244320 227000188 929200588 965364379 806039901 724854896 863670598 783704561 962501405 181288852 902914701 863099498 780715815 322709964 766743697 739319788 160746181 653955820 796187198 455690060 861593330 842431254 226789927 821355857 892298588 897171784 447198017 961963855 504667951 609195360 206716320 349184354 872697618 244045045 561779485 830142832 222485149 775538757 688317242 56549875 777758008 931694840 748098539 976581527 791418850 889494651 920536679 992902975 633455665 606509147 521338924 55116183 927532838 852117079 525974535 740660911 796540139 925807656 965049598 193330927 87842380 62991847 20981940 75496338 789271295 163827759 967766802 960287817 279562722 882909670 776350979 271487990 785365757 157116515 972010053 703558048 401508896 546843896 971352201 977591259 762978167 926387889 990454518 951145225 347692526 534905262 824269731 154211599 90428010 757806302 970847485 710730148 897365002 283982142 96628178 892266087 784186733 190952741 881577799 835874753 821137503 604838810 310838353 733690244 442969805 975006567 79457110 196718278 237690368 108884094 828602839 192107616 881680043 57686000 785973023 758877811 830002080 813750376 930078489 536136951 506501802 508110953 659616373 140439541 737020247 988383879 617479903 746350535 778459228 831228602 366191990 764828271 73950209 855487699 335258443 187393719 679818556 867219015 876275129 809598630 673432773 684314481 738117641 566555457 751135279 525902963 399480878 657009636 402339546 452976178 234313792 912942116 920239779 661684910 905189752 835045586 776211745 989923355 860981659 873321619 788118125 995929274 133891950 347600277 649752186 928918304 833656718 65460435 938239007 390060437 986789358 862417933 597991331 483767991 855950818 679621691 954848446 838517470 831138566 843073601 557233736 347899373 854700136 972264794 608087351 653119308 790156082 148455513 252442877 867132565 457523845 354136333 972220618 917931791 542483570 752720060 7374439 883152462 882321335 150331961 838764338 707002340 887525738 888951989 788424805 872557993 896877236 574999410 366238403 835325449 935449495 524536216 231177368 837408253 976363050 294825292 312344925 157483058 50333088 922820827 554868264 877354157 140855518 877953710 543933316 118875039 768935526 855713758 602966524 967212383 266370458 525501013 989427452 73947843 53180173 889365622 186296879 857092547 488455742 651858943 992906404 668962597 797744697 742301122 443167925 977917446 884578810 920684551 87665462 569078407 928573258 51019506 969622832 280305748 605509453 765055262 773039733 410907507 875708579 970172595 42724532 306100401 115394513 955967313 797887750 375531854 978651432 386317850 781077702 177497989 605898229 846676174 996760869 519551457 860089797 388007053 798476146 945631653 326825581 563060028 601503410 915812888 177812472 956195405 543846054 530398585 857739426 737020247 306901128 955205229 798553102 872393671 813566536 261522978 986333848 945112539 804673522 953399012 907587707 776741207 282881370 743807506 648559193 374903638 338723879 426613202 451399947 772539179 283542952 832436571 548699878 339742327 971664035 828679836 863023757 751786350 988566862 967351238 865087433 768395767 823448687 657921955 729658412 210172446 345104776 901319109 885978281 531666383 941824297 440554541 326659560 159053816 653096408 566880364 880817545 956540136 254186297 759677347 839273113 274715270 537410154 754389826 257883339 316828809 428650700 797012476 738047808 968382318 725480690 585972372 381587536 465497582 237815040 796423233 49880222 818870794 394043522 20073977 508012343 778432612 463641662 848490360 871598073 530839979 871089813 999680463 746986205 975628140 569176827 699404200 151661186 943695721 764117122 755339034 884878189 255756771 501923199 584129515 763780623 583710880 930232346 162110951 11096792 857072470 818899106 302562431 245675055 160534781 914240076 80052530 207485767 138157217 755787601 128034402 530341267 794780787 995372471 186033362 452637203 912377924 900423834 366449178 979599511 854708501 914381533 586460570 995193079 101665405 842121602 658501499 260377732 874352387 909967654 533563512 889027423 867768623 840909369 774611227 919656733 13433645 727122309 295407828 755903491 956919124 782496780 565473458 197849947 232735158 175447401 466883705 23321608 724128091 509930132 867460395 795491299 954027989 288779302 770256508 818335205 443300296 962084145 45989351 958585469 827176035 956154002 61484512 49353438 841857994 15979426 350108042 171137699 908700666 879976160 637122482 873340194 968813493 2835239 799102411 757083996 26293723 579871069 629857419 867830116 377793429 961695788 59144362 42339483 999170508 746031811 908252483 867783221 967069417 378905134 191464581 756339613 119037626 987399355 939281788 213180617 991267022 745274281 97968830 917247878 522387885 800501263 146848419 819678712 793040961 800422643 301251942 615341011 759316383 630200804 531249942 578521626 956302027 760909450 910604907 819092721 217966385 818085191 655627790 350612461 196476748 966698539 121862484 777653146 518272339 848399253 646770838 976196261 765005299 420032864 476907988 639859163 886855670 470567446 967936304 887185147 54754458 738704552 87476671 335946652 359558368 147824983 299169457 639826399 933834457 743912113 568810333 813697102 758294446 695169484 385438303 866289094 376212338 434185067 932292482 74757006 636758361 997528318 51506568 381080041 889622117 152912819 911333870 991764258 623096493 685517107 602690555 700410721 933979348 881831487 130297079 668179719 377646682 807576645 786269860 917711803 469929566 150159324 226384275 776078216 904627923 760574959 722629145 459326428 814914773 902982714 718448089 817145113 994804093 757118210 250803609 914089022 995007454 918413116 746555471 908328582 663551024 271993875 267261364 955054690 484177721 986554615 833619799 954268177 965024060 781538366 908379053 926035832 453255588 952763661 754995533 929314814 772905561 319426781 240836908 423252601 533936967 721377108 739648860 823531178 24464494 964282420 273330256 75559130 139919971 995165576 630489126 457903561 780330557 522760778 807956570 136132976 510946833 387267496 846883475 292955477 951387164 926548374 468734626 787570081 778716357 609598629 695394794 557044701 583759484 114529460 643787256 59452879 97873597 746093643 368056835 979532699 811907512 474418231 762351614 373408120 987882224 430700669 159505907 803937638 895453410 827669359 349119522 557219104 664643049 676266338 970401449 881830370 605263217 933069427 124763244 714427710 554811462 816120490 750144616 459551977 720089206 7506759 16244787 795814664 275679706 736386212 953480708 952402024 88473784 439701334 91095964 722479434 846221383 454910448 230744745 412990078 676526680 162976114 686332407 77020572 750143121 434741604 786822671 952056877 784505724 996178796 874243924 743515693 646969320 919074738 701817283 956792553 842780180 846040155 887085979 938671526 638747856 559255567 830056914 376343980 146863253 831406573 934681691 810776484 888519610 389830895 741894145 856036925 130644684 898523044 985825025 610958957 913584880 992551823 103901886 409955859 26619567 175552730 190974056 812036254 923099567 649144296 423989311 971936092 869002510 808793225 910607511 629205149 592109088 831066431 913281227 805679706 504256697 881835046 385047696 327462142 823191278 850401926 886134904 452877656 840437384 785233568 966653082 141449811 956875949 482619435 81866864 378939980 724585063 359121371 490340269 870087529 846901441 571876569 58623277 272230004 213142931 70230166 897437591 900227287 877142155 540462479 94300268 788068504 45966707 786594479 532162949 129215890 990560105 18111954 464388925 425685015 766915619 951914549 388266472 926377547 302863776 751252865 103609196 798507034 961905463 193970435 853608995 369026319 808826748 752214890 157681815 441443998 183185378 79467186 773181259 899411751 635638127 94055672 345091869 313069580 865047102 536282607 11772287 507846962 939985099 251169522 974855842 974118256 360920307 950971190 929751810 921159648 42035512 764850645 965672275 799255455 776291072 92783822 573966605 600081616 997789673 860588706 846727757 821137868 748536360 781951830 806021820 249515399 763649041 926072258 250685787 358443086 612332130 949984836 7168028 943487128 738640565 857910847 301484478 361915492 812839809 364041531 995149102 723649051 798973389 739950161 777943002 883208724 547990289 817126132 552925131 940254425 624605889 938449756 732667703 855193086 645800634 913947801 812546552 319617233 953141433 821214239 454838819 170499669 938813009 698318432 553175006 792155838 442028057 404824535 990757306 761357730 327637768 293812090 32016693 677470019 799512372 931635207 807290127 971250346 847661728 887417837 849876540 678005544 956599584 998254110 325149159 558624823 326901686 209671810 293404610 959834534 490457239 215080565 827733127 979097254 999908782 730469785 764113081 953846043 978032848 8430857 449792896 649946442 178043526 898684146 466322281 844537114 927739770 531766434 587464971 528769324 293389088 473953953 585986725 486828645 785856223 742300488 217906965 966986308 781138412 978978334 757052945 910825402 689854018 982388043 137556199 460044673 818912768 892899436 549262511 794008401 740655589 765971372 138109441 646194151 897044707 832343865 193034368 844987331 896881949 271077919 493471588 570650922 483383746 890175053 711642801 278780846 636291530 756292097 827612745 488359978 587725628 912561589 913321611 818136771 973601730 346197234 860623717 764763851 595619409 227499740 601189186 370493056 876847453 674751427 935431600 605025493 875399398 917410033 552737880 762744926 56630267 999483017 395182823 653942088 703983148 758536623 111179624 272642610 904075862 656889416 913667897 465622883 996204280 330688596 923200835 984918329 873002858 767978042 913714614 997024239 513148604 60923227 855251364 358234208 297731297 930880841 912641888 293271152 937971153 686356787 758619407 882245410 322211226 883211230 681350733 459545152 926420134 859596934 192778497 481711440 920179045 905984093 435003688 47665557 509140478 824457716 739673730 906795800 761042225 974381333 480163264 606227083 887852099 928142379 589175396 452394081 932228324 805139241 739460666 456190302 253557766 705203606 751333021 665619885 947806697 967044284 275151394 905114714 939870786 352083441 605028072 949167184 814444133 762054474 896683854 574679967 69576374 532635872 839668788 241000400 822128547 774965131 748208617 828616249 757664782 716369635 93202158 789744410 402219551 543672882 165366452 760905011 873776924 640790416 411391796 977219831 975316247 885769711 767378095 290672368 820767034 226686474 842798916 405101112 858384188 160248402 834284081 210720809 959992936 351107164 830796523 526398771 827641854 14591013 21726259 595735426 48875551 866588468 989040613 105582949 630127220 702529362 182104252 671812105 760338038 343474438 819250582 726474420 381929490 903628446 986339145 259043230 512029932 17839970 147909005 524646937 38832885 719788755 851555488 863595560 777837903 964351777 952812968 806538544 607520897 422951057 939780763 262129430 964545629 934082876 340229840 527556169 684785404 817794465 768270453 990886773 876864087 949837232 679539661 925696264 455889790 229414565 879746744 16626647 768399791 83323158 509301734 549045974 78274496 371918369 853100342 493231206 767462379 123864868 879141087 863480193 146710431 852114730 913990620 610879160 995347812 890991946 152320606 938257066 458055203 380871999 733748221 742369506 874776892 956770150 620386865 960599841 897059775 149252132 829337246 913550440 203624120 107018581 929936238 747129887 931336529 357483305 745175323 622662777 857034161 738713562 858890990 459790169 742083448 747107883 988905471 770571482 946479294 872544909 994828704 608545277 781419343 989966891 31869964 994438409 821527455 834101957 106251116 923772461 694631830 927965617 789544223 514209011 852435278 807326908 763065861 705695337 59604581 800483949 204339589 972332395 218148665 986509029 756665179 907175740 764403265 193486851 64742513 815740872 253690094 988171795 917964819 422561963 787114626 971565205 93282975 914205017 818313744 584744374 862848191 808334258 905490830 802321937 416474658 806639667 378263136 483426628 970055781 774564038 937206010 687482582 958683145 927134694 962878656 590417641 827842355 844716725 702012083 986945003 689348243 784092025 967635855 741147410 373697843 759171579 273104803 748192916 802104679 451056343 410731682 60297382 591425003 390434544 935208738 475657933 923927865 650554075 967344232 921564360 886076523 946841159 747500137 848542427 147243696 904182297 330675320 44533736 606789012 776379467 684088456 704804447 775314069 796564816 199472235 347674457 972643985 793943674 565189785 955824533 372006694 860826700 254131929 930924778 838114888 820511402 1352420 262761471 856623108 801978997 908018209 966462424 272015255 964413436 118638431 880621515 773188252 605720072 118615699 762024446 852571351 389624367 452323012 972471952 696962617 623699022 881683139 783083342 160835422 886134920 701560060 231692093 436934483 877269217 756510501 56650270 670007738 749774771 349486153 106729552 811445922 543945561 796441801 645387589 895272980 239212329 184446941 802739072 122198571 180453679 967346741 917267520 287941574 395120412 646563301 917436212 837696655 896083676 970206571 867514011 812895273 56026138 419362914 39921634 41358410 338152188 652599287 828246974 751067923 871947368 10461813 473752347 763872903 744583022 771427470 843909019 237831492 934364134 773475492 135903678 743896052 679163843 811157852 184150814 830717712 632397600 925223550 876745449 44843825 124981060 912157245 194036938 2179852 394920054 852941621 980158836 357114891 861838177 898362476 469900875 373653329 804820709 901823079 792132660 320670818 861999472 994969447 559741543 901871729 766848297 479264710 960023054 944249265 130542534 790142958 987202760 898536149 177390659 930848589 975676183 162131456 82156399 281765188 883735023 300534588 918310138 563418220 53094329 580430922 758464240 861565444 737227194 883951795 560469796 716229722 880268829 829431259 840352526 431430679 671964464 688573136 161675805 838005491 440474196 628103961 742732484 837375795 992950227 192977738 862317669 940474792 911856864 866870244 374559459 91385229 749551224 366076342 809296807 796197452 857830407 667868825 123580702 803258966 60603108 957464197 977794005 278738505 855805181 477955570 330865852 707051771 889064110 145413931 737020247 963489367 818912484 648552648 778901654 924430250 983385049 983103567 865960064 977745814 227295284 124082100 734899634 15871670 526576101 240749089 806021755 313061428 973813516 977482611 588225302 943091583 971193513 199928284 405968315 908055601 432730586 649992173 934224594 477231300 629829825 238766865 437883185 351422095 999327232 913330526 288360448 523356073 352616947 143295082 119678659 160126984 793716928 835836924 943087610 964482602 424588368 640364364 343210139 975815880 933268298 954282853 491270254 471217594 522652235 335906266 911346182 401963877 809924622 980075673 828500923 807821825 871466195 876296585 661055699 30183143 909338054 822631345 246688367 425540565 856516798 840353977 561694699 962565157 212165109 348241145 759619760 776805324 891631070 564024201 904517489 521574229 750642794 878038480 124170348 864714644 489564809 340057296 428073814 369586154 902992047 47435379 845797252 596678862 780090486 132812674 561094816 469054666 890294897 978874769 102176174 282215859 817161776 965430894 750755028 123720304 44402197 208898837 759972920 567196884 952366362 564224962 37909065 248918314 961719304 225800166 551838865 722039596 322066981 837483578 985891538 122653080 103538653 963551741 979474204 618129649 897498023 205130726 22100004 933032245 414730463 925490696 405308693 940004157 980243339 885951941 649334535 112194716 365275403 808448222 906281224 885900203 326264239 293791289 657926012 711913333 858699910 978539962 483425283 270001452 361715130 245377579 867426133 789294128 956097527 450313757 753290548 967938517 110306866 817473906 907875856 717488790 639184661 306018472 885571796 551605970 957586616 636515410 881602258 699336796 243250831 450765379 898083625 860242235 860737601 667743421 205883755 184184580 846287836 29736454 797442588 925504035 7778167 315529983 126234560 998392492 191696209 584906951 358991461 866011806 866235237 924441316 805822591 491798818 583979196 656732033 756282917 611557105 800478651 604640757 533210017 219842937 591574098 534390148 890452250 453660297 617879342 423847199 581093703 964928993 448265009 719294765 793689941 957827377 911858364 193433516 921649165 389998714 218568704 988284850 871638454 170635141 199570708 952738472 361287326 853224545 584301836 123207240 986096825 765872625 199271304 951802398 447381911 813873700 910585216 762159694 705666439 384341708 666120154 2441154 310711284 217064935 52151494 664746672 861508585 524683980 740606452 959934938 787973950 461867915 886614916 636761244 303855993 950168906 974843086 303848338 159515599 926199248 877074473 26612854 986620013 954195411 467524894 858799782 936198769 829066424 659929937 998665570 896125014 960765643 851786583 755066875 990951033 991496578 193081227 525053015 372423631 985967858 819062300 361577623 269482549 761451126 962307185 717149321 945188550 908016578 598525188 964358046 944809222 215582425 975625525 339096407 198890774 819731375 662689603 835447187 911577195 787790225 356151420 737627948 946074322 216095717 290231674 824726322 837036877 911543774 120969765 531131631 245957979 146114590 608212687 776757020 881113881 98677714 944690325 800108525 922851968 421341139 145309769 771532876 914421575 351670868 406197614 783316619 866738623 962403287 522388498 830085832 606647658 131936765 439251161 884681764 631075178 423798537 767464063 314656511 598824094 960094458 835114493 871430942 997297632 860268872 961990318 778751894 687457013 778254172 199511670 32752783 758711292 848398652 571127983 891105577 214402996 123739413 524655555 873722948 70799797 522011917 296737467 806100120 122479887 802378344 76879501 928434360 747366759 838662816 935772535 655672137 883837636 977078533 262571813 884023817 869827804 136474479 890652120 734622349 751922540 931570212 816461847 853129947 734079243 964983251 720836293 203255395 340009710 935556967 144795933 385606368 735168057 50806536 949144921 141851048 245422314 123664070 961722423 723456924 879084946 852362518 918191528 471596659 844384094 334329809 357748888 985507239 857027779 370523204 836703059 988573897 106420395 661410258 806528532 828435634 808202335 939332500 156281059 750661259 437145601 653581098 406624312 800438436 650244884 577972860 24490062 413762154 934176977 850808687 981732940 470650057 135478918 470436787 662673162 459724958 782834063 605217118 329661413 411665332 909727057 798940135 580628417 37949237 542112571 124778094 854763099 216172576 130796183 792337864 971744358 885906907 73788921 512640097 168341981 918378508 823553601 55395754 937784257 837318690 949734264 920845635 959354168 847047245 979741084 777976802 340071537 150454727 847048014 150547021 171745397 967821872 779422157 397295426 842034861 137511880 133530439 421837020 387512686 973857952 383920447 765310265 840922590 995653196 903619089 655681142 815489250 740823841 966045664 269751804 294644709 830403587 972132856 801177800 762923060 472413661 991645659 661198250 830838339 867023712 67040123 897176275 263263908 750379573 222357379 872800757 995800677 393847697 918626594 28351615 453879403 195230576 640813404 516445186 354052010 952515703 812290301 249771352 908226370 108124240 857295667 742021585 756624938 839934430 63333585 932919113 974386720 700537542 775890393 746862928 354569822 989306685 781940802 627783220 362112852 517998000 860431413 961666953 857394824 800404721 784241246 786532424 980498982 827953573 148483779 957839591 218465281 913994009 16464757 621613180 823000965 851665810 872126283 810160901 97929700 682860922 28127815 932375624 751478085 620023462 175196417 853569601 911871645 893275738 968413938 751165465 815213357 960676420 896529473 30239979 290581355 692903416 385723447 44978344 334641186 981383388 482949697 649404695 494900721 690809585 871667747 768391925 840936264 931600023 105730447 887058465 750472598 902583101 697919104 111315546 727516852 919421016 749928058 263795717 76955438 902631982 738882638 873105315 577326877 487246720 779720572 602246010 317198461 221840486 903860388 956299230 778624487 272697462 829099693 353936558 937809184 842422202 971187899 983177485 464755721 527844712 852980769 850431558 937580776 850283383 389971168 991725087 198642608 974507366 899106777 176976918 421638804 822063936 972159898 472594355 311063601 910224223 786690990 941168393 764542685 732857282 953444266 928845491 200646277 327375148 306038657 775045433 272116945 687117800 83928245 750156231 887024093 433105209 919437430 841555782 811399524 564508828 934364437 978038278 431063183 507585850 436102579 945137429 683260343 921587960 106712519 858750993 556843953 864674267 959516901 140526451 34869442 817173264 444090695 123142071 481466853 987720995 88524723 561700767 886157767 902559373 909646445 918491974 760871099 938246702 782314679 788594873 977944773 45349524 826853955 888117896 89728571 320005215 763816303 813736357 998144283 182182781 190218390 820651252 561058675 562141047 640138762 983020610 814281298 545603577 914521864 864044398 232999491 845601334 805851280 429978805 836998382 644034243 389796585 639811350 904090992 960951483 394398598 783640084 802506744 633151308 369124970 295714597 325025824 881328476 193095682 772521574 451892847 445109885 995692806 897409948 244459869 592068874 745136676 182312084 869954031 982043093 744180003 848670852 177990833 959053107 737393434 206925500 138878651 544915033 253074408 843929404 206551553 980502307 26950850 691499743 978744703 100887798 721782777 179077035 459056925 397006191 871281363 847193956 847698235 840309742 924028237 973457591 426274677 831806199 889569218 806335828 139848855 785840575 919099986 911650940 820433345 278443817 923625087 75676100 961655945 847079992 850422492 849841917 957708655 83727979 859963495 897324485 917170938 979931829 508037582 976713263 633211381 806162431 964866044 528526010 925734031 745877121 954637334 611270601 822712469 574441793 817885757 949563292 857384752 709629516 816383856 971174046 912706237 677241580 933270395 662460735 777026588 728777930 319371757 895983947 284674096 737020247 762331105 864001800 727713285 946011876 794035387 114777322 152767476 505328645 231395544 15670994 843536369 39653935 895711512 345646632 142716363 886612779 302013333 375108981 24901612 776005325 356535171 922618080 905620764 410080191 965327610 703178765 988532590 608791564 782315322 671953945 928369587 807963964 640541852 987091510 319712943 771466129 915163320 674884828 910731140 55942893 194336170 310304633 609048395 657575227 511747552 108728250 214111904 939020205 775426867 922714433 491711240 878346768 855122285 96502089 937540972 795849663 575898728 800784159 482193900 993667011 621760727 612712220 487065218 736847402 982801077 953450711 332565447 818854181 983915448 931696424 499585183 325106623 843214570 791530973 473953438 448488889 454422258 263314005 922534387 772106216 634026555 724859736 766375063 436093511 848725503 337178480 213809993 837790192 517872442 649816339 864391147 638871528 918200793 665626324 205985337 616873862 839449741 839796658 848727555 1832071 260010071 802053018 155925618 285043846 977349176 998274407 770713922 791131345 948740901 464130137 3440063 823663632 165077195 888449433 871597593 11280061 784725305 246350393 772217237 763881177 703516189 899182574 887290852 982521542 54075788 58013891 794965229 771099080 416734061 236264045 603042766 294444022 666964608 853438592 968310413 349803964 360903895 15917400 9581311 370575161 40649130 199562793 233410102 423139641 900092761 745695268 725356193 838458358 886175836 75331592 618037887 478332528 880174684 765529946 126374077 320289968 844500921 950363988 795506432 964602648 547412819 110679603 983781839 515373197 480418882 520326682 134204915 454187886 257043258 89784570 912131883 890859627 206028240 854568448 590110746 384040365 678836647 787048684 583226636 782418157 979620166 884497463 560101003 502487836 275464487 865544519 743435794 898432680 837251798 867573346 612562240 289815384 176605002 794582058 412802388 492966132 633515508 800616786 373478886 784405270 982461086 989982412 630696860 821692500 175819411 966348195 728788018 860435157 354135016 992975072 915588205 927284865 964937247 861980822 482557265 515076187 60371854 944049625 522889245 949597247 305293453 102730051 735011293 617704829 853142761 868795006 673250373 663352563 493375677 957247457 805081306 974857184 807825065 811302427 601343775 218881445 762689342 889282239 56417739 839327679 926570608 556145190 971694019 24056027 997591904 997558759 9555864 769528248 561197229 976055120 76842334 960458823 153591188 30450971 793613612 954649925 630927678 99877716 92031278 763350937 875639876 821174349 333969461 716647960 855464721 727434707 359541317 805736227 1754943 498817466 182117061 948600534 744261202 535389401 671515201 808105248 915596736 890578598 982652354 660534467 246931614 445118321 18597984 812884707 480233707 326384587 803108048 921325227 853357906 923281408 953813823 111221183 570664183 857207226 892546719 859583820 968951588 732426245 946821129 938245778 302771630 963301101 912815803 788036323 818900474 953859503 300043631 61535927 484507959 510187041 985410427 493680419 218998164 2008431 759042200 320950309 764810366 375189472 326860383 989691698 838421199 616974862 742330649 854869198 997667965 305796050 765142080 837599966 810604759 832791054 177873063 586779806 141905505 653392778 577187197 907957206 240842436 435589605 786322411 45461986 831222741 624146744 51825567 960959816 463730763 672320990 282331493 350134026 697417731 338939407 903217420 910707392 871525593 239191618 633613512 345048117 760027579 555755408 644550987 109270963 957014952 239733318 522377311 980704958 194626810 982589486 486558 991094633 908480218 625361529 870401343 990027279 562938224 346108126 769994281 738487138 883495711 739225390 765522536 730138235 666621018 523919875 811482418 395156270 969016814 835976063 904240885 471289503 952120959 657363451 416753474 74994116 927033390 554862946 695298696 699442734 831291192 2745201 519462030 730501264 158018478 856186094 776506394 535117717 942557570 677803291 533650987 528082002 867395068 838449535 92665876 999313562 896236389 982960902 737020247 503726461 413736459 770873866 222983631 846774781 928170610 276053350 418277216 428240129 151495688 613094745 918499293 260822019 81000867 542296614 914289564 142774202 523513166 834391993 747269851 492443872 514159173 512747346 639253320 297926892 591348035 836287937 89787744 900064794 205187947 761960399 828977162 986171096 854597807 933233679 875188114 750633931 55073813 11370016 716770148 742158191 277263720 946669317 982793201 827057169 670771075 843243714 616180564 887882808 826056670 98491027 684469493 364348078 229563568 52685898 463233688 39264408 846091796 765240820 795164359 897224956 812856669 671145458 251059507 841380258 419940711 135956007 964326011 809976132 814801814 385182893 937968710 892878384 128350443 916018977 978483429 282205767 778570922 460167143 950632751 197167702 582868093 913584579 210742446 917266961 985363800 150358077 920593963 310157926 309338403 935726923 224240889 456690801 579097946 617094481 515739801 232162163 125455004 955609042 311601665 427603318 343248789 925013057 678312068 86553972 936413894 407378494 10995253 64286018 120841776 996156134 24004458 317641180 863270412 904945489 996399110 944798757 823144023 613604250 957988667 961423845 935655548 336395292 396901939 969895282 545999273 757365505 820382380 109629176 819833609 25655541 936246037 289793318 362824580 878483074 644707009 712900728 753072760 850051691 826512974 161629414 463903302 483081512 902367394 964694581 969100841 844392567 913026802 977506851 231063296 759638759 67971603 416566189 25225466 782945367 310931882 866784029 927019558 151566322 660419717 795256640 294407629 195518385 95790726 915352285 818089592 964016520 779176723 997668309 110656884 811629414 881012573 887232884 83262243 397322211 420545086 886400176 94105615 557140500 262709936 540358352 489819382 757140008 433728035 824676130 805229456 484610012 932638238 926726355 804656639 770485764 923288860 748342785 914005060 973849880 601778483 818793097 889023077 292683015 284776840 228735999 881486607 748522465 901521359 627491483 468844086 740406513 911823171 967084940 341182592 980914657 474800859 938433098 88001574 941655059 958274627 456987222 949606602 854803241 374538919 574128147 51937027 728279418 794906626 745065294 718614191 158771951 784855359 878253586 901949914 431989643 820327818 930415518 636806614 535387863 774468834 563421602 787986492 964037949 696151239 676264191 818564452 79170995 579209246 261252026 774440408 636837285 408667997 360899583 324404467 785341650 180185216 816319883 826108425 972723631 468447122 166598137 823913659 684557709 351455801 356129118 986122628 893346010 488605848 820347578 217678056 41284285 954938672 988302597 258212436 960247728 782175109 749620109 826690537 746359551 364976701 3928433 548704722 973528407 351652327 469135950 855080495 449603046 941332738 748523943 896247066 30793743 632242093 985559518 120454517 990179863 829261880 901486621 875255029 409588927 593405324 872405990 992829640 955295944 913981885 734152466 694116672 385229154 952897085 259265188 792025132 93890673 91306540 236293028 758526208 248128639 150418819 89977543 962125897 584673848 223128924 278695810 908126415 791029143 802887871 283525842 596855782 89426583 893418824 871928370 26641566 981335563 760335996 935326027 749871013 860726651 785305076 893995134 754910299 561804814 371729516 182609937 843318917 530938383 783217404 374350439 371993489 239474893 769881728 726023381 376177823 238942163 912124407 36106535 830468393 905103338 889651306 852929442 813755130 210351509 986185938 982432733 194954968 855856203 737020247 397461606 349550714 812564546 444219949 909134569 848353101 632600466 547797646 964383805 678616637 948533081 51179412 326578653 761133830 946194962 877659770 884308984 400773332 983131392 911127656 794125733 732671171 224300915 249508971 320510604 284862865 740214281 924632923 992890340 559973285 279979579 838712169 461879134 873436101 884547440 972699532 882802571 997751486 345543375 867340937 708284368 974721889 794729379 582222956 880456342 846287447 207728045 900331227 686467482 1190903 128017407 931915605 986379686 352396203 28828188 647180279 870205209 889025839 25589986 132358762 757422497 698440614 865542383 809574560 446399823 632464903 908700572 830911861 947066723 227450667 716285794 12897101 793008549 879975128 748306812 845867167 860660915 565723581 941850981 299041853 752524807 348246667 827383560 125090208 10610539 256804253 958298736 25517925 804640917 569419029 601491213 967756744 699798573 857137601 766545566 909167693 121590725 94917191 289020895 516883265 192419603 127275465 821945258 955316289 961616434 773135512 768394944 288347667 344925029 973823364 881244374 848137176 515512834 452695414 175278876 50905926 766011695 862416656 25473731 6563481 980074690 768366484 783598339 813717856 296203504 404760979 829018631 736609482 434113394 34825012 171746003 740224709 747981980 925991650 854330568 943131701 737670911 807596716 228283273 782854644 993406909 198293346 303998508 261646126 828135965 990580278 22337003 75350519 168108298 630793034 923332906 455967342 349098459 657930680 53880636 831007390 895534800 875878347 855881410 872620766 941089655 740797691 782326922 498633122 415997213 806215112 886914837 49221615 698677572 390747301 618599756 399162386 809580364 981327872 775228706 356613052 156611539 790017299 242425079 145404541 824149273 775314565 13808827 72575223 974543764 180679880 860281850 34010508 395671384 930964331 245147379 324234386 881107577 988487238 826128764 938627374 958193086 729753592 513270840 271125731 115700682 462051676 777323128 286557994 892945505 74768825 112034620 962512527 355124672 810875525 810777810 803256505 696250492 540978546 65485885 186127352 664112120 220576451 776701774 783001597 439152083 132686096 572772079 895083816 543387201 844876710 115820520 264721498 921366525 14583701 36732741 201957407 294679653 902001708 249676636 382006925 830812542 789088430 962624158 309021299 588185318 910866036 989086242 865530310 944106986 960782293 542929991 500713331 778223285 734435362 564310892 432317159 221126426 183295755 920627409 149827427 187667023 829709454 805923976 860329445 298689023 244824922 512035338 889266624 185200073 894455726 68969225 783644562 692615734 466549034 805770546 540254617 302955472 422159422 861602969 57187021 855750192 397967104 743486418 414228127 928655519 713929919 821387107 900612843 921033213 902055561 901256601 302034481 821765629 513379202 624718913 964295977 544074606 901802114 943095646 185825055 706900940 857116962 978635918 74260659 585971008 790839678 324000076 927055883 893856079 969361494 186022448 362118181 591047254 270725419 564897952 742002128 841773834 658377886 102200055 205844170 810641827 79457144 907217687 526057774 257667170 920100677 793307249 163496706 899905166 407947399 794951499 753033890 1734880 640293821 369336161 271159372 520693566 138102110 619049696 814074526 472519158 101407093 481474898 817375434 930718784 377214757 103647648 657926248 941377604 98856206 906810221 437555329 454612639 830778650 786288541 554716669 911983222 988120450 908748159 115981516 794933153 750367377 570832552 822188446 729195079 446993079 288516986 818734411 945291756 166133332 958819790 283186047 443314948 794589180 552663054 368848862 820076475 888669331 822288013 596999 941094882 659148659 997506188 190946658 907268616 864139551 722545672 287208571 945871309 766633595 941164366 748652831 770859189 874276538 907736538 824236101 424194422 177180472 663370309 800445294 795607709 1187414 910099352 775227636 901770508 564436894 471864238 925904917 888521882 865282179 922979149 584999811 850394239 908828219 778280150 541374474 823806510 891889318 749394854 883262588 832646229 777157444 641033623 916940348 876492553 567217727 478421083 65721537 985161465 794866374 700878568 559540167 772387414 255520491 884809703 985545109 316762398 868282992 805965412 817515955 401738636 360098841 262403149 731325799 19804825 387252829 88930475 942161638 470590674 466931183 285852094 945302403 343369049 873032485 893434828 786721387 997353449 906061571 898158560 219889207 872467405 922704037 242961280 565472597 113652520 881180571 58965628 951234254 657560087 944125678 569644841 961773556 229513475 564736695 674559066 872804050 325344232 222722732 889874948 693645971 819353499 893156330 880626613 675960842 480190856 928260265 928170249 916079899 737020247 807340503 947947411 439751109 859141736 623536910 881676200 482586486 135940792 955034209 863284972 529208497 244984632 491312553 256852158 877859105 648065185 494605960 234543191 437729785 993238329 908315461 775636347 620857715 137008457 773848762 53790142 304826841 801758259 227680627 469933568 807415248 215192634 95455858 585060516 840910347 149055178 516241579 101951656 577221819 721992098 903033882 746088665 5673763 844227072 666282714 807068495 477925347 294374429 333537363 552008746 885267408 143383887 139573149 848698065 958358041 869353322 453033377 949462049 391353478 766311155 669089112 949634536 840080413 160125324 942070918 88638609 109850703 265515765 802217359 404801300 760209075 677568481 810315765 930466683 44086684 967422101 244271341 750761198 949219653 755572992 322391774 911552822 797371531 829878669 536354443 940431083 26780236 751031868 818141528 890016079 425153789 99674222 68725608 538870807 77296197 392702152 329593660 902702292 607387341 363440431 817666702 839254714 633646333 823935209 802613759 791663348 830279734 111020486 737020247 83712744 889347887 882684415 260185379 324685443 702204521 710376501 352898468 784559336 364176563 402143885 254779217 880123821 393898540 809145944 995302985 628260632 11222433 198583090 110693447 358935945 876432806 983798378 969023320 920079842 898441106 930428172 587586974 874309406 544055482 414315333 803971337 476558939 160328230 297342681 199603061 84810453 982960058 782747302 815735753 970103018 695604441 823861183 747647255 802482293 970348016 757985905 754694969 224998963 602128702 851474996 791595018 761840765 690745072 810763020 919299937 907196991 415502674 623157316 745184882 132758841 943059087 67875093 599192553 779547185 976343679 534898673 824114091 850164766 737020247 230559560 790839074 910920524 671256752 859550704 106546952 577690804 646857463 944067013 53150126 271321403 981414832 866657186 19834100 938622691 75279913 505029115 941748165 709843856 66397429 775708894 129450915 891370440 482626679 953767717 863758461 500805386 248877647 168068328 302646606 331965117 824263949 273390103 50701001 332876028 872749059 981193484 740895992 599946555 385077682 680362522 852493307 250586556 845804972 230935367 243439278 176857876 874473277 826625889 856791974 863864087 391602043 935936099 783319524 46402015 138255416 825284457 702548540 944938643 824949804 399091211 700860354 772798400 767022471 62587049 3697008 193075672 757630559 749275449 247816308 835934113 763170872 931489369 329206692 376628800 50130596 256455066 644984445 763779995 90615056 547642366 919544709 995533060 861506912 27510682 914961676 269239969 100488926 582636813 759269072 714055959 945000937 403239651 451582492 890149782 872497127 830766930 890258858 82700236 861468637 958062351 896014830 228413850 29121853 166965651 938193853 991698314 71817077 837733625 618904953 444377852 40654520 965736619 292389722 941126356 382327525 142315547 939187297 891539523 835844648 873106349 991812585 969244875 982627952 887094505 862195566 575476348 583264423 138092580 52428367 753328370 758313198 293213670 551863939 42435924 223366621 884299107 327632728 800790189 999216443 577107712 625393894 685119735 993777986 917327724 559598367 986019376 838896884 1767421 338536999 804177748 911130717 786954589 678364379 902833062 404007235 970847366 239558717 404355958 415729489 444342801 863298623 422986366 985900750 875008962 756642287 397856314 882607692 590584969 664221182 119391726 186114181 542775931 817325613 640734466 673528661 49619521 964962799 477639053 851181516 941871093 484330674 402056144 972261793 692026335 817275654 403766480 696863421 30841196 659671449 392789123 416297176 68203041 803202736 902524632 927329229 116166013 443746897 315400372 811579200 234165047 656100471 635089290 213356400 873910270 666504451 983259427 199380283 754106541 139037875 102625805 373433069 401585212 952994573 281099119 387209662 447802542 960484197 990530764 794889251 302243605 238846980 767350268 638782645 496681577 896703103 367816282 132460969 874695809 906729691 201026607 774202854 223740812 551880105 812116570 957498191 897248361 590596846 253575679 164195987 928275627 320077411 865337276 660672213 655070388 675585921 593009347 83345231 935249209 200584997 696465938 912281163 427162635 517779075 742839261 957551470 75559689 429329387 306837273 345981148 338392767 806540599 352305750 845939913 320466704 642527802 767303839 895396686 427684270 594175684 884604091 810832498 351088246 103539418 681923441 462745456 636296173 731984920 457999862 128407513 709409909 776578891 80228149 335219720 150329077 985464193 35006720 848256706 708720497 378659181 949521544 862809249 187679145 761339130 831379841 298807127 186201645 838589158 262710885 885327096 183035109 650612531 460421028 905667462 278113308 981083881 768371495 478608092 847879344 365545823 944266772 827828490 469637195 939123915 529539794 495436498 877279422 821734477 231243683 776327820 204185623 24010632 938462815 585088991 698879818 493887032 646487909 332663191 2052326 339371482 659511236 946186884 660882416 288058246 842437772 777418624 859364931 291732771 260755996 916376690 679618106 364775186 28787843 982010232 779965 35534972 189664704 48325076 866149001 889665164 554406766 979310774 922597194 188029869 46846813 172508460 141935127 349826044 200890988 10896295 749750436 899873078 959877159 650242365 580664180 483182885 550725030 851675359 321028188 898867799 286436479 298529127 710754869 771674220 820425335 844939383 882962303 42276728 988823634 322557021 971723999 214540763 863048357 188353697 506307979 773220805 954382032 701205207 814852738 771323849 525733566 706158395 754292614 853921342 292094008 576990048 433995545 829127609 825075678 663236189 367943348 976515236 794821944 602603674 941841999 863408820 784449351 257249360 318159837 739776565 33765027 901984483 44233689 816540770 11033281 387334332 729948790 893224338 146806781 283783741 933132778 852525557 977410353 675209508 836667284 821273924 428517743 917788792 991428058 765361032 658340966 377165778 937199805 628568634 722968801 519406532 940895969 654360873 873114524 310342661 833397425 146905303 375694919 771063310 30963450 520277852 748461373 827927608 26755273 574749567 178418154 715083531 797400795 460015404 906236039 961982353 818332935 826153547 985924879 750860172 872716099 490814266 896895655 146409903 680903630 833432482 838045543 875084871 950536468 843766115 869699218 610899300 177988096 152305542 805863237 881182644 414677752 845369393 992762486 874116870 521259719 443317742 136949215 837464924 887585673 738863743 117382868 862643233 417031493 791552896 872405526 147516415 454701267 747409678 931181737 773748670 835616499 809476591 431240040 132388450 961731292 653908613 875047515 774218187 818931673 33632969 912420014 528348511 240401110 983220419 293732220 783535299 684086604 252937505 523917626 635266360 627006533 676781914 879428360 219723411 644702531 205341794 759221500 734606812 846277556 144075898 946042560 613569177 909385079 203581295 959945153 889856262 830305870 742484425 402473677 764690334 640325321 853654889 830715212 942946725 601520419 786834070 877779430 753162297 996276958 775653665 221650489 822652694 197093745 27669 832814645 255334541 861158210 297023946 973109620 651693355 194530169 400229760 199605982 704915106 23334282 887888439 917053394 993955738 751821398 506781212 169074755 180375964 528266520 84890890 498380804 769727748 991299831 130784856 285622629 101793659 768180155 458742421 485327930 743560889 381070037 837221013 178715249 194423459 472935519 920409797 31124159 746864775 780579560 536981003 334023210 48278249 917458828 128787262 249192692 920272601 995625454 884689736 435171018 360135383 912476170 861869645 944372056 55670947 887969517 785580403 731433462 830501844 437954009 921441132 506773705 754764233 221340633 370179300 876277191 924756662 64659912 939064611 279082842 974124207 702893962 138548579 945679972 259820547 59010350 110223064 722744198 438470707 612735133 998505628 418297417 650983720 565741637 880395564 821953756 898640413 804363110 287031922 880866838 248178173 115242147 819168141 44877166 897079468 945730181 380049622 498201321 896141275 258268813 974529880 793538959 227584981 867271569 854106772 703672651 971087515 880160550 129069951 936726712 244419977 550522957 758105586 738252649 483739446 989627541 564875782 480021512 921906527 880392423 412973938 214201100 604815931 811518585 780291249 828453916 619434269 444602274 967424120 321004577 846654694 890904548 757382212 961501710 723015730 361085582 619669186 953630811 569776982 993227797 832207030 556090412 833048054 163001851 627358533 957533236 303093749 741177477 769047013 459681853 159291325 720377747 823496324 561238626 869719254 407241170 753183823 124002987 404660612 743185481 758568325 902259239 883344922 212289493 562130777 348307048 238474862 807235535 284247419 600883706 966289295 952125880 837990499 968997256 413269562 729558481 939660023 105451892 925011650 809085023 782509566 753531327 864707531 929896658 132781180 989031524 994197024 861029105 839200880 183346489 68650740 590056405 258501534 853240143 849577048 565014758 572210341 946770884 624601439 159086024 991803708 555626195 498126165 762285872 894447650 887351599 97383196 106747075 786593366 192588228 628627495 757593010 767100447 997877879 170425731 848015379 934838676 749729200 783696641 159620207 832805543 742516549 737593684 692406627 821562482 897727522 15606083 715512878 354771747 333487313 965976779 801168660 964956290 876688956 43727271 911930785 558082189 984420984 311847843 708136030 170415640 116261021 81492451 564991170 785066347 527989698 912313574 226120491 824049805 977629190 141721689 968074309 783078099 897735192 208927142 882168690 813710471 333589847 625179812 490742673 737206015 259657967 832178065 999535392 931821249 60305486 991365350 878828804 722805145 441364478 939796852 973362524 491622683 674973717 928466169 87613155 741807251 689551168 713860955 911202355 975124370 869330541 590707762 733259291 853707263 927346958 743035932 871670428 225560841 979282036 545536228 966139459 68945793 223921253 230408324 363235774 820530379 503050104 443498532 456366385 823974769 67510176 690468655 592825579 417061837 702985559 863363123 148872049 47361717 747499320 498544173 266476963 450313769 942126825 905097410 489248504 803864469 900871425 676751380 333170300 799457418 748953027 449987595 434353940 915931360 389276456 380181205 999415520 289507214 769936649 487970094 808382942 833519745 941902952 869615135 171753848 945934276 904384469 331540243 782352061 724108182 868299328 948959058 907395040 880209589 297561404 862394483 285238912 820063685 330488112 231839502 544773756 677177523 778101656 196917266 436063462 690785910 695312172 590819325 18483103 367994393 521461613 797729805 985570430 683812573 80929580 754268163 798542812 977565347 14313383 543611414 922278061 160698608 770158663 639295373 88789969 895547039 959286500 888962331 573302613 803887904 574980131 921519067 892225112 293988570 380118321 162356551 93567314 48166933 795368164 932079360 358337815 891372704 764745206 883257240 232818536 976973820 829870958 746320919 338811096 155935221 458477807 279858094 669992117 737790103 374884235 326444754 471450261 400736106 820797537 938806885 767002609 715289957 744517159 925408611 817543867 193405380 979091118 409042940 38115688 764947444 878189771 910414688 847117621 952125153 124832208 981159844 917863429 828561673 581893756 155403555 587959965 464231077 784231476 708898804 819596242 842716654 354817225 919301454 802071999 841470991 930463233 513262465 898400255 426985098 800981659 758884147 38765703 810433837 251525731 161519350 845067907 836063897 955376613 698521929 485897035 362908775 111436329 741361390 253968336 116077919 206305030 653170349 241305168 300284803 6796574 264953880 44504223 747314131 920729026 422140854 673574349 908115911 188735938 603547326 235482770 833397391 770636228 999837959 61780690 945006238 760679750 819061704 815173483 198621777 798952521 743255243 913508582 877665247 763390565 805130280 524945143 947356604 980901007 775490889 676507875 903170194 980976845 622016720 945854008 900636482 712439362 740560795 208322419 990796551 965396766 28236793 166106273 203216308 870352507 802303268 867620812 608698035 314237987 652191476 791787658 673492074 864221799 909612981 116393427 83758921 380896735 879653115 424672039 741515328 591122709 779005158 486071842 792088845 328006134 916096223 13102324 785911665 981895745 930779640 496181504 518763942 679018996 903279832 972704348 412893894 263150813 882093903 769878723 755650337 247691363 892401742 895545691 285814134 908084855 119356461 740245623 148334037 960650770 828513710 980069774 835029065 139012418 40787011 880424569 847601543 862441441 809379069 595406089 741329934 513306326 896959013 805338650 181926916 920767264 931214479 759189415 931930001 722323815 880906070 45796306 904745898 842580031 637646723 313138032 765368657 462011310 685995403 178227710 47240479 937593929 747035629 436718731 986945765 988021870 888827932 854090157 974029052 884849409 83986594 950156036 996401827 358289083 557590293 746174018 752647124 948292171 207243697 956059316 966644929 935316886 811156184 75786762 702276977 512782853 842177467 633219084 806811943 897193467 870775854 937761860 240127190 904240663 783188275 620946189 931157313 102334329 898189355 991842497 193860487 564371645 972182609 821217157 773129020 846864400 143343894 737020247 57913790 854736180 962715821 519709744 252968766 997965413 966853368 706978307 826766494 750297964 787210637 50921276 36713144 583815195 731509011 481072714 514644632 569905676 203403281 49520190 398697883 835010189 122484232 319225158 324917692 882381444 863196319 842632765 826008719 78984460 666252498 16788310 928717515 657484380 557586567 398100198 481086171 975602590 888166797 741498525 959172590 809644900 811651283 774267791 126779644 901353974 782363329 780059975 754704972 992529702 896524838 911127517 952724451 395878990 950648793 93298278 718754301 266271455 875699154 786177013 828617774 763055447 383378759 780612901 605846869 216691751 387798925 156889245 728385671 848896608 956889603 89825440 422453616 112737213 19113178 356561281 78231957 208913845 383743567 501516243 848957264 881114576 815518130 828016418 319315004 646009213 424960993 671714560 817578199 822782345 452678053 8319700 670654297 762682545 833064534 478209684 152276151 505589119 931147501 603864139 342497266 602035704 977512616 989226486 971722996 705042879 895221454 7524647 843448112 490361786 372691797 987719715 268085451 807697300 47396840 921828528 906966698 260992429 393813443 201252732 38221197 552155921 446531726 890026780 913780077 742065640 374414549 965238582 724131209 43832950 786100139 852727904 265932641 164756086 269515906 681830399 944793194 553980127 113421087 768298319 926407323 428529922 932513822 759942592 55825734 870001779 977807383 923260768 894592557 923549879 10822209 779719996 72239648 360374982 573608038 169206796 758687033 115583858 868860022 432667214 988932563 148731025 714518858 215777370 724076107 519204556 684176575 636151421 163502194 743802893 16011326 882315693 693970119 785891304 784625309 902479432 289406685 750517509 383408207 768912857 519366442 519189909 7426424 975783202 747677119 932702221 108299680 48722202 611023242 713658191 829558533 930295636 943448380 930851960 429367103 173545069 737616959 462906652 918556160 534665191 968602207 561810233 44824908 445009662 792250110 308880586 696170662 51210260 538458377 332295708 727741988 844767562 972301575 419691874 851623525 869541924 977526271 872918505 811893696 457474402 835614637 23321965 159694546 714864811 763869062 776687227 759322073 930938578 802250039 60023358 805999578 270870651 832820149 992502312 918215331 213763587 987178408 753172376 949623735 911802403 965734638 130819160 554783298 178185168 805772643 795934851 791232857 141994174 796721083 811363291 238761665 905426791 749309474 338265066 353867313 786253938 835717451 929560141 811274988 367596620 932501481 500317622 557313903 495255180 958865042 367525922 887050363 595360500 361821792 504146020 230040925 967693837 401442530 725147768 440054721 513572972 551006435 553793234 895971250 898023422 842104996 703999388 968505136 307632149 926684300 719722144 901796978 653670056 749893882 989646095 16130698 47285982 68529805 169212576 5405289 954958935 373361075 836675452 958620172 740722454 762409450 635321758 775613973 833353895 421984286 211873191 897164086 582732795 338276052 332648149 558858084 855805639 627858508 892559213 737281650 774362590 366818646 753883125 155160811 109472041 538951107 370718365 775100631 841607468 137997030 578123015 800482007 854756163 902750529 938542822 755920074 903385695 851855236 62569090 838471983 178350694 677619163 952400225 998215131 663756008 648427504 840637817 614817490 312556765 356214207 612101031 581051695 822748670 541147607 894663563 132674669 208066581 817717582 991002279 506155497 401905930 344724601 384620564 152074942 990115875 872688525 461763541 849565784 929696649 80423981 614746343 840725721 599743901 794640385 781053477 855082071 25798275 808888232 863549419 443450962 705015408 366100846 826291663 971054952 662274035 768511459 457953709 790476518 641228105 980719248 29273867 272338553 198494447 744937683 500991135 699760347 972495113 563031931 280174988 676095741 874889952 434444257 577406726 991648600 873008210 848954717 958742697 38023479 840134835 127432111 749962908 318892255 973366452 783461389 602793001 426935815 955201466 850451458 878258820 341315662 854168861 408579563 993273711 967546565 841820348 856092471 772269498 912037275 458003672 336547485 166388457 712921769 756199556 946123567 741512853 920632001 846033246 931313927 589271780 572694291 953090246 508583557 355100305 566657821 969268532 861005428 978545422 966398464 731157327 995550834 802722548 880189867 926887504 363698128 989242022 921860239 113625651 569489158 16394186 325903373 461950661 37192537 809527306 46390321 637563151 847591181 307692636 494597922 937612670 512362249 941589030 297282697 746625823 852120690 368400559 748078218 901791361 10599504 75421123 8299578 3400412 846513713 8627717 377501236 173317696 920209326 758004453 406774485 840884477 917252446 812814143 766314324 858398634 479830855 976104814 857169602 691534292 38972189 841649223 831760341 310999290 742728140 117931179 984353422 927459806 903848174 888057021 40709403 852697953 996482709 753334155 876442173 789908919 714152816 932997270 204582134 864472929 872251667 602893115 910404132 881925005 975685976 810893398 740487913 559734132 375754971 764147892 183149253 830233140 893456868 151189521 798871823 751515155 780338346 916355037 296702458 586838406 877282544 88306484 459687165 268450849 942663616 401795741 817406466 838176368 477981257 404877334 950893301 838348259 861349275 101655127 986923521 784124429 343218901 986396140 779957288 759407340 774926609 835134971 704551487 405144491 412999734 386369324 823490240 911470052 978509962 559091970 755452415 889012983 911780159 859020991 894185904 694065820 604517017 596578031 767113189 749084162 866875818 595241916 837505181 750967355 325044357 948865239 137427686 984927883 864945960 265799491 393058223 906828915 214352478 445156975 751135949 863129172 212809311 957095350 91650408 784858809 558247259 819210745 826573995 226261954 521176568 521899605 189247837 922038077 6886636 449435042 197312099 374484081 404697833 737456267 869169009 566020559 288490015 523810431 785667477 848106363 606465055 602451346 206301946 960649671 878158389 853895486 807264615 13583042 925058651 806055908 879272690 922442476 466873003 824306303 774304335 170990416 758656179 934037307 855206620 960576736 881196907 944045694 697913311 777864119 793008814 329891730 303888671 192998562 382691469 235279980 457550193 314213071 588006901 183916096 397513553 369433675 565766082 954019413 955638666 743660803 911795238 854908436 892543490 827328546 845832082 449285291 605348345 705674672 27487192 547092938 691102452 222149292 151955822 248586009 77018277 465776742 672597364 950549126 331927120 800752275 728155968 806247437 405301371 927466431 24304093 955148348 785055099 945362904 429253016 490206820 795399144 744110490 965471193 259076721 803639433 743858885 340659032 849408340 965030794 383317035 239583429 449826824 941409989 983480206 774798998 906113803 216245760 868056629 665391502 817197941 377370609 862227641 931905822 906425299 902380623 741270687 345145606 479640660 278491015 854299046 911533823 920264898 832810232 808782490 265132635 737020247 786889369 866144394 642974568 905164560 57744920 665171678 965006534 836187168 77985911 875333645 841810692 838727819 454795943 35849633 787870627 949033159 7661393 777509488 980003400 846510771 861312623 251344563 835891190 750644243 609093121 994768656 106768971 264236304 781112582 944767076 752026346 975939734 797049590 168952513 559794262 528593637 934444948 756787598 881955089 397407483 324724196 578956137 827692112 859410432 122874807 921705602 865249756 807231400 273997088 904020679 811781539 545996351 812777022 774514382 923644430 747354981 414897083 760721220 797559804 705878066 619350965 913308160 699120141 944895854 773429886 274533743 371509102 770711497 197512843 230971451 271116027 209535850 995311913 64083660 388948839 404395068 666365383 548296623 409468166 50113410 869175561 767815723 754377914 960950128 813053959 889233325 937384622 377754027 979923872 526594079 780859017 747871405 888393734 646322432 739329343 958602960 783297805 980121827 697712556 532431391 904831502 834787497 845124443 197034437 88184351 620429778 430883292 927822625 814126954 734266019 366983450 253972829 881417503 515693327 835871050 168428803 266901646 261021187 531028935 45206704 760769099 350812179 206678054 737794167 680957041 110770220 496028986 626811343 939718298 920536893 52758013 994689140 312186318 541758240 691362963 860678167 438465967 877581320 134099928 290285256 41625534 807329635 654920967 681389460 566526203 644684193 892504344 929247000 543991559 957164907 70346842 344008138 829119972 97458991 243200974 989798866 567191416 809047596 842552161 774981493 109035490 75191172 278102170 732026228 640406986 984054724 829092509 356748272 153754121 679909372 906461220 63760862 301280133 474950800 795324793 767262351 718595322 832071144 828312429 940518104 274951691 834070585 122277150 33557085 827014813 906915790 813893893 954876770 749324361 846479036 934332512 496737388 905291556 725258860 77888032 742726411 984582095 275416997 753277627 765340998 663483886 63925016 174563665 339606226 144313471 807464102 131311045 699031836 319027465 779569174 705384439 740247469 469269875 913533021 786951161 811878487 681068049 873683889 144842980 749892421 242642967 98993559 992315261 645453466 331774070 686167656 894434916 912441333 593634610 803161718 89996617 747221927 899152466 414072091 769789688 306144743 823856132 788736033 979646045 187405485 881165151 254468013 138793573 540155980 657479036 79514411 137610191 337945988 909950869 395083175 575692018 245178946 731493801 872323657 808929466 435871907 938805280 806277530 178910733 121839567 34959314 66940913 582718156 882566632 844573129 749036838 342345238 867465771 998893145 284127256 955101514 874361427 744538222 841415841 956345083 853816279 785710889 833399933 174452621 851030857 347681906 376566864 696205456 969778069 802452032 662699884 848107794 262809177 307016124 76457527 780029436 923874295 36423641 543890303 368916793 238142809 655536289 828794153 595194980 921540100 770441493 100625547 903952969 242245727 363870188 548725704 814004276 795945553 262963903 485640744 360776247 621748838 807688488 369779989 739858163 777462521 700218409 158868490 830686511 510805237 444887465 749808320 776172115 430300836 167179199 949380788 898294266 832630216 388181534 781777292 446657717 619813061 992189296 179965154 998662771 794778051 907956105 985949113 912707471 800904869 858977949 323727963 949388703 150053575 204089485 309005817 638006118 901471072 780789062 774592533 848623988 890052481 948332488 507164816 842219526 867739259 916226322 998939911 57182885 886062123 983879356 37967080 532591162 934861049 880511901 878611184 885406273 414864704 536508930 889599094 934261299 709877084 952391276 939727689 488084964 817195377 855778494 854209147 974693594 569093649 889328567 399109126 884762574 737056953 859759468 965905893 941141316 85275887 370048938 256457696 839554572 992642990 953317560 481146891 630602004 796042249 286034245 183392467 751854131 875277710 306402809 326293991 741927883 278042189 784330140 748048193 482495659 516555806 874071901 871975267 978867331 90203199 783030979 841699135 773903485 509655202 949990551 848411453 986977625 931260113 741846752 472422204 951380261 13694745 756947771 149616135 730456669 825311870 754379791 492338840 218325157 886783033 995215465 962006315 887760623 923407915 983413146 156621481 300408435 899646101 476301795 826029048 556290790 478026447 842756640 811386195 670454932 869574641 671226892 579294363 704398090 904228826 912366773 485650764 703290550 852827813 134286766 56328060 751939223 72928855 399752846 77710659 505635951 987318242 319800391 533221347 718036831 768342069 833311225 838934107 629446955 781560141 985629000 434607239 409774997 174868319 373857291 929804676 111535899 364960283 227840413 870914199 395270432 128976995 896519873 572597532 849013968 746624854 790021100 941058066 912063618 867499813 450675090 846955927 847324171 697082667 748392083 820501414 945067378 492588235 946349693 484626957 873464535 861418158 774787285 580068939 797865778 22402897 955702215 5785009 971798849 531314620 741310067 189564733 372966446 991424929 748335480 854145934 919718402 760037315 152944249 947520588 909278211 253611296 800490725 830236953 818451505 672084873 757736341 812041579 865188025 997386835 975469354 429435555 773587839 578691121 822679561 12148193 863129530 646314990 175323486 580840551 856786490 775906815 757573977 739516363 449799146 897913182 814407678 646756894 869438862 996998094 942349936 43708321 45218153 723655234 889303241 879686120 837554071 322089472 861816245 552125925 959166658 935882893 168329899 139338147 759605762 790399492 937173581 82154917 351376377 368336841 920424186 298757031 272674752 867124475 792274780 775215214 438825748 912388211 216687948 887973364 75319638 878893670 578677350 902483902 926844672 541068704 889024687 720194404 879234384 753314777 856242454 753488132 809661157 229691163 1754255 400333100 329143167 859275074 130477537 840017688 955312834 494492498 690403500 775203534 688460566 454252946 750130256 827514289 958310518 549048038 927021869 723189665 120583899 758029782 951051741 787972093 768140173 791933185 865691788 829670694 365125658 854901130 850059677 8282598 796480218 854772665 698011243 453123585 798950370 940584069 142133070 248607713 149987692 881236880 947466116 923381648 506120842 872601827 263760124 916475933 75201834 929404381 961528244 274547167 828262671 926596703 794677675 412595151 802669902 242628067 550871239 14575075 361661142 799513653 726230561 929469701 537360061 247493353 938541756 575812413 482854329 174724585 974396552 902955971 748144683 964970839 861581869 740930877 730364206 244655111 429565571 976354260 894810037 987123268 54713737 928417206 332193281 572243472 213354856 127263089 930976004 540595095 981138506 795241038 804102008 918517338 578262401 91721207 531284887 484818533 442066573 915443666 712336630 981612767 625076555 290037695 106860092 786963128 2378027 203986521 228928615 308801959 365578996 125165448 705219884 645711787 930595521 194675900 839036837 859173216 998616980 997677462 746767669 863626346 427732780 209420121 903146271 671553815 189489981 235054619 840942680 935770443 174682665 773054928 875525501 914270866 992438472 996470236 951469598 154758410 671825546 591130083 628116434 643758526 845139695 881089400 25312682 773376388 792924499 436527216 783334277 790753476 861284888 945688931 783254404 127010233 146885345 709057509 920561159 782980328 131914770 27370654 659869516 943600386 765815382 568862391 237916877 916047205 899609039 941527411 214621198 122227583 396401412 373560671 909519808 365520370 585363198 999214242 802166415 157414709 575563677 772874768 841463340 967002032 942524417 59692555 871286161 867730877 598308828 985645276 847403038 98063682 923024035 120088579 792728498 920801109 409546496 779733732 757574165 264321333 747792611 542418377 539856058 859924938 164669625 890555561 666059858 800604992 376065578 521560182 926969339 28693902 903700343 353730687 882398188 506787353 77729207 657993474 830245417 997227923 320350884 216418559 981013132 339667029 768204484 640769632 783904640 656844718 303949652 784642762 799702481 504928138 767179439 649464195 392558005 860128085 582477111 952564609 7323584 820395399 4270063 402359978 940846581 489490170 145493194 138923223 94290734 933328733 848125894 84028587 914559473 573146856 937634495 907429458 657198283 963931532 661382522 511676019 544726102 902266633 479167337 841255918 849577431 986741385 953164055 639931196 957065267 969248286 281581888 827445978 256826382 182121738 656673787 21480557 953889531 913858689 418258528 904021277 831361393 734810791 330244900 270871816 970253940 751339057 271615076 902235700 427958912 249541849 746235389 780374487 723908997 445658412 834911794 959379489 216254623 899549515 771664864 897739236 824934188 247490939 194641528 470630592 790540232 734076215 709474460 954331573 701349021 82935979 763798128 844518140 139940884 779741671 251426838 779821144 969288935 590494078 845462984 291405204 407228185 774962698 998716586 758468962 786883872 962713946 922557141 502626989 718494047 208882875 160735980 13934886 791342056 843365281 297862575 104097915 279029177 829588851 990045103 256467497 443164407 964486880 942094587 790893968 782488595 956013215 857270812 15481181 915596619 786457335 774569477 427991821 538873797 758111565 275002565 893280897 114909083 851733320 308162053 913215326 996902973 760764515 175206342 880894771 838235230 877592584 605921726 887736271 196006887 987891958 959756041 686337703 899475060 890091023 921001553 913110646 793593907 431467678 10641792 96524337 266602361 51288839 806090706 559443007 917982537 772871942 863052402 841347107 828112212 397522691 64665905 891189667 589834821 314147761 551793945 740083696 916280280 657970357 314180716 712785341 319240687 350860056 816277460 496274927 112968649 754449742 667126230 686708501 573225794 926894336 535689592 969014678 826880859 611599644 859394562 877569783 321890902 856268794 162283045 951789208 782986255 794662149 756415329 297984375 949668574 347564762 858568905 861169451 533669438 974666860 971006606 715316063 489699367 745644856 633273938 315921428 972950984 856687520 980364265 849677315 225833255 750795158 410556031 911477780 944116286 256946774 641075275 745028467 209019589 843031139 844415267 742346078 979972254 168085695 350667896 998999130 251013716 933364450 858664427 865427322 763531367 942546511 378102436 723839093 709893517 8432565 171728833 807713209 798828621 838366760 321423048 920763268 905139907 582530106 975405152 84642408 306841331 887202222 892884035 864861101 756624805 56353602 509179961 147313005 785716189 716219305 539783248 217883239 995983358 526423500 650343586 899312613 132706978 923027916 853130788 276276729 969870351 549938880 280987257 13216158 597149219 196934859 341239374 155289473 771513361 776264114 756886094 169135722 296290771 21247676 771526319 825147369 645927248 273878678 760455637 825352209 556982705 647331411 843774026 878997579 707102598 980892066 127612317 977116134 707390414 184164476 847852647 507731560 737020247 9032088 568722615 947658481 351633120 479121180 436981366 907665892 828160113 776967704 729563816 998502670 301227646 540748039 384740361 474206635 534145824 68733777 626906446 232548161 779781698 990576160 512260507 830080040 419526149 814216901 929847341 528213813 932925436 114356061 944187632 977620516 962606400 327850233 725656541 805586408 576608743 979809011 134951334 841197357 746471816 482440278 237619811 595542785 986540627 649618102 881342590 924535487 773314420 889395226 85980385 184679980 876275170 762835510 234481859 737020247 791807034 286115283 207936682 935273735 216856917 613223809 528945176 807913366 75930926 351977441 950918105 971063878 79613795 915872740 760670467 918765744 391894496 122167777 450265274 146096733 753791865 117212447 819068292 974497061 406373751 830056072 883470053 922423959 278432149 151095365 183455916 460138466 357318939 768492710 961750358 958076376 688536305 873158834 816718453 550769438 755740600 139824876 37583239 830486454 951897738 974199829 420884587 944268940 826310228 790712894 974935129 249036295 361507122 241776918 310551176 165713177 899271157 368266941 810625790 889702462 368013825 777276918 806192682 915860372 618491898 352746100 929072929 23529184 767917797 140500693 209480150 733717149 862053931 86443102 920291854 300568668 870144544 170973920 815530774 312800566 381825277 786929894 301910744 113326873 374077741 769258448 351176765 761697967 846672730 446186385 301735688 999502808 638072573 641591665 820080743 737587521 608260457 997689019 935028765 105968808 824866135 654438175 917092245 104866520 994932898 602717873 925254428 881592364 772947427 784615666 594224478 823550573 278645811 419259586 411788478 358789656 275761477 911215206 920542208 991871221 106693499 707892135 941522068 77145177 793938940 779583131 781043037 383460206 652279577 75279021 465507832 796619375 320835139 966744343 494340368 342538094 923365522 255131447 901515773 24485781 124550162 34830963 912630806 463211779 759212123 174301040 239198091 609658459 708894673 305096905 760558533 17265081 789790940 922887342 220752595 739125051 947254426 65900778 964644191 369321669 732830287 102834716 872005888 890999428 490027118 957832972 512030526 624138251 699710024 445081828 517244545 829470375 117106583 898265721 474801554 394360854 907467324 834289385 883909 265436974 559372873 742930316 750230756 134050890 327419989 889681930 605018933 992105620 806027536 4777300 123783389 824706834 471920917 230587317 172923758 804753494 380485463 740498535 376192220 458289709 799029842 780452429 990723618 787277034 141783394 981832157 462027584 765710589 930257837 301680591 66213516 963524857 754190812 357421291 577564198 911358112 216408034 56580105 759437798 831351633 792761655 619428560 660482559 899385959 162086533 940235990 816771828 92693929 960220881 563448583 829630914 665373432 554370577 879311962 272129789 953117983 789889192 893709785 776519847 974545449 267349929 769826679 649741745 814236990 627560797 760560969 832139281 888388142 343739884 898401739 904565285 240863998 335731779 789603971 309291056 700716185 806432050 913226910 778798286 497897209 977669809 986002360 353221952 174554760 166499910 569900734 455779830 393100092 996170048 965463841 845247753 657369894 500550628 298906327 933032903 840006554 797011501 852770569 916346528 40783527 534418098 720593585 267333419 877587677 498214756 769733445 426131832 815339063 905032906 640956557 358527212 659941422 961501015 972416464 110503464 894668474 883555804 603410497 85847017 540621608 869842262 998451950 65863862 451282348 37839212 956380050 934185189 769511223 988869602 528470683 798504749 797743784 777366320 902195923 995407009 75480677 882557072 233842980 862836188 776720124 255673797 588804209 137991652 820503211 929566544 604493764 516968816 549959543 148111747 781456005 888482235 809735849 355930812 953071887 12961789 542558363 136886617 718405500 926287598 694320902 913693433 774015555 158234982 859478068 146564175 823063175 262820917 643555415 221913094 991182450 396924473 811013609 443421000 56740243 299714711 908751433 903317334 902374794 15897475 867970590 6028900 906526661 913120807 344849343 725640981 756087181 48653976 922017303 383910727 743353253 941652554 251373843 163648973 84842105 708545023 974049117 704473173 998622260 873808679 544127244 447826150 36601142 634683997 883255906 813691123 376036893 657257765 820035859 749617180 751871027 927969437 821677008 840805160 483682099 345718426 962513590 751894777 870593476 759483803 945522491 234633568 845329557 949638552 145007121 242466162 757316592 808766441 610696504 825792248 224146287 765822125 817160074 396517511 19499046 360980212 53551861 699661788 778489611 999625634 838142895 958134819 746915383 780594160 689364657 530196627 980219989 290951484 775649544 833542639 161597086 934137329 891567108 4363685 961630034 807442645 953395908 114063482 985140634 849365216 840941479 123280642 864937958 846188265 925980098 802934833 942088128 965086429 68919960 884962266 297771151 423423112 846536126 774410259 957416532 934267067 287418421 13082695 537273385 921686681 815778039 910059982 243443713 886256767 490197985 151861109 538456417 3054229 792015314 344079883 894642495 679649415 900595620 977141698 776541142 124576394 582678259 769523201 936831988 89323035 521281037 92948745 774694615 836598032 421613482 871160256 87722243 937400247 987044275 239082161 891722025 908775273 833238491 925037687 787419278 826794698 818952193 326169488 890585804 752559156 742124185 153681163 657033237 764554452 832222103 744065551 974348142 848787174 760367212 261529412 401604962 940002719 241329134 14906265 147692707 995945383 813706561 558999757 974748650 3183859 848834473 223067724 474506938 823260412 183885662 9721779 645626152 814575293 915079908 860466737 534565549 899771107 430055515 369879484 383482678 374050509 922650772 53113549 422875484 929845137 781339008 344055349 490951918 770554330 511777199 307083854 625116957 225692104 406017457 998769541 779260219 856100978 811877933 792379330 76113575 143387147 851368511 788012298 800211688 870392879 974871670 383040449 418980639 858209050 42624388 838868632 30407851 565533286 683903040 705523908 761755863 236781840 986191655 812855662 460674675 105453771 971706180 888341299 380692983 968966522 191028036 527270080 155273177 548949270 651825259 136302419 606421720 813006172 212608029 321677637 488245033 71664519 697503906 914542214 751459339 652081588 549737233 885854045 750163577 949570330 372008630 924985082 289712160 257686277 807513133 643298258 191152097 839963121 876117650 37031325 829898505 193532986 899704105 831956761 253357166 779692132 822442139 896900103 568530610 751787930 505600033 780821215 757665020 969546098 97017939 870097324 736234342 193196736 862016520 915565068 321644354 37947452 605703595 277326720 336551471 93805394 806585633 833298792 984230960 756121673 379213303 77242776 385119257 783017993 989666357 267438484 410583664 593905183 909051023 911150751 425962087 640408013 981056453 967305354 415672276 39952565 816180870 578384995 349388838 552572360 889385954 438460265 555827678 948349557 848649718 737638608 486947360 749817125 768617920 906834492 449296224 904665682 599435590 743340663 176954068 930775975 104052364 769757638 273417420 842155869 770374217 839341496 772436129 889252588 176723351 128664506 813774814 943698098 533864111 87510630 827566503 952469083 332102534 679593918 982896736 963127106 803680936 890771259 863508231 213717377 583036577 818170248 608357834 394037059 15831021 921497590 784925249 410406351 946507193 844258894 955477918 806291508 939789633 346316711 211092993 710233846 99004768 958813558 20315677 763301695 343194145 332304111 990536881 740786607 609094388 884999144 804235362 930127373 324097579 804766252 254650566 310743485 987194984 85254583 311726985 614753155 605357272 868776983 542667183 869928254 30841543 838347921 97395733 955374357 825841988 806398971 982268924 453308457 158763491 797373843 947855929 776222620 926474743 821841708 610650562 185924349 742564599 382301516 745477656 309234011 292023546 786212156 533038 37050439 947250658 764369696 7999320 752270889 429476715 476673363 774827374 822266505 796387329 561445857 834430641 300586836 729363035 172335082 810583152 366905734 906607437 418588019 20982399 952515795 917576973 834413968 376046680 514805259 644451195 768630880 233216208 963059356 924052329 828989710 930735791 289038480 607128110 678948105 161644638 926647462 101014311 917549948 110535895 466181816 394550011 576884885 812065236 743580323 482494612 264550869 706751223 920367575 937189923 91029072 352672785 234707246 931126866 166657326 533581811 768463742 396050781 456464673 818969286 983695277 989940087 75407853 817084356 802435367 977846821 270910585 704439709 764396982 552469171 283984113 960633179 768498377 798186586 8860264 442615117 949947419 862559197 463279073 37844131 839882249 659461025 775008412 396765949 655248384 783408043 773609775 967670458 331050537 787261810 22194730 164894150 373748561 955644157 874763560 302362096 743179803 489149709 765413223 198020505 927440594 734752504 848863926 825111894 180349448 987649701 64412274 776446318 365156356 940111198 826693359 940742669 989700309 800866833 376403575 850785284 712464577 876887884 828740134 129902552 348568581 418358808 987747724 681428790 858702427 313858566 518201403 841152045 973931086 816477011 237649299 366761196 181104080 273421813 961071829 657098600 24616117 840217231 854354986 839476772 873986750 108968670 955423620 23502692 965081982 840403436 814758587 365794022 886779153 94306415 528993230 194697201 927313927 850203116 724965345 963570270 443957429 70139497 804176714 751626317 891907944 943091848 767380963 983268761 632173859 75490757 662348833 894167200 184153478 417253326 823010433 906355887 550783595 359959390 439946333 74718298 686191737 783896457 622138843 627455232 601905447 192131712 792010837 848495015 751651778 863103561 859391167 740015805 259805681 980017839 249832328 901392482 463588301 685191175 936850262 787285373 971028021 870631630 88785298 938282960 471276586 687556866 923851913 895344358 968614844 78845698 949808700 417544053 614044314 422751169 293587735 639802227 152416280 754307175 770588783 837899874 805847661 752349150 840567932 488688247 91098972 953501099 817839928 116888578 970352672 877329430 261720854 718834625 432570119 386774820 961392861 4062640 945452039 356592862 10903728 794746739 737020247 584521045 850631511 749918831 805034446 895028322 445516670 996608963 713290560 22895675 909458916 453481947 99750667 326521136 817814328 390727147 357760938 112780730 894756471 222211126 746724197 53551329 639967184 850631808 763887279 64310124 917073041 882083559 790902240 188786051 36924130 937693220 839323553 627600517 643915275 985786141 754308109 812571299 409470039 27663770 831807075 576896515 655552802 904997069 72257533 237883935 103903928 133338662 517117499 543564398 786546444 170461890 834989990 123392082 347520733 838822804 620686049 848947062 773610868 829263207 341594974 413058712 371333565 789230078 113025834 869419093 132927233 4912897 766607192 373669061 649850679 209937809 733847486 784203507 880767789 921049941 715849160 586423467 993019514 121669931 738007893 978233472 793917593 892624944 264390186 938298277 607417660 822992167 829396007 48943613 775372030 816629346 576685587 467568035 753202606 941229811 32713601 958098581 176931895 888535968 743447698 82990482 985922024 206034301 949013417 61853587 484688802 486194844 876688393 70489512 872799608 792698438 861533588 275587899 393407383 709209800 773326113 883264084 912221043 62442620 762629088 176919772 998323424 106515849 777031018 189135168 886147054 734613483 184768986 898564182 865150207 213228502 273330868 809301844 443528059 418622565 977259302 516084983 895482791 755950055 773755409 556767845 362296083 959476338 399484385 360655637 323027612 932507004 272489487 536401823 961145132 393404327 835686083 936328233 934356743 671907517 173777174 210800398 565376057 904102427 777605337 971538927 163100129 607835193 618291979 735313232 797715664 222535967 718970531 853094445 934697060 55608571 712076100 798408504 136094533 900843103 805788708 902926892 716649783 32526240 121085636 571650712 401525033 450229979 827955486 362994315 789273316 858690171 874315971 954939967 65340678 99673733 868322829 836407162 919929595 740921118 575009086 398475560 359080488 181129293 761851567 905767178 880163122 306094883 430382790 606837226 828107524 627701610 908888733 619155578 682100694 913428505 313285218 490170596 779813671 754038131 912877647 957105655 443802918 830475069 768366404 503235611 3485776 488684500 881221180 283758750 153387826 829943563 768370354 917524919 813976470 29922061 532821168 438366359 961998228 471018979 952302695 130752264 287911651 759054671 219626448 800805685 571308170 327220724 621405599 945107200 817225172 730906938 601990799 810748383 883414031 499362451 299829343 363703982 368519059 906259647 776202243 560230549 483586816 760418484 847353225 934726442 534957086 862366860 773463456 856104694 909629849 202962315 902371984 88297165 412686256 327824656 226379032 843266461 229790912 995802874 349086888 860172555 849871584 443009154 696062747 416057037 776723099 195910559 369314995 237598073 170651994 878848392 79240982 779622998 825071834 358467543 740695501 994955444 943474276 844928511 764603383 929242736 635742135 50073558 716684960 812268941 919713745 560628131 109460248 935238175 526182368 121815682 827231176 699634242 629289080 599107687 967920069 525347978 780148963 850145496 927044634 862116204 571078156 288910064 772264352 241530464 874135689 20698837 988484573 303926684 610094300 659772709 661988382 399456013 504025374 192432730 323684462 242261558 916052074 797203485 988900000 815993821 185695835 626287143 899059939 542608597 919322673 211813067 790389566 766214307 969576299 689334010 807498553 589476335 256160052 72220794 770378490 596428135 777442566 869159613 793621324 636016765 870907416 142189009 248039110 959129803 267295559 674944131 573578536 935234037 699131206 858977072 733295020 939811568 65337533 939360737 863014008 788219239 816221632 839066552 797009011 160529562 741260539 15116991 950953884 312174026 821388202 583271149 879694666 754774492 330824128 684616786 427536765 105506211 877180064 7469502 884779797 87597139 374105724 892599448 343590319 221582402 960992508 716435927 858941748 925847372 797681461 554102852 780777959 430195165 896621608 838764997 493504709 752860130 375554622 455449083 468033118 88342976 685233199 737610567 792465375 937946973 22037387 727325847 764904403 149777518 732747881 950054350 946241398 336668641 615622042 797516772 557164717 680849447 760814590 612704930 836608617 880175944 481814650 887337546 113352329 198435244 451750036 380786661 958043706 212775433 804628390 864866378 747842907 929318023 650921443 897503526 7246279 125616181 189899092 167868450 677252255 278502650 802163795 951812711 61928234 464839008 853100525 3848239 21983656 270430750 67780659 993508012 238978573 297251068 162477790 988343578 781997207 12791336 698218285 187988977 678339159 328635985 402680983 781782778 613330512 355018033 756304167 766547351 204185667 806263648 360776784 704462701 231540257 760390256 954951164 572563110 692695178 54401684 35514655 770917192 939111839 476870939 97644509 980399736 969763218 783885571 969438542 302099369 829117721 929636607 762323945 149509714 219251123 803690290 773446318 658261427 826736861 886821602 981821957 926238553 413675700 546818951 693623428 930042863 747128434 716284903 452920592 951996642 202751287 152590035 979416210 814447728 197207362 752805399 661275210 614404230 873249349 812737571 741620275 458670471 31197885 786839897 858711643 874123265 863785979 489425708 885524755 652515089 550414318 16366017 900094201 784604764 54680758 462764737 840616361 571213352 803728851 895723262 737020247 989791338 860347809 416278075 901785244 756681891 868224664 756900925 153908500 593761761 971237753 566816314 548056004 230416402 170262001 906937307 719015199 924937026 984800323 778506340 2993988 775574049 143166288 700675482 752236874 943393068 873658047 363525977 203790897 820433972 997769582 787068330 906781998 331203463 455938968 823302567 846863969 515441031 748902551 1701442 804391698 855774810 47361942 554329973 19896691 847991443 957208095 164870518 892991953 943374453 161708822 962892168 872340066 749546563 848787329 830794665 754274371 963944700 127597683 55424493 872679624 61141564 864782047 783419853 739220572 190121429 567982250 865379290 526129372 762450986 954822163 726959491 677730005 313428925 920631374 852830353 857133375 980865025 318329651 914140752 412949654 776192940 264629987 37769456 934895430 794156639 405811329 767705465 781840121 538457008 810214963 430455755 795461347 979091529 923519279 975978834 167592052 31256422 525546844 118705316 607696675 868730557 736264649 788767485 987127248 965664004 463441652 605391258 696827176 628672561 381986892 670208989 651470902 949073078 380597611 372602843 427150664 863334784 462567868 999128809 262241994 990390412 457631174 214426006 973336524 246144776 284511013 162013527 767166229 800602419 480698506 975502474 949523023 347509367 869869500 653516588 901532060 737020247 767571254 282014584 938712117 207215774 881398218 767972584 431341950 158153964 972817076 845216618 864030602 298706979 975057282 977320960 900763126 240080074 421210034 738127473 40697816 779019380 933813282 299580181 845928655 257483974 65884232 850479938 902978149 856178901 772133944 120408749 273523991 907098097 13567581 794991775 944319114 957612547 13517170 982792531 927194998 620219353 668447948 72974240 428836587 918676914 430426878 749578015 171765775 807226977 90924338 945758088 715275385 799930703 374463456 135500960 724744590 4272688 876133696 276829259 693093577 504061210 968366301 582714211 684417942 737020247 751718611 933007388 998485139 875102383 836819439 752397747 750879659 234890839 143521422 19523520 922371522 509566812 533247073 410880889 808990632 114193927 587468040 915186404 168881360 929935351 420127319 37972040 765702722 975344789 296582611 511077214 373118604 682890797 786252859 798841148 636619696 296016698 752554015 879006544 642806408 11745307 908710474 876309519 515311648 247828633 51468942 449410370 159627833 765380171 645623398 837928173 877845997 435308633 161451634 702998966 148828771 787875901 761240735 152895273 649352601 878248158 260319493 914321544 957214857 213653553 70338960 52765506 744107242 959605375 449644285 919146769 365271268 573767465 328071654 695366837 190342097 820892424 175728794 167649419 126093563 900208720 933714071 660502582 935406664 201925361 495885535 682008124 473281781 757681138 350256361 823779729 856130399 797245116 748761346 664515502 174086869 759801432 502313017 832850577 850117528 406788270 767945030 345525032 74964827 739478629 742893128 453136191 415175443 933708010 939022683 481817691 865457491 965286140 805215264 251101688 506675401 133661939 51011706 99268049 998316370 88566412 514686541 813928999 478032002 808221460 978224878 813619278 935057125 369197165 945568782 493617867 862223073 737408495 25099782 864418249 791477409 785302890 924680527 545683025 886530141 917134430 982786885 304860159 928379640 901935164 18361934 847917114 737039995 366089618 271238687 287057658 821076894 172541764 780859452 768731350 221188673 734663236 60369491 453119868 296302449 548578462 661427745 971539632 597445594 784200341 942830862 993022218 305123062 921034379 523719082 989257937 552216625 42815032 974710827 994877298 457710176 810057306 908369569 927195501 743614160 966589739 992641144 798895902 229529069 963566270 463372491 816062672 238991090 951046733 833924406 121897140 944277164 18715241 561366197 936368775 858358718 739805733 881297792 539181482 929592279 799411282 847192859 807614905 918506349 755583309 873492046 550052583 366464389 360332528 353902136 698192622 948174483 237808294 897223376 853454637 877979695 19361413 831337043 240094221 178976962 947777226 943207720 193730032 993974048 754114244 223642269 632845509 383725059 164940057 500670196 858728614 79866751 753543333 861583152 440263153 145129034 505043320 839168317 906204193 554455598 834769055 936102380 894057827 913614436 963852162 767486402 150488143 544703117 409712797 748582738 838994112 815177866 747703914 93091499 181940546 796205940 72052704 884111067 556467058 321723780 98644388 318636182 869578239 615021820 150006601 907709386 912815559 540884226 737020247 838545753 976516673 938093306 821303789 269266368 749374588 884765023 846510797 999575524 991154093 809133096 648024986 431024193 633955952 864952485 166860377 776525869 718550996 128693969 748039081 684242960 772909885 747350640 616631900 958512373 987079027 365219333 581789075 119685818 827029270 351091607 791622379 922229284 54522868 893568375 899448048 580637753 355715274 740156693 397533811 196728495 792469235 35313801 339469380 784144590 931673190 632531888 653592293 721307555 986050323 649809330 448613773 242269758 441209339 846471795 580217548 768948782 930962344 4263152 864889195 946980328 614375680 683189007 703454823 304884051 510612825 989261496 444047978 755548123 590606430 591346309 79774398 391950124 888500902 272299092 616945376 795709134 911711847 24083030 739685802 556252420 213515564 528636144 855720820 516733955 794509616 755714889 118824537 976899482 761290451 830086900 347124693 629256589 979207919 839386206 781070053 976876473 909699475 883810861 770932557 698310958 335971331 643347170 839502765 615037975 970435167 898809093 770855257 373311867 291347980 410507599 442158465 436119137 937313787 766872964 531604975 505529724 471687847 737909382 962969411 257482846 755671061 34812077 848175725 18793780 978786311 457987773 911586884 943257013 642092159 943085706 945812153 561847364 764540078 945953926 123715246 780348795 650275743 315484849 965226451 525956086 293570542 250489111 990794432 171275518 996644523 805251562 393669306 563995257 953506893 746189389 973341907 911594970 853723190 903211780 434105310 894442308 725066257 908691542 858676 840762014 423527293 978119819 208519437 774911392 438927005 945013725 959009229 142111832 189825429 767316685 541772873 325356066 310583188 910620303 435074937 485621809 415360704 199467909 373747814 947151964 893282840 627026605 30102750 905432974 744308887 885947248 170802718 991039872 741419417 986574255 777843378 740004098 845206193 742893720 401174056 880131542 165065922 603692576 383621844 48064261 881394909 989178671 747806384 909861339 317825559 429151350 658754633 838310109 170102318 493079599 927925730 924593630 823469320 877264370 18959320 424969395 925733135 490520965 881135492 772635765 162106696 806553046 813847462 957017841 562684316 442851479 430955624 806009725 201159441 433285988 19790814 107244897 755442836 328338745 808600955 837780708 816338029 323194131 955969069 490505569 926998711 882025188 835596401 675074076 899633132 760656640 789893640 482925155 627883107 913435885 953255160 823504517 47734594 603140720 977659469 952439231 943764955 310138596 214682040 269584747 668904682 248379686 894122195 592129546 798010872 757318139 797637440 830054057 910323578 829707924 38635601 225526426 483084334 516102082 843217344 844099978 470456218 938047265 892551129 303915234 372854690 897479280 988845912 656021463 810793587 876908067 997902658 454336427 830357609 101177598 109437977 216348511 749779403 969880438 84501260 904121952 757052038 167301525 858380381 160719618 845484088 156061517 285442502 737995833 696197295 640108966 861688100 740429910 177238846 37611942 774116204 211686319 927560823 820268565 648151718 881668695 899607065 518125414 561035825 523500952 847057232 784909081 26034686 737037702 950243058 775884344 651894183 934464268 29150565 499656027 946638687 907445050 948081626 981204559 405680943 320630796 974246581 813604553 847295365 135512609 876273745 413541386 691124434 813977197 262597879 470880629 736414337 974256840 453748348 277234011 452009478 766181800 949173363 372462017 140023469 510360668 822626664 638550420 842803356 896370433 820553058 698622483 842698014 220797554 821308535 119613901 265386797 684327789 288437014 870163393 675150593 840342641 773695523 680372750 276109378 756152551 853487380 297347994 839304376 957051622 819947705 41716481 381485380 665020373 844132623 907189045 375278510 818534593 914871697 183388727 636061864 981993030 96928671 222683265 599574805 667885576 891177200 48244223 251490662 591961697 335205828 259401936 820647979 905609042 923085569 941519618 186777930 391602881 118087246 534581554 565128767 982620105 903436603 874069133 614308088 975388401 706319138 838494128 659286716 692085675 49340615 775216297 222274020 948881424 767522078 354335010 456619972 850117164 338111058 869750214 775425715 382866602 337209877 44850025 795645521 448917675 650650569 83830228 862006347 822444216 569977807 955977215 834508678 658127193 465621467 980388481 635918994 790287623 755954843 878356640 959493999 159156824 447312052 923722716 982309094 879491698 724907149 788886905 344472189 405359868 965524438 931845169 769564260 538464891 791024693 937188758 225707403 865378751 865411469 756035549 637528559 999032960 10908059 502514745 964646606 252697395 625028181 158587557 670619887 67919204 664137122 980919344 90948577 356563186 808812604 641136019 866975364 996073626 952508813 741703329 870080945 980833462 974497153 441106406 821163869 299311188 255102843 422845067 283064456 680162578 769522962 762052250 964279988 858757391 384786733 871529983 493122089 516288813 529484405 876184996 993414427 267789805 978311706 96579536 830182711 729827868 528883057 767314713 674691865 905751824 394437644 114492249 133559290 334274048 756042701 171687270 971618928 903600949 364842666 755618182 226644479 536052879 438923485 429466619 832567623 186816196 757933319 666023029 688129818 866842078 746454850 968376051 842836306 84202815 943462960 704345410 936609691 915703299 424146168 155517828 966177473 951364768 314644246 687318531 158402994 721751081 62041693 864300717 744545141 587990261 780848945 436284158 671308866 974804851 943892039 982170370 449814499 827643806 924023129 791630334 394444184 237824550 212315327 296503181 513552997 922545340 969407623 864685795 284256027 94048406 480956077 64254623 881694727 869977014 958086803 701522947 160356904 719552451 444392186 457519006 817363544 236051421 537005744 356232185 862778970 776241021 767387601 640330933 88262740 477500380 860805441 891289620 466214874 757169814 849850526 986364365 992811137 773033674 206411397 378811286 874415296 530779583 808539107 920159166 948271935 139583124 286100618 895913096 792311566 251277753 956096641 553333753 145745244 387886754 273291579 612112984 751566105 82019251 10503753 471319029 793930509 449145368 482332685 914592576 861096585 193723892 637985178 330624238 604844786 540738355 767229223 947196851 179423667 142965207 719387400 793405095 940520697 228131416 351682121 763127219 548974354 430645842 320973422 512370074 956211528 805100790 746007014 501750874 866186918 415307230 990309435 7425150 670688247 203836708 451134488 193250299 238482878 295004069 815745642 281738187 683497897 961627417 960816886 572583600 98140740 827565751 722397821 935719077 533871185 879742833 907701777 373190144 652775866 594334472 864612726 896754837 868688913 889628994 753676180 221940090 773297655 673780348 100414943 830722843 862128105 158998224 154261702 391831267 183031131 962236353 797506050 786865250 937778478 940116840 273412779 909649477 994154787 907565472 931210673 510320372 919827561 507236615 942809895 855131569 526576118 634834246 936839362 855078704 855636821 107575926 970452863 98974012 662673598 799215720 757778903 110793310 374996582 742358721 22002427 950889520 980353485 856207748 689581924 963362884 886525990 547627822 662247265 105857049 804342604 938280054 409007063 915911011 662568420 978639712 165424858 195490852 48818631 424070012 104911280 35551361 910688369 393502777 878439167 159833740 598218402 986233608 272556995 227071045 383683808 236820457 980574778 584030642 753579149 767124204 842462974 936724042 930317539 350385821 856493947 351694657 890467751 614028533 770296215 991090865 731364992 959288442 892556961 691110567 971612717 964977983 330751773 967401247 806585492 495821847 81491492 773100560 185821614 863291333 283940823 314037834 490103513 594366612 626270933 193659457 3086228 972626662 193551241 570556997 980378417 31890606 895752955 726582035 957551223 405577646 865452486 809085525 876934325 361658182 520200389 972499819 658693843 941131516 803110378 783717538 51865125 901678790 414354400 604929715 61485543 710472034 891614242 574586093 433735299 634392380 935702599 55485346 493031410 826343241 64132837 101454547 288568895 805053122 915197886 811103040 459130323 805778225 185927658 343689670 711611984 177786221 448708061 841665396 123763762 950121336 991036783 826280218 461578386 739154263 888566399 932528686 66499372 916855597 682904095 921566550 825033705 759451459 12301366 309097755 529776491 915550624 248174930 413934838 786947312 846638817 404314268 898086008 817696277 868606096 266661747 98476355 842930811 772279113 929243362 578047249 880269889 607983627 683972659 751325662 282365101 920615011 840764447 755059076 680277602 806941115 894836228 761373610 36894836 890598429 998174274 804977608 860796735 811796784 900723315 635103717 454932597 940403374 444689409 453551316 737574025 967063454 887356118 291110019 913568890 972226002 820095928 962681119 748886235 811763543 515829490 665569469 500240581 16921215 595782214 745361791 906720443 781246680 437197999 362028848 521536408 920083518 570244129 154526699 55894591 429863296 840894872 179630041 921870483 443200371 162214635 257364177 702071469 605478066 862925970 933337896 934098376 563502752 962688497 540745457 997431452 903332147 953738755 978991957 491955205 753554704 990737567 929488670 647754443 629908303 588083574 975408843 459812141 897961483 803969391 680141641 652253261 890702402 293595395 587812733 786548091 198690144 971197049 533937229 585427224 827402281 127583384 469085232 979888920 852808395 998653701 226723296 97795131 322641847 665437532 428388038 106842170 148254609 954626987 991646049 985719578 763781288 298240285 977881540 482604894 323030748 502445764 624686513 76840827 727184072 779728312 257254692 800027880 997693879 376314894 351279124 908605223 855801054 790551196 951996058 766817635 979752299 264128904 905763144 972060354 326917238 817047792 431587452 516990419 502055865 641157133 770028246 345293722 582065891 863202261 711284464 739772066 510617166 129021283 586267714 141310814 791208229 151000746 68640733 378176904 466880632 222911389 816252578 695848564 121843107 113945916 648019149 631419733 822499502 489772351 518266805 452717526 886028119 836000589 975410097 939321142 770814749 914372443 359043763 234365107 826749311 294707416 897136259 799177051 351000840 403443966 784931391 864674425 794520778 896513090 236469261 820423451 762137467 247148246 765574046 113264656 790369986 695532289 114953216 497995850 883818524 961190242 669311025 146533168 828965952 919259847 636134156 315604225 172226145 951514526 672217848 586841810 183767323 549594310 898024067 265401312 938500110 489291510 962216113 902755323 430447261 121430907 862258564 835437889 578717132 886417764 410193160 484231037 883798872 877365794 663107128 526578225 956046915 942785275 992952196 658275248 998525150 876790870 902915413 338579741 848149873 825074696 858098690 388299778 406882776 938592985 115137847 944102593 863019155 893295126 223263229 844704789 689638139 27889510 669270878 164863893 962058041 833672680 933990589 162340473 807702636 768451364 773896543 315780480 419184110 769102558 986088594 2622189 186783533 849241208 907451023 762824026 344701373 336328407 750707811 775227619 4523713 642738559 179507773 176360202 642892680 833753846 495029339 975774616 763271960 342737571 538782926 531350459 898827297 407864207 425078354 17407170 438927878 713137377 860314361 797601169 458697527 117011963 732752715 909451870 108703389 673247648 239196345 36476701 212997149 62332542 712104388 483348834 378019828 205005318 897758704 298521357 167617169 980912767 828122616 840605984 177915364 932388078 339479049 302716321 916284356 831592999 846345121 166599025 161577079 248545862 737265347 829958443 784967717 442960584 778938736 851253336 29697655 799367335 216984065 204016839 865789618 705907224 838423866 713177889 496406125 245299036 814452936 234126992 968763866 877684458 815099097 824915951 841439584 661206636 773599322 781417789 138995706 798755243 355776650 563166176 983152820 867753229 807402364 980891810 894101752 528978430 510071667 423288794 526240056 823573215 947289451 552141998 509831140 179970173 968075219 934112706 768110317 990005974 606551727 79566794 504182676 746586995 705902305 833531204 955852468 200401553 899154514 211662804 811082264 934082253 830677784 265366734 907340488 934336677 338715535 866366433 395457390 814607633 286179129 759644378 788626196 61917534 862186980 23307116 811523413 917443257 961718807 962567905 761386672 528728309 700116075 881650028 981629355 577489173 467447499 617268047 958604848 584430413 356775016 968242825 791132736 661619513 372063020 630744881 582072053 788021722 768625573 200466980 77088635 675446742 609509556 63397323 997972099 904104230 470713689 64620754 755422175 683027876 968354668 508690212 768543407 257982923 662833451 86195147 454336690 517240734 792366751 470238221 956475768 748444838 865980833 346747489 209490923 774301115 275822797 478163812 53486898 834693511 804930805 526178924 739006348 974568615 344759255 91352823 91876621 265816084 817928006 591845414 70332009 137240233 188815062 747170867 220101548 928230864 711557895 119555493 637249572 805857024 855302933 732417682 768816754 583490818 850173732 789482628 299863026 879398506 762311009 862495451 99935992 777329875 567653233 750573325 17013071 687311859 878347230 276835948 793481933 824999966 421345946 71745836 769058255 959234207 318432600 886759500 783602408 728942316 748238382 870524539 812192747 776015001 846528711 33667699 754783073 845966665 955743654 258506468 98734078 591623083 698857356 712120787 406198508 991557601 707878613 587441497 798463606 234365551 114950384 481843206 786539050 39250160 595911066 678369874 411240824 777972639 799247224 914805578 105792669 869894917 306993334 192180433 785014874 910302485 572296892 787924135 920934813 630560424 153863124 817947826 904295620 966968749 960555780 131175618 958324412 459878755 885543694 969701916 990357948 917771916 944289405 955788824 965904667 32510036 673141962 251670740 779527004 860905276 777105258 875721036 797620144 727111993 815997843 809802697 685452263 994360573 382930128 890557414 593337105 734563897 758530988 976505690 884977018 930602244 32522055 271185690 491531303 739642575 748035095 945703250 226605399 875489404 902169927 814127097 753483421 964194990 208997420 502508996 985969194 890935782 784549028 426713110 244005543 321026930 277626121 210560282 857221288 706696976 909001042 800942700 833756669 778454256 486897044 408387238 612801989 785093448 765803822 238723641 397005402 990647582 81459110 819899596 7592435 601402945 265754223 903220060 262214801 911923316 877987255 557249024 942104091 882774431 903254748 469240702 79529116 650235331 854078306 676178099 906150521 763934791 963583872 936638578 900829394 641524678 859929143 789053795 785309600 641593162 779338961 613485638 623473284 273028114 250751657 463143803 879765589 333619618 580369227 860637642 543613495 920241810 782101599 977870545 885023567 383341251 857342597 310549506 335500104 858859238 871311286 853772910 868977116 310279417 124440969 771722826 829767261 963576202 47607177 241147999 154628188 972973357 874684037 808347664 981830738 900106651 615427400 120251873 272859106 507354237 392243354 257922903 119999309 955546257 483598360 810817658 877172449 904278184 256891588 766348566 725793956 407618200 776807703 106198999 820920489 921678925 617240195 41023300 205155241 391316929 978463431 399744547 188481734 195804412 842189014 772252805 898597921 959631401 882772065 778391929 934610037 924490175 847307110 740999004 400038774 209364535 911617623 370398964 783415135 873223907 859196012 776640517 870655291 770538299 377908339 247511240 992337920 385201750 999079803 998846301 909809467 750791153 154901112 551970002 809582170 998823399 932420323 574044062 796223572 285902057 446637029 491807053 399643014 608042899 194129794 842270136 489953024 819141380 577768887 150232466 416521977 837017990 871433026 277049200 791792262 260518366 958876157 384769563 336367788 834825166 535141680 487715642 772947551 815922114 714401682 290917234 707616602 900115991 555768435 855201901 531099179 752093308 864879267 798444167 801370321 626646364 307244425 583322288 819551230 92013545 979382119 662221286 82078852 776804252 950510364 231057254 344896772 833834585 687875891 366947758 801108924 192616536 365301967 964863371 800572141 57454004 814768392 828309619 959676179 333338531 456244098 274339686 88658817 957405947 243005531 918513969 115937213 842603465 548583447 217095598 852940476 846485159 968699380 405451845 27339896 910398346 845254436 333986753 37304831 677211602 981651944 933353990 992375193 763609760 73616411 878511411 251776881 883814406 498151188 753903626 313386812 291181504 613338917 958629079 878305209 223871391 216678473 908254743 756885939 919380179 869252824 120172607 313684425 911348751 797035130 982486282 117830603 755671496 700647003 901965739 925980348 587044612 154194312 850140059 985795459 947867087 220723082 241528860 539643195 814172561 485768215 813608862 805510270 965479101 228799641 404473025 863398536 1422794 184961990 591895195 887439059 325623099 809395875 757633555 255709792 124917942 867031360 475582095 876663339 984843156 554152237 118540987 635572436 808512221 673915799 502056997 189571579 706286628 820542888 244122567 740136452 137369480 877348437 935339283 448545406 223858506 709539314 801765188 671079793 671248835 560076536 291873575 959620773 835761275 611163952 48337798 991548612 398349985 338146430 328848141 51831049 816650394 823529062 772982654 597947803 906144615 660414784 87209150 25190302 744932113 908285694 371492741 124452134 848261711 996107710 498445208 266095769 580714278 947860715 652295981 849103226 200160054 114140199 580091828 341356651 833051082 933910513 46191884 921577685 481133402 941384353 26420899 950359229 974087031 661634124 774292582 236029426 491069177 338035181 991979248 284352499 865248583 842878485 85841482 106033507 586349729 953989091 283095642 878802050 783070134 756252174 29725261 276422325 524325201 759415018 834124934 203999391 83887434 48721143 758471869 938984042 481190835 960432164 583645165 790423064 904391913 455429875 109715235 37602096 236406236 953126291 960121826 643990952 395780393 699467621 769825445 570651969 632422493 448469612 837004857 667734609 801792674 136259958 975457398 914730474 869028872 506182684 720335989 387194427 686393183 748784160 870428214 916829395 772748844 963540006 940249296 746880743 769007144 355234391 608825437 993976022 903995081 406003255 962710485 841328027 903643290 779479260 853586825 846040280 600927576 568628916 815665743 945310497 862192360 712444889 230253306 783723212 18967271 5081738 569608113 721012609 903802306 751708210 57656380 930288007 503424045 909180577 872773669 420519913 957116376 597319889 872661912 904055687 860634216 168159101 181578931 908546043 136149286 258401266 308054708 829427426 552568544 522861943 965743773 4186772 119974773 359022790 794011615 39264632 749032108 741983459 947143843 81568780 203311591 564882927 828020491 803459204 457574008 790428143 910369077 922721920 505917936 741513163 813039194 69601189 800420205 30145483 624836663 933375268 927971426 929488970 860433595 811378968 179144161 465629105 612956265 760764265 41066062 636765997 414627580 781288280 996789517 241137244 704462689 456341386 696928789 520966236 710084280 910398204 427256711 191273141 240903836 434798563 158872094 812977120 847114895 86645543 821743925 412054961 60652192 819036195 15995006 22358541 47030922 863193422 87397832 784438480 1621282 927721633 586252488 18222024 487601932 315675746 849466118 856696974 797228787 615976434 819767630 975289002 959521418 286792963 443716458 909242621 737020247 499324566 860907743 503403054 533545604 801102097 176158477 914945071 899135557 963574672 163036932 760438084 868066076 863657450 881314248 989240500 715254215 728863488 965058190 939721872 967649712 470137777 815866888 375502684 897107673 619879756 652623202 74132710 686041961 743334181 505027745 171934903 960699737 983774702 923412338 783177154 957339634 980847898 399959141 389418210 835883823 723464699 990556563 415126406 845185241 728623650 20008353 217841648 887746814 605648321 504834793 831594163 184533467 915072477 931633759 983056226 498669202 274226062 215176666 739137239 18511212 494870859 768540752 787411172 694195830 397984760 473559407 913671745 139279674 142879966 889779198 694772239 885516197 530980228 778892883 345875177 890048579 175747476 872238254 360949583 292828920 880284327 574043681 248127022 387871200 908160294 793491834 573702746 405778767 853325843 765977398 975598197 920012992 881498516 137089391 879736280 512303414 746052869 443457547 940203534 769000078 727976677 949598922 817166019 816260742 981334263 522079060 879579773 58362705 546394022 762981569 803817574 991216260 328016787 274066499 892960105 112426755 351748969 800915467 795703178 896012603 758529964 406700 733479082 504112883 955686924 542690954 859583177 548025247 802944968 884408906 657968571 962864674 98212623 955459331 982844718 329493132 349375100 66968271 808763250 988973306 659549245 680186790 402236032 976615709 433540151 208336916 756540482 933349278 595107695 859642090 183501857 213868084 541725610 739458480 296429599 805680613 234801305 771410740 117782661 622494837 483793000 151048549 865723906 117503642 937243011 750640536 935286585 119914337 972508598 329857181 716910441 939789216 414352371 918339462 944283896 342769402 973095415 713972751 150385726 949114032 788718060 754834844 576089786 247221040 995649643 865999950 965111420 395701484 286136477 974757969 576128284 150050598 133012391 421522900 961879033 561558679 740433874 898612189 990492064 405070546 582158836 745244636 732018219 483828479 954078631 315325661 895603813 920490177 213680891 62651535 761554066 337324817 103037951 476454361 115882200 408456805 756622337 127292328 548006390 652008161 323128699 738883864 918113492 272588055 892274103 912679746 970827802 49247283 988839600 89014560 785735943 669973717 674218267 940274181 637417486 993489032 77072334 740724620 861597290 897476823 894884371 877725219 831170891 464882378 874650192 448217181 748637906 30690124 482091776 130716971 880034842 971902898 762813927 535797027 390771302 507034055 374829319 549081964 859719911 520868827 662919127 670589058 555811066 43790410 956512449 931508974 584737540 764682502 964595730 974794357 205988978 930861740 549238686 897567415 881114018 487656541 72658609 960876784 811102859 346865442 579069359 287780640 901912414 863731470 389325763 105367361 505265607 954934044 999108340 128213887 48364722 113435448 200319360 25971634 117632886 132722752 925145199 917841675 808707265 588997639 312927910 382140877 997361928 945946744 500234074 728442320 98470920 988222652 439054321 495400043 867071687 860301425 762175540 918157466 154692410 947484766 937851781 543568581 852088874 991238842 581090381 949452937 97641646 925871032 247249736 946475824 770038013 116121323 935565377 858811330 943105032 855033486 865319453 966856289 935307866 615065863 328685556 940929978 175059014 372206529 40266175 602731790 506938912 756418237 705073603 993578974 171474443 967934374 889576134 858850476 3545874 276092616 867227487 815470992 929988360 433351088 792781898 736752140 992461310 440288065 147464130 927670830 450686976 693050307 12648353 851965857 523733357 270289874 972421384 750084327 980911774 877546578 469253028 79179873 945740662 816049770 825073140 340349750 526343820 921878448 361463572 722357742 622967787 966868016 552018445 792713976 454681326 96945411 987328610 872959053 442890962 437480052 877695837 617992917 480030745 715882367 833492070 730995152 298758115 807524020 198480719 131724976 403843483 378375395 879225176 138126986 544721814 849108656 918660976 101132466 692859322 355385690 979874192 996336059 988249395 959222491 984113254 741547675 770294810 786757558 635811133 589315685 598734389 651900412 93191922 867756403 326462062 268301716 552786996 893723940 203842208 204280188 722779396 588132940 310718414 449478281 76080710 601783854 940962853 554408914 329381569 210695435 917762311 313934234 868519275 572789337 944219937 205314916 854476555 220819552 59114685 478007820 536700709 36634104 181352252 878024815 326109390 909171149 833723282 981315602 943378928 774899402 497063430 818654251 312540200 834583836 360062852 178037559 836089583 15620588 958893914 367298186 766810137 935784219 308718943 372217219 864911325 987649389 153409124 593297330 492754860 761428451 815683037 485819108 417371338 703953173 896553598 884825026 431893283 768016913 122850502 738738135 976549812 977997640 801199403 201179072 839329367 170461176 333412419 248138178 868201443 670481967 936784268 358292553 827595369 990008945 839747274 379607990 949253599 170430423 856810905 990816660 210511715 928182430 545294928 787835604 781602180 119303103 700283638 719784611 841566753 563360678 614064946 397463233 489590884 299808827 781491606 483623044 544526784 937190187 167973505 714439076 908530625 44917328 888223994 209506222 967109150 422545117 903835320 166440462 400621886 784486295 847722161 745245239 54918187 929635819 824917601 874372435 75139077 794027873 741128290 467835356 907967041 389918470 702798036 833139479 844687394 880221366 476574515 379923737 964473231 856291553 25310833 78014668 182649648 860884869 441816407 318452366 28084066 947207172 783268543 781693667 276231458 946337991 932287440 655344619 744870613 29118156 831264702 678261319 220034230 774341877 901447552 358217659 949613346 790948152 48449306 920573316 328999609 755973161 485438552 278741491 258419827 540186491 757067076 871844212 178552942 969054340 338780667 918112451 86820596 262529300 960389199 788463683 826134806 832956701 370734474 906542042 98346844 446755957 965785349 913305556 923037768 81413496 946247442 507207523 990174062 791271575 557054273 339303226 809583229 758824744 209895756 830186814 430845030 765943813 981529550 512706416 16586990 840465185 218262863 389779861 918668417 817008345 167774302 760139352 743433347 349269597 457106624 715080205 793910394 827261742 276669125 995386552 853621446 535915692 855180834 194491965 419054390 879679660 870984171 739264767 666215362 597119940 889846687 105768453 133621862 664071207 791722385 965230259 887666915 353195005 913206145 703804864 894022647 883450553 914703982 838987273 52272709 927199208 536650465 42229148 182672660 267422517 830950007 951947730 861278947 875495341 802606974 654848295 427652522 289880881 996701686 978444413 569729529 802420296 789313293 814505125 765354401 813539422 480532797 247851335 509201978 352856762 333687477 737825088 904084654 900540476 471835075 830732523 795228280 141074555 346188401 38647524 769472207 945916013 553642924 424545783 390996760 450725863 563585182 815026332 784858420 751079554 742283661 397586322 905362104 779658209 710042765 883624972 784205145 573951808 983950705 58418763 271640174 448837461 829172008 418106663 821892671 770906912 776990495 729911222 262358765 312826452 249291367 910764948 541623565 191449840 81032444 938085652 769946672 823081312 750218357 951318938 328706060 712262048 111294514 797539170 866494496 442099372 822037112 922888658 822776882 883545242 115466737 958289891 983172012 477253904 804194234 155573385 220007837 807593797 147442051 523726673 11709367 542698402 253666356 865446608 764694639 608819964 287236975 871654703 871533831 785939594 233969550 245516840 958414104 251757146 190800331 888511606 753931887 673410996 657371685 886656296 578990888 979114374 878010682 260114205 181583380 336277211 750040077 845915498 5842720 976719317 602366589 959181524 867894383 552731240 747492610 804400537 553198508 51120574 435376908 904151955 997779479 389900321 112661877 720014486 451856390 346151908 218306553 739123617 864085371 676567778 270346505 529370516 875493757 443574875 333832040 144036379 912464514 816088454 642523751 287656984 400473307 890532169 756144768 877022411 832379115 737020247 776870178 212653682 998158525 298167026 842536886 927420518 21251479 934013183 721777388 876895441 387540626 564446882 359907237 747038280 892837332 947605952 432213243 833046433 947953590 739202256 924347184 876243932 751600539 633237072 913617327 712158094 753072776 750482616 500285263 901230199 829152112 708657121 590946602 822743816 893922023 892456712 547695789 521650040 386182993 752761909 834313096 226204409 776012954 796873146 647127043 127470779 993589986 914070193 970448295 823536533 981014747 74438230 31811837 794801592 438783039 840596663 789490370 865162381 101560645 980150545 811943702 757140402 767383081 266798107 410862205 954719889 804821499 53904341 342793441 981871663 720633882 325675486 456622784 287478585 209622991 715505687 327801731 260534210 812174243 388557914 752892368 312450725 452972232 745048640 790548982 170874104 803036700 858305574 751625148 912494564 850332839 737868017 470541161 580211691 420491434 778994035 803994668 861302919 512542755 616366449 52645207 885007360 849062287 842845810 528818910 269690951 478259680 883944987 9010171 744971498 379037313 907834773 869925898 762156907 124817058 924345289 980281332 793132764 903924551 577383822 185182733 571139531 475250659 696430411 646656505 516387238 806305517 291465471 19647122 429680626 878744411 815661938 964929109 397484009 813451941 441990825 271598041 753681007 364300792 532123162 809067460 52269105 810582971 737477177 778201680 851768800 339801525 230724601 958834699 466792012 216639501 865700488 959334235 304303481 880487245 713927876 791919710 929607650 744788660 908360641 896655471 767083405 906677840 389341940 934435914 504624734 758156043 75679909 938171162 302732714 751948215 959219495 707300271 124936078 209312708 929073784 910532889 341923671 312072173 947886018 642900178 902042428 303005072 951614361 862312799 908444590 818081336 950266299 168595653 217342280 791846427 753331335 863762852 357102805 927197308 707299594 485484374 901255095 288240226 771673895 923087883 113908613 91673110 326489281 49586766 877039624 918750291 840143658 952766991 902787715 828268303 51265080 811490847 455396893 159410922 434041472 881567863 381570661 592837949 101882075 997076379 532040475 241116640 47395795 911062061 728380007 248595057 986074787 63589700 878685627 866501114 830982045 681385760 504441785 962804950 76601128 750332933 869485185 247690200 525896415 748095990 782080577 431194846 364063898 150287228 860120942 102413169 45629716 900804883 136074870 953765877 754160306 784023819 956143466 244628534 862113762 780936215 568848519 272320796 191138032 629666554 266672864 968087332 384136972 980445956 371957684 519701266 273842634 853233183 974208559 522380550 313997517 177883120 848748383 884258614 851426629 904381363 932673260 514242292 46038591 853455638 853931077 861789073 801477299 942595821 12076226 512092698 951525441 916629442 580618396 58019959 802250950 968865765 850372527 138081797 99733706 790136749 743854010 67354348 733842083 399391229 857365928 820479570 660734106 146148983 308758409 756020623 769579776 860337787 565969616 889051768 874982928 740590125 345726048 990959139 844853142 41852625 453465164 864464133 773232944 763835332 819540707 121123147 833139642 394234475 434150984 722322088 988736974 220007471 943621850 479400705 530142160 436081966 239751418 658643359 967134716 839779547 269416321 167376246 819688158 823958782 306970518 236534767 740603680 946785297 132371351 827118921 863974254 993680468 964770780 977262823 224366051 820772537 291576699 525938131 305220462 810092695 819003757 838037629 990141433 597425376 299110684 557407782 738323377 983301882 751426145 803327246 890463116 710437681 13848515 943844763 939956952 856945724 898524407 901783836 128455123 674013509 768948397 181662240 673714212 725898021 531886906 13280977 428979168 813539598 343829504 896429498 800154686 910084572 837114731 830528589 903246073 102490400 530051584 473998289 812314339 329734731 765406769 716564288 630179182 601060434 350003746 969079315 762556838 417510534 560888724 908621512 905809934 774022468 838625383 756373853 518960535 500882308 210448606 759076100 532376498 412150506 926219121 243638357 27132655 951364394 468017921 922374734 710076263 253692160 763765984 260978341 910869042 518341942 608211838 133806573 418688699 100491450 870233758 897191363 254020021 564496963 703301164 144292483 467763429 785062215 838993670 123415895 52632623 738155356 319704165 283456995 910801673 414473037 228355711 909523146 345037811 211314419 297012711 757434540 806785525 674228035 962992519 355152402 543351460 829687230 771235558 68136072 301833408 293855187 333985894 396938073 947444917 800557124 545270241 909233930 291798220 434189091 869278442 737911958 160694257 190283463 494255868 588325107 510945422 694840276 535763929 804219972 248142878 413994169 192311421 722731667 818453989 879295904 484889430 81995363 146595498 931030965 231203301 769613176 804219393 514868018 780985111 985213630 204580583 727828014 853431211 80658754 651538473 997568406 732652998 849807340 946026927 843014095 867486955 879018108 824066971 951997917 924093290 548927488 242461600 501880102 433422761 922389807 583244566 877921038 777829150 222012940 862767543 125935610 278925554 889668000 701089990 465971175 364697501 98775036 656784653 584872533 866925985 862416878 875800256 777680016 927900247 314627388 417258982 915591419 991652968 971129002 447792973 129028757 931962031 638054947 760824452 164737632 896498356 885416845 671799613 769216567 902884358 718057558 985067403 856289053 322831071 752963163 870298127 935558497 551017300 218286455 938052339 941974159 798837289 853229484 972716282 18599326 786624896 549361177 419850623 116244578 938855787 352433957 78976151 490689446 307839578 958273238 943797230 289122146 76831456 984539009 374761929 578936658 813535658 459032031 907232817 440677601 739084196 846338785 402220014 894053796 770057116 953528891 884572839 783232525 611940849 45034708 846799693 767612753 358428746 150566481 479443520 861350636 629590724 894355429 278806645 831531182 977275602 357463900 174943560 837303895 698879152 890191761 569160032 714747606 782643875 905725990 757603776 375266915 111824038 863503563 927831670 894142107 910426098 360772242 860913041 566997067 478742654 893280856 977604339 546404853 346981010 851253369 770427813 851043972 933954397 499103751 880151818 434163810 182113211 462813293 382714244 744407393 976348540 35806919 996143340 986796582 105268053 998927297 899455352 499565174 545328677 460342141 94141172 196158472 885396096 771599952 88140924 773904945 973708878 902937253 935613345 904823378 876541259 998612415 476546599 674854216 124139425 719754329 952602362 955650581 858175510 953884665 380400305 969819825 625195639 454906056 874691421 683109562 881303823 737020247 918082076 150986716 551856110 463005502 944828849 996475803 807892256 507388769 840333796 495570373 54719536 159851553 837697371 192088811 972590067 945284645 929415882 720740536 552057808 480125327 681129001 559756493 325750252 753872844 544392714 884706356 844584742 288755541 956343682 766064842 218734014 861774616 977100886 64933507 753506036 822280298 789852386 887288483 51305064 578581342 878381958 644310143 83387407 628653086 944253209 658495381 53574520 785381516 169293120 996653909 386985945 902368371 712468271 601883525 910699738 635932729 635334485 564632021 929198741 525913385 525225650 954843072 501731672 733584691 71325445 413110619 970538820 972610349 599571527 586102407 756820785 378703334 883990487 213634377 39362371 147493252 463034601 920654341 835641304 797858083 151578209 799824631 867361761 676080341 964818842 28218149 247786440 169655172 937002774 557699485 932183246 869365546 921294265 988948334 888944867 812557622 899598577 811798515 189902606 371419515 910955514 793928063 787427132 260164386 514309237 714113908 224951148 574229118 318122922 426610497 191924040 817277411 916006786 896521593 750898732 824758401 823114616 653737702 394697867 25251118 924200124 921844353 610489377 476771746 754545278 941270359 886365892 105706055 802953552 833856902 922153774 997350696 292060894 854153117 612325182 169461434 889157815 961270804 770869317 954038055 272183914 423572941 836233655 940193181 438250603 14286532 876689589 893538218 37679756 897154145 439118880 255095214 273137918 998975890 408129249 222243955 678094205 694662739 497990647 594918287 813886513 713404694 614849563 93585441 560481728 925988411 958894348 441825226 638075654 974030581 380622109 883929048 927140693 879584942 320678124 999137329 250059585 981922581 305692213 140697242 480355708 642274638 576931959 825752352 59593873 860911621 870424819 939888405 292931757 453599186 147302881 10555383 557502545 469990926 922327461 864019940 964129782 872154684 744894250 699779533 503978185 537777925 911070879 123693126 651078325 834780442 938678224 992479622 738984496 99839568 420531857 126858201 783735043 884729769 834519537 33376702 350053421 520301210 237801165 650929053 834233669 575976562 130058657 902259945 933283568 298255540 264579053 883881423 668538903 114863372 472567172 29719215 757454922 943488416 470863108 998664204 368053254 573187990 542476194 48466987 447164197 918612486 730179208 935666724 197197493 199079743 967956442 987608379 940536115 537593975 180911227 908693323 882175767 42452755 182827210 780195251 741851071 851904879 421288497 334701017 535884291 850320358 850004338 947506672 920483806 737397821 403655022 742883522 226761143 306478429 853180538 750233324 953528736 863983513 786733795 548497899 784197344 581032611 494375933 755359672 419912160 346470506 79328636 595345492 304299889 981853463 336028117 868660289 827076854 655249914 936534529 798898502 924308472 841726767 954617187 696221919 862942700 318171895 126254439 619783197 199688169 331015653 799906184 799485906 880408472 519447182 267278995 126123090 606270657 2639205 398463479 949785223 791484150 765835495 655410346 928018137 545950033 850882937 848380041 380642272 622953978 581469935 102974641 33540869 919358456 854579699 702110565 284693149 377689821 913131783 853196102 823700145 305409741 185532897 131275924 167862511 75480731 466331014 62615872 618375436 883544930 179014873 327496968 538318943 997384342 36610162 8409038 483058141 736506049 147611401 32916427 848281149 615033114 574286156 174176910 30579917 505814921 289143934 220079677 968633429 769090843 847903466 195647240 778456132 499629828 549021195 924037649 736693527 940504299 121941986 938809575 49876716 955752041 923738532 980959860 901423442 110212997 387449092 838163092 955555792 534581017 760217462 887969937 885301144 180124267 542726313 833122813 171516379 558540382 971776835 951749678 425339906 562540634 301114177 834492555 826191769 826143363 317785577 266562464 813814335 338189942 659674078 916142077 134932481 947104057 877577023 608968344 188267171 866816106 845742372 590457937 938148502 28172775 984568953 823519968 890872089 590584613 56841860 45923217 928268487 768090681 932523626 831973326 914467453 533816232 572822375 601909702 337177968 814606221 876040416 357827298 130967817 875030881 777260255 451382313 773303216 292813741 920784138 265767294 209803403 896695210 998332236 891141250 458512191 867908451 960575259 510575980 632238030 414428579 774760158 773486096 765823061 734370527 990003744 965988324 923056439 822145507 340561112 837073286 94779250 899315861 682593627 919100091 923084200 782201133 522720900 981212825 166619477 93181925 998272977 296663875 915361078 870696755 995897675 882753373 318673776 49760524 819258129 945074388 926460917 847737390 236568323 125031667 266719196 418910758 824393165 353093665 843767077 616119663 226289618 934179270 319859108 875710960 175578652 919718381 599682656 859337875 915319044 740563862 204708222 885977650 870560900 306732280 857351745 934722032 761096872 929361818 929624408 794339244 912341021 579333108 109092845 218105675 982196026 250827782 619821489 133303596 897618810 857114791 233046682 417476243 740991559 521524603 965407661 919500615 817234834 969803794 956459857 130187098 897126163 912595038 683171139 868467774 786394454 724788208 386357413 931048124 181798910 53109575 257292158 797794566 955537323 970026762 815844148 967454074 805895733 379157440 713534803 233675831 655915181 2408006 817300035 783152866 287662085 279381384 143702415 671684200 754450817 717603723 388371921 363049867 765545336 874115511 147782996 841917308 744169044 201573755 557448843 142758112 958383911 537842209 463982400 928962226 838329190 576221895 65548586 874819161 892202340 501034525 910791526 254599492 840041560 632223781 555444509 850400819 627477517 715297166 470170450 40114935 934665551 9377230 706208403 386780961 987659960 108764738 89461397 735190398 567419387 958975747 457325043 264609555 707720227 947068943 844453 15767528 433901830 848115311 160404175 949970345 968015803 957724945 974388524 974680349 746325109 204064286 587031683 83154935 866464563 960658984 129440939 982416900 824483135 826625684 633901378 823703934 533883715 408243962 967166772 973732893 937564800 848716282 148403916 495203483 168119468 188212907 851733083 740794386 569073149 709899769 738111867 767120331 782777589 1658564 808083401 833462358 316245820 845444035 120540210 796122681 917072220 835906461 124811316 576597063 707877465 251602998 179554129 819975714 914952474 362776166 598388499 787198515 738703036 916652566 365248451 121402406 811626190 16934223 442192891 6081545 972411805 71228259 568622886 281747458 324706036 587196716 362059176 315327217 835919378 65835559 122833016 465054200 511812307 940426733 900327869 88198818 958034304 869324704 973704561 905364584 561121488 125446609 783630849 649099781 532709524 893986102 278940610 993045012 797992719 749101010 680504798 545017470 356309787 734788652 896976571 655025082 597230381 202829380 922285284 355681837 926526921 829302748 830248482 543178411 990639990 627390465 797764926 966638185 327463585 850595307 961364724 486958533 796546477 982566606 458858554 345704575 783374811 754459571 728508308 618649382 983630634 769445463 611991901 941433253 886711490 777937227 953544649 943674026 69169093 581998153 649988885 606931071 814519900 856417095 287613033 992852245 132022375 876711449 822116627 913946403 409578872 929117597 983066080 691176872 342466451 957081061 940625474 919684248 963278270 626953891 950852129 756720211 903974377 531544192 472716379 634804095 822289339 82335402 779126787 806888819 832402656 952652486 418294296 120893236 926994040 791867190 37408199 608186461 141263859 623169587 33657142 430176150 625508046 114690673 2139648 782500653 828387446 839265165 770824014 787844445 270291393 786279076 214224790 919000422 813632462 844766925 206196428 531026151 908577793 270653999 423160000 6678802 998067124 602565149 853011187 490933853 104159258 166175502 850543631 153938191 335695203 943559873 737020247 819240862 833682556 673900117 898846688 622122092 902553425 722182511 905129675 27183996 452049150 803625982 976581686 951118765 926392584 16058524 985449918 788565046 78014285 980119946 953522540 334420268 744386347 196939861 821296075 967636515 744046129 844530774 857600048 508045769 555109596 794317226 1600357 378702800 856841109 832135164 566245841 775425941 317281396 609502325 848062254 859881787 521471909 979633469 946545854 761754548 782584815 833570648 933712350 798649801 776514403 718401620 699195839 574371421 954965714 820648518 529604965 946503682 927896152 254989079 984461635 835124516 499389186 563831555 890347952 336322194 737020247 886392969 753579500 804187350 784403700 914460650 145656541 828966043 242746995 781225586 440962505 984092780 177746148 604690523 493041751 706033326 848245729 770541199 71050616 793212495 186785217 208240461 498945447 819618456 630809988 347921361 858911742 558426822 947097930 137920628 749666354 890716294 677229069 740948397 788736650 807657994 950243558 357243777 902204284 928071770 858706084 766865054 278759066 468497290 264027403 388595686 50956051 35253002 467120501 612620353 744126707 989356150 239884267 700585636 224541771 899449253 272214598 703958326 168075657 505916829 330433186 953835018 57595142 989854819 213214140 761259243 35136817 794892844 808779013 922462402 834658012 975635731 460493835 615896061 963301944 874756902 711008094 907075008 272354437 315166302 799381328 574470795 342174228 937237009 752931189 967648066 844111578 154020882 347772905 545919148 208423067 923989565 647557561 302092950 923623707 124153380 878998209 727064767 153850770 752911099 958494316 76777192 253057866 745851490 485299153 175273067 214532919 914949685 639730415 906546426 769477471 683560463 925913804 816109755 759071544 758556486 843610851 854786050 47531523 710587139 998322762 17110177 824757384 369854664 938600382 216991384 67842987 450049766 681278851 905686622 593854670 775205873 509843758 767254877 816418024 582901381 935640676 920062745 317537478 511769104 255805582 815714137 851272639 944696424 983445523 383290355 771388328 373862943 546639606 943533808 129603129 833282140 157365971 817836726 327897370 166559499 107443454 817703599 773849835 984063640 963896604 227510610 87867606 623081870 979167781 146440447 248447721 756124868 523886631 962276069 633307574 376506245 944303677 767038255 392172232 323690204 678818133 126439937 861281866 877105843 140523352 130546881 807731917 789388352 846176271 268676956 575030257 468191549 507993106 949866262 894216747 926717868 790475036 346939195 742022749 988180827 296534418 8332489 910135890 266581447 619861276 803737350 847608211 808442686 784255717 599452888 880429170 377070604 895152765 908679018 908787029 178529098 460466372 817819494 875660516 139928108 998419811 426375467 31582871 654169243 256224558 921225832 794347159 818012254 47514258 771188020 944557102 739024764 654073987 829150043 889597441 988761731 469397167 866482041 280199362 840466635 850853595 643425017 124632709 789968125 946083044 111688691 295978134 928579080 985970991 755343547 873188023 195792927 101324067 607664264 597414240 864511526 8645367 612623801 906947596 464657434 256592527 841563525 441156539 489127269 794592498 521278155 827157431 960779244 768275178 801603014 815872616 118030859 954978244 38999189 876374609 592078439 871812670 993088561 129248957 778292881 3163590 998522246 742440891 47186285 942517430 788335204 832051557 876393513 769537980 428412557 675854032 757461217 60623203 512919071 992363292 499883358 835334261 873801051 344217828 881805802 550901931 748438860 62705745 861348332 78396556 201695714 849114855 287317393 390484345 422466640 371819587 989933906 490740228 359234688 84875649 761005898 307551082 517644121 905574255 929744802 797827479 835246229 84590076 621078839 429361893 151336799 143528070 87296046 844234268 766237560 438024008 398326049 353914542 823411134 934225831 898591982 538636188 804375149 197751386 836105775 499936433 933844042 856573510 946955016 913851943 744187715 197880370 480014496 967375911 545084444 890387223 239072884 935177393 601909941 355144169 930441962 50124330 122278055 55019850 779567909 767847658 321729983 911544290 799338908 750039807 74136299 559521499 449963731 990106489 319804206 632263933 851167537 984179067 492428861 826095447 928796430 694438456 745818843 769326809 950122080 917632285 805049540 769665593 810983754 675041117 947627025 910842040 381545552 949992921 749517207 903573892 937209114 789731660 253487806 942346524 755647145 891211643 845236264 777802144 269926219 843542355 227747411 638150159 835266628 82055792 978026104 510225858 903529090 780076947 981002561 166048774 303204615 859012906 42768524 984959187 38857735 840140738 788470491 270054263 882790787 987251478 825558502 737949546 419135415 760585743 175440793 77658154 611560236 939665175 689581476 860724321 922092259 900896987 925764187 867932096 510090747 895205632 80095992 15755644 840078497 819149524 916279448 845578376 820016288 625270625 857281011 796463799 525647099 749068770 928005070 784672792 48817210 774118066 40430487 153295715 838763078 865437031 904979864 54118538 195151192 939647645 787344842 882109564 423433441 883077806 483298162 702923197 854429695 440403977 564009278 283634865 301918833 886904050 244427016 240377300 990580419 960862269 219562512 801771685 800515403 809863181 695574185 666728213 739856761 967868420 720855286 952478434 963899017 602641607 838499850 352833900 320470764 566202211 384398863 188064933 942948990 555101595 802261961 30162452 59119414 159075761 85180558 994588968 865804462 942798933 273689138 833573528 947686115 838556128 314429052 325313389 95233297 845512904 10654999 833896814 994570825 915652026 749860238 875971193 194637163 869826156 815586404 906341461 902992777 714664038 868726902 508310602 769361230 364285578 743008697 317201568 386394950 766370082 163573721 845445419 42057280 914251155 429260221 781892087 816385183 222566959 175644587 157578943 971925968 900464394 917034199 957940420 832021478 791588943 695903368 126697110 905451436 498861760 34567282 256684029 795465083 268769020 322522635 922370510 605096470 458111736 799865612 139692890 984902829 763986131 723963664 141041825 746625992 856528372 402956207 803308031 124936155 651020680 943697551 460508804 744569181 461740048 682223521 662156754 850623415 234997172 849900073 977338369 801022453 832729732 848482593 813540232 891372671 855574780 650802738 831624272 956440915 36422748 648021709 670895184 561742148 734840731 484442279 260624320 740585784 739593634 839692819 986097847 589549056 968592965 878148536 867298492 699253880 617786145 809524791 27057629 40805752 737020247 757845058 749283684 919734280 83843117 497682829 903510737 785734042 577347517 629834122 804051543 757156948 203770092 469751793 786598162 832658508 241659302 745721498 563091257 261681126 703971788 710488436 940100240 515846640 742399131 66603392 274922230 589844437 992176613 536504097 840017763 825463252 297030948 776023167 970980082 335857576 14634547 654987897 416249164 774414363 403277935 796488788 89084406 884977042 806904546 959990210 432051792 740399662 833640542 861631176 776454954 407412663 193996815 744528736 956492894 648440695 635352053 987199402 775983250 392504883 963382126 474231953 900969844 829803086 194770971 413246909 615680365 272820185 676279415 515428834 890835142 554947035 621652633 833341756 918945927 383953640 426012817 795348170 950625957 67252497 521892360 382332930 924766962 998992588 908171899 648576395 954361569 933250614 952106664 400486635 298915453 903175018 377790787 895044703 667303850 933081672 314454433 824871353 113450191 778298254 825770597 848280882 769448815 701276567 190556337 568364006 128935182 817276682 534632545 333691090 932465227 807759062 387254258 898441638 300220342 31152126 598961407 462230774 761323907 987324659 50777763 286523833 491850151 892496539 930577902 841312073 334171446 425717629 86992282 852010930 573066032 943360096 58088779 766955603 433336064 841532089 781147828 978582397 857296289 169033486 707202239 451699497 891278327 827983467 122369572 837219745 500119262 948539159 760586479 842377063 815478156 891740708 762190285 771142068 332039862 971448291 149803848 898607104 414241848 218337001 107845386 865757511 997075422 12373644 866359963 236527533 670005406 894216872 71531468 971165349 775904939 70116340 923719071 899017060 155510131 799393178 844502744 995680864 216283274 839887866 401920180 681124123 962314212 887381212 663061019 774310469 837691188 249358419 77996338 427573102 473139038 47497904 922904337 638245284 924847434 936219278 460959997 861421846 441236833 113591128 320244543 793955517 603165538 481179080 821046103 356263978 764134488 752006773 23169033 742279059 769745489 149743643 795785536 991084769 266384758 754927172 904202459 372826081 348924487 909188806 812206181 32129809 614975021 949442081 253370780 920371780 25159698 784196664 797150587 986074883 552109612 25332693 762750182 916046691 258253199 982707732 327793820 904171026 480809125 630625724 910451022 892485984 914843130 783261367 142210207 724794384 455740399 891910249 845448844 892366578 186547677 863162871 714378147 615379679 277977607 797129069 998165639 641391333 672619036 739933689 999098955 661999228 778177208 974160944 314012972 843277675 46902144 966241701 810475900 806051313 172072692 533546053 544858709 611394859 744845577 942509069 962376723 280945000 699487035 858285080 947998593 943552074 801477596 349255234 568703750 831293258 873109255 244969097 313463922 431537068 320781032 725081668 46744244 854937515 737020247 591110974 853543664 943747446 230516139 136323641 927716550 746528365 476231426 501206254 779460598 834927309 794854931 156752174 427039826 810015539 712016104 740298651 802867745 705829716 835795054 855277259 334926924 178643715 838577402 659442563 231196134 903214857 515891026 221253076 926682204 893932608 878471020 739474264 850972764 536914823 685301613 906204526 854924460 951711675 668928450 909227488 857334026 415848771 462261207 448578687 984015784 858353125 934754475 971482955 925343353 955867001 270964899 984419666 813403400 247274893 691339939 151867518 22647526 745888743 915518842 864461756 888427352 909053486 878707687 806958914 960262634 951000142 864524599 231766632 819202034 763946054 814977077 815076671 974305162 834960941 867090695 622375768 157205876 518239680 600342867 868462548 433315307 886939195 67910963 934322827 306611255 426763178 171985083 593115821 435394076 907230945 851063092 905394367 915461259 424688190 454214740 738989078 740061655 180208877 538411203 757535118 886811903 184845687 220514779 347655044 814812351 792840297 787516572 976059954 646898063 771342401 306663253 794066807 981211762 754501888 175816226 884330841 796822010 923642674 963504318 919995607 688992756 307864053 159064894 509214487 325058126 979658131 84227496 747865005 464398195 804817515 852159 897810291 217900551 916041764 436676864 831078067 143005431 982182875 336467396 794360724 954847005 980608958 401427664 80122577 89062529 859182523 940510195 739877966 310027360 863924388 481032238 981459898 539961802 762395977 83500034 859887027 793637442 973444503 948115940 758122323 929523944 690299423 971373741 932336152 830753324 814002889 833183560 195096854 630860046 552476559 961147938 261457233 582161091 865574677 402916240 902295859 962900707 971149760 547705780 12672339 166663381 802317153 72849939 804840136 876810260 329780882 571285878 165454458 815364844 953142872 868008180 719388298 949313780 554714917 930239228 388908367 846892148 117137050 847597820 844285116 942594541 886343009 845408171 869519994 850605789 882365365 419484581 844316037 637963864 649020893 733784466 944490090 946590441 999050249 977231392 789466645 182748973 888287839 934993071 878922322 715969300 549273389 489027577 918296648 852435460 588518298 74954536 981778724 748781751 71325577 491265314 553444975 377811978 930475686 733663098 363717775 904692184 113757913 791094259 37373719 771452410 971361651 131729501 175910609 780265122 791967596 278859301 944798623 119492662 803691157 880504144 255492255 990494670 933122407 897679714 840949217 989703587 668155734 124373979 158331571 933550607 407923593 991994976 974207643 520690801 896364227 741070663 943435499 484117003 338753260 958928563 115467124 13150208 916422907 697281050 758598201 619400304 823004860 887791762 773565245 931549565 313698648 867924786 675240980 930317720 597881107 817071161 883462582 949953008 745247248 390964726 965473958 414966725 606940298 896332367 349859139 857289843 746931292 896938079 789761645 917698597 288648285 820296144 764481548 209238763 841676457 87790512 977533110 167804341 688642379 795398307 58099525 364912508 374697999 458965914 915726612 236864401 241489257 806252950 945597271 964922922 865869304 788256621 522600841 138462218 753565061 655986363 835929472 729486770 20914401 118921910 953542900 865343858 803443858 280102345 535002944 518980576 741454342 837189848 842644408 186811917 837853067 898336068 950236966 873459461 411132996 715205333 836192151 812948289 198242837 737020247 249119580 372409133 727332230 831082955 772403867 3592487 442296113 217576509 767485142 944266936 467716847 157894441 151924586 28409931 367342450 161919869 678573762 325288836 930884244 909945506 745308108 72203858 369416145 965648650 971211783 938838261 560689108 881379514 443125514 324006729 466324466 770664273 540209230 819295288 553348088 800799209 60448894 738007396 905617376 746330306 569033789 848299376 544630367 84737238 426043475 745228483 405066493 911768960 998341660 558235127 32312376 438922997 218555984 780341669 785966269 195101146 745752054 755956307 790654205 985406979 996925222 778349595 763813608 972712615 137057610 76547815 133918896 803586648 543610825 885962014 44226625 863943585 975616496 648884392 659859105 339007761 685251191 793016973 876311652 25183656 887229428 328228764 618832410 480287964 109072115 290925287 63365537 804230674 970915256 165355211 580833957 381578189 831744981 985803336 742107933 984446497 909344960 810506742 753018230 406881802 945290402 84560458 906435292 515897441 846378468 746003195 756742752 872242941 80174077 393280747 888868821 13045115 20048906 911831381 941553835 217145013 986021367 395472328 911715446 910802141 740552357 429616016 964094861 446451238 315061574 82115826 739632359 929436469 807817321 588141745 923009211 942822235 862472498 935284318 397825095 318525300 877737022 851135710 976207777 13786928 677648406 141550174 565221466 788865205 26776900 938025060 548856920 545200619 846454366 897821997 8313905 322673871 823224859 888237939 931623365 997323849 223537064 564200449 202773174 801393042 686729954 837962599 442871120 448697893 682618354 141682356 303793681 974100915 894754651 836005905 350074500 759930405 866813769 759634768 771546781 961373559 969003935 801669002 486355916 213351446 550001241 241074292 802765177 912347647 949176014 801517658 243076244 124255004 792634712 631478999 804360005 262636045 83768218 234900849 972561190 838672025 669757403 219126982 205218478 855385477 348333925 178069458 664866752 949795143 5518406 367065853 451087412 781675407 999362719 772665803 312006639 700693443 586676727 653807895 829120239 428958858 897435341 968165657 577323868 803907613 915317873 614842883 648107468 131551028 512305360 625633597 451269858 60732785 829542128 839415926 708681901 491298533 326643441 984587074 747198902 582541528 795793300 343514798 684594215 58788726 566827165 585571531 894358957 808409075 835291880 481473950 712897617 841977792 36842584 785380438 652503084 978673635 991315590 74384513 770201307 888097861 758688555 858338545 181794362 828865279 565520391 883428616 351328900 774146421 975195519 287990253 765632820 850780975 940200615 202734359 998620960 720496845 94170091 84239450 752691648 669097351 462301219 302691057 799386280 803952784 751295263 155561799 230259340 747879944 362688976 763538819 649830319 443874420 973564085 454336657 688547322 840090103 545478447 209659013 966140961 252708052 693514351 605576042 823524086 931422540 536389254 334500459 721369482 744867435 706968407 780281017 397255939 683349766 402520093 840883476 212434921 572591007 713891007 842808612 709918535 877151721 295964968 755064344 206496611 771710784 685464009 332129156 692843038 87430634 273863801 875794484 450148259 715761738 775065694 229254690 28347028 927966316 217551171 769352053 770665868 741523904 873536294 582418749 919571950 216322611 813131206 982953732 738642343 952297909 885309362 51712521 330167547 936255299 166335356 398165346 737020247 977529961 943854411 128278463 291608298 810809439 977047760 56441610 769042660 826049245 600730625 117161092 750610795 334017324 2680450 239972407 695502719 768538313 842596106 780404918 837128742 759206687 883360614 484245643 982104280 439010468 543833906 995711368 870827044 426459015 822443078 794648492 238766364 851954194 800314747 780104066 141386158 828381804 986854154 742098564 567599600 872865435 609125392 488460716 970753573 720842127 899340549 814594198 998205628 953790719 816326719 989937839 737020247 333681641 1812705 919509619 859014051 852313592 766798034 879753004 18526523 828399030 279920134 280985505 947503860 575583824 664708912 655482128 640377360 244009198 885910413 836097333 397038726 279184735 169252621 296894395 588619778 771181363 773074471 239888279 964396847 124414060 864673730 545532158 766533054 982361101 881474784 337293885 797187270 968070855 646491636 807501443 205899885 440672290 634364210 738948872 442104591 757107643 226342959 763622030 978725966 589637130 353026022 10607916 757970268 447956052 839434728 9579368 423326456 857707878 316692072 165112468 907424802 982555794 931438665 853488817 740603296 467437331 807557537 855814439 370012687 408822457 450665829 819810344 926458807 225570016 811807410 74121506 457803811 263786073 574046417 765222641 801759888 934222357 876859130 609498971 897525968 990616013 698591853 136555906 963192297 770890755 474794527 650358369 12351768 182808359 45845597 57282353 864256679 709585541 860715368 59230656 673725125 51242004 905017555 869247560 818323356 920654227 643827532 908394820 933359360 222445318 284663933 470804547 249808387 813016313 943306761 576180060 273958409 622801202 551769514 937226188 911877336 432305471 991792316 769390820 346843539 375322358 333991307 496616770 115317614 976288504 537532726 189059706 760788301 959895189 197461620 906375340 739093909 332500488 28480143 762253732 384160274 760378005 796838747 949929796 780565763 649982427 277466052 760776872 218312217 949030575 760590519 353011399 938749618 994102112 168929418 871788507 749060794 664140150 739139360 427992543 65941561 209913352 880472852 269958166 271935951 54918092 559259901 760705786 444814898 503198630 743563800 956062109 623634214 819351519 928002176 914157809 618951858 968770617 335598232 852055657 477416482 746337495 884278087 845088555 916474675 948363013 64721695 35491024 771931738 758977883 851959184 991011321 937255371 391554551 820147212 981158413 774756154 762375883 823568292 461272553 281606509 904628355 981369611 783559235 457335700 776306068 974792181 969091494 96334370 690325190 998487369 795546961 880258832 218590966 712350439 638861104 735560683 764966352 943820995 571288169 814877714 623720194 763830815 201242935 808436922 93529278 909165888 908779919 319392976 385205864 318568313 939667941 257318741 983355599 805179225 827723997 709758049 426726117 226775266 843626206 945911313 935524520 140132997 105443064 759463646 888943793 23738529 739037646 289408553 560913225 946625455 666198388 906315208 942981801 663546445 948006385 650322296 906631309 455924774 883918477 859847542 908798856 801811326 316184150 325848390 802035584 856891014 88306957 385714859 959788511 512020276 506591544 171360628 795901043 975644956 993543157 951491612 919605295 919736528 885792011 878166147 832837029 90939194 942294149 282223715 372990946 930440281 485874117 932044453 772635357 541400189 383363917 766440545 885914098 631066656 836599421 388249487 798702241 227764439 763050240 991340834 669696466 749777785 137259621 262495651 784762389 939618094 44743800 737020247 794071360 189872628 943218554 900259701 143128265 917398189 369313301 51587269 180521362 452833593 976505667 783190042 808512337 221173788 678247992 438042101 218356034 392460144 949671880 663675457 801116954 280626203 894204753 830828979 511876104 645050259 872825572 249501376 342411178 826887537 491369292 862182919 705363947 962104272 775360606 298049435 452162704 975227156 592416794 651941991 870298329 769898986 383463840 307332636 73554145 603795276 968723979 386773344 783829753 971463032 725062526 886022706 806797488 922080046 116762998 981064967 849308886 526745302 683158775 588745125 106510107 457505081 103671720 972294199 779332281 897237302 755643377 535406764 216990753 665013525 835612605 712665398 811670155 321090132 213816119 563993775 744959732 97171203 196520608 938468185 88804519 907318191 34077227 409696908 154621442 229086006 220164481 824944927 747500667 328916198 549616461 788273677 849114202 798609254 538326875 755417640 4510852 584974208 134873889 289368573 213590526 925317839 443134675 144449519 954136819 298195778 879584232 461535231 154672991 879075900 762288494 767284133 799488647 958423600 765864888 370579966 369919733 681833458 742842873 182083395 903690205 508530276 916989133 364630558 28073720 898066399 796336815 824728675 18466649 29272560 979273055 887167958 789168982 257949103 80101038 910615659 138371507 833391133 690901363 949215911 65000397 401468236 935053555 659697390 799655175 904209796 410054719 124009326 970411110 818937225 474969186 867430972 77250366 71337673 373136338 162618549 850094247 486215049 502752059 748960307 917043479 782567491 260741920 908527914 853876292 508404205 814275764 199341496 825473607 515626505 449557862 955876024 853927307 283443772 339083232 979644313 768042175 771070867 596019080 760445826 38174941 41719845 994436326 231444725 37659241 271711147 92912887 588776405 512719679 965819129 51207817 434330435 811937211 436341306 118178084 950006820 415721700 485197823 893081855 859773243 232397826 858543735 663894817 997203270 21572594 394061769 895650620 905252889 490956682 599590473 221984659 347624549 549354971 906737161 592584772 119484178 993035872 504937605 185917142 282628414 228534901 931440867 319145510 173596932 665720154 967887893 884326639 254642500 810671579 777495504 801507380 607992902 737782619 898931630 823588018 255840281 737020247 783000485 563492380 668691065 934776897 208032885 159087913 826393986 963369385 129779868 799277247 979079478 831373257 856966607 474512638 476916719 778785455 580377531 107463789 809460779 999731804 875742890 480144746 466188395 777100262 969596422 288070634 778843135 930730858 937233319 110594683 910511424 20139145 948617611 675274844 378320087 184737452 467364324 777593757 103427045 73108638 795477278 140886241 949348464 870211866 748132705 896709429 960338117 414629279 910622337 601251831 185666916 192666048 447085355 232652285 288210852 344984984 971035735 837661466 645268952 912337637 932237440 903182153 776646095 749067984 71738171 372529643 432743412 520775340 860666249 38519825 822789784 695432323 641242653 351412580 805838533 412257138 562399223 986274078 861756812 330254535 859057407 131006070 266590438 921123864 240224596 767770023 955287979 875338630 565865410 994241740 799586570 896758094 910110493 507479402 898945389 441138836 972430791 648947589 701228274 483239243 802867762 878486797 642810008 796215308 852991575 737020247 309278834 694680607 538099059 877575048 697835623 908155505 899482046 73834883 915181190 78634243 465532247 998130656 965503635 572845121 405671877 644224815 318180569 174342622 943053365 873372066 57410336 795445001 946532974 384825592 218146753 986982625 49112938 716372611 298611205 38259259 509657766 779976585 240921380 972255557 898523388 302126640 23574129 104040419 903212765 590751986 580991074 214382716 986014165 780831500 443549976 618057225 473337018 744321328 808907155 484006549 872184098 472945420 423409476 636548586 88948469 165200792 273739297 326668565 518398006 284447712 912523907 277605535 142974320 717831017 931051228 938079264 279739113 127607511 843385972 957652995 920168656 170585965 525371745 747791616 519946331 819543788 135901457 564757233 269353424 115978803 167340310 815522402 899445662 995996504 923285018 632186635 809725354 952745502 899108277 594036009 993837617 501563863 826932901 447752352 471525949 384022164 501917115 5569506 915174510 559805295 753496214 123616430 952300660 531715744 153308312 770101790 907770990 439214568 697743442 473552012 903979931 796522365 509316361 842479849 173398731 100877845 983946390 804153945 320761678 998675036 795293228 902041695 968252998 786038260 773591517 852493574 959333421 213079526 820539998 757203882 475537696 926960235 914726080 51931630 304098568 716491031 870812305 126874634 928609863 524691410 236187419 741368941 18346383 523885367 927234676 971973178 558205081 846064480 746635005 901683598 995776431 982481303 225802073 286006746 95772902 520286094 674719752 865101151 708143975 89755813 893121298 999553086 782928962 395025343 939608963 737020247 967659446 711238482 852066602 219782004 894505350 737020247 330068943 924483567 343948425 172116479 432052463 881895150 148913206 924904061 994858828 174360306 731425462 30510487 543705147 533504560 841794764 579890768 204326548 297236446 513938915 577559446 754143480 526277405 720852437 518411407 800282567 817238041 808713170 785120786 712644082 8020597 25001372 856931902 688766547 570209621 163003688 733939910 991677633 203478426 890010079 213268166 514459279 287155375 943951004 85915659 283847803 193343041 270059802 581326641 936695744 952152980 411421649 752434713 905935284 927291501 673643824 47522633 625149932 995289113 954716675 722304546 930778372 287616319 994746357 190373702 180555655 112647500 798385677 670161358 742446246 712588019 43049012 143955150 855512670 820731268 754375913 893202006 975716022 123585532 632309400 887001408 843692821 966501995 998388171 420057089 256710477 894382808 801981301 586186070 227165680 838585846 152564897 346993817 608690114 885670728 78208854 553121616 804381247 69772554 305251893 136562434 610340898 815581216 768491209 281930675 906191575 78837347 64060671 214620214 244178710 882788899 262882175 602294737 512066244 394102884 811858042 888470798 942105377 861763890 612616675 968663114 303720319 962807361 906188596 780808999 807740461 366033805 40450844 874507048 747136512 675683955 649352447 793837462 839081345 58445303 14991881 357226890 427508968 195384032 376571549 113284349 105011415 820742658 592987044 224249624 808384650 803931503 887756964 840751551 710324178 245383649 852780594 979152089 886589606 491563192 86320105 855106150 898094276 796737180 799079559 828207072 977660840 929751674 749129688 964194613 38856191 936496666 14329783 980905151 750488357 139637868 873837749 969763501 58428240 983423261 985369299 792000393 693568177 588373687 971921683 1062550 646910445 688574734 497966237 789219381 978318131 983617284 992711060 70320385 236918697 882808247 611248820 468332456 739894870 828871236 778085645 123447646 399848547 976796374 816309313 953393696 777797216 175502399 300201392 644125063 487386449 883337844 433933661 196764469 791918371 735561964 384500591 658179767 29903542 476431877 315758555 750244746 31433233 906523743 851263645 946443457 492593718 388710272 488569804 145435981 760374990 723463009 726955030 884918781 776904648 972284258 934701525 398104500 706518784 382011066 890771554 870690598 813036633 916499965 929210564 928909406 102953874 980943189 350302259 502573786 870884348 974401369 926371675 130025975 703463958 213533367 406169508 868288511 171789981 860195759 404557646 784492010 781946160 779251623 333387085 838200361 867003259 187568483 780262504 168073845 935503523 728080603 557851267 814408129 989859216 910278283 943691769 576797981 279003534 180945497 984119997 749610494 480918349 176668526 813459631 944643031 427714864 978378136 535567017 910303317 144088172 785008744 67845041 231060437 866269239 400763120 14189224 836249427 761444418 927494069 207591898 847879061 233161760 321983216 322622537 575680370 791969928 561262737 590760943 892190926 740860103 911465199 810399374 935281946 766033001 981949901 241955534 683130433 126631305 917366113 646568681 454032808 155221300 265686353 327550626 387788804 411328074 999631392 912566806 288669624 321095059 758309501 839045989 822924115 824970034 546797315 753446099 50856317 989181451 941852695 573650943 737020247 890982396 217181080 804535771 537303615 875911285 764706470 756249491 666780845 147665852 591856600 328204343 869908236 900919244 505005405 747455902 572289 266347175 651175394 384175737 414424575 154237263 767067679 768041044 587340223 868451746 467468714 735695151 892145736 897406331 964855518 852486446 765468000 873460720 992628585 910493871 367493052 905956910 429890351 962595706 902419337 890723906 307324843 575788196 78032956 882784571 979509545 128549430 983575889 291759677 624707277 865725909 7227274 292386603 826539733 821983293 904701582 640658512 924259012 868261561 379283398 932512443 910463377 549435241 461411245 855062972 790911377 495472682 765330221 894165753 391262931 789279113 764236668 934968126 648380344 399061924 863968548 13672536 125592000 789416470 788143781 949121363 875603822 970841586 579318872 940901253 152971306 384143003 668741173 701827931 966996670 612649756 867048902 815970527 831389585 969888995 761537163 893097306 889979614 736488846 173197817 937147498 322676907 114892496 773334050 109650608 819857448 877658029 188699757 658732469 54000815 878434808 925214981 851393330 797642418 146401207 558585704 928958720 145161258 799902108 453514710 425154866 834908326 6230598 997244660 863705364 172851084 515641517 994878115 44805040 134398131 950297094 869383757 561502298 591623422 926056121 550941503 675715898 797200943 499076281 963301593 978917820 305727685 12192025 914229751 834851414 918447739 968766817 200496139 798898789 852672638 752038369 394699120 780391475 878434488 846123203 446963525 957704145 813677267 451406508 908825085 915218908 438395455 865326926 893529648 248665472 684838276 759881313 819255534 132395011 552871868 260439556 802850812 768288433 734434297 870428948 618603507 157317593 889080599 796484118 863491267 932233646 359484244 872399386 305358999 445488553 846617752 879833136 650549993 839684957 873441471 828284509 394295640 335754334 948002885 854436484 831765651 569206030 740774728 178887557 745077431 343959117 906407986 261237252 641758314 970395275 32143078 325886364 801275416 190487173 928342011 183660007 164301284 962037239 864550638 664247627 52616673 400350391 977204983 494562186 969455138 141584282 785899163 624391807 867198630 310397310 282688328 791529769 395404809 580300037 962959283 833641219 822156826 196930856 288170577 827457192 842480155 768115498 615847036 672536903 940626216 996370702 793564823 778063287 950478424 705820296 242051074 877211660 821242848 757227704 383995616 744715793 807632962 235898061 96332232 32677704 294973109 82142947 240325047 405822222 984274487 15685679 907447875 948610436 447369050 803960152 853247951 974234467 216968265 319285031 852846893 793677486 45769516 172820156 938595497 241285789 288562419 569243330 793453235 903872167 788886839 744668702 296911714 135852900 815962077 828757061 296923477 911614401 923543622 608602265 863033939 978751590 251818616 785044359 982949832 156915707 936479256 867472186 571416553 267824455 812891125 916619331 357719319 540036051 333892600 394994315 166689865 868022767 737020247 747923087 835512437 967386028 961776044 657752462 807887135 878489072 424260183 840449525 360916178 767699894 465969282 790950579 737825439 758305570 685058406 509197774 643275502 247551403 236225171 777945998 568798791 315115297 661006797 3788616 977095210 265854866 900758580 676830252 951749648 816326016 802446405 865209920 625405154 19876383 768589919 669256482 746430111 400103786 957216075 742656636 7802508 799599113 823851910 431846800 856095184 554827344 922410058 703285166 470792832 811216205 802042157 875746652 411348459 835911326 877027109 866483072 257750952 878819900 286890192 354564855 911813313 984183862 117030987 935345617 463701596 180568475 876994242 930697241 15761165 699132418 891115300 839267912 948521583 793357926 183373915 815537160 605736747 934580037 484769542 527294427 964071437 814123143 224007350 289853468 809777699 483067002 790666684 932939104 847257122 780737672 842222476 313487128 781405400 339931487 449130731 505255876 759029309 15455460 989383835 835893600 169600411 40091297 800935004 209430161 996682543 967539905 966900425 836725790 737540880 173319435 14310869 844699139 597904657 559127780 761791100 987247084 875685187 265863222 927670285 812681786 737020247 390416122 858747509 969733614 212618170 209683779 25257438 890385005 674084390 606038675 777200835 140539839 356938627 936615695 978161444 975636576 723330707 530170109 385527521 861856782 343662695 987852565 903181468 509462796 414539414 883407936 289407430 181380056 782451747 389583808 941779705 889180142 943492905 534260305 955865579 401756107 911560252 994326646 369594378 170764623 968954739 197457575 912586022 959078530 851967621 822128699 809679105 339997728 327554734 952820593 979619426 636831318 417255481 650333142 852659081 941786197 920088189 966862716 960498974 962078782 444000433 262088074 528447688 802591677 635635868 190545099 917320466 694464602 914962724 603383363 12959472 400035397 646901219 970319128 314677039 942427304 514675184 424055436 923753363 63016512 919522845 59072746 139409024 649191884 573945187 968011445 552902844 750327271 411969709 747586449 835678126 517119185 292573046 479966913 835380818 635644612 232306227 914850144 747720823 722469465 722722979 954154705 875256209 18475729 752291140 523505820 698138737 262093263 434482887 809068546 59880926 821715995 280154079 928210532 403685125 390557843 32111785 978057762 602936942 750173263 62510140 915770878 791362395 859051046 503190592 121885974 71685160 634671950 65407389 453763263 778461437 729236575 958338066 367253596 994912170 816250137 228862406 513758016 967175579 148474292 272298983 775944085 961824049 378827719 564340993 965642751 37367325 994378710 299295932 105944939 801559982 760330396 914004462 702704265 349930328 766756964 647590573 755560361 795372265 594751331 866432774 901228048 757142008 764673676 669577305 962161991 171052178 156727188 835743467 897768053 893599589 967966397 22127929 752956308 835607762 907135307 23117650 925059065 76687409 169461128 472815317 990786054 491696373 572752638 201758402 571682158 248009031 596533143 979884940 815935994 75959327 663895888 127883382 782784323 790131212 483573917 354959892 321886316 89743272 893542435 809205918 670787634 367487346 797407146 763636121 729791561 820363975 872429683 647080228 795602816 616757842 594361447 753263090 853300109 288050513 761154721 611751003 908099053 319142234 793142536 794162557 647858844 845949380 742793998 818711877 182404602 801954690 890569444 121501665 898150844 252029313 553662789 359522268 409021922 264405856 190416500 863779987 888675647 950490485 620105464 973707343 721646367 724750443 780737686 748150208 931161768 792896484 202727040 754772557 903215603 910905936 816124245 923325447 851472243 191381006 310655466 321273054 477127567 958734746 995172215 803300505 834456775 316103580 969863177 200230417 895057232 495838917 799902340 295225948 286428420 934343386 235466919 790633572 904362708 175390854 775722479 912704163 648825865 440181679 948356246 948036240 774155958 854273288 925695529 713853716 940205646 568860276 846972536 777802539 800362442 751528752 808203453 993043575 336413342 863262253 801124448 730955000 900787403 910135724 147960193 66216025 505425005 909275557 163509572 358984538 589956540 775746575 268557566 88616503 737020247 323164099 44630237 31767965 911096475 201493713 838403962 150467268 164596412 419155859 949921766 920867869 481960759 212565122 458746502 48372654 467762327 222663330 34637576 150715731 909703427 696637331 795525897 772879785 249566802 869370839 980727673 906982960 488291347 497604471 133660413 792840711 325640778 864095279 526436798 713914387 91274621 502935864 848636853 959464984 784126360 72831662 611577063 270473734 371967879 984357209 746608292 827174076 908127505 905648021 916970987 309566434 180211985 813287391 881291977 887671378 223979043 158817610 88202798 255002527 276485766 819099903 451438813 451283253 84389626 204297427 885184472 239465076 853462150 972521009 704885297 560245414 717318571 366249068 905423413 493634707 288709434 808163529 906868519 803878165 70896651 691281225 614755984 993292634 744345740 740875818 275395031 900527314 871370390 849951300 396054879 21295651 453726481 959987353 649108808 305093888 459867005 787126962 124366935 852823038 91212123 794740214 906310614 879884508 794681886 898131031 831866059 900348771 442733793 908197104 62960999 139309360 873835647 201355732 452770386 446912151 748148077 882608653 422496416 162401496 440746740 801287531 693006888 257002474 946733817 442937924 562936428 659934505 862226331 702828606 318095362 910196469 359820085 191991186 896660372 872673579 874762531 821351763 730602725 413554162 823678179 841965645 890847699 990717526 67546528 883516141 853579403 265729325 859683292 928951787 294043253 740818749 885510042 766524493 378503951 894103157 195898390 506532863 388698004 523277587 751226837 825214443 772733325 190327854 646013344 204569849 918085685 923417119 852712459 176729391 326651805 434070895 503244353 835977934 524534558 745206370 774158479 966612001 879444091 325358169 375889603 923977489 767249900 687857527 820978001 357903442 418756457 804658486 615448951 766765065 940005111 746035245 820524918 887554451 114220335 817377872 72039044 854966910 849146463 949282569 540065206 692248552 938286069 815495420 817487792 864155247 488910271 935128789 992462907 679272148 120631169 885406010 782500060 789237618 288342780 854728872 850036657 971483172 403774342 933008809 650891354 898282000 543504057 988386792 780183944 501160529 425234341 309046495 914495249 497233400 293716243 786640797 453187060 424123552 370619091 547059060 841469128 956855071 850454426 676902592 898383 305285862 405877447 497235145 796825129 901596780 776866278 597161544 402900966 909221438 804516891 335757498 796711894 721834950 195810667 37460349 654835610 535762270 587346270 133743293 628918361 748376648 503738997 816337548 458183047 786580504 843210786 746820058 63889893 857856426 903843817 444199729 954202826 660539906 981110389 912892756 234997078 415682996 914092909 642282375 736253575 469634311 165129629 948598798 494272769 95048134 840373696 124971164 231019705 698444117 615396818 900112785 272447622 165899931 802793602 664200060 708206850 401372198 921228798 431371377 317932274 867574742 931788353 535691252 109624935 955361984 193360334 925074828 704631256 781238541 928264499 988955962 986206502 646522379 744398067 904846371 476998385 541881183 758539260 852255307 50039127 827324527 772184054 800778872 222623750 822306605 964565026 960939442 977582133 516771562 892491079 907662397 780789936 816018089 979498992 557391452 86474776 903836116 451558577 748714268 108698355 888725762 877430622 39373474 742091924 109265084 536376342 576980945 834097873 829811757 72949560 947294097 559242657 959699116 872309805 702209532 935402404 576980209 241229397 886787882 943004268 687315602 269802477 760839674 976362310 185171727 845207751 457340404 898630360 814820790 788930900 305552168 933538055 956921245 200671390 778478771 80183623 684510487 945157257 923976704 463951356 823170891 467327901 195254500 801394353 401362695 939749493 781717950 277763417 776799976 790532373 335184849 859989396 826306478 747349506 868985901 999735119 776452585 737020247 162094882 562501365 743137421 740086531 739449530 888657776 914796830 728165084 778292159 121484986 486758145 125354078 289853808 741482649 869010107 744179589 983147535 961312769 237341081 758119619 520617602 816402416 790999228 427770142 787416878 612439988 293524426 726100142 698729914 785196248 856396453 546990610 911355865 276955460 329042539 953121151 746826625 661564860 927750178 879669982 593802363 921914408 84838428 350670103 802960436 976788716 843331727 967081909 897329294 63622054 515357509 331366058 866044865 855089143 72637721 444800862 820903321 895964956 755272715 821325968 314254292 818862976 831175043 888720383 176852707 428099105 682717655 143011160 196716777 564502884 231773101 791248326 802768183 630884306 179701996 610387608 641343366 981001740 952075857 345864011 214688097 210803 745707294 951107844 668981607 208105704 984064215 872343776 799270710 227480439 627618269 872250928 70673388 779714872 549193768 810845791 991888253 31820513 559597046 941353641 342494610 558060115 488861669 250793754 976796240 82744460 849118449 999776703 902304579 748133097 898141378 885378515 422873930 795339144 786691993 316925095 595273984 268191469 763223837 150862495 481469895 977709222 922483097 835629077 886142400 446647199 444055044 879925801 778248402 814658210 138175624 997609173 789019552 982669696 399501199 493836464 436686872 836468767 77247063 774641627 963071217 850353708 965255927 166755153 789498732 864563305 946672295 553529375 735678659 217375776 873066347 788397961 293491368 451499514 819238768 923595795 383012683 746740077 576925929 738136774 781583193 249670210 983197047 646056088 346498327 35972305 40899701 664227636 378702165 737796297 795619706 91595400 448075059 893406229 140479921 19584542 114285259 952585376 801153593 933988806 891418130 81145017 590657532 870727828 45246402 253915138 962096049 451713732 186138942 511013474 384347094 348575946 771385972 115133372 391799326 994116296 950725707 737020247 838175286 889399111 760190698 204124643 870997603 761754957 826566153 715468589 701165041 816224491 895088258 741823119 955955359 894384492 775063161 488333428 443912786 310719343 399514938 77507637 866790210 811349722 944445583 801463474 68545690 978086302 547803866 231844547 337946615 501373732 790185979 880024725 938364997 175937921 492935686 769323695 941429853 773449921 925478059 410211148 818200379 865912364 557661857 585066110 893952035 455901295 935893842 636486795 890688699 797836035 912347425 980046614 337537678 25372062 864072360 770570073 463640375 994955368 496252723 836753304 147892653 881535180 886207435 721229424 128167065 479041084 916893165 761665043 856013021 392142818 813731834 234821964 41784548 695471671 996480962 764767568 334106130 115908829 966637146 795129723 819837462 968825002 964532427 278360151 376381477 751717767 991746892 825733331 189672081 22658330 828751190 467887992 587800478 20281898 996781936 672855298 453424639 48323326 401746915 964417200 764282229 854254275 352888499 756772736 366800822 937551003 317735933 854573203 889598968 948635729 808475091 531993248 104747047 102976467 236913388 240536358 796746010 254115502 402674289 513222013 883298731 168166472 947180732 751528609 34438152 980000764 561735078 627156101 905580043 736536679 992119224 762003742 398557790 831201207 74123468 374063682 89969856 742029250 836837233 581748298 958938600 99501095 815870455 788279135 752356517 755405737 847048031 828874368 573647322 922197019 273154355 888737709 807916918 187573212 199800893 986949928 145924224 677438055 989169095 375863379 800842706 193228143 720861541 934822711 965511229 556666644 909751093 833143730 302602617 689864015 680643728 818276070 971929397 755033041 848259348 345055525 941138753 639138024 461918677 470073019 418295865 883326487 98250388 615251 200143465 928585975 921608721 687865684 959906838 544387445 911083866 456959 170855032 988277162 845921979 13305916 851614945 824987205 703034316 818103213 744342427 44959949 844707052 352472350 692778446 584999471 941130577 926668212 856302618 784521352 966494499 71871045 482571728 161593674 776675470 908326893 973765799 967334177 789557673 488523363 734460928 957368184 977847409 973449137 82773011 909806221 934161091 743580680 927190197 842438714 150973906 191366011 418638741 296538886 709283744 848417980 787810257 325191452 749112181 426820587 522297854 982039335 817364713 821107798 252822136 654291123 759982975 950142572 913000117 934111299 538027233 818746611 915159884 221849576 237089093 184639108 974096876 838672845 556318625 875464024 488660215 290739215 561221865 545336605 862888221 929351230 59475284 818074695 417407085 837149796 236775714 216811765 888131256 134340030 306297605 981284961 217711499 864411741 419673920 965960542 846779497 698786053 413270370 883410376 617386707 421697850 821563710 40848160 693981749 795619695 747417638 483828471 733144863 972287535 727565226 914779050 802747892 285941780 626722686 890733810 555334291 769917438 597527579 21814847 735004433 874582198 885528427 726621098 257955340 708951028 540904763 146821000 138115269 931908243 170627968 779937297 439055491 965189704 189919549 11546334 942020073 705728225 60586314 942653575 955261985 888915936 783802485 595825587 605946740 30719680 278437294 919033000 857720852 856572024 646543055 27342951 587888099 516702815 683380924 907262926 134535938 128773933 742892758 86448459 885479244 808241406 628389732 800126043 948629442 815499206 280297416 396530807 488566966 760451377 915582582 743588843 471183471 978528908 869521987 913084183 912710842 819984151 41176147 161779626 824216639 914335293 737784512 423114293 252375949 421815925 545887660 107686964 89439897 938474968 984703777 477239571 226337424 393602875 832264438 902588364 934259277 184327147 629987103 691637235 897781878 245499944 922735089 729377135 824020495 458084084 827927497 616203031 839496209 474916586 799688616 967639215 230962207 864552736 246133309 521541484 29330791 816196489 30321119 989759115 148141575 987071785 916709745 985090083 828686530 687053235 492809310 13149895 700300576 827752038 887679430 185309979 852200862 758291645 877271314 229777930 431009165 98392698 819426465 957224546 985872378 951016221 828253433 788528783 874916530 833697448 996823295 916399548 191181300 44633320 397910554 548765495 309088136 760857261 530195568 538699257 993003031 237075205 936546167 100511589 515639166 584717601 977016762 991710081 47075166 762787740 806828623 521083262 970218466 347717411 859815858 762424953 968971201 20319639 830490621 119025062 980853415 628473736 754606257 182505075 763443155 910676148 430736775 213704448 239590392 276609645 40181426 239335075 826931851 890868225 882572055 842671286 234245050 783015531 956690791 344918651 720344732 782660837 654023023 125683408 884064306 815421927 787189214 895195641 544694197 375844889 410609496 988704631 840238500 787271051 701214366 696582619 924193667 855423359 867981864 593594958 461237284 564723238 316308443 851077840 940499989 981926081 702289822 151188055 291649183 956913693 871568183 305669258 999466438 161602888 106997211 333565917 259088357 72482722 766574550 314682066 812037158 759806900 799741159 945747987 744172692 800338479 99399690 622643622 92533160 89775935 720881133 650651698 500210968 823627094 615472914 53562921 891852301 89619742 243236984 770757617 66200498 493787983 992632488 545256640 952378454 282317419 892514088 818170095 628406896 876309608 857394257 840297805 871983594 353288423 986371836 809614439 393276643 839149826 904415516 78642270 950869458 336906173 170306503 908663345 801964291 872320247 793803569 840685039 356646890 965185421 867364806 773829283 253100646 17542143 304139085 832323878 711891152 768926726 791246208 801655456 701431937 785178498 728639469 548357124 35693108 785585958 992526568 786022374 761729706 190828618 219857816 977430557 719403406 937088543 778536449 808234589 920599982 531266257 973071626 23817916 154518420 33212148 134573712 185992732 717653518 955217387 964217738 964071223 155560638 930966297 35504581 706485792 818671888 999989772 264531470 766565225 659753107 789081435 780049228 829739636 960163696 875182286 829182104 231258326 445763005 22292666 889455842 367156864 578639093 77987009 612673186 778603753 937299001 844180097 328225470 596265000 346568343 51303954 956956698 366127573 902364046 800439849 711922538 805212860 457099103 868304119 751881393 863935053 856564911 751470539 974713979 522313539 850980325 697331394 421035149 930005008 890645132 998672646 965081184 349971376 309198626 756181202 566763440 340203746 954952629 967303898 897689305 870115276 824342256 982147213 738460596 783994348 75935650 360478163 758991137 766611551 827828661 844480087 34466362 149871323 556718659 961691149 445162887 346474635 713439099 883942052 985199863 911510980 747104366 988360586 966617593 104713081 880255185 916928390 710930570 851584135 350720070 649969863 962531763 875007386 407133788 905527672 243785123 359678009 164410572 838529394 890208857 717810654 799895716 391511091 830065766 914108355 737868484 843872952 367658670 124542480 429874113 779309376 197082557 947192615 395336624 963013394 558148959 256778181 940591149 424486483 940416087 878314810 790793609 981452677 901113737 649563901 225115299 130272021 972488912 98472820 937238137 746541480 969408046 965637722 955138115 214534387 963224831 433330403 369715450 737205260 729927188 888348826 832338035 802641345 402237352 323344760 756337103 875515254 822567816 412745154 781546000 827858766 443173561 874790562 786244168 949323162 946146859 43112448 969747237 815703281 428642028 929475779 282451984 428910071 615672498 555360319 952766872 253159309 663261840 372779615 744603045 340783927 935524140 114632749 409684633 547437952 852635768 809910908 427892504 838622096 904753348 566992290 227927012 926130664 748094236 343594267 973643018 917281662 163507920 860125189 419996872 829169679 960027573 339060938 820068336 662943815 365248200 957901615 961010001 958972752 380560584 902938859 938690721 914543310 803694446 15238158 943928777 783824714 886057741 829929158 740259563 600422419 606449869 503906760 883337870 932248265 822232611 761869545 412170384 174543699 798266058 931949330 867472249 574873513 583237350 813323524 765958152 919666575 77297330 794304370 773163424 922147104 784895549 861266794 463048441 244371845 570505461 147861056 737020247 926425287 861492250 703960138 748953065 760871165 314172595 521468062 944958399 842762654 706287220 975158271 883030338 880508442 741606982 739983371 901714698 907624548 753761951 833650419 118160006 891747681 707919367 729487374 936568312 621219578 823746067 240657111 948865033 160994954 537450776 907626479 879686920 783136428 779702057 197985078 578548583 430888575 438025159 60336890 407084757 599175243 818173567 425240485 423104238 663416111 962681443 989581810 821801951 102162056 821858160 379394375 114833588 881582751 153802975 228333281 816606502 377876484 905523515 839966882 919664915 151857483 956552256 997547294 224079447 716540589 699227354 26228665 800121354 511737295 557278084 593172969 701809204 825390394 413774099 331072862 275210170 499495747 116184658 177316922 355367618 669413948 763099687 937186818 212302008 167696790 854581771 230360627 178236576 646874545 843758489 143299121 424122302 685910560 387257919 930591998 889460298 68608710 101071154 222662418 171240317 785384728 930324489 569659062 576304644 738779501 701680173 114651205 742880260 953293803 575742752 770434124 131880598 871055066 445694189 739043171 39159752 334263713 320660937 769105087 874558403 888400811 397482329 543964033 171624068 831488166 410050824 811752777 163088304 763618995 980396071 624185093 775533276 832646386 755127826 847165294 362061652 902698240 983161910 320018563 823723883 336891364 864441044 945908227 130609992 902136739 457754089 221959864 425425209 941301601 899320957 944447613 445290918 399397635 555118863 768728920 48772859 803661900 754072807 451954820 737020247 416307650 908987795 912250520 198563932 181642524 936173043 39902075 92238313 843707606 54724100 804908150 3458588 863615107 5667812 703389605 875974149 742306994 805405827 979668773 459383738 157781689 856217968 298138916 356819298 175307921 824591849 739791817 884686511 921727747 445786205 969701508 944950445 983366034 68623478 842952864 837230065 907496490 355140833 631712070 867212433 93092309 508849588 968253174 785970058 985972667 343863338 785508417 922919640 25580447 426782615 900800440 358181723 984574016 18373923 329289572 79482994 325951205 54130045 826900 690571929 810698028 237532378 511349501 208641954 921387091 763715607 480932152 627858491 870485546 829164185 800033437 791225061 65627317 246443710 975380030 952601926 275181097 411218502 109537315 355708381 54942671 695162822 937130455 815226945 274943833 836082999 964668234 873049525 44135185 940003806 949691084 760044555 324248635 765431592 504178092 58629118 524510991 756273491 628302473 923573005 961610114 132512662 599925850 63935796 554774768 429806638 62930432 684050319 819163069 838852983 991312793 651774185 779195931 267032356 29486761 805461730 931117069 799222771 447501195 827890901 939378382 781946812 793555869 840622781 674353985 395930616 406980386 911974326 301897322 9640920 918246342 675625174 774343066 872080760 194750309 365065563 724348737 502458738 887230362 580614346 709855889 924708577 658971244 760513595 804847565 445675688 195643456 310951064 559469997 792156030 502879399 415882253 633084257 852846481 207978075 159753191 53705688 930584695 66236705 334780771 693007238 5368298 522274022 473844096 245714449 46351394 773228580 933712949 775171823 911405478 870974235 740994339 328081107 990637237 239874685 925042321 108389104 975557131 273368329 965294604 693008032 299733198 738237639 750584150 661408663 908346838 420531960 785093569 38512881 383770314 685489813 824701384 769448795 785393060 753309691 899447602 844953239 45746429 940290698 229962774 850354560 287237375 889044471 947143878 825420243 819251528 231758589 219762534 850281137 998925567 954679351 21402579 633662602 866974454 932226796 19168707 940554577 907101119 955111113 197746560 952622695 58736511 792055836 808707614 388874861 788986694 944974684 220551332 360776521 816595850 842417832 836474552 973097767 761708774 311610608 708576796 515184093 496043306 459678665 109779145 933160936 895412954 297582164 264933215 619329082 235510355 904789450 6052152 722862605 990369486 766271030 252896992 922691737 231149764 567504645 461730191 266633458 550798253 150681573 820518522 991732157 996707250 845653814 109403495 923652453 125335106 708663208 839424416 950425016 340260233 509637626 256863009 943924785 286677059 22987885 760102068 923489553 52658838 910752348 79338163 374445477 394508890 951848042 835220277 932420302 599798225 708935872 797197610 477830131 943266937 885840864 86432429 843600020 999906943 211262052 966819917 871447009 13752165 774899108 458887332 536553301 42669885 60979143 918529032 791704274 925213001 903435679 936848554 220378446 865668115 978091761 615235489 950650029 1398464 434803301 31535053 908817339 764920107 997929868 401410103 528495910 786892528 195507900 297455136 822887943 814510900 952449732 900516541 978224156 92506507 90517865 938085373 101364825 165681827 964965156 679870028 802293304 149326252 654947686 717294388 557889154 847167265 126481594 776966561 271421117 518570208 623442829 856465723 154501822 923559309 96171537 250042994 892451843 747385615 572316915 620054154 95457122 243907743 828455203 819431428 784152148 15436548 752942210 997632332 802776245 832421838 782037755 852305728 411782928 760181591 332792956 59340410 626694926 119262737 891117736 775461500 33593862 549142643 728519026 627949382 572179633 254391500 455393243 953578994 787254986 922146009 745982421 980469577 845552784 20467431 633173618 889570971 5320897 844305356 88110486 962576966 744128656 272736929 62540803 768599051 545491826 942810174 914624290 491797923 292124771 710443316 924006223 497987900 750506376 828297801 277759807 582434356 797011932 918595745 744451118 751298433 862314667 185410962 974686727 759135440 571010194 933562536 990742996 795537353 851427205 428857155 949065412 746708668 901435934 219657380 339317393 808366076 908859064 291108748 262475298 601360611 310713763 336297966 123080297 749407172 198515844 856790450 941071388 763157729 315553276 999649663 818293210 722226065 850604368 334001448 842060675 667938428 168197388 920443484 896961091 903175548 944287874 754172058 11116807 914136521 26934328 127288559 656598095 764176816 597400154 736846234 16463120 855597161 29355292 183123810 68839903 38156005 344770960 724123309 951782762 586294532 805841443 746731494 40683192 973579954 846753676 900345272 818635816 499932399 413624556 63831725 370880307 841909699 437604528 155714463 815831032 802589991 885451827 477966610 792466149 556748850 905446379 560139812 285181784 808000230 788391424 492144115 318533841 468610471 890034782 759172697 497448303 793651231 59772715 964243931 904657860 939702848 885450953 14207689 413195622 840070889 737033589 827664609 173424654 929141871 266807173 112461443 940660917 815468808 513598241 958369254 71663310 767421161 692169250 654624251 812780009 970067178 851878088 861550827 854396416 842475486 255541646 81633835 524408939 310293674 416303327 755315651 441338445 605687249 105610229 847706535 863028156 693416604 812455242 144845779 763876950 774249669 901816661 914782374 595178929 456081600 760159270 836975273 978322926 961137853 739756950 415279860 804429694 969700005 339772740 109953939 931807809 938317263 931335835 635893284 404915470 514790520 453956250 866333581 970377563 803119032 646240649 521314554 631939414 952033837 819702998 913415525 79551853 705517818 81434891 136459070 164920902 790215559 778798990 899629016 184524508 384329595 446894064 234102562 997463746 839808057 74047881 984581012 559657917 773800643 236497725 92881198 838483321 813780420 785974967 751686084 222938881 907240095 55967791 858031848 588846851 984634624 811604462 448546193 275810529 373775032 596395609 21445561 985898807 981725323 571794422 368003788 520501509 399975227 8637834 828737043 840367871 664537874 258036381 283986791 643676371 759384981 24542845 140121188 153313514 758713493 693605995 880082106 819766612 14101399 805907633 443033159 986186222 753675831 982460984 717075008 367978669 180405862 299133372 647585640 837390450 738670200 319310158 897150169 130313679 9618507 144981476 553356633 737020247 680494354 786132469 807500760 427150972 989436531 97265403 750349963 804915859 970463500 908835955 953372869 415757379 883414209 684129146 708243798 51291169 271059065 149131835 664874924 946009762 945425349 583858492 889771224 780925853 895536574 778428182 950200814 705347166 703932471 920603751 669043988 505398316 860550157 923579007 931993136 627953978 671457628 855859058 779638951 773944449 750378112 545156875 829905419 69695250 606252638 447596834 786172088 604503382 894682690 914362618 989210991 782879913 506254455 914691251 937746011 842188619 465484926 177086857 970966211 369092271 550495156 841492900 822145942 5580014 776876294 831419652 237781525 867246897 978458832 373544468 927887917 885033633 864811480 373331664 998344260 235676080 794306433 988749130 914814021 750305656 80737435 883825712 228764730 584153731 552887334 915437963 633096160 66188239 775170714 853539904 148174091 734159625 653495496 607539398 823409691 896728303 99097472 717608057 976603446 494791515 8062907 539314060 781894123 884048300 746096445 469014283 653523433 843790095 798203347 686354047 964576309 587342554 353384557 947878002 641564711 971506421 834983651 328691783 742376120 841087874 73894073 868967329 950628433 2206991 787729021 326188566 991183722 182695214 669091440 774498415 524722891 882025291 159760072 53204298 20332628 801119549 860544027 981153361 933776578 528133401 152815911 885486484 915345728 208186436 898247870 846581013 807364574 953342256 291910708 916784592 705438112 740552596 156205133 511554330 272088914 443013694 58495317 983768338 629391185 7585833 544999623 494605425 649207017 322279265 919879351 179375554 180903340 859543196 797845466 897425297 620915646 78696792 232496981 59690803 374307689 903774325 946533113 705904239 130029774 580788228 883353267 998693977 753490709 846342129 67334495 649571496 294323794 906703566 914256068 755047116 741427987 250309155 793991880 156468106 877443323 999021260 379837801 961477930 741778750 154864918 837741836 73804276 949727297 241754412 491639608 322456827 733548465 759252776 743710907 432369326 958695901 138563222 15598512 889791832 804845215 738466067 176065219 827147693 752078275 170037354 846877180 984103224 993841817 254182643 112265195 973280585 232158395 537752797 802800537 183820566 194872056 538032795 945893704 950900673 811384268 851888762 826000070 598240994 682573044 824805684 967503437 664950837 670111356 426357180 906747077 980091336 380002340 530226830 124836243 686252825 916043584 771247873 636001007 128104947 829296207 853007931 879723804 699630697 511444406 824874908 903198915 806093522 823027202 965407945 334246848 825999351 888733480 812858916 440204741 985404855 990655445 964856823 318609923 955306007 780029139 797958578 842918381 939523197 291869846 869768056 972185534 554343373 854624673 786642692 813504328 217013647 753830781 781720296 830383798 988378514 594339023 810760495 431957562 963771500 34749395 490874528 409667549 943414830 582018436 950448094 85465367 499644043 527888207 361335849 617743679 785104806 338666504 952065206 353319857 392787727 876202400 292394771 824287329 301909875 116043170 689959202 948940164 973035445 738615215 801886980 720069592 271795511 869755102 535825235 718452014 542373227 747343718 949689421 65751224 956409220 803065322 967915176 47837031 404425198 675142827 717436366 386309837 524118181 896681231 503612483 780972772 431283424 291739206 887466363 23791302 310949128 740621179 138023998 33534688 14864201 921023382 251680518 925826870 740108899 458061666 302622533 790935527 743695721 868085422 876758730 477019612 126159937 741734390 966341376 877540356 452398461 933773050 590514272 763418643 244982951 777583585 730170538 765338335 427030126 953500945 806316373 178436348 407203860 356265265 923165666 775629443 836221372 780785862 750772441 947618793 339783873 777872578 35624211 375510187 686342361 351616312 421757622 439891620 881761148 803000164 484620362 514695713 285681115 256119253 771068860 833887038 233225984 945089815 787554200 817860106 849556958 751649005 962462040 582370035 231697665 494773156 888542062 120039096 485951525 672955437 578500239 527673893 642223539 405375641 962999344 915924659 744471872 972136202 922337531 747173227 933290858 741701995 782463089 955530004 962021188 522947530 629920172 646382259 534939499 372586667 877819318 806268762 810802449 890242371 199076069 655230575 783830650 661408644 68835419 787604 310010541 970122926 198985072 615490075 334222107 982221670 887536878 582379984 227506778 710459070 966035675 745348240 894424730 989126885 395428841 644976811 292392373 806268529 340417669 668826274 857627010 871598345 712522945 948148158 168063586 31432648 829422690 47677689 276708268 404323296 981286087 920640468 992314314 138092252 231629006 873039590 183899169 894219142 692974353 417965956 935373211 133091957 53134384 389595900 584071725 446272043 742240559 768150002 809441710 367901171 163032222 680732865 915627054 356060944 235496288 759291513 32791380 457932624 840093401 731700342 961133187 884088031 715855274 982714559 805710114 912272041 245100098 813910167 897478179 916915805 128332950 948375688 98355979 110761198 435819935 827517484 752067169 296216578 332294191 116476697 621629335 402201896 148541074 859433850 306946381 990450860 562455709 882658713 71134405 871251527 713883071 52000636 438268178 894161054 966756512 940680236 435083647 820508685 321422544 571756922 15058791 837108807 246421620 961783747 878437700 138151787 413195122 958524951 115631147 659688189 820125324 367778664 802214930 370545032 800466941 924113933 837498211 737020247 665020463 598122145 810942239 713450996 262479842 399202952 274619952 950456021 976901028 916933211 834975242 340717358 623127952 906592717 157322227 343747586 988253210 737277146 743351838 789302328 985787478 789672255 839507925 104498285 959488124 918266556 788000467 571796683 175622242 942976282 53467180 905508802 170096149 880984054 83106189 891493710 806807494 128139351 773531892 861353179 311307598 896465640 134119295 486573906 919640562 961447249 915650276 951493077 300181431 887329126 905594281 404684752 763632653 185920989 52226935 826792892 960563895 971053539 801794427 672734719 765945038 170569768 805402452 746524451 958318840 960781059 992347128 658923542 418422034 633996164 888679133 765205621 828484700 194342958 807977713 387667968 92065399 136539032 486414428 207071962 614516429 239848311 761012558 874473025 932953605 997166339 93980426 878949726 332519295 637748735 737471531 574165951 961768102 24148112 956978761 782058212 817404630 102518185 984648851 179400257 911199342 541720961 908976819 592421983 34938427 328741315 864100327 415888369 791566127 954854592 905171841 763148556 582028027 797216701 633257467 737020247 114479257 849332908 944966402 39310704 884662310 270541283 346832993 110720742 745201923 870235266 905317836 819161181 796271300 978148025 692650012 688228071 470618586 969462461 414658430 667945605 979072828 392559286 451855386 446937228 251640610 624803659 744625505 783874540 383453252 444853332 761152108 104989701 107672706 947328339 812837122 814152045 324632875 42950363 301701943 73995121 916508789 764701333 800145135 319648624 881871074 427310497 38324666 233985222 236746788 875902324 601829878 981098224 674501009 992598552 992974650 921982262 131871022 527517689 255585869 259230535 737213095 301235143 999189065 144644190 989326935 912052569 22378559 841737921 82987356 932075753 928247952 8927451 788433201 18791667 837217738 372550972 182428714 822467935 715856319 759413656 901721379 969337792 887352506 905123854 390622354 485209764 796610011 126428899 855114918 603310044 885974405 124089987 177090745 835501974 747334323 90391375 265117270 236885058 729370259 984526405 761322302 890488408 459156516 950413554 917411288 848045557 970865780 601711469 190962404 56154911 386013602 808134624 682398117 301627898 972469214 108756595 744343663 973921888 364180500 305531681 893194140 930608708 956918118 642294224 825676075 878999163 757845973 915821707 653609949 909738265 915867555 226980399 378973257 820518323 325001668 877329819 937975595 749672984 443830934 123636347 947129521 912321822 961937293 789370618 700629383 800604686 386378651 686509778 7483140 500948290 129459749 114337672 810449693 816677375 862816342 925827552 790724907 853868948 920137969 384238544 885042441 771818288 178573917 123996803 838544935 622391170 205993910 187435512 133938144 594731973 403009283 277899883 799895202 864666300 818838206 882709631 654285160 787844062 81758826 994510510 476392902 852769009 969374947 977069305 987714053 739531645 248735728 712476179 58933253 558719570 150311048 751480665 280198715 970779460 943668457 957120953 972471344 835119281 873789878 931391788 81889162 778190192 341625984 843988908 949069979 250550260 894070934 996305380 901139553 780775290 588974501 589582558 741455374 906429803 34538065 264872758 167293502 866680876 948150386 662001821 70276994 973751862 843561879 816584532 198459867 793814443 358632018 512895016 349815701 930879250 731378559 150141765 893837435 657168360 696660192 922174518 55619248 772023811 798978142 57327884 920425244 203400768 741844313 478186839 805280107 958988372 689197710 793223718 385757949 877457914 671508133 837975526 914995105 910874366 120123203 824893011 640288599 878227255 726014383 901882395 784243553 644632340 824991442 298032393 861061876 708214060 938993468 925206207 743196528 739425156 618232326 730777443 878190984 97183149 982349398 272800054 820004834 987210693 855951450 682340092 668227415 810768315 373564068 50966401 224695343 136441873 932480038 991715251 13370653 978959201 582681828 812363339 864405140 889134327 271784801 746794721 259225753 154617710 151045810 755983213 164897509 495555941 671016827 500607966 602894591 992327126 584432821 508365598 544072195 888356738 985936063 369916454 102776037 629726361 858538494 470590909 824626182 420839987 781930287 441423201 786177405 441555084 372333466 107156424 9244990 910515522 630768017 885723294 364952644 932547168 300603621 767680035 743964234 285621485 868166395 587768670 889678362 931490701 906754017 160739215 623781000 978663858 836182075 699384023 982427725 104310225 520818285 788756648 872848571 774496065 505273590 817593894 169146059 842758299 354294923 782204200 387210379 879751473 848946214 945800848 154371065 806380705 953508083 806600013 769975729 780563905 162327175 844111351 859273191 636834822 314127986 921060323 807782109 868949038 795573919 910742917 773320373 197407337 994429232 689628549 338773695 918304185 218652179 992293744 652994289 428557473 600505536 114461794 495101988 737020247 537431121 939284786 946355811 929854041 594981358 760023743 814827666 572031802 115459083 798094146 918221871 492247238 985938325 820608150 383859369 779156343 848085348 407067945 743870316 480801051 753983905 868268746 688942661 920338317 831256108 314648458 635819569 776438831 474348752 11887384 775292638 213545296 804808092 328922274 19583217 928513684 971599366 748306804 391599406 351018254 363028062 804650553 776444819 869600988 904981725 812088631 232544496 862959213 531683774 20629703 907229395 933155050 118967051 455075039 804464699 312921557 789290898 828394740 880094760 5062617 921289990 706038092 982548284 3326532 37538760 455232223 847692678 820299981 527363878 797906718 780878657 914501754 986393182 934256536 672662761 760202816 843960746 862684481 75797931 142564252 892497496 492081066 719490227 765721584 832747115 706905873 908861513 554220695 244050676 956665458 504777924 16096049 902088810 809848758 202359745 997845336 384225033 894302910 211613776 973761140 117761230 474136911 785365194 301703327 756312973 57905793 925638794 64938496 929625864 904339943 958939084 955354925 36524321 673938013 879054665 737053560 629077396 436276078 831506865 250826332 880201434 509126943 488701569 832217397 820348779 427575880 774465739 24300552 980704615 178594461 313649472 797644040 919844537 752646378 796729611 966961068 969224346 913226776 901302748 999541334 440219035 493655030 441356673 424015790 699571159 11479381 852954369 514889759 652244480 948101065 804816265 729685634 798529200 319788699 797783585 323974128 953760404 126420774 407874862 810254050 87734816 620105483 749354692 795057652 431999421 14079747 230399677 852447657 561723206 21046492 741909240 913010363 226402201 186929561 394899712 495789486 697572364 847806231 759955679 71808737 285586664 748057925 627892701 192751336 253797780 619894303 887510556 202953859 883466164 304600523 880798476 822429270 989610268 852697929 949506231 969187080 4445333 241486644 822737259 901889544 826646517 160822368 914144355 225102613 377691537 910211113 995735877 919071170 321681609 188983731 978740080 74587688 46895905 716402641 388299226 739232876 381432900 748013280 911009572 872324609 509169195 263887001 38690838 941930444 931927913 109591232 293059185 644472087 773008891 635374173 314314923 218819389 224580822 647621899 841344801 953593565 823471434 797923984 452621111 148686699 78254898 77165983 84169144 968643844 873305442 277734123 46240037 354029863 993591299 779349451 165220393 615626740 710387844 295580641 728328624 774516469 889056769 524864187 811890503 676640254 130966602 153057258 792839082 382947477 840441388 690000532 821836487 928925076 841030834 754553328 267218582 134267700 430421029 439979108 853040678 764603272 430382020 787516907 319272122 943055342 738160064 751144484 5412850 754649320 123609704 63401426 835929408 765776393 597170119 643964207 187180005 445963398 712757004 42954197 808583419 832395133 9024196 220068624 655223615 115976737 781480931 743349358 34155240 947801560 932202442 147113796 798288201 707277774 795044865 555790007 585986537 924098443 627196000 112603247 986300549 275336405 877906939 752442619 712213568 952151962 86080438 721934137 238217389 731860831 773231273 263275346 791794816 512205567 912439767 753959617 522170299 929974235 891572413 320103681 997520684 974235645 988098680 209700689 117462316 823898368 931648676 697953377 138210060 862102846 71968142 682397857 522857663 344824851 806293747 179746073 882954058 343504589 518479899 734217437 185682625 779300513 745568221 76583266 941541390 782651652 883139518 706010550 848499164 834748381 514285564 901176122 737362887 363720272 665347114 953802778 901365709 188107957 646455475 240279996 629325636 931702207 342723222 795219401 151744443 761790498 331096812 810164122 813537919 78031992 988979794 555361594 856710237 968453347 895171300 92695383 282202649 264251424 300010250 752651691 743506332 765105604 561877519 248469220 970721640 561804801 612009480 887035247 907611931 644409770 835726450 938606737 969433800 240809233 913852124 566137644 629647716 220104786 934038187 823830921 467970323 950836210 908320851 654849228 880081696 115563933 774201209 811950762 911287901 130760959 219495182 897932968 872030009 55063333 819506835 49955131 912654324 360634730 760446120 30672192 582020704 778481092 780037363 962767755 870042739 712073219 981922216 193196425 284350459 917743035 739002275 262618251 296444152 702902603 563328556 55599404 753566944 753640980 741731893 843204151 680588514 893532608 202196330 864996863 315910719 843512547 903786519 326990822 332922179 779451197 540482054 877466196 644227476 652976492 401727892 847870382 880806923 608202084 631562834 738179758 791704934 538409850 888150318 827405223 794855737 279792920 107991169 769798413 65938221 800273501 438592763 997239925 745702278 923102632 932758022 988582985 153032510 811037041 978047900 355965115 518927001 948785878 339277800 504876832 769587677 929616787 492268398 958178388 972768269 849515206 292970780 320607123 748790927 915362432 729341437 206984487 414627053 860123520 75864786 174144960 175614941 657527258 800761599 252568170 179252022 849556187 82380764 755265446 539684715 936599043 779130875 806637633 637575125 293612961 881923800 788158738 476756759 928056933 551987022 790699862 946709623 794354969 845225537 896742469 290516692 616417701 923079744 939269408 102059715 804036146 832883065 576951030 867819575 15677053 762782582 972207074 917992865 203152702 861181984 644569890 294785185 353017538 8338585 726983480 856158059 838036701 269727200 939619102 120500913 888927132 354109603 967381879 693483527 400716380 760990845 723317806 881635270 813223862 794845229 781264299 929177622 936382055 901269651 820489782 6710813 593657111 553645189 940585640 357814920 195639776 909205851 367073354 234064617 891521945 903410629 737722985 986138953 756151158 240013115 913100216 820930262 768211324 463384423 494086582 731486524 794107462 559855566 169319801 356525570 778539004 879523247 406441632 883946483 45129454 362965332 964439892 977359699 740111141 974037585 501306130 536974756 911757405 879997032 361351784 852399491 932665543 332611746 989363409 587329281 426334967 622952368 266501373 298694273 48568845 960744006 329026255 819526060 983825381 89117247 586753829 232033080 858178644 844295781 744558554 298064660 407152072 187325299 820151498 69560775 873136835 199980265 946598342 653486134 818116798 987876880 749510145 879573028 967712448 777141195 533420576 798980262 824884826 902956725 848795495 172276446 691055578 878287009 929947512 807853008 273771643 848891994 795585557 166636630 849843529 812782484 497706537 971791344 329982763 38307807 956022591 64541034 817847063 752424783 738138824 349800935 36933071 842801338 834500621 989700635 915714106 996513055 845121543 454125046 405254508 658679731 699938683 291930639 931753687 803991931 536397915 918255569 286151946 477932906 922554834 277868479 578241404 603875226 619296917 352019768 929631225 637145242 242457991 954269831 282383059 907106445 415578008 926816010 764138402 618037135 966704971 980097699 765940789 798216680 382832159 929213060 186987607 40596308 909377224 831150230 966424085 801900885 292167357 945230711 859692013 489522212 813345930 738417476 960627269 948189936 772078 383393496 823990788 172675075 813279326 921131919 304530657 47233593 986333383 982949969 283667436 826566405 290035 787805993 827174808 802614473 942532970 503292338 971801914 869842267 315428692 858543004 543048319 325728514 910972179 926186692 343952846 748237697 283124281 456682539 773411259 821183324 565217746 731195396 821093862 154969275 106187547 11545129 153864725 347576769 274840395 339180439 240753517 90763304 855909269 975622410 897478561 858671188 559535549 63861366 176867038 781915298 638479941 911818462 799873394 831636902 233305317 560958531 756480898 916154894 894272884 447631331 389356916 98063538 995835141 948195005 767361432 906350556 292005426 961876570 939889797 96780835 798662999 829664914 792666591 168544402 787517085 363359675 891388537 982773090 935343140 298580362 102554000 751824643 26621823 353196770 798402754 175123648 294579449 981834700 811176781 851726911 282972662 854105825 236434699 710602170 603534260 915432049 882187758 818576309 962467165 130833708 9602695 864853174 956872464 970799568 754910875 944387935 56944554 819111506 498998439 578781051 755713537 749286062 150825188 919283605 957000274 917798231 889073163 783706295 863011141 148836958 726826525 649040295 904999025 510613743 591326819 763186117 766014552 754555311 861251299 491362573 965008636 43383087 266855971 786032025 662949939 798129273 932036391 861683459 804362126 119995126 744577689 842785238 893134721 868032620 894056185 698056223 515811521 139893859 412101931 886345250 583203095 777439227 904850186 309114840 965003018 898018841 506518680 218809021 10394771 341024049 928260729 104860960 743630790 792300017 820938714 525997889 162876879 351647392 727115383 359010401 421796400 956175751 258912529 871162439 925035034 49084235 652340229 476822356 885714937 735518913 922666742 653844607 749345322 84573606 846324259 660067024 907630287 197497868 423091004 727455019 629039094 407334656 644252469 745368164 855228378 834055174 986920601 836905551 491709298 848070593 487318675 780054996 714634791 364858727 698930054 387553304 806266584 893748791 276706036 962705035 146804315 775352968 243699647 714880293 60644618 440552827 276602937 793079032 803427479 955391399 879800724 738135380 12611279 808176128 994593968 114859033 89027333 768313012 977891887 645507694 745361393 964434375 728241162 647354593 862364619 447421698 916630886 762319895 623136345 829132235 716110624 867428839 997384503 817976902 818095405 950369127 912506609 653482384 749807350 392674779 910591388 480125222 807773919 956339415 731678159 729663141 372973446 339264541 983459280 829487468 841868999 64762543 808693932 757429104 304798879 956050891 184571656 483309319 806383734 639069663 550946032 953334474 188794141 882563443 742357536 329000157 795957241 841107351 15664098 12052971 126070020 943920565 807381844 847981953 116984908 934862302 333464079 777032244 452264931 920929781 493537062 809977010 777235284 142309340 789286801 823159149 866290795 255502147 154762932 913455648 975811601 803501144 905838314 987712890 384156714 921370410 298363506 54266583 921782040 768744953 73057700 790212095 869161008 57716077 580107324 760000918 738946593 530629392 10031191 301665424 84889868 904096862 742106396 208373 43963357 807881792 847099487 17093232 764615963 630728081 319147196 59174342 798944876 598919752 495265629 497566339 981047187 230503206 741330732 121153021 959468637 358992900 270496101 812170535 879388843 833533750 259922519 42391439 852827977 663659866 673717888 356055808 831782012 77401510 758245789 400469494 75291549 809181574 416333752 845124180 142776895 863411181 998500010 758396317 681749321 763735675 291980669 449051722 845597268 686292173 669271105 939976188 555411238 887418021 422941088 29723603 990553112 93462662 936716680 939426365 287297236 761600859 932024879 987787013 867855336 693687543 424012512 749609232 761831256 752537228 486358703 857211101 843368517 428984793 948120321 738637449 844854636 926486186 979301490 864479762 575232751 234707110 753325625 745330275 719529275 472468252 212058592 400803387 758161378 904051208 954074730 295598522 842749924 965771172 830413119 910901667 768184120 515566717 637353670 301500898 924504595 440559870 583524529 960185691 906580948 410792848 740967557 136570156 179022189 757033190 814716893 28832890 22300896 821028168 872948014 882648697 719215872 976776104 973792878 235843704 986777411 338994866 651161957 798086288 300837910 486065327 300014343 823431879 192920609 893203436 706443058 502867803 514395810 896606268 710069298 411049442 512291491 169220106 480008869 931596825 988756801 825941008 982946185 161855927 914317454 301704179 474338587 486077861 969891143 404494102 952569402 757602449 161835982 854937076 967929147 762560519 948781634 936679244 259657779 752838575 694872519 754411493 403240236 835225458 679550338 619897960 869242629 337146792 14535947 972330987 260491258 636004085 656095023 863392321 770559886 917841544 774548062 826987543 992038771 794170874 579952527 100997120 606678658 447411324 823573998 714959305 929557240 286549790 578977713 746646218 362923430 264233670 795632630 942834355 592907697 976900675 242194251 718363228 781701608 442973069 331009067 816426343 936424782 221429693 539013466 771979999 184127259 369857633 297525399 377588288 988473597 778068937 363159114 818556460 799704266 499914848 367093674 142951969 831674207 887227403 864222153 22325619 847843869 834192229 477022977 574743381 105810018 59671481 134271839 744683569 582313099 27031373 625863825 483160557 890838012 941006934 427763269 575077952 754142865 737848503 854902766 658689125 838747610 887878826 364314243 11217762 753894162 293899373 799608657 913645323 972272600 802341199 863555047 860815729 828445303 65292491 755379476 342229556 840677358 767445406 783095154 971318958 877606057 817201719 156525631 855824799 958526761 938958712 904681848 976494466 807369020 668132162 990805216 490679818 404913488 996592294 779698535 926839466 747991652 392753476 594043759 24071989 783785043 582415716 563330815 729685614 575143048 597873355 831892053 748286197 84538144 676963809 576351576 98382215 726966123 151693800 889867538 101377489 539496303 250685839 956030779 882311684 765251163 920132572 214845628 871508633 34199047 931351365 276509860 119028931 794208783 205614270 951831005 971530323 819859164 760907579 988851807 986826309 570082143 249230587 451728852 840317687 794130060 744835174 758850756 109779205 826607517 314609139 190931312 565350737 789829836 281035798 894534948 980770467 309711817 86919729 283163756 250823401 913830604 867612860 286565437 373516145 503069049 260073603 633814719 716321051 885284764 933790151 881981000 719646825 686062245 448895521 811808551 876284766 760833141 78380711 524343998 782076709 72613578 503809226 569656242 331965218 373699395 978730109 974726640 810624332 821078279 436147169 971859199 875978694 345793896 777555490 977627917 793477034 986326636 380337859 830154394 854976530 830937647 717141747 846247284 677910718 690063555 988914838 399725192 506312076 806858511 372352372 391665590 903055518 361183129 500871112 567420639 877324376 992683646 56647352 76618124 782817432 881731318 809065582 934595318 785794153 922028621 366526308 58873283 864301201 946933017 878392057 200591948 993928890 60868458 923731434 967213745 516854462 493133205 831688817 95914926 7216037 750657009 36716431 944426248 141283732 737190011 954227091 586836944 705058783 661079712 252363385 777333585 233022583 836845396 973891901 807111109 357714836 497439061 400210083 892955148 38723268 872895202 940657437 951639888 830120881 989237438 12468664 784124644 212042743 771892020 740350798 107453047 389216932 998894140 335577812 638628239 588604264 806821731 751685783 998068430 963605668 186927484 74618614 160300497 942526801 469022372 939549851 850159095 321654320 768593644 946773077 206653797 936170639 656429494 742255877 71950926 820397565 821561837 639015434 877432175 468467781 192621739 840638095 86046751 697488331 529129289 909033216 141446570 942184988 542602293 841934381 664323103 335687465 141969201 647727630 208118167 422228693 424895619 916012087 832476101 800465999 915238709 612416860 484322891 860742492 729044765 69165619 992955400 508599712 596218353 236619587 790463594 600593232 812629133 110898089 852395011 836101731 871712177 577930578 315191918 805292210 600509970 132740545 579507777 767973879 408874317 826442240 773394329 760281349 98227968 457005205 513036470 744538377 839856031 820105943 663982784 259571792 524466774 900380509 965599025 751671546 103347250 984625849 583010788 880596701 422432239 278967226 937426972 150041998 386815620 253652437 915886277 812596336 65115761 837446525 953785360 785855198 400204808 868685451 811121237 816174028 610053654 835753907 360015596 976451994 489059074 835398886 779311493 763405733 791091832 940394947 570841693 270160847 455037489 906766593 581283844 976311575 925067250 754839775 779845788 143382946 112793506 810745411 949565943 3892063 331386135 989869171 266176124 742062038 529542811 861243746 609935990 854903166 167314817 118801800 859838355 822979364 369429805 767856620 409367554 893595575 787734353 896016658 985139521 556565668 829668335 709748703 52319397 960855552 746713159 785698904 385458545 737020247 512178339 491771659 782915006 583035085 406277056 937235430 79991290 666642934 876732059 772889664 600384634 904873371 667709373 408099154 94139721 962763747 79946974 748313933 908496825 789879838 963408435 383306397 859090553 427110461 827926150 850410756 47437297 26502233 523910491 916399737 281089491 374553245 931188381 556488040 891605993 352540896 830430052 658883438 791502466 923139270 244753254 836605736 738969251 864090523 229164010 760901058 564943748 270807592 845635790 357066527 905921003 37149038 878235530 430477211 545979737 233701176 904104887 672759172 917863543 446145641 446355039 253477900 752779761 767048997 381326338 771490659 794205151 846200761 919896969 844637826 227234138 459897865 455460132 205792560 810321432 857293075 822236699 867186096 860823887 193738902 416855312 776760459 945866811 614286811 975932232 21500333 55181954 547429768 723847400 160810217 252375317 147467017 482398219 544232719 955876444 466318128 983334129 953257032 697223480 698008137 303339460 939364894 833379482 477245867 996127009 765054489 827314497 665664036 94918693 995541089 24014470 658826736 588372141 351805776 906072963 241028984 876932689 538718141 783354357 382020992 781706468 871271730 62840956 544896794 937663228 911284218 883676697 780530167 760390170 319258591 527267098 679291906 898441755 344675517 163375350 819478152 476498710 317170766 188663240 416694155 975609421 231400577 798333639 925725702 900175573 895970285 963076672 226304562 743206680 479580089 388708592 567835363 898563625 150920281 39805285 477222187 737198424 922922509 80545223 548637881 270552532 313874212 954016395 874919932 893232710 754201418 765285444 818231546 281479490 804972792 182797062 69852823 144390529 154347353 900365272 631935557 818283445 473112993 241614853 856058961 846359962 293824234 793191131 362995652 51652110 875555299 118565254 810928336 990264666 127338595 947314974 843254954 847415762 92419049 862678142 775052504 723797384 561924698 663030217 558854279 111377917 503023280 839802305 700097732 640640105 808081908 795562369 585046835 893996794 642442981 937029404 316232545 418884404 811592143 366464264 921714378 744520818 198570743 751588990 937837179 77023258 806071393 572504376 298147583 824140851 151587692 55979436 355757099 93327066 725889721 226752111 81104421 664514596 371841729 890104915 180210537 894793963 940283547 939728614 79011303 226866662 235417780 147310853 284511320 110024476 447282008 400654517 56091920 893041157 974227046 615249623 171136869 259556308 897823098 206022038 64273848 871731724 326381999 651418756 836973412 873774364 914687855 362793332 431034298 264528223 586125184 828387523 924682796 75465823 840446251 149648712 940059871 464008017 495587983 983561491 953732982 753745077 924387643 78503550 305449491 64350943 847016728 298550720 814589551 347552126 760400123 131796720 902630938 996775377 322834933 542269228 900157331 358724923 509989217 644135647 105429465 771723873 880097578 805107312 872124991 511896305 837991520 813926417 44707443 456156635 960835245 211599813 341806303 847142141 337970954 966415384 687233180 62666331 852063119 355749307 409810091 758521506 256596269 282832818 217901464 774606756 286846564 230711034 702368174 630503303 421776961 312262179 947341324 38421960 2025217 882881945 854592796 757879476 699964019 120285239 212513930 709320004 833924750 851869208 521333570 948909010 773151361 846249172 867485904 969421403 974715374 831959470 778190946 397810195 963545230 531932528 218335283 582503311 503676693 729733497 309802868 976920512 596980765 755093964 436570488 551144802 515533425 956814681 761386324 888667445 821259402 983200760 169227753 797498604 189937307 867500284 967828340 457337424 940728333 410049480 160741207 789302356 862672128 939014674 163924797 473296680 745882850 194461775 699035971 797764424 802987308 621934198 385307724 798505955 875231354 937035170 227459443 894236455 996435291 236473574 112963255 60371122 986184423 980347297 625033104 670301538 223469447 757116383 812212261 971794512 370300502 72845191 899922165 626782030 551750687 65252758 920334000 891438946 342529577 31544961 786609380 909529455 839630155 636319979 860587295 797472564 971436554 570082738 756541588 413542563 899570978 168682790 81424148 593336584 897847596 777588666 918148945 741345465 319282696 948458888 866844100 797204450 917271745 196587931 589792961 968750616 684851251 729855628 193426248 975235478 903072810 366864191 994324022 946066048 918900840 945731290 835755938 749070227 625740213 923484803 915980887 893065914 814374698 968469711 892747931 747053105 24108561 772831575 314313765 970156929 145894262 257965206 545887189 147217010 741047496 946125331 488112587 708434700 435233095 299440511 800287063 742316921 755264712 857006690 907633938 627944274 912082878 897781250 807949610 93842629 973779292 784512961 293867954 796697863 871203696 744014596 991738291 471696509 800796624 888465423 752596510 230632494 527897441 558754118 887021028 987901469 655201064 749837785 927667400 970906917 848557225 1892163 882476393 878477925 832774088 840407858 854958012 737020247 800622542 791624292 370953305 931330318 872257667 763593693 876408447 767012318 624672865 448154094 818435433 507378961 915687397 825628785 660803086 684279382 242648823 814036299 866898483 755860585 932159113 661008175 744077887 12213796 842347827 759186458 993111811 377197053 982357768 31453461 837467921 906651572 236265153 8250113 717397284 931117055 330424483 227213183 924271713 280594152 409841416 590384047 889811136 480559584 868126643 762378848 891866975 977634973 499349794 428283107 80336265 743994188 833905120 535432182 545602856 293729385 925516913 961046303 782642585 908305010 835409061 962498623 780006883 794938987 969438332 24442396 739816607 607795518 815703861 266246833 589951476 72220622 434616686 773927447 443008696 742185407 123587487 815683885 885328074 836837158 172462128 883379077 770871701 707396352 947413163 899396836 717557779 429137213 557601140 896518022 541698196 108475663 314614962 575506832 822833038 934732713 434095656 728887812 744363127 132768345 913816218 436133119 908906140 929635264 761250808 913693194 590166443 786035722 438908798 353746157 420707688 767859091 891630361 950873606 891327708 766535592 981670073 24698302 217236777 927221471 945635552 845596088 20863018 606176045 630718088 117537013 755041083 945995044 938087662 967161855 878906722 725055618 749089012 876350628 689343559 431503987 904666214 608271906 737020247 916186502 910656829 366724779 408066102 3363947 258655328 508028594 909441144 366720211 795440251 719936756 851976574 730090343 62965970 368947648 43274410 935035475 379969054 741765231 949080091 850355981 693256982 565341724 268861776 757944014 769665088 673367955 803731113 881710884 44095110 529386367 977233491 828403421 115723721 598005764 482869433 16916499 471574106 958362685 582855023 861213887 872765462 871050325 115178866 449238425 901223850 806708689 875141029 15675143 119843541 809452988 139875315 654163077 365489082 454335369 850306382 858396318 381381895 899357769 599098526 678953268 944329517 210751485 432281556 822301507 963046935 478819238 779019149 90629966 96184394 803242346 579657629 863303450 620081899 259866120 611087414 773604488 844881424 44841883 932390937 781341143 532136338 886152613 870515274 670608016 869215857 354955989 589736644 467375963 917240326 845132347 407088286 624069097 130163419 761746887 402348941 657765924 986148390 489013096 323587278 258032146 230274517 844686286 237621789 246146190 606449623 790303632 780348151 85098117 524304497 783270557 244867903 750894703 337490646 973235145 789563150 334378298 771300636 184735981 323353407 870466845 221812165 839952503 820982192 789238192 219631276 54769833 882870183 980009040 571637862 795863513 102747462 804148690 160226793 858502292 76567470 71586853 993148829 806221969 814509408 788540324 863673994 420651495 322275287 556832645 665371516 902553574 52188407 882684240 819860067 788528437 887309333 887891044 802895276 564717347 891985952 427400012 825341541 824294512 759059444 263595447 381241168 216766792 275655648 833467209 805173367 974951880 595087810 837179267 141465553 960076868 264402187 32674669 466985607 808759722 692637222 605339683 988192489 292905768 986187977 697300020 753554050 751503668 917120950 964036967 873867898 695536250 566842665 438544348 17914953 163816520 812135009 871331455 518169228 602517781 808912972 915339864 935033495 987914675 444436732 753967502 51080462 441304842 754624683 848770055 491945145 880505519 952687452 695104035 917948944 898621332 841666037 768030873 776443611 824128627 184424386 110880771 762471222 423244564 951566094 728932573 902754565 358254258 894274244 465215037 180891230 909854027 194489535 998930827 328221894 365099683 75997929 916250453 10817359 385950022 342306056 385757114 789957070 93829185 174775897 787307331 814427426 802549508 858956275 117157282 825120526 37742849 759064953 235353837 271311578 743772292 24775934 42739062 968972297 308219971 807671184 544116452 765321506 817851553 220466399 108192713 287938733 121212344 147992918 841347279 908464902 821394137 964657775 618778361 32601672 583394274 454912478 781933215 57966394 370887742 5545846 390239902 859595965 640999072 895898431 64632181 351523045 58304925 916628733 101224087 806728990 565405165 764768311 3562764 13303578 193069439 278298886 913022206 525717557 960434851 946814431 768561863 886335108 711580165 14801655 981318269 977880555 329245231 918527189 250452829 498568815 326402734 818028829 992113677 2619530 486531075 926644531 262153224 906987753 767212929 962567954 614334852 37234552 824722874 779947513 886552403 81442373 50369529 163617896 590079626 351292774 167367637 987598926 176104628 600461820 429321830 806746300 66403696 947380422 962447725 978939613 477429958 502893481 838924308 998030044 765495796 198719415 622760915 156827260 958626690 103668338 799305063 931183578 38338982 884343998 19173809 856077500 126108967 245000277 58555176 487627148 92297250 778974691 182782968 294304869 999325262 891669209 50369506 969218571 531108306 976800951 133506345 186981055 964125207 276571667 18884178 95947072 292261361 880126318 293010970 260257695 488441291 223611547 880284547 804793146 120244617 388999276 212036284 865920251 520251386 941205902 177223964 989374562 852056202 928368701 855487339 821919807 331726684 32879879 907362732 282317221 737020247 420879845 537805153 902884968 283658533 6197143 163095593 783536669 899347764 423171279 351273002 794252175 903897871 642470128 57458930 271905258 751862862 685644982 851815073 863532531 478115499 737020247 790719969 755771480 908427547 782368148 700314260 916398892 644261791 333364725 743076677 225716341 303781280 565160889 185442121 939760475 958820924 636289658 788890850 98188599 612417180 880806901 365695480 817202054 446735503 682752146 757176332 760363282 940520151 406362431 861838039 810414495 789339489 880220472 831516480 976819755 227367038 480633857 853612822 858663367 694865327 510113775 506747529 816509830 824612469 972933860 238503351 8612466 361326915 750464365 822802069 954054518 854039957 135085540 882307859 705455267 751948569 803706245 331296468 460298103 876367585 934326852 238419082 54022171 267452431 242583344 886892394 703461975 823481707 888638121 800404834 535731855 604563619 876345127 761253949 688337804 590470710 217030539 188969150 295047234 100630433 758564138 367196557 465152206 250423213 600069452 971503321 819184986 98053348 399155376 162295238 576612381 225090707 141135601 948896643 527668554 528030277 974596459 735403286 790878994 222191821 865314531 325885816 917010178 843106689 824060989 768205035 291505031 543826077 264520748 851702273 853940971 552506494 614070436 99433543 828720740 665262985 388862465 849064009 228921401 740079925 290049311 992726294 589419249 930912063 946732656 981132681 199263839 999462925 884696906 472792855 114124557 607514158 161815078 526143862 685306764 872961830 155859951 629527573 958434960 303310799 730550835 954746814 787565022 574222103 243536985 780579676 31302039 150746057 737020247 644701934 133907269 57021848 798744259 774706477 701082008 372920882 665754392 827961572 788806884 588093762 781782288 954002520 185331977 763216238 868508783 12988267 305354055 846847216 909122426 983621185 848862408 921097281 897893216 678549239 126025049 328122722 546640329 430813303 725742410 978017442 64521751 579679084 769514706 581949894 914349827 84781292 743229983 905723484 75259026 75579532 881096832 119817874 242540405 230050306 644678374 541897258 947733910 831338293 946366871 591800464 260685813 397280514 569897319 856261262 469255018 718696185 967670244 958396282 122952586 999714970 659904363 797405634 205565900 881218206 255569861 940543078 782059650 11477681 888565828 529376032 483624381 38040737 828159380 796392335 853301922 959297624 33492919 507275731 810209597 354513028 803015894 989510287 806231240 673156280 399272291 611419566 992859662 801473623 990149838 894353189 691038675 821112871 611818049 350509915 766183802 796350990 440640760 228436497 844426925 876794114 321391810 752448334 809287239 425525303 108065500 23562509 564835779 945939238 894479138 90750622 476015028 645639950 647962924 779343484 962187178 645342245 863530487 387676736 619922675 949117882 176587287 752438704 222554465 379035811 948810904 704033685 676396867 165200736 983226992 867749236 861996414 896611642 882486907 543623895 923902477 715445460 207949878 411715974 815582519 999157085 142168006 986968095 419302258 744290507 746112471 466831249 966165483 866932921 633698675 981315775 34602388 515101156 513725165 444117283 654699184 421841646 880068030 952799931 437867078 929317698 579880181 595061195 912605832 114396006 903972161 164063644 747483567 855843714 102380962 860434036 353915304 914576557 834805632 600496125 493224766 784079148 943950215 329350784 262940385 549375722 344323990 471491423 845421353 392710098 978658882 913287696 737020247 880492634 802826311 748600915 151203840 770879980 415507118 929566903 82107905 897443446 336736167 886770021 781038297 786390882 371574786 270798124 955795536 273784681 893586716 780102380 774698838 755451987 786596697 568112577 953088344 160842331 425819406 361663163 857329801 977349016 991689415 895106279 957344788 828150349 902712247 775033951 903175255 890679470 815352935 564999283 966891602 740717175 839583291 345233843 548433735 643372321 270757643 795909043 701195530 706212962 868318306 783533727 535623788 181800010 251779747 122312594 435901298 785986687 32489413 764916035 908152019 842776700 691172446 460589619 589278421 994222407 986000272 841530386 820217292 425159273 711902764 809618037 461276452 878612907 937199029 941345271 930169065 780956052 985287128 866764848 911768401 424010230 8537879 86359911 167816717 782594682 911439007 844583593 792568395 793008143 715092674 925502337 975051748 22112112 725234241 746536995 716692168 984717127 781591856 160455846 405624522 472460374 955883226 163229316 779860843 646153276 830027367 837786259 785170705 395703766 679780308 599336266 955440710 853762233 297235996 890788281 972003660 822229910 913350295 845219941 976756878 75898492 592592332 677645204 780412186 910272331 907650699 137610979 940799619 891426710 520406344 103442445 985013537 626563910 735568974 295129571 652039293 291445564 560164297 442294358 681235664 643757611 750064213 130833823 866119224 92864572 770271624 83310205 922016192 964970728 908354187 976488858 878446563 833645261 916651177 96339693 833097502 448102130 91857230 557669597 875322374 81532221 636558773 750173546 215556860 419673166 635829198 853890686 423393502 839126938 401366230 629893076 798640853 790902549 773392565 968478513 782899978 589054489 608637273 829494546 921784404 576288018 724906441 358232477 583728130 817953415 795470695 973430855 101843038 210229186 662569167 928492697 763837369 628787396 686842990 127479674 943898357 592897032 960454175 751450892 732969594 740357958 951157132 171970449 573857777 585222187 303201220 382412636 774465722 764575287 890516313 841621109 953354991 976818501 912226363 453502473 837923045 460777078 870004074 889350827 919098536 412029785 867186844 643929171 563849021 437387064 836819851 855412261 246948615 134331549 748749967 175750175 140470318 874999776 200898264 55310164 894957491 75447416 362150482 14894698 292126353 825264576 501495854 273259605 155226668 751615898 747880420 108663801 899336786 569132442 755272834 325023566 875693447 766877693 479841303 702083567 934731571 769780692 916175226 864322713 816108249 730895773 809028662 130465882 344395393 908937881 756140408 841565874 938869311 466694649 155414655 940872770 772068394 843385571 157636050 840456098 681479505 547928962 776536908 233011451 916537573 528830982 768874322 879095077 110763233 552903942 718181229 601184818 257947152 911393650 701990696 110342946 799001189 948316761 329346449 116896980 750464485 263554025 119821561 868168709 782257858 645210337 88038012 449381995 358602954 949594472 869642506 186078988 893841821 972057624 933753464 767488597 961115955 887843330 725621498 7178593 95479518 780962601 243085618 915304587 817913698 801439801 874595914 742838774 686187717 870463062 946050373 938932783 156884024 995213107 621741910 985174759 13043581 240536412 962809360 82920296 169978019 803261111 820196998 667372876 66431447 596126929 778359147 169267529 393109794 10615895 808496897 981918489 472938429 824783076 981763958 19535382 133188511 405779356 310995980 915149566 648334073 401959460 776737751 158337795 888341652 331976703 972296998 322025121 534849739 702420634 280171343 830463077 823199060 743627512 779602670 16412614 380519870 731554624 243217126 711536052 961422487 167093607 19986326 229936780 770668420 762922869 751988997 836745465 913841715 499813903 845371454 436263734 830736517 985328899 895579020 884350364 814479721 505473060 782917461 137933028 911715851 987388302 966208587 73132303 616000483 959130601 867037250 902521579 909735889 556606034 831578873 713562438 70270800 947369105 744410409 777717986 355681039 178055402 815258884 880857667 584263196 818864012 766621491 845134416 392540461 879773337 945713325 335078438 962757164 910132474 795140486 364662713 915930074 217562254 458719381 940817939 645414051 833776665 141248279 77403551 847906621 57902556 945038637 100295904 975393397 560270101 730352826 840311675 893041507 327149776 737801795 453333826 111720057 404887537 737311191 838826927 630295048 267898029 888207916 827056369 757083396 814796342 374111127 430846114 68836427 926762691 920990337 261627524 881435561 983114450 584897848 173983427 802227067 754755057 174608747 165908547 342640383 996285840 322826960 785690531 595988166 814716303 385539387 650367705 191002926 998384989 797655968 926879583 876760604 7718611 490112445 280834935 971559830 603208284 755310199 294555656 992301016 497286153 755064958 360438625 918296072 607031280 946603340 805491266 176799510 973445409 890903928 447318845 829024791 937342566 771824140 802246828 942224743 186282196 695903980 654805855 143164643 965158520 364706314 842117526 986823610 818494686 825485757 150507598 797427690 185002163 209610681 117083194 696931836 929936617 383154271 97557984 81959652 940662662 713723583 772930080 845999359 940738241 794921262 746721282 715719439 5619886 785956113 366853507 668461777 45498746 137884342 825546090 18103263 273368111 988485170 757285420 797779373 759009498 773963507 860678406 807497910 722085247 881325616 759940934 770061269 634811847 913803736 31475578 296460186 890259228 21330563 469479583 671848055 762769808 478986152 920519850 226048667 874898756 657377613 375538014 238913538 820436841 887190624 841348773 947909465 301166977 712046658 6185398 407324979 975348389 848126090 986856719 777467598 848140866 832585936 918610928 86800202 44589891 364583187 852803315 919339575 311199139 977332980 845340977 380957809 214130949 936555338 217934229 684292809 923621149 696581087 909536213 612697250 699967345 853119198 792967028 281595408 126201863 769977217 954562835 799775845 788768243 820614726 839764102 186413014 840216231 990831088 971668355 858084128 571889012 283223043 914681420 863738114 744894488 569514061 551729650 504452026 299412734 807643580 167271560 766014862 681638603 727666777 896207895 114733645 253035760 933136378 345237851 863929262 339602695 933890250 852179384 483620418 970504418 694151282 207104963 589165015 583369474 914116189 443650391 997158002 925374746 973283235 239041030 793899489 647390702 209447361 869196240 884158087 897726745 895881681 828444179 388533341 873852500 651381812 716211686 995559463 208328512 723531251 751868292 54067184 271963268 737020247 999157999 240081531 695926905 899817718 566107604 397946185 126882810 792109828 593874487 827499366 508403196 44047894 749072664 793441107 841495908 879024184 928332718 992028413 904145485 423062808 947293848 280127195 276756202 879504463 605187970 943685908 762202309 654293631 42166588 955646090 872204878 836104256 79598772 783942321 925931469 149329350 755792524 31059827 888855942 464029278 112018279 171287180 970399247 760716697 692822295 952114631 35309701 940393958 962123415 633002219 522157947 743008792 801228365 480780078 776697518 844172632 976844546 986595129 57616232 222464274 103478323 845792466 531403804 65927541 980003343 744290018 935228680 264543145 986572411 719554206 142929659 835240437 838304556 833627146 169562725 737895655 674217633 305195391 860586977 968858101 633440938 763010131 778335403 844328486 804246542 233626178 876700632 637300614 744789935 602380634 776600302 858570263 759226789 826071319 778730450 129339130 106067732 524050336 231991754 433135164 459196099 739970046 411307256 832423626 500970311 498783427 774091145 954114260 424927168 18621252 793003967 993618190 451845661 732352213 944740553 854162281 650127851 754016244 367209850 988294112 667397882 760832809 110282588 513691317 223599617 480408073 813277279 939340451 331283314 693993768 35787960 49082337 746224546 947435066 698673538 901611644 629923076 210331924 564764878 526449877 770475643 628892500 380861176 624326747 19275041 997034057 225623170 238881598 594318438 737747411 590077060 848386729 966162420 227550838 978553440 546493550 618022120 48709319 777075723 188060722 66981208 428170221 912143421 168934009 84778245 742034638 737996789 772079340 293312111 515583645 54950900 939387731 961926650 393544631 549585321 974384077 976826718 949138786 829562437 794788979 949708950 143865722 514537330 200176563 273476109 737172851 876901074 655148383 791672487 847098219 783830352 896696619 205559547 551479094 883611831 736220608 569756394 658235143 976067785 359952248 886980721 617688759 571943523 950538757 915134865 595739361 764914070 945343666 365419825 859875096 344382712 78675304 833300189 127283300 371320435 397697008 763891334 399030042 927642382 308134947 269024654 802893460 805054015 369716209 84139962 936775709 303855253 671984442 815302611 916098690 865780277 682235972 954617055 899926156 243923641 336880194 995719209 800380429 568540644 858109508 842285041 44929003 928676004 792609328 798212894 756516301 864525125 52692153 218435542 638387247 937311620 525313486 754231073 929425720 420203170 239129006 228042469 714902534 893102260 401130491 822548724 9343395 880878684 804064529 983318836 41050668 270323388 874880660 946846481 930801850 901269373 115526715 829683131 888296058 908199176 817243513 359252907 134526757 817696734 292316526 241703034 993653361 991133216 761725153 734245792 980164298 809712822 463174968 76354961 905403567 57319436 923796361 203930257 283627030 446218340 757540806 490133688 743755175 943605463 854422636 891054390 895205097 888126225 391986142 942658965 820062355 452309442 777951406 765637924 374312512 965421970 607215129 84907702 557927987 893306323 781382079 385745287 442089326 66073284 397877669 424653059 767003439 302398124 896229313 207852626 230201920 737068819 985395956 746088125 291573865 762343913 870361046 15475075 846280772 964781307 871029847 713846475 41777358 316048858 542958165 951433650 110987990 429181270 903612425 371530296 745820949 944838343 675696008 78094260 493785559 842371129 559055769 995325515 883325027 957240487 906900845 885105897 810887045 981766100 993774496 742911359 131398190 1074229 843648417 539492585 837354728 869433192 963052623 839099669 472611539 750689122 899268574 650081180 742667819 543712468 798112669 215367208 888576876 656775588 860982966 88630624 219137669 895937580 739430323 997276790 802230512 745709493 812285663 696985144 452307307 227852678 770364634 76415091 57729766 970782343 893897142 966728351 918997706 619528229 747584297 897564295 762923870 856810030 983711987 213233382 980518598 691863012 757949639 795206557 50448965 421967017 867791716 857553401 141179281 987024534 881529532 912787677 822369370 820427747 414563107 163436959 855669789 789261484 425193483 874487603 148647596 837363160 160840311 633643765 827079873 812367715 964703950 745154120 386066108 777705315 808724569 965535728 658062212 991194054 77715687 804044410 674313527 932495991 885973554 931928462 26218708 458312285 856877959 315468396 305367953 755914842 781723852 666317784 958031481 870315328 1186151 377809644 456170200 915229312 741204070 234784739 533312015 20719626 911936618 232065950 945704149 815663261 33180274 253882439 461215399 948071496 253309619 889922169 523657874 299470428 848187358 861857382 818339798 739061225 81540758 963782435 547229509 244382002 860164695 807413083 885835598 843370992 953677806 581683402 93545054 23550101 11359266 128318749 719868117 215608142 233134542 366457804 805039508 794210234 220608939 9124004 915850540 763842963 838851310 848648764 139203016 741104707 781428206 954373674 119581656 747614714 681301761 243953471 886181472 923239643 962870547 773326378 981413718 78646511 967564200 413485591 640959963 602487988 753149325 430114193 891078948 800121086 996332059 369306362 605498222 563662606 320077621 860933359 700629509 373639088 29894267 999271451 168525672 397247092 353830967 676238429 894410130 774599342 3573897 967840706 598896750 10067161 783894162 474391304 926232200 400865152 620254213 771152143 741778654 984191332 899915619 893012943 621662500 401968866 479554191 558836089 88764721 533089573 832892594 721803250 990181006 942516673 659880935 963677527 301878199 322146495 780208829 332555472 265978405 894372621 453950993 696533181 588042335 852015161 979625935 145443151 994558346 914474681 47882331 900592270 276305617 600377767 714092302 158105271 512845693 920297290 693675876 330548550 219776985 722962966 32320986 826475850 488947405 971758203 755420152 413783268 364980667 235627126 741710689 351717065 823754427 36790358 276798228 25810595 354008518 352409077 701293951 720162822 468897849 34023459 451357054 92503769 146035706 123905975 668095586 773119703 786605093 207609829 850357024 946606981 97658623 444539175 746102815 626357332 737302471 50841052 833329242 432944312 633609876 691645503 544659608 851635447 123137893 499879569 19113462 349492851 966019902 396779219 629648062 172038846 250073057 798814410 225891915 983687235 449515848 745461545 93156269 766063765 933333105 855564805 357386305 820791384 944190975 895035829 93293971 748259587 233331299 194545105 960723784 76489467 666041639 383647630 800344828 976242501 954676753 181034158 847407222 248412317 780015434 497603432 453046317 217562177 861250929 256860186 623984256 786369105 827680313 59663130 583366908 762449990 74604156 734949436 959523756 16783543 471911848 919223937 80236452 755661974 750181531 580476316 755469785 555221959 774165286 117667918 833582986 559662106 745374253 750288124 709173271 858572385 787424005 923542590 953969593 571672095 290457054 919389099 990353104 750410811 502921435 594949719 457391565 893130416 849902776 959099939 211868690 932791858 944779932 931699215 927433425 937000594 743199031 35219607 290351916 751575780 14709034 683720606 651119150 790763954 26426982 558770807 760931827 530167968 898197001 804777200 843987142 875218113 363962203 958129126 869856852 585375948 706085757 925902466 11034142 980269551 165887127 951179040 739781952 407241712 51981153 940520064 659493043 975904681 732936179 826225829 678763811 795094823 589984454 842318011 788460536 870355275 942783181 631368641 664881835 958244129 564466605 957039109 2952095 843871819 650300147 2895168 822540024 126413095 924142704 278376022 794952164 952448511 750516173 895117194 525138790 454762498 776603592 773971052 5326202 264871681 97268647 905398475 978662292 256358223 435977513 784670892 123867396 806066626 791424365 955779414 290425419 867964504 217753697 839492213 412431486 771578811 108787533 982966639 913015438 869201235 903504137 536314542 728568832 575126079 741730858 854976201 131316613 163027060 401669717 141499544 152122675 784379484 850277932 907878802 772471000 852681398 745173495 742366962 771007273 797607520 567766052 965546761 956919039 181548782 933103377 178218542 916347333 739219161 720756099 833373139 74132592 480932372 922058787 632443889 147151686 325060065 726982609 118367171 751430857 472222250 294396844 138321400 480834208 268748385 846944111 985373534 630954520 757026223 997641789 264695384 134554291 894102410 817780428 913893510 87243380 511980143 760101675 773219084 25825495 138346693 790580096 611280098 922187873 792731511 888619732 415594100 976074320 817995894 235007072 967097844 250744779 292137457 740247480 575340257 729817954 909266033 758187583 920156615 489336938 105735704 847024759 958168512 885229869 726459828 491768027 770426503 671737635 287562148 191364970 411119347 76168062 572532587 796699514 171019624 451534753 836254294 981820950 38104415 663588979 883728561 834216280 186908764 790594709 746618540 961982760 955737635 842670329 753419607 819924793 564325820 739907383 504168996 623207927 859803486 281762807 550394445 748290184 378939229 671252348 120403063 147666264 356738500 697660526 179063485 761511441 813585938 971320324 175356401 960934629 821219945 362070732 231572130 854973821 909520861 559443772 95164584 644923781 400940491 900343041 167443432 806866638 966109707 755137429 767357441 561395852 755580753 582621297 163999902 292459057 947200632 985875217 991952507 354789003 826085256 915671707 759042428 787425056 656718119 441841941 970342558 327751321 890947562 802239727 496699820 301281991 834482560 425354496 919718601 318844652 60567241 756004424 97399787 60980711 862951481 305452098 942214925 753572665 535141534 71907866 134153311 816051814 951209028 703887357 333212571 760031590 827520383 609514847 887545075 785114362 673416486 452108006 886538720 615551909 472218384 865045922 453604590 937086625 547705923 590492455 537515542 961783496 30779869 359218878 278015140 420363547 149898539 101569937 803874617 764984497 842813711 923108914 367524703 533405582 813443118 152680172 195327445 239261096 361991164 887023215 106246753 646068678 812902755 922616255 944910320 642025679 414078513 381195436 721487656 546924703 249100450 476755802 821142212 957875046 777851818 815141944 352284212 393988552 983083476 396480514 907244536 420771489 198438829 962294407 437965863 254675186 74342238 998668280 495593054 793193860 956724643 444297094 502286880 946067304 768973912 469516037 934685066 943515951 358454708 488994216 714058745 776459663 282722144 939958487 898896426 867514988 890885839 889845726 201951376 100424048 746698886 935594169 411661239 789521178 249710801 927666559 913498378 877498872 63550636 582788509 142919745 906010290 832573423 996453083 552508983 755603174 937466278 861673959 716739432 72762911 816749712 883915671 898545418 324115454 795137686 485437022 816645601 413981967 715044125 497505021 634332299 429382224 755176119 615897244 774279595 776136752 518928357 975391565 721060519 796465971 899819341 766733566 776129335 977444860 406734162 590489653 771035891 892862282 631630585 46239001 890911428 985875866 226185934 520082282 223892 956101755 963233105 241444224 998852668 595614387 888883495 914768704 824280627 904005806 799975524 892679419 396041521 651684025 928610796 31311018 2776974 140999292 832210240 135797167 992151321 454251928 798044163 649950231 220837654 935028392 750960351 359309702 134368853 233368474 573386889 985008905 966433894 613801263 114366518 991592275 392382338 871170037 298491157 962042771 382202228 782776335 976513939 879159256 800984954 892130799 900055446 582875515 900777125 341206675 147678799 763867051 218337892 889292020 959891807 898286604 874136525 566459763 915943714 534531758 430584549 330611730 337620980 796005528 37505774 741383736 650472900 901749093 952883502 868203540 760180739 360711919 540186164 741534011 67653193 388108329 566411822 812990040 680244446 967617667 297830471 550915722 944627852 217096098 278710354 247180922 526559638 794175336 758314003 861808110 940170017 277084997 611950588 249279195 423459812 192468078 66205905 188511674 638449437 824877889 78010544 840967965 836097526 885155965 323526322 861838015 16585991 795909468 946391045 847797942 942809295 986687547 756889264 954607792 880141851 420010190 73195017 659298615 10942971 833293262 564129050 338710370 50427593 743617058 842462340 963319652 889695449 95617787 742944882 949111166 742197727 832953366 12815120 900080541 433025723 219977773 374631667 996224631 419777364 169293809 860313653 160429293 432961441 936598369 858547837 259663646 307887745 685724673 612435 856299297 229677262 32965737 811468739 942540895 941380003 280851897 802331730 623676211 140304899 958356965 728762722 159884881 124877045 965399318 46414111 825734767 791290186 793342342 581138941 930160345 771248978 823699360 857870246 749080850 933525814 968927185 964109051 733212792 634188510 790330286 420827890 33244001 495120482 260106755 815847704 65665205 55928360 902576558 30770428 508699102 770492205 190667007 945165316 773701505 653058176 144521276 933599216 383275033 753948417 609553101 586297263 718001 358667148 784965631 518089487 337342135 999212089 774087698 742176915 272779966 174541117 404043674 494568086 789841943 843810675 962634641 923050899 423271529 939471269 136864310 982579466 803574930 15680430 655417665 975920131 200315272 951238298 464087386 823290569 201286031 700575852 294297055 917307143 524480554 769991585 782218043 533730901 935330534 705488293 983599111 561478157 748489223 54033175 21522358 715855664 906138013 81915985 409798307 808756749 829143712 249549764 791415884 381481345 883155457 322708441 956227489 507329048 770405335 494896950 638921556 510714529 201518703 155301326 989267149 584404768 702794860 433731525 418338879 840610755 636788234 280137240 175491769 943893657 846751599 310741862 829311766 886378365 994089898 771283652 179612467 935786732 640104294 769749095 962933779 61969560 110651810 790515136 996258603 161989820 309748994 304397624 983968786 944865817 31074326 480922802 602887359 147157142 265892455 972028384 270248610 762889216 494443294 98005804 56586186 435694072 807795657 835364599 835589208 259487499 623106557 204235292 962789369 788088936 873406424 635398727 136001461 25272079 227608731 898664612 716057013 931628457 313601788 834010340 755245441 918451463 994735862 881376318 872911460 931527675 725730226 797808645 743006550 817478906 347960639 994775175 825619579 119028517 804609611 390881186 751464346 399057301 888836405 123635588 742625910 821349399 905269964 154940193 55329107 685324035 875081019 251044281 938619892 315894038 512958404 791367343 199852597 488629328 823568732 126901420 996065963 811999320 578877420 235122151 843208605 330511722 844910906 742398636 907029409 332461048 971808212 49621236 525651612 573594197 590767929 880931418 813554236 740485904 737167048 961663281 890084637 788401579 822055076 591445618 570016708 485395312 530117176 711360458 108035615 28956307 847664602 887900464 156525185 909606355 988215701 129405368 974576973 984218390 926540152 181374166 819830165 826797834 679488141 295954461 826543347 215553310 192073639 921268686 238965202 495804504 445423190 980216926 496528985 395191857 188338294 787080580 467198983 593439032 411036847 997881931 7693001 924248344 579596635 973234314 127632521 817401865 938428995 804299769 152597327 750651661 8419916 335466160 261006274 990880922 844382850 905130222 920405683 423670496 896217404 396170020 960643650 209727449 861075747 597845195 277867692 681475373 762700558 928762061 809220311 41245699 841636496 937128344 882784494 607971895 248101970 822762267 362086472 167726897 240831830 396543900 389262357 639710485 560431445 419692115 506125702 870889462 532086159 761788926 911648595 292276794 926287719 229238843 677900128 921530910 445181428 951434071 340872268 885899222 229453048 255615159 856939762 298148676 817256160 876799476 914054998 848427169 752544587 621003489 522152778 608930376 288240945 109182137 956303739 835730183 301833165 939135205 922444084 876062443 446384054 743319600 899948440 989473805 521337735 897977763 836571065 869556155 827647616 941672784 102257395 751446918 751069119 889037431 615213848 746187344 970444005 596550508 520523556 560670995 922850813 143421334 870056747 428665524 94584946 142542264 552168630 914813688 915851860 946738686 636328118 923934735 808045083 679212570 371826000 864645030 816262410 478810584 263452127 840163902 139070343 138665482 853241156 898803586 473462620 353096440 963636056 989299724 986852858 858318380 869745432 57865390 541708766 160697724 527841530 466212253 249232095 748556193 753783361 880157801 354610273 967960434 266332239 855815328 870162192 645834717 400310016 657795813 830739771 308188017 844772427 267637915 346650497 945028250 825548413 427063091 701585272 820079402 889361916 749689106 115452180 476977345 737020247 487088456 624984211 840730580 211383467 763349807 846261470 817668994 827348418 348963249 896044264 548789235 172948332 949125466 815645215 130342591 799388588 877616748 761218347 799897468 551193707 596346443 424045878 792426536 909489404 993499974 797636608 463004637 865663938 787397823 697214174 482388408 623889463 81018227 928696170 739010552 966277912 737020247 639377098 953603616 646404617 804455623 284482064 530563307 613893660 574310483 693883855 990311809 903917937 446692278 797307328 351869255 4495752 669321318 743385168 836772888 752080894 750623885 637603364 793110995 950749594 744417753 782798994 741653236 856161832 737020247 726428455 164233908 729752426 54353826 842266442 829493964 106586564 948849211 207633765 759399437 972897101 868787194 42253585 897208884 724427479 953356516 753639160 86944602 826605551 827693811 831031028 225143366 462390183 854033250 276478631 366227051 42293885 827413052 908735212 859051381 503259663 755368773 549314861 183619048 905111821 769879339 61015168 317677410 601704099 274267724 844276534 52572627 545582023 949431016 187956048 749286482 931471428 859430982 758875933 346926577 375025660 84628732 905877208 994780996 739559440 375864467 848837324 927660777 222035014 767679239 925464498 731499064 740725088 463789741 442761134 432922511 957883165 629071767 527320234 872746662 906048600 226124214 215799942 93353407 827588473 910075823 214468197 257221569 318378370 970715226 247631089 844287894 667149600 924697371 962343640 524828793 270773053 380784582 782313542 913030141 342834080 950577992 171420655 250902296 910046346 961786334 988514405 673023955 870386506 890468216 874647544 33875638 757640667 963242896 755184224 737020247 834518279 882254503 895676025 294504214 992178144 506073613 378749367 824131362 177949323 756571184 665998787 526721989 779508353 991190202 270220919 379762829 922615927 636803865 856900357 75312999 157051277 713082527 440199020 332144461 943795273 802257130 951219377 590766546 952675323 564670406 974173516 474614957 729143435 521312649 418495202 999972853 851824630 905524067 762596945 898153233 795123201 192302841 546674924 893223272 976690638 472162411 203100917 557556119 894376981 879868825 618861242 898452264 209234031 344053102 254238416 307176440 804358305 300607359 327755803 921862991 949751603 255821852 370498711 788027074 549808481 680655336 802914232 844727605 780763575 882840110 310545919 140357353 755238657 415375987 884899665 706582406 904576927 626751804 850680256 242346381 268504687 464931948 828464932 430388932 957673662 847379324 75224354 836260676 723899546 846401785 318214012 383094784 25007895 443975436 41855035 494581519 781094735 483706179 106199680 461729483 344207157 969644427 914650578 222328069 940902115 254797239 802383688 769788985 422176610 993176482 772025102 992380234 815912009 960086461 770634802 153353962 271323327 84533764 284775780 670359172 843796358 745882410 787665173 992842180 165900057 458467370 985073996 926675532 501709444 991504687 548334620 297157138 747853882 739330061 351452426 895201308 771990315 695210319 673655612 764587478 729591801 986766103 514884544 600506836 831942039 786656652 151769678 976721956 893742293 673468096 67388341 587317727 778548680 946079737 898620203 895721345 519873845 972293030 953813342 963550901 530412237 938285898 803708361 823348456 802153136 935867294 556413678 834836306 871286987 859065706 848059347 353035072 378230124 938734671 13417242 547863628 938299995 872660476 324547482 25816765 720061823 220040558 622788017 133759370 830876544 82882595 794330557 946481669 284733783 964153879 974977326 804963553 323048592 474744273 773218795 903700239 136929730 942102503 429296345 177679284 204555626 649545643 923306006 897798633 247140798 893044113 986122850 937253354 371219281 173725973 878088963 946495611 101767045 901969635 683956519 61754122 42146438 941076835 850834847 334482537 979895887 652053153 855697695 848840277 799241826 924012938 793373468 127491001 573448143 421368914 999961683 398061581 439182267 860985695 289004437 849406815 946647423 990155161 762535906 980885515 737020247 320707739 727852258 807718603 126868467 857776081 791644494 275012105 949458471 612044278 905448577 182324049 161014146 939281519 921531870 382159196 830615483 340817138 204271088 73912772 957986254 921561207 308008426 844244348 865484362 530081784 330289712 557573390 741526864 771075277 730428019 897930988 266096865 804857480 993392485 486959718 821830195 267339686 379236590 829940719 875442084 969246043 566600975 763284886 562258251 979674559 956828423 915320366 762469900 792498899 905897428 974085413 532462641 553021918 461012468 457682765 497421830 804128622 914844497 426046810 986351882 893750951 809454511 807219855 932135932 650855765 922994864 366546476 922330224 903006511 731035441 825260341 27227072 518533085 968302035 467294825 451383557 809843107 108358295 148456103 159575784 949389552 238942995 861353573 958668711 586119295 801593454 675979573 64918956 241205676 334931455 551099531 123429769 141106751 149149378 23361689 183417544 767349326 953512677 984039730 568011646 654062081 689903267 510749362 746977605 978418102 909330588 814830089 32511046 125114676 911021080 879660448 80578172 124744292 380575351 889228212 102304073 127919645 304982210 883754225 988118761 420758095 205990881 916515052 954545149 938340888 32401732 895611946 502967951 865939560 133936543 130259505 891480366 816503111 143430400 745818649 974765721 376085112 746716698 796888094 150835194 941506206 135598990 886338713 763852654 395624045 432931272 752763838 206046952 325261328 311745460 401123106 748503380 664706170 855619185 848879401 898177130 291998466 651250498 798872568 616731135 954589909 512870323 638569575 302801309 313035789 256586014 807634596 947495749 860662266 78784180 844547292 647312999 903006341 881788070 998591819 921246735 104887455 626656987 941559009 942236345 729088143 763307586 899199407 324330026 898528670 643218609 645569810 801449824 829893287 205799932 755791075 388210742 274329066 41190700 105169464 879412059 673941854 252280459 925489888 503707854 997727353 895013262 166143969 786063936 935134159 522429098 492296022 193143 994102907 955463796 915218804 828038301 646819903 776930666 820537170 754462498 414466533 928268747 329760199 284576548 292477936 828041332 413341652 261251778 424254557 895099170 220836754 127744865 63304481 351743173 194676897 638563033 473522842 33453522 680985587 811935827 831109478 766845225 843843854 514189837 939894043 791903949 266563433 926905336 84064245 78211466 889381246 377595157 311002611 101583150 794076062 492807803 363533025 974924620 891139612 25062307 740031821 210451090 38202833 850422895 761484227 504987309 720107367 744914550 959063583 389117313 158000669 821454428 893832533 90169807 227803424 338359066 164420661 361217153 994182479 320355755 186524191 884827206 286569490 101558547 842017657 79241423 171632679 31143109 272474832 436034770 976380615 131977636 889696563 250744078 379344047 280369591 219973573 288687387 359754412 853756440 370972937 881343913 885926528 39519697 482858700 942261551 781416369 932181919 835848762 687298405 506502482 267768041 600432984 834516482 250912380 879083829 697962867 831530002 831327938 944710199 16077203 865285783 545414803 957776527 241082650 917695739 993117985 438979187 410519564 892691907 22414922 458599593 717645879 130641722 990810398 843903002 242725299 729853325 219299598 848237341 419923808 783972625 152500972 838315373 752932078 832297353 805957855 744520393 916172901 324394867 453797840 394246038 887882761 805645883 363688069 374613964 570425043 147008712 832752298 365546643 239117378 976578184 790354110 932135939 398259331 985679730 441217445 563731313 382232121 973474708 785154708 755381168 94780915 797350289 519719983 219023341 138103710 176406528 164625279 688143642 638676191 925078919 718361671 877588984 849405236 861075100 704575115 332862797 560809526 914260750 741489113 894055992 164651601 799863325 368691126 766054270 185559208 529039639 790755092 152786372 124667204 738533750 750016362 190518350 594240722 844241675 263555760 198568326 853700816 861362298 487889087 737020247 419597073 851864589 445789987 852342046 958990626 274891564 910432507 30070762 455040213 903079221 338546050 628073027 883962849 127004025 864197819 894339465 469985760 975768673 425972676 409600076 625046667 903298565 448976530 866995741 361081929 986526231 910259595 947508980 842404418 807729897 809749016 859341376 939944770 198116095 771883722 258118235 798101808 361512956 100769475 986743957 384184202 941176218 882921934 771297427 990772675 925121296 870039950 636669873 130427577 837785633 293913280 782865068 261711228 932479546 101081294 435877161 379362289 899221257 765547907 880690941 667966185 247703988 835237922 195461238 938510057 725875784 535261894 466076221 875662797 989007186 824626074 113377792 483605412 842850573 969870752 914508314 514776304 698481519 980251555 82195284 939265693 949273420 751770004 725779366 892827398 937238894 7155167 658560492 42057476 819471998 808141684 595132341 359956605 786492315 772048902 778592251 740796828 854938716 273419784 374156453 841956395 176309489 994183590 555149456 775768893 937301830 994217692 949537376 694276668 772094850 763109879 985352840 471410670 865433948 994199283 174451657 802366447 354872443 767558016 575576686 131084964 874669748 981944832 828508945 678016042 748383268 373929502 677183748 834635709 185816892 981067381 439207943 935891742 584545513 855281673 971221803 172504443 742367060 569915965 99531147 283131717 126161565 238623685 983330420 821974113 746901423 672557315 473122175 995195861 886288151 352808746 380948986 765158309 785382588 745029509 944603730 236743008 294430948 562398926 653095111 470217629 555948399 753365393 327346383 815293754 152086266 861829232 264303986 900395325 175888985 991064784 791672693 831574911 271636384 728850369 488133109 769367046 494391020 139476183 300668520 801466308 986631417 839584913 517094655 930022622 622845195 296151301 15123026 211605474 405405481 359341702 759132063 999826499 914898449 754669112 932122002 752175940 666150906 827089196 585541698 368656652 807936618 978131829 886211051 379134026 809925954 969652113 748151437 577651343 765152290 813357156 67344182 818685299 874721788 999688081 24394700 966015600 447114332 818390916 371110186 963205140 986204864 881172991 183470868 834094627 807972586 649953004 747639006 783389357 697392576 664910321 222925758 590227770 635407830 111913215 270945152 897122673 204757161 779468966 326921568 535686158 455556838 757443891 701667368 695274226 365537557 817428770 358086190 657729834 587169528 965177392 106853485 618536329 631998829 940149460 840054171 100021486 828454397 806005458 856544580 52156751 866091373 868115665 709223144 428582798 991732030 797792292 648938905 702718694 788041515 606052367 787665367 952661858 12389281 40855286 941221554 673086888 115763120 411205692 683109080 72682632 828655084 395448880 277410548 828943885 844620002 960777564 197010236 982662274 803880266 799090754 81290847 831274031 557669017 405025640 100789418 909505818 968427472 292240532 245078052 134026634 953745188 550901982 785595047 977468424 766224826 766482207 878142365 132512911 878449521 404374546 875237880 30145059 546358023 688116488 680069952 758785252 839097802 952404566 347351024 887341661 865373691 610682569 933319285 957388918 233625661 415516879 598811330 321249540 320625966 491895006 989915510 951035679 228065038 888266410 870437734 959928638 924037576 783015511 9478314 536566808 876777282 920040836 953615831 347824240 884985917 408469835 859304913 869048425 108937418 36518155 886459232 187437781 760795125 953922089 936778095 875892526 515911042 925029514 958361198 335714198 962442026 812801769 656496133 926358870 789439409 922924080 970132809 254177580 886145386 791531284 430063891 992967759 831897784 446439957 962190228 254379991 855796116 822621343 984657668 813426088 16700680 850509864 98219730 609740259 220720603 742052647 427319847 920309924 944190640 263746210 200799712 962444743 516903419 805320315 514249741 340439954 164157229 79097540 456138537 736855794 689293895 922155626 846531688 284542723 185481665 283713042 923814293 890836941 941723860 184949895 166781955 848166090 53219275 794317239 337991637 850411512 440981363 393361842 474363283 913044316 536988042 384280136 461085098 858904708 217633746 758336848 886872045 906320919 799250262 630412141 757368292 589811341 729026630 901738266 223706283 913368775 830113886 161520769 777314940 794836080 239375600 712418218 796443603 994045085 931141349 727585247 99503676 560256077 312807405 702851438 826222374 151894790 496251558 757182926 980450237 525561651 232165524 918987287 862551153 114306148 862366867 843989060 646451193 434657950 754581079 212026714 831063072 745631638 899610653 817769537 943988677 998916992 697502424 981733574 475291497 909233265 595692275 89818861 286750417 892043753 512257201 784983898 405449780 960224295 742470031 442756404 928323605 488525267 553105509 803175096 663975271 745458020 960101092 753582723 725435920 973310878 779587508 27162722 878267625 130301250 973744789 922405101 157414850 943191506 437543978 751417319 234393739 71369442 957474767 808970541 580257133 731943617 766668607 45762083 922150761 207979485 565022820 795744531 167225443 623225223 868278856 156693824 923123512 451152164 310444371 827486380 845278974 949888504 465443391 506552663 7420691 911121497 733731487 845826196 204560992 344560508 405649463 163816153 654625230 898541376 795965690 536586461 918410352 996608209 848972891 795429036 907989835 860001058 661864340 972881738 914425612 98562848 960779881 451125438 564059290 926370054 79798211 939729727 975759023 361413544 713538353 21182061 256515848 286774469 476662594 23684770 567412715 771869401 824494478 880835274 836614126 33162870 758066837 358717484 865778176 908100491 865842994 604919109 765806382 409292504 2503446 819221339 941080520 383948129 836569896 828961038 417360599 796711415 657303774 838892274 979647526 772949522 177834519 852965623 592068219 812311540 178749450 740687211 778869566 386187828 920925362 96198921 977050009 191086360 739069140 711266163 661978526 681330465 415035077 653911697 808996177 868975318 846579882 918699608 835626102 766968192 966786015 73508118 106357117 933468187 590442538 212496952 746195087 559346335 135814621 97070070 977211184 929496049 503487440 941816532 814818588 228573117 559947979 549281036 957239175 584546689 763307431 918653575 889752724 829932334 747797048 652017514 624368619 462312334 899148005 43143134 30389108 945793526 942332282 897876666 699264386 891844966 971605392 945328391 772512338 838301562 165398454 873259534 409638133 979797624 449145553 937617002 371765761 784322389 917138908 243453483 454770313 867088401 810077122 36765955 625160447 722403238 296968088 649570858 323966169 371771609 918765621 806456965 627705444 893083453 883339137 933287953 787509481 610546962 762936235 874411542 339029120 25639226 918346544 349545568 918606435 948486246 881231827 699591112 534294185 747781664 965128662 751973414 803561443 741540522 840321764 19648401 961986979 19609605 910240262 818353106 691457241 231414991 886850721 837671730 838526973 731285586 787435751 40129570 929646224 821526966 935758251 1402141 264689793 158821715 477025702 241616552 832227563 963468190 263564855 951743834 137883443 71052554 444394482 884538251 728795467 367786876 747502036 986655957 812306811 64859776 427071746 727073056 964388911 481855453 47010466 767071916 828780928 632188911 566828122 636369002 545770629 675994588 61520940 887346363 959203007 105101077 13170320 838592275 891716452 343681359 417563593 6220203 266840098 909158330 542381496 923457887 298885170 745101775 847176278 92556392 986808806 522173912 745756522 506031542 108214137 288945567 54948222 639471420 134676416 74133045 737146559 897480088 118446661 143307178 511474034 133016384 273215188 761878024 178341350 389998820 816050922 946467630 969270960 952777826 157315797 811753998 507032885 932441239 171371354 635134609 93731769 920799860 946964360 699074664 233630479 160974610 834201568 580185873 995352733 929760767 761417389 40419707 514875041 555344408 342271065 151487602 853963654 441915885 927910924 112348101 806114587 443279615 980480861 982977675 652217945 986791009 464004466 495566336 782580906 925435524 796856483 938164366 109513544 233952735 778270019 857700586 771010418 266628251 579589402 784280292 255500607 462010562 288609024 37865758 174754212 258366529 940385246 850185171 890516975 152029519 890763071 978850284 832535605 901228486 218556040 743990490 313742069 402480092 372680495 810306662 886234743 812594672 103151442 782062747 798750843 915894992 975327873 785161095 658364795 280445033 624084845 793809344 561498904 47261017 777458945 32830742 350831997 477653853 640961119 213753372 784934777 920469658 137021881 805832207 912389940 849881695 943867790 861459823 774776651 13330412 938521153 843892649 660244375 333906335 965651813 600812046 745628330 785873504 514887404 795017878 873045720 942284486 741391136 581446057 621182802 713628287 919602986 145059552 959896048 988918467 967040101 537693216 795937312 411523185 608597534 918724032 507793596 931493415 63423988 870929860 907298117 358946427 719533669 772746422 574472195 598655312 620876603 593931560 207736805 408978717 615723401 61617496 733765255 33979804 427592100 584180668 806133136 790449392 793474294 619750881 507942319 885409112 902606914 519496723 50450290 107456868 862816493 769495779 958685780 848415710 617379090 48661181 814667845 950342536 63044444 783394039 86176320 303624691 397663347 986103072 982583878 769587032 865621988 759579509 860907085 68896098 189375079 379016267 114233629 962486651 523548574 865931515 42306355 623462387 747724659 319687006 205993147 683731869 352002389 483185348 808333039 278366800 782137180 138910267 491378673 903677629 28189986 987357484 774061624 430729866 303750160 515458510 378121675 73086990 37510350 339479457 223131241 173139216 524776813 37595273 855984311 531847580 283244455 987750930 835592181 480889249 888768418 868805092 262698892 638673240 837344183 19747646 802652402 295895410 240135506 113692796 791093946 768038796 69785201 856893820 959400557 331799397 439888028 985319257 226034727 60834631 770191345 872589771 923214926 762625566 963119193 952732011 819621649 223328665 735513788 867710684 662911328 984221084 613075767 852257721 99632131 902862002 617484721 346442080 864955632 750372793 172050069 491925390 569889140 321184833 969731802 164800297 191840108 214260179 712416042 291888324 553405492 253351319 3995630 860428343 676996580 870167796 27856945 624059942 990277557 273916009 646330549 128331067 984622775 860608553 201035918 889692520 6795951 943406743 451633948 991842363 507164258 49275018 987062481 850307852 519800985 392237671 306309554 822941816 447014757 810427352 981163795 740006607 913252509 743021526 958535437 359841450 952981273 791886453 739244666 112986160 356770276 139067484 945706117 275060207 596600841 471490446 897235863 933772504 759815827 856169491 408301091 978048251 910901330 12662097 942570448 164098072 889607461 913010864 598970303 896601040 361049529 264087154 591988217 864456706 57776240 873354628 874843501 989032565 975620034 879639389 394849896 823712151 475142352 958651583 69203797 973338154 860885886 338794513 818819251 465508308 675341397 19971349 691863198 785488800 535710512 960356296 842952681 887590759 872981366 671007905 509353903 249757241 537133732 999560940 596008222 832073650 792937181 867356305 454914579 212605401 966400710 90555161 950403104 426601668 228713980 762644183 309234987 286176611 285529451 285522168 195930445 270604636 789587234 871206450 865405605 980167738 369772003 737742503 946474123 994385873 80852503 937217962 261286937 614998539 801483535 624225133 653361773 960102971 825983675 565333430 793537539 951178351 989654840 891990445 216476192 918738217 180088736 441685295 898166490 885406344 659307181 915226631 991879063 772920504 981549112 811511191 711352116 240213811 411049088 89271794 883045709 762855638 164455460 953806445 804715241 787331295 760638700 111723591 500412886 54907882 577781237 999170626 851117259 762174299 675225118 200959 731425045 995534518 563527770 846608642 951136123 506585126 836191256 753963156 580481714 118367506 741234914 827114038 499777735 497983517 638568633 368023153 26007095 889411951 944740557 100591825 990111607 682355728 899746528 151963714 431638764 659748029 930290229 912757268 530693110 569355784 360823205 850312854 111312798 272890794 467152320 397673550 446764209 846274290 745309522 979275223 831763035 616761198 790158571 805474907 698275995 442374246 816526017 132256993 219055989 494798636 513961833 794397448 767967835 795777406 963364504 825087313 158196202 808589669 878587595 144404196 795311847 812986429 294231244 150372296 909757202 918853578 929596012 922272769 904869411 944285558 411812107 32409197 842391157 686317902 142541551 253168490 789953913 881544275 818613699 3023766 686550641 810601259 777591602 868780322 627893502 709819945 837941103 949030111 969570647 542916637 880266796 193089031 174005848 374825572 503355690 951177567 929468183 697538253 592317628 240634439 773891636 805895662 124580772 992208750 518837277 880801734 791484857 849298407 155844503 490656274 908608773 809325000 431181801 991222667 952016727 736788987 764466148 843382678 57148630 811006622 118583694 804908332 627241046 403538751 243640713 379872366 872513891 48073515 228236677 109657480 709841573 943901935 699408388 168513800 950480044 740008140 872403143 914712673 932299242 886010865 327033597 11019535 588660703 888493995 74882229 968907526 953410905 636296757 772016752 907537373 111078626 473765211 294651951 849034129 955528124 940211856 316118836 982399763 918748639 491871422 971821430 840657659 878836713 872032998 781469982 584671459 574595106 776710729 27064758 174281172 20843182 968423038 981214634 921253740 448592250 457831945 299183769 815747021 884848719 980351218 893524527 859330433 988905145 22854138 44958063 676375507 617594318 999309437 690983601 421428603 116196445 911509125 905270782 990941854 738504417 772266949 727970840 645742369 985581071 792360195 915285242 794882464 996423563 867442809 425019150 304272454 380461614 891053928 710881447 819312925 462206811 305219799 941267534 939147949 910655030 886029033 897755925 461457741 124171359 893898991 221878500 989392795 257672211 928772639 753549758 898400308 850513170 828121235 833833690 401422011 896207476 927444080 614655532 923389332 993448734 774735692 452020512 276217904 749511684 478355179 816819037 95310126 19251104 868346549 17777538 648379692 232089022 779809570 418717469 765970154 541967385 737020247 338446592 746149734 811010039 296653951 983316840 31519482 858735903 629688503 987172976 532319615 587942208 183066934 217035785 547452679 59596668 321883273 854450834 883267715 753856059 600792752 986863818 921150061 46158830 199241688 139154729 131465496 169287894 771537987 905811696 381820889 961816959 769834041 108387249 486173887 809604172 303568893 435262305 116111097 972435564 745322723 20550799 851865155 543566878 796137047 154353112 763764738 583607816 123611040 329742089 339678930 763856317 138505626 920188433 473349756 816307489 480287471 836492487 866190316 973599012 862849751 794504797 966951657 816662249 907827416 435300260 406577478 865490622 430134378 748360287 825809695 410269460 720060661 885447980 601929621 955829729 895630275 279596182 912341111 263321092 154531161 892896640 620952721 923629357 224159952 305403498 977596643 996264977 81536219 221810055 62040539 921197136 45174824 905536493 941181091 933779112 737020247 42622462 452441872 512379563 850509464 71254571 590540299 858573152 369036148 965724621 625506682 34051359 859902442 810606067 847393670 843414993 692237491 257497672 834835847 944547756 828780775 509850597 185417681 194527463 778183882 638679501 858561693 575968584 681727447 556215067 953362618 857896598 886501057 841254979 803779804 448864030 35646476 660664421 998732881 983039659 995020814 436389407 681959050 518707905 744484115 854084321 3820331 408413601 939193328 740730569 983427697 35235707 826755188 144375623 198196733 957436399 706833256 169767084 131152659 422044598 228393255 886881345 207776212 828001088 294019011 707135775 784128240 767962199 908288195 962492155 602211686 940997354 535985318 623738446 581725588 148965237 827773196 379386061 33646729 995379362 367778636 992491627 470306273 938009887 303277852 164858525 983908774 690734865 126311428 798728894 988050395 419720731 761992037 943803530 716592025 837051996 945231925 243696554 422416757 198529317 11898510 226967849 417664903 560779051 645498783 178671598 77226440 523293393 961043791 346474999 80922382 430114546 941102670 460805300 38956461 336982616 898652115 888011743 174108024 877496787 483573512 171664157 122702102 852349175 239158704 853986061 503957525 918511408 755087546 515489865 352421451 578650205 915649215 968758433 737105376 913150649 466244526 169058320 580430410 353478559 134396359 694765722 2458074 876158300 312617269 387537694 905720063 522441187 926361191 894749214 897806241 843062229 389868310 399814529 650783112 564612883 921255955 932307120 908741232 72761868 219653783 576160705 824269885 713307551 559682052 348307414 616933385 445760006 308746167 817622431 643566924 534887728 30126951 453211517 220985374 947119839 829731815 823773829 441604350 428846972 746606261 992163743 860644474 686136709 731901131 267570649 403546652 981780482 291969431 655234580 601602710 182019128 499927294 293620293 845638408 743638565 621536354 569256153 774451571 62830898 939522774 780923489 140635849 967248189 777416704 241574294 821074978 842155167 21908386 329113598 277150413 182466708 125317576 214333338 509609781 738449411 553188939 523218308 957234387 890049008 98170119 763106115 983982898 247756334 950109301 686539865 332097478 978765389 749316799 759264698 851856836 216170376 965521607 977676296 749841908 489654778 959368144 983412488 539947120 755054372 874588345 716374141 451961519 252880305 806664754 523791836 703144343 465897284 98109293 768871854 79091179 177462254 972350855 971102064 839892122 97832088 864551914 748366994 16841250 966307447 966616235 945037719 235599544 892621011 37870127 195942558 930810044 155851279 875045165 659251967 558278763 776615161 106220002 216799763 95647718 291703483 842853337 788615111 608315051 910298680 410668695 660009234 879388600 680425201 911479034 907231237 457584618 881481093 606578017 79507233 170091724 74815011 991138822 889602369 521269662 921284623 996491344 873427389 760097234 826202437 497556798 377130065 58020416 960951783 221322364 307470082 746296674 204652887 136728539 12326453 930678720 883391047 919075933 880894293 880718284 994963856 19485195 268980071 788667343 993624111 659741161 957358925 872430251 829967839 823404293 833148433 203620389 822365361 977650769 596153274 661266128 717070947 746726578 518930404 951721067 787549647 927933963 764039016 695793352 308550073 153279878 769804109 639908802 901807889 970354792 378025841 771696958 26832809 189619706 751671820 962504859 66047176 770970876 902474403 849205868 914245387 895638712 950337699 763311054 745526486 883979945 936325932 608602454 649750083 286873655 235573215 797712160 864648336 904843824 781420493 801511428 739871782 256614525 592040700 788477474 417307 547994096 986836655 865836868 857049217 746278382 864054896 994892189 917288902 963924915 412237391 613698205 851321007 872083678 778860356 774482113 565786641 853717926 357859443 944238947 917320169 961072054 313444711 870830768 776507483 722032816 188162590 476749016 693763330 842930071 275182150 931948850 830149419 845210040 954854757 646371873 957644018 637356483 337456491 831500377 44122379 391061500 938002283 811463632 510605296 871786195 802054882 89847474 982290816 615737465 859297172 587615551 992060765 974527821 871533544 768414311 989001028 139793978 790160451 370501038 654229143 776870612 526727134 165070974 183930587 932623233 864526179 598539742 894067821 676931051 665760269 568934587 397235570 831835646 272526239 930547021 278903126 805291489 310788875 70392907 713242828 150648651 234808761 810847919 411899204 287179696 194922213 411553982 879866221 826717098 44651105 131186096 836550479 226635943 735869043 440318080 631750262 958025243 928345184 381313533 66446270 484283247 12711079 772948264 235968158 377105447 762402211 884242893 951528563 37843042 927502369 867350141 883739638 949863496 208626971 789922319 806056566 715266732 556977044 833280064 979626002 478550098 567809554 573325126 935133725 867952354 884746203 518443007 852022697 907072558 64323942 310501455 146619711 358054412 609704583 266553737 770842162 896040289 875695593 293869753 53344061 262161121 786346193 383621587 615045020 886963878 351983305 696669350 116992320 798456814 752769708 638378587 643410255 948855157 28271911 744642525 916051222 735094041 759046509 763337167 335408723 875592498 392350233 936123285 747062193 346788722 807289014 841239907 855638434 18146175 869873357 459740234 749360486 821696294 990226979 807445264 693506000 543149918 944804709 278761865 382757053 959890293 383835179 938451468 323183647 588093817 651294308 255089002 826949397 781005016 219986845 336981789 913927204 477989163 637537880 78902115 701002838 982875317 906288512 803731871 23650209 696077226 614633712 365704774 954296072 257207973 630626660 286029101 782816176 880479588 981431130 446995036 868123663 964683997 860153046 737054529 915475599 827179225 915137328 294074920 929831066 906298740 737020247 818328058 801113738 223021632 902851808 264577504 381331747 737589588 207111840 710451548 678474550 448295441 788986622 591912575 995163929 205011750 587187432 993648182 855943652 833728679 92100742 850970978 817141587 166739809 936495224 182520094 859204535 797725118 28341640 745439817 346479184 18791422 802380942 589477886 953825844 472619169 926819804 927757615 773062453 622861165 505205542 448859361 308743934 176698920 288874965 947796490 313419374 44562981 581958795 666022096 18378560 838430039 783465288 640293238 588558109 817882790 816126769 827833851 754583632 883095802 352069498 930504955 838064560 703727620 907293113 545588461 362882165 952937090 845562100 217400808 711651238 774917276 756929547 836153272 875755243 843604404 985193573 236396941 857669331 769993719 746651602 914965922 973912244 887544252 655905677 766179257 899537397 772852247 938788711 26591931 834311118 805809674 900808639 693769588 778136151 505951725 91183626 301730044 435757397 311810338 40178492 141510770 610236482 571927780 662619784 354244899 763277078 617972041 630251395 628677449 781249724 817572278 859567819 341132533 856065850 27468682 905708082 270766229 979671436 709233752 566874848 407293737 353833273 821475293 427158599 930796833 148911635 71136059 755642780 823479576 108400839 780143499 635999030 977331298 142730406 275685038 964978582 673147433 938026606 2401228 543434368 845980467 559243762 750519903 801773108 776249884 650530721 541789571 795438660 318164819 39461194 907211326 987690410 758843541 101202192 317410904 684786696 737020247 375947695 840201308 855218570 698260266 858625069 854596174 597585812 819718149 990438142 807015148 741570146 897399371 582016393 925954523 769936303 256580328 658252752 877122453 104642865 773076771 419436046 868684950 280804467 956993769 956060780 892199284 725646894 827595074 59347225 583184736 173946800 703293970 262307518 763783668 14118951 555264706 169656816 93911326 933526064 928552226 957887503 990802981 880108431 407917137 79960628 143667383 202621894 313882847 963242989 408167143 351305419 609016475 115909479 795097886 629328285 38966473 70479671 618277398 393852668 341208924 608108428 50796460 928914208 811701399 322560304 951081697 900786817 439349619 882830549 952020042 689622883 822488775 242451551 446013244 561838194 830105800 409524069 943593879 735915256 881594757 140621345 461531032 966348776 875538855 642398184 759455875 135166250 968967579 819495711 988570630 229893977 921745129 260826823 996411392 844987189 740256774 687156249 937424749 851366754 905823131 548390010 559931770 991164147 793039388 715350941 370042702 640096112 57083617 774381969 304388118 974725141 996347895 875890589 915292552 919212909 432304252 403984698 751152759 256763763 683051702 895876594 107140599 940606214 73534698 626588540 556509647 744875502 242511789 935364714 812847243 850243474 565924765 440346849 411719426 765375901 652958011 835570515 895804907 900000004 549012145 808004517 817332022 716997626 907347797 709905459 443684112 583895767 924040156 651922663 816377183 957853280 537404299 765647502 854139952 764422929 191417041 875448247 856418210 823266009 934260131 894661076 880947942 354408891 761067547 934334831 151105591 573864342 364349067 240353088 90773197 306442249 619276280 758401487 930046945 8572166 931478173 154535778 877866383 42889014 928929624 749622048 404733824 985414056 337363937 85823492 932499118 262819031 224893783 322962911 657250122 854252632 541520291 188160466 935420496 906893525 740003566 815948545 615675991 729158241 883491397 788343644 386918198 928985083 796038446 759616527 866812228 931502404 2111562 445268565 776015868 940517383 683170119 850603247 662602890 746930621 937648053 251020043 162291009 26671866 20811799 509053863 780151306 904029687 780401435 943121210 599268087 215117076 720837496 137387876 159574732 112654427 961480580 7253688 232087657 287249859 763441253 53195280 782831490 739122249 887061894 615889868 120552419 854404143 388479509 730499139 558066853 637535245 32159328 138989500 18295930 918640848 978164278 990858151 659570239 104899773 670145970 396779656 168861431 444658090 765684898 943126103 58413426 671318198 940244680 761881454 849675164 86936120 659365670 870581434 100141857 315084702 903557381 218324197 203667783 755237617 817434757 751149195 969431660 598453490 749636788 936754347 829223737 110850292 719893471 793066375 903090061 416773227 832444647 746154378 491511635 917202977 253641118 336498671 627284607 282354241 987171174 990286539 173871901 487468493 466960173 824560692 428350596 547009225 108475716 493625831 448187679 170091195 405628994 87721463 781353637 745308215 817960852 205288534 944350505 80006525 345917027 151756465 447548233 752279127 328487546 595201814 937392422 722154671 101450119 9543987 962866335 953992137 158419170 999654391 363063896 96264732 303213112 61822882 909349383 498819658 649478447 870928444 450099846 884218916 838514440 198602693 961366682 547672763 993401094 823131815 822104655 828434149 905649908 904930632 905222396 739245578 969979114 637355871 842371000 963715972 120197752 956995396 836915866 602112336 488213035 339196709 899089642 913579167 849750656 336931339 672175548 792503195 649993129 863579326 771664478 915477659 942609428 304310229 11913304 965773865 787593571 213083898 432814339 949393414 802040494 869326625 970723632 901611638 898967536 74996296 338105527 155613662 142645821 136320152 355332393 797368741 791881061 932632888 609089485 459551451 834156488 945350998 959799452 183897465 821575258 39490212 872399181 859890125 71748038 904664443 807561748 862602896 226131191 451833884 275035572 713041006 558347046 941369518 284759951 883334046 891370524 958058946 835005222 975561104 885646202 188786827 920904090 642306166 751380891 934911650 217872225 795122823 107381847 675851815 727850696 206639947 298420448 870745176 187725938 255714351 887915136 910408797 316088861 371799397 492935899 967964321 768858256 717612960 775023991 524253742 4162678 347273402 226468701 893979964 256081041 966799732 6451171 949049573 892234291 415904449 114318835 3542539 353964769 863174884 366238362 960721126 867989351 876564275 969070614 161381101 778530181 739774747 833317752 774534952 874837628 812173893 628542602 976830773 948918252 255414064 353944252 299691651 641349932 822386049 768640587 818326715 126397234 998724179 3171878 610073235 150782151 916419182 900761245 640665663 205182205 420205291 217553435 621696794 928965819 290591524 738564034 120369595 866627692 896790939 155634290 949671196 167196435 485218331 838827171 252414962 916971769 325970314 791697001 966128721 414503279 726329021 976262993 610821507 156456791 537754320 944937228 924192326 784181042 280514842 103304525 910526965 133563241 636803367 825676784 756560386 101932273 134253361 155203277 887428676 892829942 481093693 112024030 869344112 975153593 831567285 87554997 239432969 964704602 999156135 647836347 753314838 722590218 925843038 576724666 787942971 574820210 776636775 426242804 910385537 423786855 763137537 323659428 786332318 411996577 521175058 103537457 14667745 651208435 877179795 153343171 466478543 724651106 367679419 229759953 88130989 160998175 121140353 800268431 415040358 299820636 580927116 894689686 812378447 846824634 301121553 589807878 732858870 737020247 346648910 605372063 203503644 901538246 389486832 540044471 960631848 961886853 818941290 427488071 10631723 866557086 841327062 879528836 539764450 628314232 208942687 3901569 31910645 5718429 468118152 979753045 577296204 94155422 106530970 884137197 811361019 892575284 568579120 783199866 730067832 743492791 933810095 956542202 239047816 533132786 257946209 901754477 963544562 310061456 731903990 874701139 659154624 243781962 104003601 801021606 790681527 508507333 347904835 504710119 984754976 437777208 372804471 965724006 995340097 261804208 16066897 935783428 922638383 628824703 833561703 606782220 867385120 952824488 831536178 929260620 234389908 469711222 813190123 396217302 1113490 791584406 279218494 116349622 704902692 977534105 915441235 793563660 63581430 257339485 592958048 928992831 523501578 805103678 976318069 164426430 896843780 29430416 837315986 241838178 755588733 281438058 836599565 676760481 438026816 259784825 212186554 511986650 829870845 896184635 659030198 192107150 146190164 739629002 846208672 598919196 83085911 957263113 851120894 787758344 422269577 972479943 42784818 718179239 787566392 751900881 943133674 737072679 309867750 124308538 764024300 743445880 607450712 83868022 941951505 939947054 866783226 944759188 966667908 285606587 582751429 904135682 86420414 653800893 921532036 760090881 361233913 891452814 388172752 737487337 82699924 714713275 50058158 737448568 983580761 710456697 335087184 793803713 191249922 900439594 607978366 831567927 656023269 889927109 750146067 820012461 458385512 903229731 757762319 738384990 552934291 748577120 762178193 185484672 752106828 968406486 122596273 803266296 817251867 451266561 800948641 821951591 660059098 920266346 244175532 971967221 885200866 741907106 641310258 53132338 164744863 870692665 521755759 51408972 947705666 763605255 548583331 851443061 810269836 766966703 228177492 875774649 856186629 620181740 520088035 846446937 505056855 764947872 694639075 762615032 783990471 425713490 982423443 690839749 540539046 789577746 855045294 295282223 680852924 100518574 247371257 780766811 879499281 379518930 651850007 180934525 947524582 167320508 35353405 254654857 421783104 663228205 887138459 97559414 886501611 374106046 991271207 623857834 750838789 830147339 396512231 368881583 732038321 885415517 779708456 230298006 848908864 807344312 699986427 327150551 539454749 950505280 200284163 978819051 600796103 911546325 758462408 776769018 159866183 474627469 659721424 347773954 908359473 904784907 849290527 151119984 590822338 676133640 828372477 640095643 143719138 128328206 983258899 961355086 75666265 721209177 627632548 157924900 796254813 693290618 976524781 756361418 340900319 793103606 402602125 936808906 896557097 748101566 108005582 874590690 133885369 850719692 149843555 318790436 453337351 860890566 842642047 237564638 849202278 836698639 908945231 614280713 927043236 835797330 461565397 4059527 891083272 749096550 965215322 272034927 960061077 865410222 944029059 135009355 780187534 999259048 329990556 368589811 280612966 123716402 943206549 625974009 160306111 986982569 656830591 761054491 350759240 927270293 590263675 804723135 960351163 632040526 760967600 142935837 737457403 966471114 546334503 942751845 305219905 932181461 899808255 640633036 487116736 52960396 962804884 763448293 19715109 766317818 183752503 318370309 39206845 123802473 879041612 659804852 774102130 844883887 414384527 900843559 643589437 871505174 998601986 393980261 998735025 82500817 562720781 881147401 876714087 158222482 410188129 858733620 868908703 887050326 971515275 943103623 390002147 321726809 763166471 460329215 522353268 349115920 430091992 658810840 222451908 593358809 418232167 686113316 300458253 241442664 88671768 935774335 511738906 563875487 13530658 464508318 906642500 63723978 892467714 25140887 63891315 923974937 962294655 279667546 989133157 753819587 940493436 404927915 946646527 344063724 866690928 791784735 802426503 729133664 980736914 712020219 881089895 870397512 72608885 280345682 553342578 901679117 868996246 218596002 431327273 27571340 767729392 150214632 826118987 758756903 155033203 817133005 584826190 444243553 162440892 880592116 171004077 425602319 699081419 974366855 114604715 274065428 995682627 152197963 852648110 725677681 222060286 931695919 975819803 768314942 433650954 785278806 761423242 175606434 932774639 767872100 357422735 761942131 916940365 378865035 543441803 889497205 922215478 701329778 869453952 799543322 833845633 779324949 119676595 922983348 83171289 387186852 966578466 936993276 750349747 444921130 356423120 947411540 270016984 746713846 106943765 925014708 864256318 698069361 197767715 979963552 664707337 322250755 889174704 937019678 249643201 774457804 964109554 793659212 395723004 760349410 793501077 975127483 811771663 404551493 366750347 876879774 142119399 155824483 218723997 375280385 763195346 812455841 569787694 745803684 135071968 602813357 773905702 994629853 751824134 395875019 720980016 280875019 980212619 754488525 97564862 260859231 423488519 82280386 763778745 984255865 922409997 879414371 686950616 373838816 661936231 463863325 790038114 752421999 892489649 196259068 875955361 929799813 66334073 888387874 255937437 962800500 886004305 911177309 299612662 184125549 237692073 827511346 937036194 779660809 379135716 942452238 432129934 852277440 985159665 84977279 945950188 887167869 393630865 113162660 762192880 892073979 970294015 792919557 962647877 966983455 454596694 891866647 320600315 851714045 267878117 874391253 910024473 671969274 299912550 721801682 747669349 487761111 36317219 708887528 911733634 166290512 259042561 647270617 982054979 934726201 982209475 12400788 756496104 280109338 835006384 620737776 857563005 94825526 237225337 960080844 752259067 125241328 827278273 929176395 940954053 240301727 924727329 437644878 518695348 616080320 256229905 616618009 969727090 911921830 395003203 235403557 225717467 327794989 241817204 908316135 814347773 833782581 352366521 7645335 818315069 39406488 882478846 474786626 409405193 849383030 930157940 83980336 56640397 585168677 420375867 743415387 430903952 482223035 488272622 147635037 170981315 903765134 693805108 803323794 795718211 917992847 583416543 353630636 952289463 811811633 937014868 460755563 883260814 134773650 343177165 683339909 833268350 313736314 831569551 540735903 388174515 604676360 106575822 906365527 102695016 287446747 531908550 323952719 722208742 90151792 458923181 523272619 862709894 625632147 289099405 111126715 64566330 781302597 767759765 758082582 834930825 842766120 385803883 827407639 762253299 159931757 162008285 67421427 106264972 928845852 557844768 810655351 281873325 895251717 907391120 875515468 742453001 955567872 754590179 185726951 808937117 998404846 712960414 810301209 136995788 72727490 296713314 681112635 785785103 127235318 974544766 788421708 946915225 741364727 528643660 342496041 104387482 470547703 661146331 246756048 773095248 305711334 758765730 161844241 888589133 81121412 834351183 918562345 984029568 903726521 752918163 821451246 903251571 776186857 15431095 959028600 615652679 106844341 969863709 876923926 207253295 877021332 775704368 505978497 152807581 699053835 665587407 772659845 755856953 850821834 993040803 439002800 896211969 150713433 911979042 534973589 883791419 37993252 723476803 930218081 709047391 688380582 862538886 740689725 78786164 765614842 871401584 706973280 187505976 789103038 28751430 989012515 585460514 421263694 982106441 207477799 949414006 251514432 429415384 832430157 280930359 564707949 727433389 738466708 245352814 970560470 100714476 436332773 530563067 753436570 793797659 73015324 937638883 657285449 329742623 840299908 854815540 277051241 746009840 245863676 366270486 332948577 81223693 808619761 849941623 648730386 804748834 898123004 465715060 761156642 813976307 863823356 793873338 834524533 439552307 828339792 396900396 786603257 649356018 724161496 788119756 60540196 986873429 593940358 254653977 845685064 898379520 907021827 184515805 693404019 297730657 572441923 892097305 793787010 811469631 523211076 959718936 581467164 686727465 630652348 686871010 731959692 103013361 951860877 787147990 899845863 559611405 896363799 141291894 994368961 792507885 791974658 906836279 126187079 288056191 379453109 927160720 813770036 156865918 986231632 739555040 892248705 80934083 768285142 677921754 529920470 847558980 687141322 980357285 149110282 141118597 932191223 956403416 350594384 446695985 375869817 567632521 667643826 475307279 801317198 819109225 393669910 553391996 800754332 875958209 907138545 872579426 53367525 880147158 967796303 276858913 798538445 338470480 549040074 83291483 760720424 594545294 976536168 464831222 537742599 808570286 806794144 201249670 517338298 788658963 239733175 927077286 375965237 483406755 643095296 939262989 790429117 781922424 956713289 530306583 987741898 195794805 653803296 211009496 901030504 389827696 786289665 640412712 144912551 810350438 568156614 796333086 759775657 292615793 982633630 981147794 272403328 322847260 897792616 683263552 781876753 285798985 766005782 556967352 930861209 860436974 713332499 978274332 635772259 264450410 17787434 297463493 50578716 964477015 864931181 299377737 827390196 953416296 639503740 873810233 863274543 269101146 907022045 765824011 753379583 896023915 524968526 579431474 782478632 225682189 882194865 377377026 896573819 990248089 763381767 851278741 936432096 239813820 45956173 780080168 702706952 899268992 845047973 443760381 145051038 869807370 105118803 557770430 569222573 772905559 893164201 786110273 44416371 993195280 377387548 176803617 941807756 877555450 837014125 432737583 673246541 648967966 613674851 622209257 281467392 539938275 756000428 525960083 925308693 152421354 818674644 972421749 983105276 383979440 955249237 494375178 312244922 905494750 74224206 997701351 814045700 880378100 354611597 341153483 194968027 697851044 440115189 914198887 854055100 413923592 995116951 758978586 955798228 996305431 853245136 543573949 996812862 994398484 750935551 872293222 130958850 937856006 807869968 560884463 462527874 989450801 575974127 535545092 901490613 879181828 992748457 726487668 761668985 527495750 349539235 780800873 634258879 975015578 150669384 193818581 883798020 898645659 318427672 994885785 53481736 859540854 772190043 814444967 818618198 17248085 99523311 932035544 537326392 183392493 866423139 869446161 291274993 924354593 239083007 370404254 45442286 800550848 965701036 882051704 883548100 905342475 77282677 813989732 176424790 756117825 39080201 566091058 955962736 422929931 861552098 968852784 827125564 525191729 715103276 50864138 650007900 947865051 936117123 783163780 841176497 841783736 145976860 79328101 71634414 788986541 208429126 834859325 814341668 423488743 596198655 874928982 780876236 73522571 976001396 486389921 797878450 913486221 119061900 472465022 801944270 868074402 582169253 33020508 542585870 76504723 35037666 774331868 317696099 949054350 443034961 696990489 115762559 767458634 878962407 809222259 546115516 607799613 467442999 459799490 616059870 261568898 271737354 908545949 990426376 931317933 428883057 297679402 935819148 716203547 990351675 724518894 750415989 848071082 759192123 816404467 805916506 114424732 517340103 59772847 965717154 822730986 74381172 851398370 855264444 920928997 784773896 15142497 447873076 4950071 807812452 295426522 872199812 388356837 881899472 898983723 933875131 332259215 647761869 202047598 85593634 998139660 851181171 935500117 168813272 847117377 86089295 896071444 904790180 843082019 914902618 835132216 405729403 897846343 330107267 920182393 611701522 170279598 826511979 722419028 552589232 886615301 775197422 826133120 734183683 343473464 262831076 924458173 733253122 403078719 77275412 50671711 422231845 381399865 267548510 425422020 698636433 744954500 801538225 121803673 753378894 433629596 933556192 751299781 957388004 608266805 853415026 926790582 538032576 952665861 911183836 990299729 377274617 346989169 838489255 139222495 876413500 729051754 913877477 893123492 258712173 503972641 370187125 549844171 24768425 962019577 715272827 800338691 398812814 495451048 530420844 728607647 818671647 777640454 63548308 386344271 377896012 968266158 678493607 373838632 430260364 439999311 405246983 261084890 823197087 969457562 555337521 760836344 852695260 756954335 826475303 996844458 909072997 491725884 846574158 543153104 834987245 868384589 854535594 243566436 813982205 948050616 876631544 906327998 690435367 812456034 80676022 473904697 939979876 108543884 691030483 130673455 796961761 183149975 758188169 398601853 599313637 194541092 826866557 932007168 733017232 849009471 23214839 679407605 300896233 593519035 785958535 841843131 881499251 868904157 360066019 123482096 593462886 855409555 921152302 145204008 918223528 728958569 737020247 852116808 889575884 743863598 982124311 955016400 843350917 800339075 69729472 232853408 872730621 758903292 34159241 416806840 297300467 954513288 982626918 151446533 922527868 923393888 605937331 133731108 168190941 126509153 54776205 363768181 246183172 915327182 759281709 189929744 754691930 769758086 787590040 919039897 89118311 874147142 527570353 11100195 144128846 33919050 865748247 82372105 677884195 846715003 944268298 249922009 409838199 411919072 843348611 872600058 757642173 852009904 430384455 579423608 536205522 987777234 779202953 815420273 912129876 757362929 853829868 593664388 958008142 829553747 835921655 945918146 225997760 658784406 620606888 819237767 797364472 292173779 979179963 998888752 686413844 982490809 792448359 983402757 507421568 599054449 919791684 892627679 850602131 771195979 705672078 903710696 344453819 884695517 421262666 876295793 828594698 393179410 928399069 890120885 911910722 738618906 719572951 331728362 980012129 889764549 797050250 45464199 810354690 967661335 887607741 916837068 811675305 579046686 597430063 872242744 862636219 267465879 787872100 471940079 990092797 706874152 193068157 803020956 187470977 991735485 872555092 332354974 604282587 22965639 40910449 859997935 120368849 614366154 175197227 888604332 13545240 858862144 55398911 971660555 993527286 810193632 881122513 723668922 850886312 612548575 107963294 154917552 187463947 774573940 580871393 552584713 209145120 751246697 377506852 876879976 877165567 775760826 645894092 974290416 850366657 861554854 346731404 291073864 174160160 325182287 957608456 902943278 365119871 670066145 940779792 686263724 905376153 829478363 689411072 913523484 947487580 940859450 485982214 221947044 776589965 125250686 301035242 897614587 954619859 924192969 426903182 838776146 902572665 474304663 460905328 542871407 994082069 146779579 193159826 872627394 293524889 29817090 798017952 75105692 997106789 816187130 183843563 970976307 855130419 959330526 792845167 502182364 782659189 905508695 427631788 939463918 825605207 893246987 943237788 811219845 877848408 804072629 398181356 625416473 702972023 207946627 797016000 965275711 437372267 769253572 337707941 946936141 774014569 992496241 821162574 870719896 456173070 584235690 806593857 422508272 988775419 794326683 961776100 405755675 624846844 227591219 962732284 926193415 709248685 843236830 444344420 524783241 926564447 923309627 628355806 538077757 239902918 852065188 326912126 980604469 623466485 928296060 641310901 959961130 925312946 784159104 829285951 319196243 78349141 959497240 869583902 595418589 356336304 377714794 300231982 947622875 843222321 664739073 50791548 883165258 804581524 218482966 714553871 590855931 895325585 127359070 833357454 836346004 815612534 814592614 857869219 836366902 267231022 797368201 421039373 231386417 100581663 164180191 481362888 920659748 675857303 295253525 110499687 746667051 984262414 809530279 143721988 785082696 828233944 766961109 73943731 948937066 988968819 241800548 353193566 558427761 652134956 841074135 175129761 524922378 850189689 899491358 956523603 308297277 988194366 127373318 667769023 423133057 811664079 347334310 366705863 742274999 815562577 800211653 953352164 878648093 840133413 363875872 359756126 280975906 656716106 516107095 749993872 235361998 431589092 750731508 773233382 894671771 785038431 813252108 776153804 498804691 811320932 757495149 487340727 891514792 826159444 316224814 51975386 979170409 62665380 633449787 648315540 366527796 759902521 732724156 807682604 928769794 492713347 875300721 283100810 939774424 938835147 904511625 169573677 637034379 814059841 759976743 788528922 227479137 849216290 831388853 54741540 780614776 361510103 957135087 187346866 452901545 391343499 509915761 816709364 403436898 799019821 471613248 256619939 408693543 450157437 880502603 761658380 889813875 915208274 230954175 843260066 489611636 447180479 290322674 783138574 947848260 564157187 974515534 18881478 381491672 252497758 575231882 931353343 570884190 891854871 818302684 279727295 18344796 955559376 292506843 653465455 218776377 132343426 79904965 737235503 757665568 919473869 944669118 263349218 894876704 847646880 278482867 801968502 998513603 348979145 657190111 958180872 822379413 782306396 550660579 794298364 900526919 792811101 906477551 379302875 431510457 387863994 378415790 788721336 252251296 991419978 294382843 885363903 815866663 929415970 501743003 424915347 85655198 64099573 948794360 616353999 782716103 188274016 958060652 33138295 937591420 811713959 357877764 780754219 463889413 767083867 34139549 478939560 138708278 613968738 992041793 538831549 89032884 263087809 447429965 634600772 411489186 861427179 753612509 754284849 817101145 955535630 808223594 877091360 417104607 92984835 791521031 25025146 777243622 992454539 834607894 976431646 217277921 87415290 773218702 975262170 815464044 923072870 324474315 90658152 593771166 873230886 400056203 105331653 791041304 920184123 379442686 55544917 800964757 189252380 18992127 986168342 760629608 822822237 752661637 910926395 995299106 860562650 65239381 939203029 381610957 515759776 899338538 101838787 803983561 874474753 661851126 530812866 794282683 832830243 649968038 667467810 977826993 932672865 468710166 303908310 46864 253565965 143937835 820467581 401207827 944066524 343785239 911481909 560457922 785232022 927274874 802372370 929391692 586856341 789815231 982713503 973833316 799452810 401959224 651011829 817116363 822065115 798654014 920038684 949692114 688700307 738731898 891568148 842543773 102600929 509226491 911527316 659114178 778715307 153242043 957146595 869299996 985369661 747958225 261893138 858690672 563049685 645329631 389998576 886964851 807143493 200986856 441247589 463716030 871737608 697765345 41725432 189609584 92825742 244159486 99987875 178437283 556258882 510140795 979035662 970367296 384753407 766317196 968460160 851565748 219764158 144170485 681089751 940313176 955927777 395035 364150145 104830900 892684708 800622432 209745838 224135617 843447624 159147401 972004854 868813093 240082193 468506648 331613546 803420423 761191840 310449406 187345339 812868103 923698700 523548447 774193560 804459840 845106297 758449527 533821805 919685865 410355050 67252424 496394609 313963412 948792173 760422937 874834823 149977548 805199185 949099459 473812718 396980672 773114021 68647793 963869308 648341773 955918516 906905045 211234949 792961869 131151500 869319287 953356028 858951297 756325614 741617089 598571701 792945423 967661843 848896973 376857193 851406222 807530475 324565928 10300651 621451048 932462384 508244009 926574856 892392408 566033039 790189980 780934802 940366017 211346306 896761229 859943279 207997594 938303768 872606462 402568397 841254343 22477100 798439445 350122461 906455168 764169463 808360036 524020671 572961157 900912197 793087840 327794178 146166414 603092062 684934923 284981215 809387027 891236138 220905082 806753244 196760414 775026272 189106123 906611962 185247098 523024793 999141118 221540190 248961617 914676193 965568089 990612544 756193952 758698532 747072930 974802250 779522681 306285645 495996428 997213566 289514112 850910303 179025938 993042950 770998273 936226346 850095052 850068049 879255414 825476362 986440435 94920577 852682597 862331097 876955268 951201238 12979047 730045662 667262026 875069102 985565147 932477913 184361840 809809170 357108266 151074392 801156496 141433653 385140671 574693397 174619795 587706947 952774522 977483060 754357075 175224223 66026559 356324698 745103534 498171897 977977947 338497283 370212263 539119712 782873182 337934352 886734000 877669450 586368713 138615478 363562953 802788167 959717133 661817584 915463590 996040311 204514772 61534570 794351988 407184964 188379333 775493563 997139311 61491292 845203884 783039445 996641683 731077943 775137362 872748876 992618780 730592795 939221016 367016881 567526391 493946792 781394010 681973127 194167445 7988271 220655439 998947996 151043160 794977187 673751164 823476145 247867388 115274866 901099463 113242226 991972859 198931218 968011727 745996707 844025495 83236054 38897834 835357279 749930503 744680183 277225874 758774365 402169566 949091169 829767800 606870111 917754442 789272945 968069396 6405111 796312323 157586886 922905255 361584922 91582242 847481455 206570983 778071935 934258367 844592136 158771824 865911028 560362906 997495196 108072943 595513460 443915607 852318911 945933205 467780641 29624327 797067282 32995527 659426964 272602111 743183383 550603817 459318645 471736798 259228062 841210138 907268127 883467450 915297846 55365989 833311025 306751199 644006705 739009673 794495139 187090016 492067469 48729665 919053216 150783412 887753507 33093304 652505825 959469056 86916632 938452271 380004103 752293592 126621693 819600567 36381557 440434109 768254751 675840168 962942296 484692110 424485424 123419494 842401954 78660909 971331924 769275234 635282835 958841523 798065850 772218273 565615859 828838349 309120268 760028630 693710905 405540497 974275950 523346633 810723300 994067639 270819696 314536329 861836939 970817042 854273328 556916320 891502082 45745846 840623071 143634631 273869719 688220982 373802387 712798400 537278075 973196082 790173614 686308175 407540631 846332498 79855282 881541708 395199966 802582729 430721476 760317809 300165339 657001485 990053363 802654413 181382826 750563426 650418323 941594801 944672762 321586465 621223691 899165211 234493835 784069350 672150420 752081543 501777867 925249312 463613017 431485709 751753693 907323513 874230690 766721520 838805547 185450885 918052924 300621672 269103678 832232151 943468470 957424070 624374346 880942899 751114588 294935352 153105399 759917281 330354561 663535595 757322826 107900128 369937340 501998828 377802419 492502475 176835740 582658784 984662006 878673809 903462285 858635033 938571996 971982288 767973694 635310386 918241008 907547888 53589833 670909654 759058492 787044745 883358495 430808199 230022385 839268563 926836716 764082900 789320814 806994134 245954537 162369361 717988783 966208258 168432921 99306081 973713141 723925288 651341875 798432050 669440398 992783289 147578328 42586902 999017283 821023468 62237792 712279698 440922807 10132969 338627657 367701123 795404646 415369221 175245909 129811624 349371360 973801342 800322461 141127504 996692203 550878893 403171791 609281200 780990792 971754291 65884384 768793801 780084793 768881833 281564341 828348537 997186917 193216299 925954276 600546071 484756727 808713093 757049839 692245922 817900881 832660110 883383585 492424194 46778329 854331092 872419968 143960024 25536931 38590015 919549578 976695394 905509419 231432074 175770003 782538761 357141466 806861966 278315206 20932090 976323679 963531849 751383621 197446133 762770427 909809519 845378953 923976777 192875552 786081427 863310960 792271434 253997439 940701800 821048951 867293197 747319436 135936503 847745724 256744370 642127010 412562024 481776429 944477745 144085095 893009100 582359186 977720064 647122139 565585859 935241120 876099426 861101077 326204884 911566724 790755023 874101071 154210057 130742877 690951498 452268652 609146117 509414847 564536834 266559122 668038417 928833894 191708747 352612904 19710521 582306873 851361681 635485168 756232636 935663607 242773755 980740169 885581292 98985411 751050605 764849565 986477436 306490815 429615320 470552268 619208519 809287759 829459978 49352034 42160520 44035179 974107515 99411485 724017798 979599263 805478100 104268501 980604353 985191501 963509009 253599420 988659649 176261137 388482060 792318537 811281393 543899462 955103651 455235430 476983986 966145584 766674995 951304218 973166383 460361821 306338587 982528745 930818430 752435269 209045042 273921190 983440070 923948636 339280029 798348901 919132231 107166279 333260835 102430172 956815769 975298880 530872406 29166666 294559958 244199767 230009920 737020247 879219680 506114888 834160544 311823950 633397653 936552619 475624931 865314366 810399985 815734481 41933821 896987641 191341306 897593515 857428821 457314043 477498948 501275205 944154641 966253522 463676370 713313489 821496654 74030836 986801708 825628348 121925612 593240188 903870124 458105190 858777612 991198093 472296404 782772447 781390565 594951902 992435735 688672282 403317301 907858335 296962657 672485790 413131797 642735826 860752450 264273256 810038689 611161947 988378872 240805786 720610065 216263957 829154908 932024078 552851137 597561648 47829687 776883171 583961708 44044820 848141431 628414889 414799549 327022440 913938479 956981652 499358746 941257467 838989646 301767245 34043826 217523376 159946384 69115826 904465314 771476930 807023547 247330181 875800995 132808538 198440263 89900981 916285662 997062460 341911905 507926124 402389568 410795071 842768286 461918495 883889134 573151686 72012546 446481276 459641600 629719893 79492663 976184160 938201194 947451036 323750937 586599966 826279233 921391606 846932951 813384044 847508722 867470476 378469511 363834416 785365339 721030639 842754732 896716528 532586086 877001270 822355173 833310869 541212863 764556133 430040529 675555313 929059981 890039397 334766618 559659764 192129623 991687807 796798538 87577109 66468193 286441932 888586737 267710824 945877269 847028389 567039021 971717146 683425500 494446176 342913027 928382658 429190398 552435498 819557565 144214779 804231185 897229515 162594747 807873154 266229431 239758391 824448089 827147901 490299647 971538687 565130013 691629736 234239245 954022486 929662210 886907536 542856093 923737373 980806535 861708829 961153804 954767193 623614042 320349708 817131365 692268679 476825750 793267867 971310450 137457673 951165097 773416078 939174936 684285638 999646577 216991830 476601350 536850599 746916997 913007786 737020247 856010567 846759700 402530070 589032609 277362317 588027223 748825971 682752590 774778398 924989712 7217353 457703253 795464804 950392119 408261910 864060376 143869222 313693594 295706225 976592504 397692975 899953536 941396656 839803752 450476169 704448198 787278731 767343897 14455066 460636883 925709269 868042750 831162901 956878634 130206204 909625690 942319889 983115716 908970741 595273895 857292438 845502713 645903743 938502382 189114043 831066174 729780480 772667532 748400997 359416720 749603556 565504445 212688014 849156915 760331983 608319056 374010133 870643222 761676869 852140102 829697571 186167618 852544010 511985551 878609896 320135683 875374769 34993951 686398721 617469731 903431491 233906656 574002063 946183867 535140643 812236392 287275634 412513133 295042819 984587267 973208528 833281635 413799103 917138234 241290070 710301514 985244904 903844185 946519761 705082395 511081902 744260500 574462290 770277385 915627899 804701156 741051001 717379850 896001824 759797053 768161084 934681903 841090930 75456688 948480356 830706587 823789948 298119864 945859508 737020247 286261566 451251288 849001116 847952363 411796982 915121595 919939654 477981462 632908773 982538054 636089084 157556343 835029870 49397718 744380203 866103178 815577240 250360682 776361528 775465929 447624849 919546858 775742332 403468090 648874291 295248723 536558375 268160524 537438977 462434929 825899447 870282256 652279877 798918564 297435615 588136685 144365441 401496080 849861898 756501421 164005906 896134749 957765183 132027834 881578831 976695207 453079937 840879475 39600619 394258958 904545349 910263960 432127683 705035120 30521774 588288923 739409957 851316525 900912348 781414956 767946112 738367146 780871960 267105853 836943109 822373764 730691555 748988796 461241953 304384220 139655270 933097797 805960358 321312956 908103420 111269682 363178979 192147782 750655188 622050359 902852618 6456639 935428928 161892816 304632684 943704064 581611047 237714880 742572120 704131090 793634078 626362514 236723737 592143636 745396507 731276985 303095697 923057227 819729418 357618953 677431228 790543994 295064090 845065857 475046823 99948693 296447779 459969326 968146309 917355550 815816615 180602861 918482612 980405737 12404748 600412255 822747361 279171181 765912079 752892304 736921738 944179495 980464279 237335199 194141773 773627447 799135235 225147880 965496984 326718527 481530456 901012480 698017290 931681214 750155957 809282719 203794869 899173967 513660726 45460159 847488928 758539746 83394206 474847639 883254176 238714942 236920979 344575184 882419524 857378176 986973121 755840702 321424044 565869263 925248385 931336396 820765764 922076839 692835154 376279590 523941793 721249466 953515048 943655339 743970978 999921895 499888887 700294742 867235909 477901366 783729957 736872892 390223167 25115681 784486456 797619022 818557847 682280437 737020247 273171155 765497721 339698580 917759782 895718471 627144036 123036583 586538127 956943156 484237141 843786717 167147240 641166664 473336645 320676859 197208643 858119588 889398715 673309844 461678488 194342211 771638996 765167467 616555238 913186493 778232714 722732258 861948726 883673089 768819339 337770774 465219588 718385508 206049607 39548143 651190318 323423830 168581716 936995917 859125654 91100964 222715906 588976107 93224349 812946899 956413687 289029793 861992664 550994756 49536600 108373126 377737415 698917063 466713226 548564145 383254911 952599889 732431052 406260420 124730943 524564931 570391084 123238349 811054503 71006114 484953294 140080014 212434863 353886727 922314323 23919009 925797710 773274331 862999282 207931804 780168496 742774150 7378452 328460962 920836887 771184738 904008674 965392997 813306296 32956281 539124827 930823111 901397514 509829229 914491838 241022962 971397637 925991647 84493374 357501097 375283312 630990477 561426798 778674179 807212411 743723027 779922342 569761802 2275054 452550876 126327188 989108318 296957397 982899731 794355624 876127006 961136715 890263803 883355806 336525965 542565816 872080853 914974228 320659514 698951939 42206067 897361164 807000435 445019655 890117787 988837272 963680748 234799759 512850902 957329591 314664344 214674617 467657550 876115224 819921188 766240339 444463904 798731830 822720007 515239493 745724850 910593514 882397623 889900786 913843830 147828793 951882539 981637749 852468652 840004764 944271555 699567986 120564754 465519736 662711330 323840531 974971422 934822070 909855607 858598111 746926259 228842292 679253524 958109713 886925959 885515191 578441932 928921317 960493985 947953097 737446380 466751875 833925268 542955380 78348940 903082198 870297925 228941967 834476610 977594655 510992932 421051984 824038542 826650008 612475101 502830864 277969000 784272631 320758905 453825290 685220664 953374929 931053215 883420595 585510293 231500770 749083302 887224751 762260063 759985491 888909630 59599866 821369136 937387435 492011726 885941119 901900018 658110355 483524199 431893250 759093732 568600428 559960843 979869332 938184618 54126451 789991368 870532841 30909484 258118281 875708808 155454745 252841006 870844940 700538612 849270459 41549148 807174691 957767003 882203779 125116932 945383587 965531468 480043801 969937228 985294930 941770389 957976893 878947158 264162385 741044465 965182181 923860635 831690361 732847977 846723128 475067819 391746965 180604389 563222775 811913645 953231785 446313555 879815041 905834870 910033689 118266442 642313203 961996912 107536138 737982817 613237046 707832731 898210373 558126599 996681420 954848781 391371135 810865331 953967908 292267522 879163907 843330976 460493836 910188905 986271986 838355874 333818263 917917054 270129859 935792813 302388634 905432511 702700118 897358452 769969826 810409821 877138511 774944642 773002935 681692093 597750674 196773317 959034983 336165423 787191908 295645014 286749706 727360092 225676616 501853722 865408505 953800480 321497607 688601579 905680788 998385365 896420490 799272771 783105833 565891246 885078423 578345396 5497234 21048436 859015152 355205962 834138520 778949066 410546443 520923390 99429532 819559585 632002419 504047829 913202940 771797587 532050212 339593766 911504879 555016755 494866569 905311155 508694605 447312406 605728761 413749909 455615279 876867443 904046121 546637421 770507280 470809273 924916770 93233920 376041668 875856988 339184650 848725481 321396267 950360757 304610068 839557467 739057457 602410438 151143564 853038420 801366252 344330239 825643310 613080432 582952116 779918749 968669271 830244251 505597640 923817979 211878567 813871155 857566958 14408349 882473418 904184837 435947092 566241739 648164252 376650299 648465222 138797485 770597459 811715995 54669139 278617107 931251110 227067516 794339082 378344661 848376705 149028853 810680123 700873207 739474973 28001014 938811637 906844221 920958996 157415734 933543081 652214660 854881259 336385394 477507732 798423307 805460576 907306336 362758243 22572658 786317075 825278735 777522080 525909821 43992800 906985904 998117164 311594775 805257635 81715311 338974717 877550605 822717136 150972517 218417513 39950124 750316250 920910135 83385090 797576814 920127471 519735979 542335924 978826265 162078353 336495963 963390864 596182864 823918998 953121801 749349361 667282066 349422349 848899739 430606228 758948410 624660076 315183204 815295874 256779590 812415360 137198904 909901831 689418855 189789408 802280811 876280357 802122982 835936641 791593091 599138296 920082171 856518861 619195715 33702975 945313347 84206923 955243647 771972281 659042624 110894986 346540445 625554487 994956415 358467874 104167884 976787616 76432432 948580996 659847206 620702298 826286924 995083487 803780622 854539961 13032569 808306957 441650202 12515427 945020461 727784352 188764859 957031019 574811083 984897871 129878655 706572186 272436224 56860653 661808161 955960988 972425395 306268168 870873668 79679526 915597464 480656775 509690154 361569411 204241889 17014428 98268059 895409099 990863232 990915315 640165170 229804215 744226675 367306583 281487321 146813260 831226928 276735479 709241394 893436946 692346234 166621749 921841598 960592505 337141392 379133610 839391232 393148535 240838139 127508627 827562714 250624235 584700937 873553249 501434833 887890394 147605708 853642641 834545255 69656578 891898263 501410869 806870544 907554359 367394860 942679638 901739642 127685855 861570940 892586604 756228141 164897531 397387887 97958286 971954549 514244390 380477388 570571216 522151977 871417283 737953103 938228593 889991676 871835057 887305154 838293113 894627341 519604060 346367436 493550236 974576533 838403126 753542903 928482898 246121946 405707230 812318046 714001757 93613919 109134158 143399879 979939354 767204852 739925073 187991195 936081062 842050399 273037652 817043228 573239124 534464420 801179901 746521566 791265541 235258042 73137650 282135992 540387743 974864333 674042670 961132645 801326454 339111572 785052604 57960053 83246498 839858556 899900351 731001903 894195478 811914361 408943910 969879432 298267946 687197740 931463149 416859983 822373199 700979283 872159768 962715752 79216245 767888544 281912892 937118969 406549637 575537975 765420016 178525299 977695109 301663637 45077562 330964736 858828791 988708288 964000125 979292517 226128771 752571522 640377504 722557684 622781497 583209340 759840614 446825802 924280834 805328821 159287326 76314958 412472198 300275764 916311549 145166568 755440581 421428181 979984902 521657635 938122905 767861227 954120956 851138113 746371777 522024173 769480317 960346159 956881266 300152158 672528359 89276867 899818766 819313584 361969747 626607535 825483257 739824984 502519703 578819312 907944014 998693584 747322853 68647338 206066312 291079877 22053031 751432263 117818176 951428491 981041899 561112447 28325870 809142722 982675047 204226223 771834464 757334169 606817570 250926088 626823523 870413766 71389888 560317818 308578694 719130627 751563694 166236595 349804391 687291066 979440349 455954790 773053309 946352662 939874732 103589012 713976868 746587541 801901889 828038624 694754054 898025126 821515941 955202292 560965670 576600852 617557459 872285280 482411799 834260995 140561641 185211277 745926752 857364596 742495614 969968881 239316911 957922655 919116237 971274572 490166749 311485285 878036547 38866821 523502713 293217523 931970029 14257699 782717305 43469943 786796191 145835808 988113276 515693484 887813444 778261425 243067656 747130105 841504465 223755900 799939172 394797259 828953181 346576956 344835540 854803081 999986915 481393680 769877132 971035736 953258133 161940515 556361471 42553228 746813397 781366930 225959432 867691687 800411730 761726392 277958610 591633584 978478565 747588533 406284537 877928892 303143730 510301808 215203926 838621249 891698876 826383820 944163781 739658120 7115730 523658421 349112444 986323573 833388156 67504992 975751008 149089363 267083396 872039348 530530229 836689902 115653726 988493335 850585375 908877811 233311208 485948194 772582289 262876273 524941430 450105916 100408964 171631986 83245089 956311001 860159391 658893228 230920275 292845939 794691796 305257915 83247091 778672796 190127022 928457906 797282705 617176770 787705252 842143213 196384726 754457238 916239041 385836192 934127370 921189549 843073546 853038183 329779828 419906675 137705858 914389285 757220761 12194632 988576484 965107174 685878072 957093083 239804013 989972082 533581051 925677757 493560903 883485142 848926397 838595827 568856564 899731738 258140796 875204791 261974690 859491049 327063812 439820328 962456685 804805794 657761393 929079091 778204372 786295365 753990862 757817232 179535610 818653763 704838837 574579532 780865881 738493077 603282764 201699666 185379139 250197655 683695270 294325451 892143644 850331834 767830657 988585714 955874046 87477129 864428534 78211953 3321262 685369333 753239031 369853612 648727501 929108876 823855631 914992802 201000228 273916517 131586480 488791245 545054322 302842068 827584891 674537556 285192726 716083093 970213875 688124890 73464783 89585652 786078462 82474500 978423784 792717392 980343552 559304854 33120631 814883072 918995850 953811042 122876940 938414262 266805558 283078820 886556025 747095461 565663581 756774530 996180606 607180907 956125221 803453514 105688494 216763885 803668614 490262413 951810701 878225772 819076438 960296608 750254747 835203813 48047905 832000363 737020247 769426166 186031134 55850052 609882692 813893634 909204850 193044946 845854320 761893763 564264773 494056352 650967260 771958770 694647483 421277143 669308693 848702198 980612666 339919363 976528552 989409877 576425314 736987266 996131669 883905094 194109866 550291974 589060125 200980491 729857080 989933815 557322877 999781025 724418356 752037230 796806891 916867578 96303411 213083367 426675608 354113562 83456804 177153942 427435214 826593341 337855005 217875315 776354184 907632549 770267509 602644361 830788689 260353509 41351129 963708858 291661157 807829168 687554660 581054460 988858494 779483160 447454467 225223109 93802187 507622458 262496111 936673765 869843241 779359585 882846979 946653959 318583636 972245330 826364312 922369166 213153920 313986732 900644094 429324369 124781245 455128451 79720586 478974686 893169064 810256419 431694966 44955589 273134430 415218414 65830355 601615109 537649633 505592894 816651014 794646238 18411576 770647001 828426527 415489545 517104685 215153069 766700543 218922415 256393788 509943348 893912932 590515870 330414134 987447167 801195063 201876592 366165418 110930111 800956055 220016557 536850723 320867564 171281394 97616615 217550314 762908333 788315271 757150962 189347675 806829111 882826017 810001579 154935872 239222975 782345346 175988885 418202096 804933663 223302874 757995788 966556762 746693103 249307421 379585634 396207661 425810038 630136726 953308177 859900341 297800458 860368051 594588633 918684946 679063184 345842702 681264655 473455875 88508369 966508055 965764567 390875005 518884514 772004708 962032831 816371802 875403037 909421213 791815486 716085357 849282089 816905336 934565153 358246848 251224304 58835757 545347042 981929532 192758073 374706748 754503337 882555145 813342688 139280566 288129167 869058163 938783933 848420929 614706436 10508752 953650127 687330376 701604970 746857833 406718588 685146342 995170024 855487729 823058164 455394736 786292137 846699139 856552927 639742349 236680879 906923907 908271379 107344294 829568291 795273213 328435085 968162792 804906282 856930412 868105983 838841377 533625858 867377295 685474738 259839353 804875538 418461301 834500303 795647603 392156582 443515875 897075425 939393047 211330685 837406917 758774096 805165851 870914048 592970108 815791439 435351196 776360756 963100380 682259890 495177491 696418741 826848094 240233851 829564021 409057368 955915497 993765751 852917567 6796089 271890699 886204977 104828164 751585779 284079883 968626194 170198427 737020247 556038118 957822249 785606523 12672941 743464648 397591757 126959981 298178209 287378685 523972356 517845593 248060066 227840397 958295749 915255835 801453155 820902388 818757818 495519762 542001086 876868647 928290011 852261766 751526413 368421152 925436756 744693424 790805207 860227852 367849705 949544128 12047732 963449680 104345728 859136190 826522081 759539599 408744376 2513166 838519982 34126448 907434121 636836278 733805192 955964994 163685648 852665742 131998485 199269901 756088732 505154110 889578987 500063440 755679583 880726 907890983 320897933 283694549 988190682 754876710 946802750 885625294 958691428 252117276 744642413 744201536 668072189 915591231 490852188 76217228 501841617 185580968 812597097 380012610 860732473 223551520 873145861 906675450 695077297 216807019 566300826 960492198 723628202 207414309 990270130 541468120 738493490 919941365 998334522 788953070 882569949 12336879 910415467 263952075 223671244 405594022 992111974 87714711 845447877 755230481 990739146 547106597 707137411 839553930 895074364 930845257 946209541 2880477 758665720 995657670 753770336 696707210 914767810 924945876 818775786 993416444 141797487 639686649 758987647 756997192 41261860 679443145 985619718 683126989 941160013 37254864 992581733 791462611 472194873 928751538 366658013 139186225 275787278 425085188 178044914 79753771 848768394 900594396 59906395 293189581 739108277 816462302 681831665 793826918 970391036 853266202 730165283 134010936 716164199 561183836 918072860 178223267 899553935 795273419 478089779 541209112 410682610 733661145 195282476 615371131 253932099 938129659 854077230 784754717 959803022 376361979 874323420 805459295 890017106 784080862 867869733 368474923 743134337 631359341 968524850 99417477 782501145 523523846 184794318 147725657 800144786 337599699 754813495 407653624 878517271 210484591 275547567 661401162 940658710 352262086 520933656 929007602 778232682 259939233 225986499 605861761 374521709 936631607 962800761 154322672 864714063 641840414 794275382 954731844 556716027 663851049 481574039 321216234 905758680 737020247 18273736 830009208 641173079 911786256 754533951 188074444 879079154 859500521 648549519 918308645 924318328 932506692 749567385 204932148 40866239 987769004 750095863 618093979 668552365 111868072 884514826 688998994 892327043 491199658 8829539 929498184 964775776 972304068 704432313 603322782 908710769 907108321 692612709 126015044 802413572 921193696 580580750 444672151 818358994 861353367 658691163 877627812 830197836 392120646 945416478 296586336 757408632 175199299 878332435 832933545 775950328 521012212 764267564 782277280 33200403 595675151 785395154 98012741 204321721 738231347 878497841 178215605 961577373 296637072 938226322 350613622 541834836 189310769 108402804 206537614 93661082 837774124 529238668 336838140 437132012 307940601 752808400 783380170 839557983 998396224 855310382 46703683 812836245 319855144 20824563 207586770 769827923 193521120 856565273 837914498 304831991 562259893 917297881 688819760 902594365 47390310 620091169 824253264 907811515 821147485 985565645 773972407 546903904 952923027 584266261 309036806 758153539 766922888 321469398 646074338 564029374 381793334 885749256 754523281 758105534 757903876 453375332 753204729 24653289 838812528 573525475 906895720 517246436 997562605 525223087 302131029 542063781 422490969 540681156 578051264 386522585 916814030 775927499 497494608 700433106 968150456 943813669 750125456 733227962 271302156 346646494 557588733 933113004 14609226 26550704 910178656 664028462 434964599 879318986 799868567 394126433 882797172 878735562 809475541 372047884 455913025 181448097 873613613 934538506 871802555 893545898 166770458 424207296 296179010 65694969 804339572 458178066 30167013 802399646 763137483 757731191 888888737 878741327 839171110 990466127 919301361 477317591 984856607 808842792 35786709 960689237 988819539 578051804 524549278 890748641 552371875 547518522 913367366 913106261 790256704 730921259 737020247 890962873 467524378 341031448 437702511 161118208 783363499 784029487 845391360 457750334 858191451 860446564 905037579 634417767 890181943 675762559 687172987 724163053 753727805 539157191 674435068 652091335 102302257 889329514 179037022 946215638 759804075 256409840 962718323 792888429 358451149 517456636 91082486 704247231 202724023 333847843 637600321 268243582 595802413 450352342 868263612 761944265 68027503 779724206 110323764 510856930 524427168 771940136 276169562 994097800 914521892 834553058 587439855 194410700 11412659 737020247 470825740 779358327 39435524 946156785 843408029 223104864 293098273 602916175 645060815 837501708 683923772 938922269 940331888 895930709 821316568 297453199 891751177 493322234 803731820 258582671 508116732 846174564 208002738 152780303 959598977 652387008 851221795 61862893 538657861 517566848 914602802 964814144 693638107 586148689 462517138 320081122 648660655 766464607 53487563 807438660 984207294 936246727 321202000 890375047 455715644 702769578 44311106 651801371 898087918 982485642 474778021 909925741 929469155 937945952 758992926 697674516 474835222 666495476 502055015 332149411 784086532 3623243 177465128 755941090 536860894 599886643 823061052 497062330 767270850 801562338 5145948 303987201 69528888 397689230 791617298 853458610 927117164 937213239 828861885 626822859 792820702 119818568 19695086 617730812 760376977 868715801 7632605 943451064 468934320 910893436 607212114 689397563 843586186 737118737 741345052 726743004 600350853 885077581 313174317 935436345 468639397 255237409 945533033 321482369 172703063 827360305 2814832 718473684 809657284 889823700 428862061 906538370 463135721 883078438 709870841 335085881 557651426 611798491 973240070 253838258 871671849 971177823 519942227 466015025 440201094 837558845 659759022 714062617 837012751 658468523 159387177 402084692 755188544 637453769 565210852 362021534 794740302 359785156 77397235 592556905 829456996 307425203 26969195 562094459 742025756 419237481 305881126 894205030 876081409 211436223 85076618 784209177 955386218 689454698 862803868 877260823 460047171 316942554 134374995 361745285 785282443 45595675 488857021 88714470 605923871 584945245 980992778 931718157 820246040 306300815 876330143 765427387 859297297 909213659 512793935 958833498 23244894 372051241 470917704 924904484 328727342 741173912 482653295 913759538 978930035 864146358 842908230 846303883 944149474 897428770 761987509 361216646 877135583 146731441 990800394 972280220 616484088 830812279 233174735 878652057 252452479 740891876 31383583 523711738 616104872 821065964 967790653 779567834 62545841 976158766 608610728 864356794 631617325 702712214 994781493 177490030 826955824 961577845 758455182 447958134 908832529 745740743 514529303 935044830 977217441 596868082 63109422 495706431 835680586 237661697 655595864 873497594 238012907 57997757 404724429 384992822 741286830 820639924 671600557 140563927 289126427 536261211 216297189 265304166 519718541 837831500 187963155 434553683 914536951 839259164 810028675 761388202 839279635 241360410 581060959 543441566 192695050 715998543 401877940 947489869 352759680 184253678 951389663 473536821 814018646 858487037 268899449 687081035 43347432 848705274 976152360 144459680 840318185 881309300 712962154 975284373 935272934 406695227 72124577 796482697 867923964 337484495 793339885 273365558 896331246 299822394 919081670 981006799 837081863 959560119 548251227 946208897 682897736 792123300 858593912 808308963 757009243 749615442 296953493 700314977 797209759 53748986 737020247 811097745 46763802 918451910 857717805 398230018 759527199 913468724 211149193 780925503 422463149 936598638 804201963 806934793 261761738 894499717 813191894 40626818 927241313 995030546 866943773 225025467 420708815 919504386 860376257 822513658 851553285 411000542 816864684 568963689 512019060 672339919 823076263 944185026 85079024 76758130 234662740 388838952 392776661 843859226 61805738 916006609 924051812 124211261 464280521 31143679 750794582 153018754 870862813 988275123 518432457 939897692 884512328 10929978 189128751 814527035 881875699 747165521 62440109 395191146 545403463 989872861 862160564 888755797 743184212 590224622 674904017 820121792 923608163 955523937 924837981 566128564 420428659 56194474 880869784 778292262 315092725 57802370 810716149 532956160 914356717 299734698 955873821 785518493 816146757 840626697 856168893 738347163 923590083 306199956 832614526 499744219 939883759 473409525 909240530 537498904 545504882 888828080 894555269 413549883 921273830 810472075 978951250 328484956 261783439 314173762 541704248 446311432 211898655 24211419 363746708 862952988 852750044 728623980 738865881 676298655 671753903 922938154 852949407 99907810 435468104 31531152 980319193 773812036 900178957 109946600 150838166 770075461 153695562 787276103 516358670 3522786 931365483 195226938 467460559 943987642 759849181 835759185 119176603 617237348 187828903 558525255 972903166 924396195 875140626 807925576 934910624 479218191 344001496 773115007 839113752 450215044 194823152 966872460 702531575 426147475 958542695 951695368 487624072 867012358 85117754 632419891 972121284 434823526 569139218 796256672 451814730 924177930 144542413 924017787 717718807 426349016 432928572 989574260 738946733 854524522 12391682 396588750 992828968 764424286 876324179 974205124 145869696 784783440 124712215 183241335 927217912 991678170 900610159 755021643 850601355 28200272 539343175 870862488 470649185 563222218 827829765 269899111 874127745 303283194 554577047 619783172 906227482 943015522 219409785 768752699 771919566 864387342 860312895 838441265 132059621 773454115 138809069 908869190 833815452 887692732 507667799 666859205 698316781 397006933 780842999 988774349 118290455 272973261 211945291 897739795 252774939 950224525 865763599 610312765 269155578 601710049 280142590 229992025 819179651 857411301 843047334 71807146 1157846 757895023 958875192 745518708 25360098 939434836 159536119 989358527 823851240 939727832 223093835 487444788 47314331 620500641 973252872 815067878 803208597 907303827 169826385 815257715 621584755 877910423 288577193 621711999 953597040 584465086 145613890 210767932 50571772 633151845 52993783 872017684 453452453 467751138 203942793 416943931 364035873 756326440 515318648 907594063 386661038 970708374 858299531 728934020 898179975 975943454 206467547 732845432 54369716 487666223 961350672 901231519 241393159 936792033 536284461 674998022 977407279 686866244 736596191 82544519 873894095 774418898 942960583 645551759 637409867 346675976 861752847 970232694 198562602 730907382 995574989 783707272 348695706 347474365 769833805 617794186 864561343 777416724 988690175 87154032 309835891 811794924 37596487 971462669 984982948 67216905 395201119 744449704 870300181 454630131 826603065 966421144 631902178 547476893 748464649 315715733 450515045 320796847 698994609 690534143 778437153 48964131 183993364 755738169 10285500 909808220 403007984 398437700 809048945 392221492 599026140 878443501 758484281 822213518 855667511 780119061 524155033 883371470 757320709 969113293 796119964 870789530 755909592 382971414 349128846 81882798 806968327 978452095 766148614 974972917 697434515 873727194 548726560 685397439 50457265 260599259 915823955 616574768 672757461 434463094 928344533 860138582 977044898 900742977 171860835 68717996 938820078 29944921 636146469 786502599 850123304 769015888 735359199 752275611 751834572 604766137 559209777 34593491 962401497 50417163 346522732 399923887 154985818 778483502 878165327 457128732 732360576 383523161 741255602 952702996 751035312 882135009 118379979 113965949 883492535 814090769 798960485 121190422 503263598 170027453 914277083 221378641 704230499 936288119 836351525 811179269 787798501 987358855 112421241 846363042 851740854 898162765 624948976 846116664 901820767 148299309 904408042 992288347 801952253 303626644 255302728 753604167 199472201 453974851 486977965 975579665 743202195 223684644 702602124 130335909 757003894 91495543 62431270 969287799 68760948 301349862 804461330 892027312 463304191 771596592 990129201 606756235 907386573 595736665 484523997 753123577 604712652 872829544 593043582 72613659 422800699 131394615 880087556 697533480 910023739 754418499 468870219 448387880 219544392 355020721 977155762 823211927 936428564 825718671 833486952 752904190 567659607 616021646 708564611 39481849 798951189 470591630 999672588 543097234 366899364 808186661 787055486 924287794 70528165 315061404 231372637 322927678 839616557 286647466 540100777 251282174 855508713 428769339 818258985 567881211 219319340 348472960 822692140 924422498 151767983 509063470 564660558 933423972 840792585 947357572 970942289 758882118 719127675 767787045 786027213 390426171 895657266 882162888 838361814 121159593 875475602 131574532 469836941 824381240 181444161 971113820 586211265 675251052 901664677 384215021 117145442 923926997 849691396 934982854 797017176 916951686 812615532 787756123 486890622 753489450 518153779 170665117 917658584 764427331 366988912 797613029 6239991 719218852 840370663 677361315 649669108 223230406 797406810 709826600 746756365 663280661 536106903 940998940 73392430 877885002 165352449 501472756 953512975 967005606 602721505 829316597 800803781 277956397 740212866 124966519 731815746 638480675 617136977 454077736 331461546 19705655 775441296 821176367 820148242 515918376 947943545 915792040 338894233 14751825 117211901 296732462 859302946 404359923 999122004 798301681 750371204 501619071 810867837 643729450 883771119 851886110 834619350 906961008 872092544 916100515 745476387 898238498 893609582 93135266 431123830 448936067 978780003 839782078 895386695 934121577 972777918 70536299 53253042 402905250 831251472 628800962 726076083 739300342 780884560 485172241 242368208 875874860 466973336 347203928 486088536 931743418 301935296 733283374 428459754 675514614 961725368 482707369 961782926 255089131 955843227 730471604 237897380 898891473 44598038 74990918 960497420 888368745 950426475 517422077 283250329 814273626 745425413 349715562 932451925 579128459 952413931 766738725 499056015 55331702 826436342 192817305 744918733 853827379 951155830 923654539 987363367 446314698 523738532 742779243 990443476 537730503 896192881 704991832 828127597 608317964 915439732 752273964 135350965 158037627 934531836 226435040 507154520 302730842 437590499 539764741 265236688 393583012 887239795 678282119 921575279 750189435 807705133 968638891 874199975 952070097 714320103 386592291 817275400 822716252 916683374 583353198 783334473 940281824 706950752 886806458 802015366 803215725 704721689 440783111 899063552 115640605 833601057 840454546 430851544 547013444 805222677 737020247 894774568 837936868 423858791 673752266 562861170 360080204 765591094 332471729 500342469 654075340 977424931 171173415 945934002 801344143 714279108 297591584 778481296 901684486 895788648 807800364 859986963 169435685 622111396 967643901 917323307 810088018 960039572 684004657 925168868 920326050 800136494 660303104 536882581 831262471 842624162 760664014 501259108 260007931 955126495 290947148 359564676 279328402 592254093 747988242 539316614 753299244 228168141 800312957 943088815 840590638 329495536 368881086 829544593 368309308 831000909 955201942 893808087 743952854 216665789 787262152 877605698 76504005 215512305 786673988 176185831 986182277 507490567 433382533 855876526 404773815 163922515 799722665 503433647 671085699 761946012 737020247 814296540 955919320 187224340 646780985 659748945 728488680 847289121 713069936 666616205 778283112 670909136 741281555 948522927 253684019 947587561 290524439 196407268 744893945 955942380 990170422 226717486 219709689 878786351 778750125 972843621 158167810 837766350 839247132 460486904 724188355 828882565 966034040 376622868 370124729 926781710 781878856 824596820 469836599 85216566 843305555 178685912 203981169 776264399 406489387 808263238 304919039 67558870 3757929 440204693 50446420 37841214 59930305 123623664 959000119 73746801 74397853 856572403 331128360 605299766 805001562 382719411 237838986 972838538 319332647 612781096 664592187 2039007 942318786 919252909 363566161 859414400 247541138 992739429 961679366 864336407 147434488 841653678 907620081 791315904 319476276 918103418 966334638 749645644 931193048 872216483 87658768 945386904 27972229 260479940 784780741 876721162 84712593 973917397 971501491 76705390 823498767 164626905 830109292 575768292 885768323 729829757 192637431 854349207 3948782 628144075 443291103 761501048 949102631 755666513 751004623 339370290 948304404 820439794 820241703 501957449 277423169 722102327 907654384 73213411 968569625 771751970 993098211 478948058 108240489 908684977 46924551 472444957 706094010 835976355 832509911 899683222 601323711 67922250 822881821 386175509 211887315 994673582 271272542 953431569 937604995 416729090 398358436 826728590 843005013 814526813 755449601 291887461 640182887 865754425 113074058 990814282 103103296 276130126 950176240 140355218 904544548 319047428 148127959 107223046 904857971 5221201 534671261 93068362 163426236 956680713 772039635 944012523 989317408 37391371 856913747 342819871 822519211 900375578 962648419 981183913 307458589 61651831 806025101 796942801 623303154 489604700 682053019 93757091 157768126 66288549 925935661 758287371 900189557 475359406 641122631 865769089 964911611 907743207 777690626 490415977 137278989 805085745 975391061 110434705 910061318 271757399 776669686 811581318 959526704 692558983 212096537 971618872 495406755 899244722 921683079 565039490 396112425 625880439 808626982 980932749 549359079 568059901 845081378 847274312 449381688 866780668 812985280 102045369 824655785 706548250 893207818 50030373 969804889 833943441 232945137 80814692 742553797 549115797 574045126 953237623 387697321 27304161 671042953 664449007 950718111 995739792 997614779 684009506 923789164 432649703 507706713 934630658 839602413 804941635 460241330 758679600 749991269 733286749 619848509 325006848 323661365 762389082 881779855 856623926 788401990 956033076 988802696 892660296 772422671 896196361 868456956 978529361 304766249 805583953 924881531 563443577 12164150 105904505 49892767 978471764 887469261 633422766 964357185 730990376 778618687 661302792 691164389 53104824 87206582 770187414 541213476 591839375 954220299 429364810 494858061 95721742 403088548 786932855 819202865 780943356 763730683 916355851 998361975 855448664 985743086 727123813 996690669 838005501 370354945 947527360 648362799 784658560 913200534 34463291 920983446 662629082 565648418 812993789 814273100 228676077 939308547 838765169 770091524 548133634 266681910 856552331 865994794 610573452 763542837 864974332 324130833 38693989 808507588 873879833 551534861 809793606 985873171 982837722 816364668 824104121 145295046 726976141 432171500 664644582 185149067 359637511 774691789 797484975 570035232 495244084 13362299 935551591 59024268 147092297 8255647 606847150 799165902 931682391 850006316 632301590 933307743 842029950 845993091 841974007 557565778 962980512 592640514 773950862 826469517 575665879 425134684 306571181 898855213 993000648 236270509 55985304 893609205 850465660 278582146 686298603 86255139 64715181 664688798 745101708 309018615 105217802 453197369 273084247 928017384 876423576 875496999 941069294 224681948 909941167 990538642 223045082 869349914 737074795 846693112 920248266 104775720 937240663 985958803 392910298 544349985 789907414 860660420 422394843 935022721 883040603 766264075 156614239 764798112 938361366 839739847 776219356 969067233 484237776 860519132 751218345 927237595 106307823 503825755 870497779 13746014 25328083 968263286 397181853 823595035 994546059 508300024 804842115 927981598 887201728 652984110 793490367 229354251 870196514 893317102 891478620 309737622 825706433 750981386 221116694 753089539 939742974 170901435 225978257 831120194 662860585 949833007 875832399 250793029 805734896 608903472 160719948 928224830 602324627 724343243 928717442 606172785 758620013 79865149 624183188 96266587 366352862 784015592 790704545 507634362 951225123 928119040 89346079 770388946 678959851 764233799 151396738 843572846 316896204 851465010 839228903 871576004 144559852 863572546 706931320 674194309 334470093 538550062 654984221 332908390 220943952 836669031 114202734 962541227 657689957 978154791 979216492 903352194 156100616 746894993 798198454 924989110 494854678 941480646 151690799 833532381 244498904 909936240 757315723 837446304 738214865 987160646 941095381 903559337 740705290 285710486 844470582 12293497 846495639 931364735 615424527 436542662 859014281 106086327 798944286 856256951 492606899 184019373 340760361 574402362 518314525 354536277 349502598 462759145 918488826 9324080 585019268 912844549 333155077 921478071 803532403 925009252 623019458 744750734 185032071 314742215 843356819 296719311 455097630 856918474 723295248 757914685 950773336 839628600 94694990 909159974 860525879 995456426 730564968 948655668 394432008 484780262 937605442 774421701 985109565 926204253 824499793 1114695 417067578 190052199 821898575 764972292 587394337 453582472 752033093 951644930 942467520 812462485 784353303 470001725 882761531 888765016 770691959 368567504 837098262 220876960 759246580 768714455 873597330 884758030 606991927 965226865 989579313 234523691 775383857 856349623 915328734 847816598 999738111 417773269 240891857 847458415 764167146 789380335 2076602 753948761 571350356 886781161 87697103 832221637 92287871 791860903 263405865 899489847 945600747 178550168 793252419 742018078 883179645 61719853 876697995 557307011 112028285 809933556 99517029 669978768 686241209 316448276 908608483 932933959 862897960 881480692 839290052 292600723 779283120 67222696 494654926 753388474 877836323 334933970 61972087 903122283 10639010 461871564 38119675 351658233 972001559 889124917 869497938 192639420 235980371 818056243 847278039 823713563 933125720 989548479 39216393 500280913 238935667 373342974 968110260 950844769 711633405 183269309 772603615 815355597 881285389 725686323 932107401 768647609 947786935 439137696 692810446 982963978 784369358 474837153 125137494 891611890 799338153 898929817 541351948 992023789 801660375 255984692 373291184 792655733 819101341 932485524 583010479 106947632 757470992 857815337 466432253 881743649 943353398 737020247 588745848 506438800 827805678 688214922 301110373 768944180 516242318 973752218 802763291 698000401 526628754 812445383 502378647 968383148 965221754 925916000 496544785 755363095 881012837 875846270 16129848 786812187 11746734 890549950 965507313 599097504 792610052 973902202 469759061 46245993 894938010 309055576 899268047 763558138 738281864 307018472 897644915 899511466 791180805 983878929 234125568 340137135 744705297 156029696 768922929 865556092 997325689 516454156 687177711 438787679 494815744 932171436 888071117 726621004 981939449 981143432 275807875 194039653 713853391 587014372 382158199 832279630 471898055 605814971 993529877 302628440 642733805 792400400 174151027 95723006 442091994 833573142 276944117 828673777 857107119 446124443 992199631 824377896 980800100 423277597 556881975 339313150 936136194 629797459 126865982 818263630 951691468 893215584 452863422 775000068 657668848 561089639 491855710 637311287 733168923 573474911 786817713 959020178 582785931 948402984 110620702 943382454 349057305 33210050 395588080 810843351 880929182 769322077 746298412 389802126 698724756 747009610 274569357 742022735 305068125 950849699 101086421 782854790 3082454 252216639 612262076 340380148 947645945 260440143 493487922 969070674 795939105 186363714 166683578 437819211 898385393 721319518 773155706 526249313 834884301 601833797 980588562 984088537 839997878 455277929 465779068 370448424 303110680 930745550 856340278 550203810 892234385 894192525 329485401 348073668 623670870 723291736 300741487 756042061 552802702 96563942 591351328 833264746 934409820 890745096 538553873 18459396 379440241 793968421 963057051 976324559 841740585 756890553 9026366 546041932 917430859 128411184 338062952 392068497 863585392 285424672 877795736 469875993 486013646 775924360 309472638 826683558 667117921 904773211 617295256 942466555 802673264 704564051 987909231 667006128 803748792 184661327 837117192 914847925 225973935 849528416 732959887 281413875 108743220 737020247 820445540 971575841 867104215 780353376 942458815 894459953 871428579 799132862 721327278 380060324 279922514 66133555 811899214 649053913 234457679 777498564 580154744 960949795 853553017 99080380 794514014 793689862 700452796 574318643 786319839 925139254 900028225 987075665 811448206 903996361 791144626 802099307 769907828 222367261 431155643 523471807 222106830 324035691 760278243 187424261 503381608 283729402 542341098 328098198 363466152 831990959 433181636 197159012 658915561 806157756 842729721 790232974 50325256 389754831 777566397 233263121 894711689 839310239 219930188 280689622 424637396 777583831 899615086 472900489 623111046 86568004 449579490 931682131 812989250 25709764 123989206 529379389 201685094 633312626 37118162 131243758 527400582 702721753 23837436 975511655 185277842 95405756 932224223 800678183 64263680 244535318 750029418 536852019 232080542 202045281 141229571 167506402 502579876 798331811 28281940 877296250 976286999 594875418 777597552 454932126 532870035 870708397 975638930 965275346 628756934 847852028 14947421 217689347 627995005 808249135 550685599 780323952 541821495 788615832 298620233 407490859 698158174 293642001 759206837 260744242 759336079 796451304 160106522 996510367 833486382 665835550 93994300 485846340 866086680 845689630 961848862 574848103 756968957 935079469 960213763 347109201 325486523 709317054 801800118 594356005 886589043 663827959 700338536 533265864 717914249 777969826 651975108 852036441 868392397 980514168 976978027 820531804 156780100 57083518 990556447 874318694 863095521 537081356 512841089 646008010 429116372 839440689 43568466 429296366 866100850 777445274 225995513 183917207 819912176 253774363 742429391 983986954 130849455 870488520 477305473 584292171 921191288 828695980 429609947 717755104 889384368 82647779 753023505 406178727 931839650 277978554 70424719 743110905 30669413 970917357 929342994 418155937 120853380 115691562 852218735 497508988 891736851 800729287 55389175 99887217 848991663 867889946 52820221 814776700 65468429 983596461 879423229 154045663 558834500 47869223 59859726 841271129 318502166 537452327 566426181 564169835 387656098 673218190 522328775 556405991 883096455 696471574 344938467 831741615 611488416 803725497 965546367 693804012 761005400 142692094 414983217 69039861 840416114 754238124 942488549 955249628 799225992 344971217 951859989 737241932 816259601 745430281 917598123 693974652 724438581 245314306 759122944 892148867 810938520 577139180 263326975 35460692 243270349 270697171 605671279 953497801 300108671 974390307 944577258 763373744 789405298 263292760 75332190 417355612 680434303 216875463 803046270 688491727 861258011 882561496 337521698 553232274 921178013 806422952 16016820 951702511 652029025 941472405 273569949 921523082 921917802 148503250 22738196 997210731 560599869 118657037 883956862 242608289 606732109 945305066 250015190 629676375 872019726 779559584 764846179 876821443 471384333 333001618 167670609 910201533 986920264 400548168 425464765 832242575 796623213 75282596 298830603 260976880 903407795 113834069 249296214 920766706 975776640 875762179 786703429 840511143 873312814 719763441 63427940 899742903 491318413 844271002 877338653 716348284 890291446 565275536 915121205 886394476 234098124 940301333 875201898 990734844 878442507 203784818 206523958 777202043 777087703 887739464 532657484 751582761 634320316 950545658 490823247 746905974 744080556 897998237 46240697 695567950 295293084 899306417 851165866 676279251 785222449 355604824 466376246 975780132 262053395 146193763 282711425 749448295 405856238 924420374 340272945 881887582 866289885 271010733 393141389 960189850 224423664 848758534 911914989 859788111 778980914 797669814 521766504 67989178 807819802 53701402 972324693 299645964 471600271 387988239 137424809 225530361 118593663 804249493 948750749 767827958 508844985 492647389 642844068 198289810 363383925 787251404 139926878 839949084 905723896 795985745 671433230 888515337 168460124 50130615 890526133 865993715 901020876 807751660 498835665 912699656 516556830 52472034 387067469 53683454 249165824 900378974 444014409 486538046 445077961 769697515 446724850 786048100 795811663 974237496 776097361 286920063 108415996 4967543 523324704 989741376 950929791 967796529 943132991 909119488 857060695 305595824 785796881 322918520 663853099 784772361 670285882 55050787 321289976 758876632 788784040 750486579 859172992 39061084 886668309 150702480 670810510 587723641 433002769 329510804 941862165 123402713 810012500 921056341 762477864 670837330 997616941 230516947 883146096 904625902 637422629 141347577 835381834 958267662 683054166 973446323 451941593 256935059 575735410 918514910 862880847 991171062 13536162 100207238 14814655 835106880 744940676 809865779 781977024 986069223 873352844 845078297 835546966 750732764 776346953 904213405 366022139 922991480 950240871 783747581 597218831 497269865 119126011 839688600 804038359 970337962 197292377 761475785 972424597 929240744 976753539 116707542 955859939 477370137 890298923 777025976 75852506 696280191 959014149 319374758 968381757 859356185 964311216 433553493 72088130 757286606 963899688 414340404 378403162 809843604 867253910 456907713 61957079 363545776 486562914 952109966 754843519 795590507 726475783 282885943 259348963 112679598 824664957 836821055 869141754 630062635 351913905 71573387 921422121 767432578 919227734 923476824 144669484 75869122 932232448 855967436 949111017 910364088 72551208 147293657 233802226 828118040 218344233 960192931 12299658 50399681 900305345 811934906 946343936 664478226 969304055 508503616 131014028 350906540 112420887 908292381 159543962 453405380 765148141 876365061 286146001 321778012 807354924 732109413 442426558 808391111 749374359 984099752 816398642 799389260 620485585 117156216 891734528 10765229 846922642 934595942 89072153 578707895 205303792 161489601 648122448 303772531 294822428 415970899 903628394 12798612 883541895 954841601 54893197 41094248 767975336 436606004 887529097 861420739 861422397 728706431 513077427 808161747 741097309 887585399 637676516 9665459 180260218 883877743 311073407 962129008 850676428 572232634 365706324 906435638 771577118 835205163 98533873 916040869 355124776 622198694 851259394 70738729 758032934 809974169 92459250 652306201 848419779 477780191 116714287 817987002 311709270 520323764 858538947 290347396 155307473 897266951 978907630 492205903 654578186 62318601 605004796 611742677 79284427 880482192 205293300 363878342 884215038 414807543 837446102 829147466 676385232 865418413 914457687 907409401 995710011 506349307 999237711 796843187 406844534 730889413 543312757 153423555 949760586 103429287 102021412 987981935 634636528 901156797 923613067 114194392 818223217 963778984 84554170 862521336 925673724 833920324 774785621 853728364 914238538 664379253 583130965 932915724 116166079 965753761 940685209 97958349 596953538 784413892 537815995 778293510 269310210 435642155 976845672 857049362 759763894 932003697 126756309 784124746 459920114 939005726 815903426 738304082 987251548 505641573 457265142 119259818 597829615 873702189 298191123 557028241 990794760 658027583 912443099 992432413 975612687 455372840 824112588 834353369 184826915 354029303 809289739 959084226 460152167 78600642 484249816 180187285 295709482 826527227 246351098 995707905 815934487 515613227 754254024 982186782 881170204 766878117 259724356 967830065 691160134 380103150 701452592 299187405 766003324 553761562 841637471 957023595 580561992 547429106 711863119 64741559 415722985 160032611 860130345 20884807 737020247 981410514 90284331 499943413 759669979 745505681 284167452 593485276 948819856 932246614 485789891 864937291 936187222 778045427 834015961 835988668 861551920 982725308 985803729 721137457 263382938 996318444 451268327 15346144 588232302 162396136 889956068 84986472 982263029 822872360 923797830 813664156 492734123 978972346 82732283 202795602 400731900 50779112 165916503 758601598 602091668 495255904 839235581 829431576 791087196 852740567 263389817 874077300 954546409 55929745 866937915 992458606 435423184 937274419 364160758 903278117 778540795 985298154 908567167 799869448 812148513 34386186 737363168 750552572 652811815 835437393 196929378 564024432 996357152 717269553 836608831 566385144 936617976 872271814 987150471 888334526 610236123 424692959 956714002 766261294 976915338 933523463 184710783 737369931 942115821 449601887 709002434 61904134 307684901 247783510 948579127 953565620 934163365 603962783 309038272 744960714 865345049 404255814 377464410 807641542 835879493 801068867 812865369 986408261 441511407 136374235 913876275 535475782 967344318 130871793 853006291 974601271 734535574 987549491 802921993 441119393 755822939 981055549 740532085 987048311 714159824 955440935 400630370 600493830 723947402 812793856 922165088 643076139 116947008 242722973 722921166 65260927 591763122 811040342 934200984 314028135 894892940 771905449 747175683 894513144 956380843 20690578 173451421 757107895 638580667 950476960 497569379 345876196 852853144 795558387 917781124 663937401 19600681 860373574 560897165 63844486 848927137 835456307 800444794 717064216 37729823 905975731 783670520 803793417 81377657 951321219 312916919 915667855 392441697 866185830 435356177 989659441 759845362 300454296 247787135 900684718 92956076 482080519 344888682 798411773 170095388 398645249 587400220 189829848 943133914 154452607 842685029 357807997 914216362 914029347 804842002 423051512 566152799 858994953 778905847 642764300 514323550 617392973 905068222 838874940 999374999 525837217 66633056 694402377 51654137 545877723 774518944 865130776 304144041 112850931 251389867 906181279 829499256 795194339 350852673 955703540 136177498 984193619 898447294 505271597 289844249 821256341 952787233 928658499 302279743 391952522 954896952 272464026 364202923 129937830 274427474 887539085 979853439 979290714 621283881 367820982 437794069 379032521 398990897 218482884 979634642 854971635 482594004 815349568 439490489 282181409 739416140 847845208 513204858 602847461 441996900 234026439 653509092 86265565 975615134 799136413 859174169 256122683 469390244 142208039 907453811 738705386 573245094 406330956 812438063 637007070 410001467 871953480 877134351 889271808 86232816 897158575 455363260 791806222 791401139 18015617 248526223 355164151 807973066 859789966 317755682 170834848 902900118 29672899 838618649 845041390 455307321 400253154 218258974 813763296 810197848 702891610 840937061 412075370 983142498 252013035 298192073 958277235 634840368 300166135 826510509 979774352 407702729 765420991 193449166 128963686 980893011 719177271 267436499 500941250 321859585 792118316 829192508 427752395 967162996 440058397 749311367 745947236 677761827 559391309 220787643 740321493 873483125 935712336 762465704 435537929 596012104 955144216 885514007 962181791 602092662 680460112 846030157 853522634 506551119 943910374 191345012 821092963 698127846 344151702 969838637 413724779 622429539 652015552 987030708 990090430 660840312 728611899 987548706 829510539 705758131 341924586 923610404 56122181 949968003 383942770 797788339 997032844 938688245 639408544 183610005 737780207 524855867 633406866 19909642 186266559 628805683 677445476 466481132 578800192 891968530 375341166 773006843 856062048 172150465 998765846 684772737 412879368 471979155 761141844 865055122 831781171 833584701 900221463 848311622 555674404 731142773 484088356 510177303 134497700 834225780 132990831 895634612 863559908 982265989 839451900 220037391 993129206 824396652 749810003 352286891 994509636 954657586 859905468 998407305 894420720 590340737 841272564 201203006 418445824 766221124 744140907 748204783 502989450 642364083 889202901 374731867 953423720 223107614 762658429 781739395 840230315 997759185 425077825 442196083 937548925 702154439 322022470 396213603 772355373 333622795 923344327 434356936 870325594 907839373 440803681 505429194 147980322 423492051 588031619 801093737 286718826 426946105 291328563 658795193 995611819 825038600 415852973 971690913 766905966 583495775 858031090 632931445 776654969 47439386 849661385 828758307 769332577 832476282 972334364 804833245 121385112 765209134 688245550 931485958 104848650 880789415 821337954 897357404 761223430 960349333 362078313 921717907 875093826 924406584 757951578 725295218 15789616 826797879 350447717 981834896 904551996 974378722 998071235 979715149 841923646 746732180 318657828 999741874 594313039 345854277 979276574 509662968 898080601 873945884 909052455 765204498 618872067 512854458 972970565 410469061 358163297 69776458 984280944 988526104 420302815 777169974 869803959 932979939 98207929 398581909 111701027 243684718 946591540 23299375 175488233 819569754 999535582 532377977 982921131 156431277 866184924 626308535 830988861 558845394 814713996 751827276 140643520 346137054 826133359 787918570 963597348 32976051 811496501 971233011 851902759 257315827 975586436 875097077 901116505 811313786 232765979 749778445 118601839 149831311 722242010 884562159 756797356 842236789 91170913 918431051 438157251 501986280 946541308 257244201 931081199 783569689 517472634 275774154 752416939 157340796 145632021 258261472 712071532 910701984 742761545 769335367 704155762 749188831 387458079 603295051 743408641 45075448 472141573 871075129 827257568 288751922 276436672 895990625 885213933 875302741 832414935 680721970 821842429 579579819 108692357 881658487 486449412 598869782 490533618 125682647 479999065 994419934 539531990 763179697 167380033 579559860 425076674 729648410 541238763 642213755 454185304 409197036 488916232 823861512 904504301 836676071 613739078 785037600 364371818 264449920 851930503 942737054 808285390 323834395 101894049 22332944 148144222 408568396 35582966 237857080 564517827 274606050 865883877 77592024 311144120 36223380 892497385 452595498 752459537 556173296 509922743 949285875 216786189 301553274 579841451 895771216 750803074 598977677 992030075 898347972 344623411 867849227 940018838 883947466 132556260 675224254 864316177 933146151 912388062 804762599 981030054 749040499 797426185 940169406 41185874 456842086 679649796 707897400 822007823 314869965 637540804 86277488 932252435 169249938 884759565 986953662 336147080 125282753 233950277 496588959 777066526 364829889 976668833 129751566 988177741 551516050 955241343 862909415 860452871 869129569 437355639 895921001 925704625 989516452 917486501 970025063 839081834 191242987 434600108 781910514 447884228 782821398 85927137 584883378 608498996 381076410 402031589 427880552 898716584 911828258 997683433 258936355 342350372 515734475 678738614 856551392 384417850 769213543 105801408 122253909 980380457 810228025 128889827 678032483 553062602 596300076 443575137 797596070 110956523 327613567 764194171 359338372 538121415 636220636 369957191 748513840 883753235 937157885 743129010 881745787 153945388 9409702 924909375 825514911 641721512 796070826 94844820 955279182 282817715 62997370 958817148 513435136 592187092 787307102 836518811 132905473 832843450 619376450 405017109 803322758 949524125 943968196 7380950 952185973 940792359 957869142 248456116 12249289 777682459 822516666 358718609 873528876 923230119 379918134 951306494 806663756 536354437 55309284 477724244 791593498 259123395 539047201 929875493 213114146 743893432 177087817 964821231 593740732 969902820 734768137 964825830 882771450 641379065 859910693 919034364 905644916 843549782 913853764 839969059 624506997 737020247 596159384 748115994 759693093 909169506 990188240 691345140 846148115 782804808 413906845 780194267 18577548 61476740 816002854 310182751 738875231 534848834 588384979 961294651 111008990 806938522 352316879 104685728 108763454 984537679 900940589 818964465 759530924 954771039 186927858 872493976 751859982 307727902 882576561 518556911 740833433 718216459 100329518 758858649 569394145 121268353 853515018 837984637 433977452 852556329 919825392 834157706 166756528 836309032 864545168 586464404 331080690 567548759 759366409 742606259 318914125 844051408 861847043 780679210 739743044 226399041 868347644 790475883 999320118 325164051 557597060 741975683 951396054 743856585 965077917 999487136 89472996 768461685 249405876 381319796 937005539 966529337 698792029 71418590 664195974 583291658 802654895 757595546 44473627 348196605 792599341 172904564 973954382 937437607 414888716 160330316 791978573 370161604 152534958 470186148 590032840 772937025 808152942 843778311 916997181 530109557 972516599 882555304 103409065 764927328 810822769 28722488 942597906 274075778 363631496 742931974 742718277 927105502 975989122 781357126 747259638 882782765 282936719 100442681 766921873 317536002 151680329 329248456 823831468 877572316 771088549 306071324 771327313 985742938 251346193 772341876 612703731 934493305 135834026 805611823 806262207 954074246 435108303 316696193 787881751 415345557 974330322 131677244 100950096 997494994 136211791 338970851 997827943 661743936 912249042 660441113 291362797 926552136 930075484 295526958 733138317 586546162 495441641 38875316 980689991 986002053 344528633 202589835 927679540 790606412 194441056 470703451 797125382 943929291 244249581 529506768 86518439 262830387 786629287 948648922 946912236 212542653 302810683 767031660 942224403 696718146 127613815 977388048 57871334 968081401 68430328 167119656 996479396 649838831 41275425 594994816 640435191 955628776 832838184 812532010 534411126 445941099 623837544 911262374 822122235 738266983 504317790 595392720 914547844 860855702 881585132 196780062 87256607 817021486 580200622 829620040 185792992 48102676 771782076 536379330 110290843 949877966 143514113 582355261 738610729 945497596 474033704 109158186 378391353 863278239 326034253 679652322 14630297 553643333 140237350 273960803 819477867 892019480 843482403 933626209 892034555 781311861 715175521 838346466 262124314 65160216 821856719 883931820 939720572 866006158 790776212 217232522 404776419 515549102 131478961 915072701 755966825 666115985 674816309 859480636 332636091 983353162 811746878 581350605 425482686 105756836 691994594 739720437 55916571 551318136 144657865 892572427 7473050 729744142 945818970 657510517 842434284 535563294 898034660 561560229 135808269 74592726 764034654 556731740 76040272 808935996 418974023 885723346 997800361 613583030 752235633 964580880 585558416 457934604 221239076 859856646 814424684 999781430 474219908 737660667 872174800 931106651 712008190 787765326 654905363 910231669 920968047 78239498 438494472 769226723 763484964 878595389 363300316 763849997 540977936 143872625 72433397 990477676 513826029 626244788 741380038 752090081 142237952 916676940 342188777 986271217 815593825 872825196 756831706 822262796 851753296 164214516 60748953 420277838 869464256 968929121 107069763 91373240 60461752 889475762 621232955 670655482 693982175 843854907 364562504 857191901 749753151 968204538 908213190 375020785 688069441 733773356 673683675 742639323 957496813 981598285 761367430 828068253 683198425 203661450 740833378 69969013 931590156 432820552 973263530 247143810 154036758 515193593 816932323 887351989 165588108 508970230 945342509 897339087 126203417 766383830 931190324 701651364 601036437 652361754 925354234 743637911 992593511 869222856 94848995 234205863 986022790 916241151 931083565 280058385 622788792 990499470 761108322 88109440 103010488 907949808 431623064 792466809 716631785 594727637 232047326 964427678 972550633 839117636 160857651 68975380 812004732 363043330 291902644 821945716 525141290 745959402 767080897 612857488 21649917 938514850 737288904 946213862 272510737 834423095 240190974 828680298 300084942 791775403 203306566 945724256 842498857 396276180 432888427 87226480 719488940 63580078 589090683 747798089 98686989 809801105 828596015 243537840 802178510 136476673 865542414 799687121 900744129 67442397 440998461 876923328 865048374 970954683 762641316 827544455 295984150 937119591 756050121 169393591 837787728 650004890 993737511 80486898 812553011 429077901 600956721 815274379 883524713 868124064 969373736 926734533 520361799 455344251 781134313 193832112 607654781 810815547 906646339 589223472 870031731 739136576 699785482 878496732 662972333 157558978 867881827 127947954 212190110 682500219 398596927 468321266 805850988 575554715 252010279 525549886 334674878 976379898 703500770 443941957 908287285 500096579 960919071 744129068 644911396 861308267 364026412 729815668 888774229 373435271 585562617 810824291 976084592 881585930 842353487 613100889 472947217 937939255 965701025 159644429 157297671 581150146 957407356 562164999 714631050 990257713 875614962 426848466 765863136 797937839 531368760 16420570 921676037 722022436 975603151 882825504 19529 434391677 58575506 764005423 441430213 803191991 142829409 728366865 305456486 954087350 445950133 230181015 832745765 964445525 202590483 856592157 511253643 672117178 860124901 381734278 769811966 693047457 270196170 871772660 149648083 402048182 632459473 868485542 440077531 426463966 152985849 944766734 912842316 819172982 878644865 871700129 74579595 137900027 770903803 807581993 482402171 874416098 657927787 712876231 683665121 314196637 808788193 551926338 957115904 490589469 136211469 726588749 826783713 541768966 883628978 891047792 647517807 872857634 709329788 952858397 908946888 113381272 651418056 637186804 245258944 979385401 89572737 936054926 935879343 495769410 875512985 102676911 850763760 300916166 91127880 863180939 743367820 830995764 908172385 914781433 231234699 364923899 463492987 743378831 635360809 823821685 932151551 941530052 250073493 35145550 400315039 788782010 813312367 900317759 475071159 996847342 399082511 865894526 915399091 621712940 114209092 124630147 821427170 903692410 9690074 335277933 897608301 799015446 326843168 239761827 961788549 885403942 57452270 790649364 816681827 177416288 582907924 472000558 160701757 107955988 887355932 630125627 971294466 754146268 668935826 41238846 901653834 669175621 970069009 410431833 799682908 32077343 691779723 313906286 952389225 913270637 863886400 828693872 851919817 394521598 697031671 905121387 553556357 944561325 852263929 936206684 765085245 474647406 806509763 707876050 926292058 813624269 417183857 53448304 28041914 899171684 992163760 815190823 543735327 800640294 738921806 306533273 741961136 124058849 998262093 742033328 754712650 674068524 569265357 390855269 877824279 808122746 129579060 8152022 589201501 860723586 796425124 149757716 240986124 232815344 397572893 760813919 306496689 20187778 502268489 658855136 900261632 809377504 757941628 851120330 378760416 586124288 901985870 752706951 226246308 855965548 516571295 714594952 437961423 921176085 375577205 910585827 891714052 670190523 124026373 520188114 958882824 471546057 844150683 960318117 648015475 760919293 517939129 376842569 890634862 922203425 493138794 273490679 607848513 909176335 117910570 813254364 958226399 913576170 36191909 285646400 935643727 415278771 659898706 187415043 895989112 761732010 872245210 492387545 200180256 940336485 849264238 807669933 933333387 454033651 909603057 901975673 399427088 789758312 677392915 764477638 776679407 20102632 748441230 875577818 61453254 566692508 758625297 377766086 829834764 428867371 654886331 999982128 452751391 737020247 483781345 931768894 253613142 776910787 860242531 322370427 76297742 900174774 750988297 986146090 888988957 934640857 898289026 604945568 140802759 893269598 635461096 764548459 855002426 737020247 689836825 272016249 601216890 257314676 913771080 512354469 813648724 658333326 897712813 874135598 832789651 961115744 588257932 205759405 670241634 80579213 732365830 364627782 842071343 941637544 660310174 17942246 678054017 78690741 872320032 126886751 570975590 15092516 872735460 953740551 807207644 932759559 186840981 878493491 649617877 69615918 917003546 943561207 969618374 640498966 786128621 710712081 812743714 735307063 565801316 675279052 805185415 751572007 846258608 875246824 298828624 500800543 472456032 903860922 883076639 618381218 765209998 368180270 813608636 864783002 303483475 991118160 83277801 92355451 718941731 766936864 791533844 136370852 952887614 859544769 750442921 606803261 105440197 293561864 507281891 526623183 959272004 393645852 888570917 669052684 214445482 13154319 899561078 890205066 823792977 78118187 775727937 159810317 785983916 743888068 246483894 512951254 919117446 968961390 87963184 341546681 27673780 23255101 922879890 175037649 761107639 998822775 760622332 835835267 466162062 333289495 953778976 615925492 202251186 196183415 177107342 991001383 994646064 401432966 741361218 571639927 627696617 247687007 709049723 147397041 53702420 968247856 813899642 445202786 857179423 348659192 816694837 771875674 817391451 612216013 814720123 797660666 754071025 200057063 300560067 248709914 725665070 477213426 901889278 86553790 543170896 122848402 886699987 803027482 566384051 771215145 193540593 649512602 843813248 952549485 930737029 580655683 338239552 812830859 913687662 895017098 863311645 964314136 789734411 223597242 691381504 998265319 978376661 861757320 452928189 823886143 830937632 692454455 102590497 279375329 871230070 624054670 334461812 94667433 881622978 952604691 737129874 143226416 787495330 885346350 898664985 889487661 623786892 622230256 271577271 466827333 854663531 252487136 740408293 837709533 742900942 374871952 259947859 437304157 874157118 31810313 103298583 251703033 580605818 847081396 654372585 437909638 754846681 986671905 997100515 842085927 855235142 783348348 144004976 977386760 462903053 942853754 58225845 215799618 818506713 669177451 631153557 980175656 243965672 815583417 885086516 997403775 830563781 292065271 997371044 957847094 128835052 983859854 473010864 971175440 762551502 755655724 587723199 113343598 997836924 769120114 932274457 994010662 330964306 961624347 636124834 782850930 361156625 826647152 308428197 91317008 386816994 947035918 188125372 773069231 918526457 503465059 42106639 280032194 889512109 759424508 750465658 433643201 374425968 864279539 737020247 151589139 761427847 766322667 911696817 91216826 795860280 709449597 527117102 687237003 723484605 449539212 746424097 939648178 582544916 359958273 274539801 867622838 879052094 852873480 877534265 778634286 832284934 924131528 851955036 859525319 261243335 846774462 944576026 981412536 205124405 910933795 997114113 324551698 516783481 583054081 157753602 804026333 785916445 488450660 914517583 352675383 820349415 681974025 896769652 126086202 799976793 671352835 982354681 457966567 615609401 117271950 106584288 461355124 980092654 984155059 459920776 973724771 515998923 552978548 909675200 966677046 893134013 886001610 950977931 122902849 710797877 795249777 882503466 781177285 435402062 888501209 664679980 503982980 250061119 130828344 875829221 842816777 988352901 69613336 725049046 878600734 743900456 804196666 555294609 189804455 803287462 730442003 573407847 852951427 198223903 112701564 80069129 949541790 367307927 363241568 293735151 119954816 906068047 239977259 347906182 803093114 833257308 778320704 835184451 230199810 799142514 801147975 839596014 769003152 700040717 993920004 786160986 906336180 38356966 539012031 556633716 127549399 418458443 867361885 303596445 526365495 62499616 996835816 154597796 739087005 888086869 893619795 561579526 689681906 679934029 886417975 457011580 270835734 970075462 790570132 573585008 758765866 985545457 238363713 591117034 915310175 954443578 874198759 253340207 354430345 383572259 823067956 777765111 385515487 129389652 902422202 315155307 915931225 70900361 271073983 96973619 902702735 144989491 958257553 986372762 905467271 120722733 360787107 366792170 995626095 997228236 205812462 998060440 661207732 719658157 760979537 599484813 396342125 242007866 51975376 752705100 383598977 976173699 350489488 652399366 54096927 964119001 186206285 913273220 199866651 223083636 813559338 818448763 907450044 96272953 948725577 999663479 570119648 973816023 53161326 965423581 333973602 970157486 915654822 482989661 730740551 525691180 966975544 494601044 980971881 508939046 602194509 995651181 380683661 832111861 87307547 80233072 713950536 668169747 897656991 169253561 986632344 707655514 613145211 163989175 764783790 846118493 528779733 158525209 969872868 198207100 351986067 995564470 864719008 172982931 482773762 809980369 877042403 985254322 839454019 244809925 870299560 452376513 700977053 755119082 783718605 220128806 256408046 964234908 356830762 840619720 934158784 724414489 272460954 209576611 328926682 781006578 46341815 128705147 985922133 694491509 754609105 834935698 973413387 851517475 435345731 36398418 98607171 987973330 639486798 82497066 807527198 895854265 931216858 819182723 720210549 290359794 791865855 709990137 881214300 753630571 152056545 832667312 374672149 998941603 962410919 730298836 139579747 856358559 814941775 877350146 854284360 910402951 690480261 869253990 270073577 72429660 432598111 30649808 258285791 191190221 836551044 248876872 741925063 765122921 497532818 844549714 866357959 726754404 563516802 853829571 859305713 216947873 524951682 383073809 71925073 742266753 986603482 880562030 890345960 248291791 5160011 877396782 908523929 837659144 753350343 784020245 821148332 160798678 897896886 251638165 771289009 965089219 895025507 906852346 798533364 982656708 798876055 636770295 767552094 778306746 996508990 93409452 850540092 952927207 951471614 240605120 705503281 522843883 186539114 963431767 816452544 681202657 627602658 417928769 777981574 751417286 36882440 722641671 302384149 598926163 894741636 860073869 987974030 760492682 787390082 531924652 902021236 697061853 459300378 260760195 532195520 138364833 902312998 117211197 811201096 139117773 764664720 907727062 996628008 621492892 986912029 244013844 263904269 464148185 801550688 236257624 778176470 881904304 787885811 661249267 622899400 916869371 994630252 737692198 201352360 406849350 680230697 740703373 749670336 199563777 943187691 635893045 868307230 567354609 471912843 260363562 664084656 155557756 719160014 750920828 416032894 901744519 274368382 72123796 477920253 858862477 910456904 933463779 321891983 489587971 264017897 560434098 127562457 559651441 519794904 598599093 105868747 89847114 840789992 899448690 219994991 967780839 921163624 662612985 201226991 804997525 447664940 738726816 620705570 13880220 140906512 423818772 879598948 798650406 288665621 625327053 99734243 270757304 87778546 903402425 180181867 758815635 494109889 978724461 692353767 29328539 811862396 629692467 941163136 148090485 994812478 758101815 139272306 424737815 808936260 404896027 682052489 774266629 79598971 827072626 764527551 828424280 868500216 230897725 905734726 335814246 828396861 12612399 363278982 760042804 888420908 923721127 114012276 578255634 321933939 434078770 240169672 944932387 413196936 822982984 667465982 991470471 93017082 345955511 908973079 153293407 94948055 158603766 902962640 781637822 169428021 770464499 955459833 784379417 870190983 859496330 370188145 922533536 250002126 951552455 766109620 571857911 575017232 176472910 899050463 979307568 899895294 18304444 420408557 393593480 587790986 65174864 851234187 597926952 708271181 86558594 242610363 175044881 46271409 807655812 767940802 894079575 147014832 490200971 150022556 531254173 957296867 924222096 846038505 690459270 20958812 77282693 658316893 206816450 16823146 954085231 990383262 703994507 794223684 838705243 100783067 955102085 138960434 295374201 211306843 969379912 968344571 790943770 779156011 854036934 509182462 685524363 246273732 622514118 985635926 805763359 138348383 813577542 924093695 783974761 806877755 973146479 950834607 371869729 73581148 677461177 195567977 892344482 821954928 850587395 809674047 961592971 714142823 872047520 782002729 776205622 140124844 499130880 284412637 94034456 729353509 466382677 790935293 337072021 788646728 974420144 276876875 704642104 742927343 912644457 874913019 864044745 775495037 886132084 124727526 34701233 952819343 430965965 984848296 647126355 743689438 379245323 815924183 267939441 791251537 183208646 471124985 3925694 863866047 779757331 245287616 599026816 523942940 553142790 725465788 944753537 776996330 821749868 903420207 210184274 299809216 901762569 984803399 944109320 963254358 917470528 857674364 671587954 640848654 783808853 778586854 141578521 791100786 810763929 244646911 859437025 148735731 787567457 808656879 737020247 899581526 679970750 367673766 895035085 933089566 794078362 566430622 95617090 87746069 911965380 887079848 738818214 833334144 959527864 782742052 271522697 976846875 595359232 831826780 621723588 33571755 452568071 845042368 249248443 468859821 956201217 745104006 753112712 452539543 819079745 316340523 819146933 819547881 402772332 934146869 884918862 64874107 489000199 803275115 923487368 881392958 947534013 783231072 889624839 665652873 65656651 620761517 643955614 800676016 478656551 679726299 56251927 827978709 787679492 898682680 120654878 347203136 180076215 937165941 118823528 758036678 506349660 469638170 872355646 749446960 310168229 24553711 2290373 529595116 205270557 808627680 521311517 916454542 193085520 358300364 805823897 810103793 20357276 156878507 615972448 798151404 85674455 984579475 936070503 913974283 974808674 956571889 689679052 764950977 763003472 453314573 625116979 677309176 280196111 927269113 987564655 21371272 453855779 973820865 866835178 53718866 921931767 895298547 952067984 533832319 802919535 64646483 436953071 115247420 829769682 972843794 151796869 638276182 554040604 866412890 327798126 392382321 362367285 471855102 203506523 771453622 963060330 431341658 960659909 984218733 693821082 115923697 887909661 69710517 705413960 83719068 971077874 809651919 882993679 992967411 286544361 693090795 947172702 981739500 23720690 829560302 474559552 279781040 945295582 309286845 559183080 990447972 131310535 153202336 302307143 536712453 21314417 176958583 955489473 820624378 20332728 604193377 544156805 3196863 597523743 442616223 857470996 776923152 804085055 771118105 859660285 474191944 848063928 491785069 899805203 896739522 410893306 325817440 787893861 950994969 838242305 843613782 62278496 738505487 663556570 914264490 420933991 72605472 25078334 984093858 576576975 222825478 718256912 941227104 868408870 797349756 862923009 983023658 534371330 185783904 85964568 119055087 488279616 923400545 269008007 862618365 929341056 622989686 890577742 798177178 713415506 901593786 891200693 922371673 542840669 770713308 406382087 812885743 560127441 756734511 375660541 935922858 160719574 926892251 844855248 237167456 17745714 926803465 73146671 774200237 348576939 946429680 812253947 937437481 753604968 889825153 794279874 7962939 367865663 219422033 959376599 137543038 743686105 673915076 752080166 841188230 532516440 708560588 784810410 844925230 443399853 57964822 799252258 768028754 777978960 440179848 756236145 768436858 858639168 855245532 860871001 867234304 445110214 108588619 916477879 854915182 923838453 479939523 472250015 56816284 763087205 468485899 658642737 783001322 767937719 614168903 874650176 934659046 127508728 553672495 530407055 20464839 824298395 288695593 283752209 785283551 492357448 984390039 875679000 690153793 685990716 111050815 290548665 141546731 603714916 246187930 457052380 616921645 456490336 203532767 934908599 848683063 843327814 737736841 532416064 332915585 750795487 974640612 926415313 964842104 953353892 738322425 108673768 851997495 240826442 149962294 602890898 944633348 681218496 88825664 896675126 861255245 171758448 571844747 922361523 432989337 205045628 255934183 833688191 711562899 93173703 27200331 833250040 994263955 503425760 724735819 30729973 912191243 177325053 118895722 762625615 904479951 192128099 950232234 942348416 121778262 543131518 486691693 324063212 806815737 926552958 940561834 585074310 747099278 300954586 808825006 987314469 704916543 881435955 346754343 966917715 872513504 831723625 795359124 555247541 737020247 758416480 104352950 79983694 947571958 839566865 273105482 850915156 802228807 224952186 389579069 949215069 743557022 822301262 463910417 865645218 839613126 458591145 994279005 439601850 16957618 297923979 378707806 815010147 288303446 925340409 778642467 418435654 333396967 830218521 440683133 735088981 971026727 347124158 542973600 967478838 866267011 352366301 482095886 251362300 760283466 838770320 969150307 490995340 791385955 746343927 455193208 737144385 334039925 760192370 51223219 307427576 599010480 582939651 163578653 754177224 944875804 73990295 631416130 858293059 353539449 246075241 209055038 865102920 918870901 786624310 814710832 294810084 280458961 772892307 231351218 783852885 46077394 863306343 833546381 532555382 148068992 788971670 972460312 917760984 561761381 393656091 877345697 758451185 996799252 517776344 160493874 813303284 930370328 168194977 887769276 507009492 473588434 825225680 679760521 768082211 279043229 962412140 897504832 551782364 250822896 247325776 407726491 516001929 194181567 607520165 332370170 828673345 785747231 860277741 432241055 389687756 586412208 273265683 858534585 859786242 917484618 746220400 350749648 127358280 947817792 748740551 758120388 943450440 2783130 758757329 159952598 792647822 418735024 810530099 895905818 219046382 482453953 106705462 84270854 836172515 636002324 295148168 843021657 854884150 883654685 815301295 8731557 282906850 656470291 813867759 673568456 591261720 921072410 216689996 737020247 779032261 534497198 242340613 290042245 814161617 701741250 797405606 850648285 716455727 838141703 842720241 860712332 265422084 861763845 938579384 131808941 923576498 627385675 851800090 791253805 752837636 628325689 86543502 968610233 856954114 856901022 372085600 782461984 751112512 930742663 784668059 859483909 765937983 243785176 822291991 461717874 865567313 994613756 965365787 237175229 600882323 91377910 210386167 752816127 898122710 827397152 529718774 811835091 787208678 154829735 769662951 951436594 666026537 765623158 912643642 564466120 665972932 874149822 999740684 83609142 86000873 797285821 409992583 956300123 497267712 910773156 956323369 331310842 376652593 455187533 914427106 934020836 289587487 923531638 803747410 877684282 129976772 195935520 786813239 192554810 604755861 443343254 221720990 972591966 401774848 356270408 313252741 190166380 802167083 478380603 421652681 727328846 472299192 452012149 313106066 200783062 654649137 136216358 918033547 782531400 946632175 932353300 811588586 909153181 759984159 950256920 561928185 859244675 705662448 939089327 811610288 966157048 821660336 600393643 974763629 998399038 110715427 961701094 601613570 35665989 120634993 724730211 906574048 516561816 509199210 659261644 222537068 834989110 616877195 695281603 876253824 887096637 920972763 609724793 905975340 859658551 968580413 936031896 817318604 515458769 235431473 770046620 179491664 873371298 968708886 77056945 71527752 960524521 401481897 950675743 825344731 689465472 833056713 708465082 332450078 557744821 874222612 675570640 188861342 984374115 183483707 683663053 776460490 91266286 746381998 397674202 779740535 247960176 875496624 782426103 471951300 77622672 380095657 327005487 597598654 977729066 819307167 888192932 884664406 32092963 778297084 990367487 559809996 676246586 886955638 309751360 963686724 571421074 272559357 574742171 837903091 314432383 88597809 845281298 814370597 656660277 899671840 575359643 970161992 831923964 759930911 333247200 784608754 56347180 388069845 278887475 905556132 412474530 1832094 856469206 877173164 613562955 808319121 932225552 976202225 175881686 76709298 587455419 942206407 661714940 781057371 457009119 970497768 569575326 951786620 430757578 103163679 717742776 223759048 128343279 848266888 825833809 876080190 681193625 167988106 843674762 505895265 743377310 893266820 745834652 34901892 710268783 836902929 256221274 769504848 422856858 890234500 79723260 985311737 88357094 974052204 550426232 34113935 227417550 141615641 872742844 420358097 416605975 734480526 624550721 363222977 881153648 54653622 425250223 842349405 237654127 545299234 745753298 369841037 922604636 328736509 264066595 1002255 907413681 100152435 879247895 491856174 475371312 95830650 966815128 965227563 182629991 747079511 3907389 446976259 128684752 990828549 112448584 282469986 904090266 903071505 863956457 874457881 421678646 685309915 997495471 987690616 971623089 984166024 789404931 101915198 966359344 447951271 339485965 446632952 707163708 737367904 571144700 97459956 897125974 919082765 904683034 517060962 898980674 792038333 714480545 946364464 777116807 46849516 582808483 561988032 575569885 830385604 686310568 920703215 138426476 819102744 379847924 868074935 269718682 999464132 840558374 865797692 956677301 68847824 399924851 901594080 953589932 85360321 583006385 939941872 246942568 320700299 962615594 634498716 206783545 30930852 667014352 856709090 251116005 291311135 781093384 360338995 305916 793849924 511106164 971819617 958130608 527164115 737025332 984722049 790750880 771588376 86117205 485538588 158831097 795812802 842564952 427658765 622282544 908821901 850887768 930315586 808115068 471403280 907142788 617813617 906847247 396681046 574300390 911280113 319630069 965766205 765630380 896232397 972897345 433148601 686705958 821754181 253042956 168897115 941072561 976157388 885329233 890618351 19162185 909844624 433804271 78682357 883699195 418484879 766738751 661237252 132660814 119629837 891166810 264238636 532160699 800287736 785494040 938327170 339206636 904254436 936336373 697184405 912411939 161195748 728648693 816602653 161031098 839724768 817727518 49384727 946881387 974663220 86114202 106299989 930928634 944428990 580753642 899328933 870731426 901682730 515392315 981539241 558774297 17278731 944598399 902747594 29962323 929248079 536089576 961639139 54850225 725458228 593764478 929906599 412032338 852846755 963463458 744014361 58916650 855470080 148643620 184473064 943581704 821055743 848382922 528924604 841430608 472806605 390431064 945130592 819522709 755339604 281051336 481564447 558750680 923774317 897506609 976267957 823621218 108163848 459561639 303864199 877461147 29395256 587430123 81105126 797092278 669077545 748788960 690847649 594364307 748258754 637982998 949516447 775742408 875506575 516542262 79939052 798127377 829269806 208593634 168334030 122131611 600447441 992105055 965475116 791700482 940676729 566475054 193717446 261868349 57298008 718301281 972545016 703639951 939598620 633378300 759626591 991267987 441356965 708933965 185245264 876341033 994045764 846514906 938942198 934638008 69718777 52999830 176381247 832402832 128472359 701853104 989825242 841225246 755097631 848833405 464159953 227150038 533411113 978635249 917162179 632238667 375395179 740078875 813336505 254409737 837340983 739901889 309483248 62865417 567515445 889598612 962588792 844436460 834164151 428168377 948855276 967555338 939425722 200822156 968039424 788734792 921362087 378192158 262985041 875213311 901518199 734995622 233816924 833581973 778149572 828082905 972667404 250510552 769745791 335241953 884167294 270964371 278765421 21528968 17699013 320295404 938312773 608022387 177287152 20756829 756794336 851852246 666200477 823909196 330342292 995658182 668370462 104059087 525396670 546865946 176147847 647439652 513435346 295338957 149114189 379243105 899861146 759897142 104152367 869263792 281018305 557916484 266913343 844592356 230052162 81735350 964994627 753465822 11108515 53609407 183102434 302461217 681727156 679551893 52389132 252191961 735799592 653897239 315957528 910598678 77627990 90472093 971317480 455143421 781168579 104405492 331869299 743862832 620066672 959045953 847487544 869163607 303918862 26813631 991649591 170833720 917957741 805056430 689005941 510239372 852328690 757103173 102357021 801549652 197968438 506219585 360969256 163964716 760534645 442794933 885151324 105903249 455857846 537154256 45544754 680001703 806217068 770949433 936178014 921832803 503269019 969889504 163804235 551655855 985509630 268479151 613287507 261208632 873441157 964861594 787863019 910141908 373209412 483498570 988337309 979598406 576766341 970593815 892539623 871644774 617863336 815872588 179224918 494992540 812940905 900258110 985100309 446856620 460609888 371100324 747665811 852083534 362305341 899369814 888400836 976970535 21987775 687697179 345227990 615009486 570016586 916285976 608861786 622330563 541562979 374607721 825362309 84821893 878360669 937402965 157426549 840280226 997639767 789417404 531454480 273962999 384570717 897626093 899649558 910710502 640638102 11619347 244649601 884129333 72280463 948953423 6255515 944578376 966067421 190840572 882433270 997506730 930160081 881974516 833301922 441341955 980811590 22023090 952598277 896498420 391962643 463519829 347968880 737513768 746534196 678732805 917539234 889322847 902380764 860718569 844001174 773895151 961531962 344434423 888751509 911602959 315287597 488803730 735757201 592698788 303187797 962151897 964766884 245978964 73956923 989335543 429423090 292709932 158012845 315094261 28821001 106091375 508397697 508409141 369468478 877483797 168486709 484527344 572497263 397704973 601724301 771294210 572780657 532896969 152223599 869259940 259489228 923805050 737020247 939658650 988576759 645178542 605455900 271231896 749369762 643020283 934468603 889354455 273866501 54121655 679910319 841445717 880264745 876580014 17941061 596894285 912690270 874180698 743561554 791332550 780955015 801102262 329407803 814373464 823960325 316119291 532300814 849550604 658192715 513775600 268340101 497790215 243898518 826824630 753504817 881121001 296394405 730548193 379979027 202309172 487890469 999758009 868192919 609808663 66329721 52582665 469637894 461426540 593517512 324756483 380443970 870292755 737020247 997946216 763932836 656954467 426338742 676764446 764943867 12370644 394075618 765503626 31199424 614077637 838455951 831884558 749352165 806389964 30537803 594424535 122187670 247021387 384662887 890538830 984611006 484771269 304897427 344431591 955924599 589698942 975015183 960110138 899031477 653077043 752591104 772847259 814585475 962641655 129605409 817897885 182091204 806596805 739031850 755329115 597087644 162214723 743679477 891461693 779574623 883282293 950750932 98918401 907886396 738198450 611998498 963356466 213371272 253119307 713148760 812795148 858191774 138774443 287791279 822905958 761007459 959953819 577062705 296015161 424650814 197317727 810178144 968250274 654652433 767809584 454022406 227790624 705206547 787243646 488174227 962820013 776347562 752557037 506759118 911766409 208501823 495512639 224500679 586897936 975586723 952930596 469300543 834448893 372721288 284134588 780998490 712247709 746298859 763259118 795541299 846388582 228731690 738101495 371058106 988090680 911131381 842110172 778949416 744670854 897321151 289031334 704732716 795734991 739493504 162616085 274315602 937384609 146879112 762066322 774656690 387626393 83557011 976629892 881230588 172214641 46623874 681189392 161572441 220372062 944051454 712053697 905539551 841982618 406702403 987609617 982544844 911428109 982245698 472700233 942912236 791347581 620620867 729482686 940019605 678760986 842402158 204351526 715505056 859293882 800667230 885591219 332601512 998744954 762194453 604113766 324576748 286242567 469245564 273551878 268772362 957379282 702973988 809073210 906865847 489976989 504738981 58962526 943457760 809653042 358643894 422571970 45079234 815974166 371766028 991625199 844638252 847251000 357697163 924684640 817796876 744044814 933662007 504424618 426075056 938435353 614053232 908150775 151795826 940127794 800378230 65005998 954384389 949323975 141861621 978723147 855933806 152018862 859380661 730310803 259893994 874144043 738817572 79960304 864508070 131351440 568033487 850075551 710799057 439753122 455749618 816330910 799219756 964005145 613396354 469317062 435139712 261386617 882800055 919681542 936828216 328982702 493197252 737315483 740830583 520947852 140491011 280790178 61934890 623104431 574150920 582234577 939180968 838685293 663557128 740575418 286599527 762173147 141133747 841992143 782071735 972928785 816610485 892171226 881074245 128742559 271785533 747663331 758104412 743396116 743506611 911986783 958845477 801699469 1921655 378186380 363714455 74045607 658758333 899454118 843360179 908792378 834631566 878764595 478458923 774069717 443666395 221290482 737020247 975776829 721353788 887433543 423303298 815949644 825754904 641437862 309151761 423508183 493010572 796682187 28499206 757651905 854353467 155636812 297078668 723110973 15372913 97367785 847404155 152001606 661934235 815530658 762957045 555843260 820128165 929059568 578045672 320878044 995741156 896449696 596419518 161620055 781607212 937388471 971157972 824558490 367916057 625188364 669046767 856315361 396096780 647387319 331222637 94786681 423526904 767840094 419689083 990954218 529716299 38103016 522302225 852855449 994823303 450145995 753300231 455243138 467960141 681982271 725647379 112510303 832381113 830134537 851453757 442968016 863319072 839846224 263741418 223836541 542598710 969414259 856184756 527770227 753406445 684720728 791850289 253305901 107290061 273153257 260466171 861353233 903355282 986176926 774505989 312267717 481865049 788963330 670107292 922494512 27596526 770297379 805976413 931561292 514198770 766380988 824745271 800710753 266175696 669401549 888316863 410710173 328311325 966081679 862419994 921319411 960000216 706380777 91204001 941717007 871012989 651127780 16044342 479827432 838038445 752270983 380780508 790340809 770030634 943545730 890710407 576450370 828805109 976513643 850939632 236802269 816520859 295240435 68849233 935503630 872357273 563644353 505504598 647084390 992270783 855240521 679400628 793931147 278978615 691217534 288449056 336368370 824439855 467402019 213021052 840940764 474953948 999000770 828644047 458085270 966679357 800183703 832764529 254291452 791060056 779947665 407046378 927230521 318729824 801337836 504691039 270407500 292718692 536835380 890211473 99622610 376522354 899068261 852857912 852019874 424985793 952307262 271176336 65305259 339961204 909704117 867390680 34391459 306547965 935882455 872671961 150876303 743872932 816057543 762837138 765866824 779772675 793831813 229160901 487348859 949017208 832720475 625890441 868658284 924868370 624986991 779747980 978143563 868063961 966092445 376744850 353919028 794627652 851499664 996088019 16631352 981203232 950830071 663604518 697998641 18943268 960348571 931164961 603474009 296019639 948009984 752592970 522574617 913095914 974842050 688732191 137777008 612661296 479595850 888281088 854899753 29570241 761663839 831016679 760272417 95164569 83367076 744646395 90967197 971755487 471032733 363403327 743909122 779575876 527128531 485501194 31985290 537040294 979316491 775893081 61122293 325049129 553545710 181637287 791149562 94306618 833203755 805110223 162310759 945138395 16537145 758974596 809103439 297743510 662503753 748810473 308993111 883422489 770633760 222284856 626612651 148741710 944796902 875979520 940284099 929514761 132425407 815748010 285236316 713426252 765379964 913086582 14779983 906121956 646685301 589144163 511249040 888743875 299387163 2978909 63212511 887482612 488337728 502063723 870467900 757668071 864659639 536295472 546134451 898702819 999491793 320343147 527250402 739059890 805971773 521709469 396184553 316535609 774806221 768716173 802290541 332673737 474616706 887941404 312995160 98779414 821800275 545918901 765724232 981462490 821853166 972658321 526979620 108492287 904515757 970431784 376242082 352376463 464512580 536078321 732436839 117794563 64903386 796983590 140337870 345556173 203290516 142487498 838734401 222953484 563660526 635588523 783973017 995869846 916574956 15085558 138807811 260443329 814846163 793928777 513880229 687501884 264627668 811705419 900824644 868699139 844416329 846253270 874531457 329915667 855872199 380777629 471587558 393834703 529346361 609324420 950523456 195127272 566664367 2360192 941548281 259745780 801826976 888596969 608761220 444240201 997077493 985622896 23112100 224512687 837419633 274694133 337421422 276976844 798804109 948525521 943562022 881981753 828279568 880840730 520027208 905710777 936769175 218801573 923223920 830934803 195660904 986486468 115564052 361607166 355596635 862259073 725787099 968214568 947189123 935286422 922647964 925322555 318572916 788933147 443115473 274872909 68650118 878750592 761967321 924651414 983639590 882020087 778151990 760126643 806144890 20809466 708668657 255273635 546056582 774733036 428199876 752187088 989834 807790119 712045664 750181867 361939993 581937099 626983340 897588838 959671056 254749693 782962069 966335598 514199509 947335563 436133432 139788848 12635700 677546434 700401481 777628685 749953533 226898823 891831701 725866588 539835269 677652305 813882021 410320001 182483335 57943741 599852280 305832315 903438230 208407442 839353116 875952405 14439420 335013466 567151714 920856004 766527237 286043125 473447200 885182675 662762447 25331197 756182643 433401798 865704257 257830263 24586592 925910369 783738914 970342471 457063457 400121506 916792223 8804732 980121213 269122666 868721473 617026694 888472335 891012793 925945747 613319653 502230196 977587070 899896212 936746946 980279922 799756008 870527032 903371128 558397475 993125491 834202632 740633567 544855776 817101426 958593870 906787279 918716503 226741851 998344542 575334492 402882792 629423216 581384798 803915708 826381406 680601163 764016287 854033977 76604665 891463904 533333593 924698187 977394558 449575723 247350827 370850530 725451758 23308007 81977463 250466521 639737896 810081313 455173656 389981836 820082879 738583293 365338522 942147641 788002716 747204071 864947614 631536809 262279000 751401147 323158489 821631206 737905341 104313213 201535991 667791796 250582124 883651706 368615139 610981069 821687247 445967717 902440665 703327934 556041907 871193121 744443938 631867910 743990061 816190782 57885156 126615541 762935971 925873339 844852488 275486448 846730484 483915848 857009678 728391690 959175106 490551473 753852787 835627102 572526393 762351711 993775370 953830927 466762147 784598546 832687442 439663713 974675270 483561237 178351177 123753319 211153203 756577360 274822271 712894942 920964722 916184118 360227483 121035574 458275822 717101590 965538857 850496475 947154419 854422157 960087629 203788685 83351134 938940290 471889743 664128270 474583191 944042296 467141648 931061292 568378992 230333306 298435775 766678952 659577780 611099727 625154480 638440555 811296651 908688611 600077320 269353731 44869006 749569836 206060477 7593244 886166141 756093913 963781616 239055776 830233936 839821805 769104894 467752599 891972862 976132478 932325893 995359136 808296301 227602159 479463255 360353389 427873286 607023624 185953748 829666044 654841444 637853656 20569081 46121508 427719646 81638246 178345947 842072909 777536543 995377167 304259395 870478195 774155874 794465338 157202996 814414977 531023502 817094287 801648875 861335394 729948475 612829423 857710639 23976145 49713967 943635394 676686352 125328609 213481840 746904146 86682528 389531992 787600617 483389367 405390407 567302656 875716200 63890491 864613989 530147841 746307470 900353445 874496864 901852033 689976608 388872168 987808741 794894114 234785313 591666981 955997773 22302489 815427491 34837596 757689631 240252602 23004252 827543395 388859968 950805850 958702574 164268986 471290428 637785151 889951739 847918462 877728350 216724919 235449854 816652599 599400948 916753163 758483556 185989639 975633910 126811829 984021799 337121788 579933093 814389533 811821925 390201339 951274823 936067400 145088511 298649155 463145525 901001776 954197924 909126857 268386460 854042056 896586931 954023298 956479645 448111721 59815083 283187217 547137450 793415956 892819876 478507672 162732392 319428639 729313936 799629419 24767202 944675304 935325770 894396252 361243863 830467238 890355702 307384874 287827056 312866513 522021165 754259155 824158820 232174058 701336656 738568041 810925065 840595596 598760001 677869391 902010681 666071039 9435659 637184715 394488368 323783187 810834822 925077493 490620333 963334154 680975406 530683556 552047044 885659856 913259484 895975794 833330056 333568433 830075649 815575944 105317450 537803123 579606246 859776083 828381878 261142118 72745433 804138151 144669706 955756992 981245852 512912034 768136477 462374434 816987309 416242578 50934573 313952476 956397246 29504096 877272347 866886466 444097817 367033707 812809356 241470703 983692880 43160160 163861675 99800203 307067884 267509471 852154369 112747032 875272524 362550526 895185777 885370675 305860511 148673752 706696094 796890602 967599921 566016030 48960525 770697854 772602896 97812325 95439539 91380454 515911225 767829370 952498494 307040292 891976264 515158640 710146651 570421674 186134114 400526596 945363270 191380482 565959333 176389361 912805594 81233382 704196556 337111451 805094153 739914771 394207084 993587672 130232240 794754882 808436161 896570888 836608321 359944719 675650666 802154742 408184262 766145380 248325985 730294313 99460803 631294501 863556677 917490655 946538063 821647260 844893704 807576079 863450014 752569221 928510926 408265950 390453631 871883632 23141510 740452383 906018799 992368820 939600705 713963530 440139625 767153404 670199520 754073311 748067296 882439734 861649666 794054222 436261260 175971348 855140670 386392361 672555645 656529029 6911708 857656474 774403832 293251316 392839523 853471338 270574671 306411327 736219168 441497321 258360454 830081777 911944182 902551540 816985804 947740574 924336364 640269610 960588393 880032501 791586207 838228938 787763328 890201210 643642231 863019765 900673368 75931473 880386457 961204968 53607401 902438719 731558498 234489256 478659373 886668140 422106433 956875886 128675500 957880831 812505943 756465949 921699528 975187501 750015359 182180048 670007283 114391341 953562041 881765174 899175909 981226258 878496492 673961083 332524818 188998711 229048029 109091908 923679672 674922331 834797325 752285962 461054325 781903672 937287082 745306107 929208920 506121952 14992191 754117497 165374758 775898176 805443185 562988886 845515670 512985876 399903828 589608935 469547398 586654514 999263774 952115228 867905770 385848731 706128009 97138296 597636261 620541364 135270375 917466397 123370437 504120038 501559851 342753582 932195431 951359845 941724423 976327809 747809912 992762254 949819647 893312209 223202136 745208389 809556264 882943273 742070269 72087460 507978205 500915090 189867783 209528213 978458329 424795705 877397865 571735473 403730943 809483375 72498469 889045103 963217019 390970631 696114338 387363034 655026095 113314861 912398182 46777949 617342855 805127041 953163627 943139428 515742569 494642335 161689890 951799654 951542812 934660109 5083884 255409470 818997449 73550269 862306981 870432411 533565399 926912718 301371327 383173227 935064340 316843606 888481668 591654085 851523701 860049813 909246220 467580329 738038707 491557654 82949607 168303624 142631475 599291433 26817500 293312427 982314155 548546217 883799491 888221365 807200032 824606693 901615571 654097336 885005806 366991005 859916864 357678094 52276961 141772795 282669180 853173521 329226740 308249287 953261653 712886137 301288404 966187191 689563443 221109368 272507587 783359131 950742868 593556332 706638459 589817552 106396044 989552493 807792388 804897458 190319452 862430481 535285516 790919930 945764720 748652804 192592920 710430392 865959090 204016659 944516808 987769223 956323028 787149876 168878162 882142644 719991148 461708668 826516112 453804453 909785036 428495976 814178414 728736438 947220570 281656722 879488291 775943261 13158193 323796232 470889836 887932905 799425565 998038233 620526811 870129829 599378421 309803050 900064308 494145576 650363188 380742771 888351967 912514999 38757882 769144557 939464439 803238528 972986205 739026216 819307445 944984482 138836286 275368184 742147804 252047001 100505305 756097881 855124850 844134048 976845755 985763277 827797145 154457327 393446279 658076407 398430034 990809695 279657009 351006621 144438046 321988918 941505310 796328659 264963749 668022241 803095811 962935618 486501311 601027851 822181594 252302835 813546863 492240441 413580062 882105475 741300829 456794357 72800918 593923016 984969506 67384213 298717642 551670528 765221474 240093513 912508149 799712395 508091517 871682329 954375175 152997638 654749049 167914210 817290240 734217534 113987258 800780110 842292536 208699922 715531028 526766306 966929423 810051468 508343269 385913777 809714868 808444915 453421671 275145100 409173880 171277335 420151172 332176057 368237961 918103047 170689982 950346720 883113502 958377867 34373359 429729305 750397903 173262475 785867741 756078435 989886586 84612025 173832132 702122285 787018549 693104927 923797816 387419224 789919224 556687041 833824863 217915911 371954459 256766319 836645494 521935555 964303043 970694404 906707635 811505470 171228408 25889341 200422685 73279793 742266380 168003410 333622353 546355890 307021451 945335113 896157021 522976626 418433165 991003236 878613862 947791041 131538035 414667479 246996243 224583128 615226390 290771411 305148622 633188662 762030280 188988846 867232532 387691247 750964230 808729733 885332902 602630700 744278955 839146584 773136790 874796319 927078369 821432220 566667912 389271223 277479670 740358669 805224082 552174734 958916793 482734942 494356355 687194483 219444883 637072802 367597501 176648424 144484976 116843907 38905727 788418503 561688737 742678520 6782890 182239688 921641693 300396234 940839627 617253517 394107550 995474399 267939581 749976786 219357772 241056421 841019156 715269091 944325559 273554461 877028922 301384362 728125607 789206704 347383314 855267588 788373763 496117911 481465720 972869975 252713118 364831576 526573837 840425269 688612974 834414304 942598730 344576372 334283541 758512982 96275010 529981716 750712681 164092204 703024396 949320034 792125631 639785612 186607390 926259528 836704993 836807396 294490420 655377960 357958867 366518273 980015455 989222873 899398809 742489667 796934371 888635688 387988115 20096963 942369746 829270844 479747820 927964689 981371193 955539659 550430472 475483204 825877703 873162168 539677960 849225768 898869392 656401705 391650832 843008721 955767672 719199848 891718534 457406319 914431686 768311473 422704624 515967925 896542157 901245272 777239216 915735328 877109815 807571121 836786587 906757435 873432107 759148948 833513464 430686293 191728668 973017469 192745333 154230673 703577041 879865836 119867561 84160755 821399939 872377283 920767644 765942912 400258393 145382767 941811095 435867807 467826163 420007910 982268963 89852652 802892402 3509469 474996757 908274189 517022764 671375440 821832720 742984722 62235351 73736525 149903634 851207485 489112263 875083988 778061700 117294919 966848838 998438121 380564735 309829488 483778045 948347957 262193257 3884227 319122032 843547375 444659899 726621456 213977864 439903219 897927845 820999109 259428075 856362497 980143593 895964727 803665345 40128696 992118483 94485108 778864193 589937336 414307043 918332335 240894371 183231845 916164591 654698704 672124664 464742351 436522983 971231237 949406693 785724882 334377572 989447466 111787595 167382201 574707551 920517726 641980163 459533542 969766053 863351587 758454852 479342056 417380481 272871320 905307307 306555229 161831492 649820944 744042954 756904830 766271065 878669686 990705308 931458535 852824502 348701585 502035424 886038626 779423766 572649087 229506853 841777975 972988135 530990515 795557957 365670847 366643555 700040984 898973611 776250881 274686934 446311070 808017808 921646577 450584636 378293763 116533915 960130581 675600632 899233868 911555797 547166501 744002389 209455291 107767780 410364472 330661107 834328830 774698875 740749130 856522684 142832081 318582245 835604356 965204546 994313442 371538490 991846518 24430734 31735944 276841843 687267648 924511570 475887030 387320390 467992225 914417030 801527525 826725970 920252314 470048581 298386850 565233126 44304569 967734773 787152658 676757950 302962650 843990554 978673091 234396918 10198604 579482581 819425424 483900649 798099240 692758914 853874629 758222019 975343018 917635807 907399170 956409175 522421336 562211429 867642808 789117389 893407541 938171257 944152158 287033181 311675753 385597155 605740372 98393662 495776933 865541715 33250654 932406473 713847382 496240748 272919567 776100571 869839564 407469936 749336480 4383206 167577669 567169169 654311802 641717832 314927607 36024075 910101010 880648678 179046364 873841925 883862708 8479590 26073614 24232341 485131530 33600955 884818231 415579390 662253391 853622992 768204155 83533274 708253156 544005447 945324623 591699217 183445414 699319524 953493837 296368382 2386853 795392198 977987729 480423573 53499783 362071664 952510066 502480810 387310750 969329007 922608334 548404559 961618598 554773667 886702165 920085558 668683272 440765690 738162333 672539612 574447585 511189479 782401111 975645582 955966896 70076856 753373917 814667371 587841336 463321702 918796445 198742704 192296686 964183811 843175637 829857468 841983447 562850520 897508342 992804610 291438349 776640991 263872970 759889377 314155124 977095534 798853567 260568956 368335334 116518393 801435287 810096924 256422581 511201792 282927175 786661148 638522891 902460033 615605794 721530831 380414115 601188602 868329870 769385758 681175059 963985347 455446207 110938475 684827787 942485346 292354550 678653401 609891363 838037784 414415283 758795580 515739010 868447243 2294401 800546180 461563804 900689128 220212274 828704222 488998115 836502412 609320265 577931467 844298429 967943576 977759199 451375496 95493652 718237391 154969864 869820234 420073691 726048773 937258764 948454126 885806492 990976803 526595583 862333985 787327927 167839369 878606147 244098995 697699267 797009651 537971521 872940408 404471950 204915647 921909702 96444434 929356559 881374172 959109834 952398999 962477925 898201746 220261819 143759456 242648715 937529313 896396001 209947159 761372508 500350522 351844613 908015389 910664780 975442720 69832827 789339578 947204869 851727551 599374341 916159380 456920124 817873542 910819816 948705533 746730098 810748720 803274569 699135430 590515435 314828192 916533624 950641337 606866056 820175280 863424113 928393721 731501474 937882937 799221213 747719558 181294727 994197967 451294415 582982589 415821827 610277907 138100912 918284486 925225138 528161757 13319913 408396044 873649790 946852745 967363750 90710107 995329378 55338300 669936352 878840228 908596810 397945759 45387684 350286772 896835879 10078218 91341750 814043120 67926966 787420398 100929329 156155790 930845250 544619291 741058500 390795104 782391428 881308094 881780382 997507097 913680260 836674083 744801529 802987428 957260116 689448903 568848388 338338726 322988692 561350055 126903325 517020631 738279995 587298090 314222506 52723536 587771842 546951442 10713667 479329086 787370679 669166071 827331892 540352032 384908630 51972470 671113347 129505397 837622175 895250981 622504800 168101581 886002611 807710738 988680527 148331803 788941810 280387306 390507053 902117300 246806161 536093763 695203876 831660479 814622301 97670787 885479613 288191584 929113332 531678563 410081385 928501151 651549041 767667414 799463718 627933101 138501403 74319323 200429402 795043933 229613218 793862913 97655226 876388697 376842094 966162074 992442718 305919480 760289091 170025892 813963747 836710343 952069628 179797974 719350104 684223786 644175669 939516118 630381087 743901572 343122427 676726055 847579452 494983658 600658153 913806670 204052010 638420337 522084498 677160290 230664105 397317825 799064434 630774017 646837721 767042186 275044954 919306235 886063546 48338650 229694806 777352397 304935060 399914364 816369333 816534881 943313275 971167439 631995845 155953837 246584181 445514741 494913076 327011689 281285014 108078304 872236981 951880012 858243758 791522393 302549907 402947937 576747798 970457258 381247588 918292316 752791768 893792771 828900197 941246509 135592392 303106824 860568251 365434922 784573895 813121023 705487638 904378046 996153608 859110356 113881656 842057279 88677019 924670638 795810812 311256943 51856179 627858359 839965100 291016389 93078224 922364570 999487122 750015137 828157018 750159467 869428884 616149476 547708076 988849377 991096047 972399022 438030639 945675436 264009378 404072508 6372478 58485731 858907372 752462639 880417735 755273153 971701589 888476032 939547894 74654088 897424842 986343288 808269323 828943482 776021578 689942637 751988672 837906034 256380721 412959906 876391615 432634692 619945898 771683216 669977916 714420463 418133893 884048879 131891731 96696254 372740495 787894240 566117224 771616627 885961503 844588270 792106465 887327141 905651818 78237812 189746712 202060648 634216337 959528254 79467190 909633867 839566795 834861183 910238173 656313480 997215454 826608239 576534461 929701620 335391038 939095623 843674212 633559723 744168459 783067375 806937997 182035573 760502730 594555420 736802471 389614398 422040133 784743410 754478767 760364215 883151082 978678351 987885216 251809431 942799379 875921088 909148965 741981313 891022840 61492608 757697183 10606399 254658433 962686198 770382428 296240327 4173026 999485284 968096040 768663398 699060330 998847432 18153115 206093013 52690213 327110537 852051740 856906784 179953702 877112160 793110138 849303726 826812890 706678145 987532342 972694676 473284116 981818184 368094000 485757403 276506852 634922729 455662202 894245668 516280976 34160342 299217780 938006719 283611817 997530071 999248654 203522147 753950576 930394944 72709200 884948495 773960390 690419320 521336937 770927264 743801418 747343371 799258509 258756983 987358879 509103554 635265424 952081097 820806684 554763797 864927186 869861938 980105845 751088391 813169672 227921874 983573861 44232203 625058220 836738446 982960767 918930124 533744722 149871521 951886622 611109718 159685578 319831739 486069494 733451975 968607608 179441372 250332171 410513476 906519314 992668343 696440530 193427069 619290981 774874959 450278170 473001025 339133747 808682393 544166979 947916081 591432192 959471611 923132882 833192142 909034928 685373577 914357327 784212777 203713578 904957133 562829334 540113823 811129304 824701132 832842657 841708915 875325026 837848348 434913947 662224098 44902774 943977814 463402066 852408424 554049517 981156663 813279614 25322918 453659642 951939183 147819131 661840940 737600096 836309650 868423699 830739535 74351514 133035333 802079072 465478590 651949636 450672616 832905038 881247977 844479459 299760489 901765626 935091743 984180459 798581000 495612598 750654795 814564806 612741887 968065048 778309142 564003370 789926542 862616953 788776454 914842565 754751755 375381409 874595766 982441764 117732378 871724091 853713817 713572831 885993017 101653997 842374284 138365073 74296310 948430228 819795727 827804470 18823451 949231195 68282974 781992795 614983145 105560588 905423461 84030191 98929679 622001424 164652221 405446685 860261469 844768560 507286020 847724067 999584379 936644544 943715031 621238794 772061273 819746091 913519297 620495287 882169678 386171877 954939189 923362435 928017345 805461883 792549762 817361013 623875076 782489276 899944839 739449554 944686215 920523675 870731951 30469814 42258681 738177456 998003444 261047726 738609061 405697022 871338690 952927263 956026748 784941038 803288329 569481154 137123717 799131023 365759078 901774780 522759188 330675989 945360515 185251977 490351186 724994871 29411547 36636659 247815228 415512759 585919220 983556833 999472397 751700978 961052025 828705990 812015017 374112803 721741171 902068279 619114754 916609059 780768448 538388588 443563247 890519966 857149905 686708180 93698738 858070517 146215551 742496491 701563568 838193885 288941146 656025094 865088468 867808821 632775316 915614925 457051507 24316856 829030547 896421545 879793143 333846384 136065981 599665905 532149482 942004019 442070310 580625631 475743081 853148924 910916863 894210899 745947094 744633958 775264960 907843760 420500960 714402722 748560976 70522398 897036234 685197927 982085364 532108568 649811356 62992181 236985684 103050798 313507238 865317045 310970324 965274913 494731040 209365688 829339020 891932436 976515141 417460055 960478384 290400543 201237550 880736541 878773192 951964063 585535159 531445727 143529232 260778828 214211838 740522349 302679286 747298841 460010205 617892510 576169758 355467440 742404576 599244191 979215479 265228639 914215075 43616569 951221595 917914774 938957178 205551630 840113575 865632705 285157507 262078038 63176417 874944735 970497034 979799061 774088630 845801266 961674904 37350181 685669197 349323173 938314561 196387407 999263241 88086027 892790749 396287177 920147967 752888294 787553141 50593554 860343511 56992156 806727649 225306266 749822532 257074171 697918571 795320660 682086457 526047844 870467792 737206790 918051036 72259543 542469505 451107697 743241333 985319003 938623718 875275772 642691262 715828893 213582323 907958288 813277765 55251976 734905550 388101270 214608697 976007312 737693111 463396362 920090180 165558224 324135257 138409258 259468455 971224016 978676529 737020247 685178646 785878931 323616468 840153525 480415453 787526831 785137446 127375900 979132454 333951923 665852906 187157201 786441733 130663931 977462463 927472375 819007967 965162834 957115726 910038428 868454382 930631073 775836566 934049918 325837198 747159102 466873041 950645183 154090024 350211814 584134940 326588500 475525045 943699334 905938217 83728450 770505558 602340543 226752818 52228383 158690304 799530557 788316796 992829285 479516345 816915520 179152315 892850724 990435501 870325893 774239582 966456797 756513336 798845418 872720977 834079633 796144444 985223474 911352446 397586241 938228935 200008594 456708914 978799460 892492138 426002091 25192697 766713448 160704373 950509325 928448439 891101827 932759647 860957140 172482569 306268911 277611015 914951616 26327087 9137506 72218488 955269726 359351060 870108436 399173357 740131471 19799877 429517224 848605595 910629257 961404951 667564311 407702501 362996375 800295236 986808424 235898491 338538980 67959336 53736538 550396149 854050013 511760923 152691832 803915147 867985538 868221963 829976806 951624886 769896584 916124599 811049416 897549368 964750687 909147116 506127816 272651314 178355876 460775963 534713920 925997818 992628235 857587234 807297110 118886673 88513180 962749488 88495603 26584950 895722134 277473811 838718431 812432261 361782494 395698127 613381978 158769448 987913154 931893855 876356300 684611870 841196491 875392710 316612156 965360252 925134141 166513815 262947103 893856296 313919911 849770101 899777202 484385214 727206488 97172120 806006587 904798635 866140247 75892076 121639172 785037364 983414697 490505625 679467359 667518905 394525841 875550106 834893608 428259404 8390347 903996949 206901349 638120320 800077094 831806333 252656974 689102815 229901089 753578660 966123626 671337810 771782678 736560480 67231781 180094003 104186112 764093966 936270029 814074540 700797200 756197527 598786495 821207398 789354702 429662899 958468750 899970056 495905074 146450597 568266467 33558123 790498189 387107153 749099743 974394695 679266296 429720495 773736661 83171813 211849681 500057853 522173244 980526915 490199506 874426583 880794040 763085428 193415889 280587384 756096096 423799441 692712 148568817 296428978 865100024 397932981 780881407 743175407 925069639 286982173 934184356 99038669 841962072 579149794 886413243 928112200 843414353 249027162 577354203 33065225 441470093 772756257 838369193 439627956 53854684 775567163 662375113 515446187 620846202 990891135 907968450 23816806 864722398 910686863 811309578 853636774 569174970 744433052 782974480 827929043 749399597 896872021 376593472 868733648 847639618 675006008 219849533 124026695 881930097 764242155 820799530 236211636 572162246 365893083 922261618 237161704 100790558 309136599 980779540 379415977 986454987 673801089 353562965 530733849 873435818 847077812 694013423 64531836 756401079 24296747 960171133 938712422 918980336 19127665 31900606 320628512 518229529 964054426 285065876 780921820 817279199 744432623 409856378 942381265 618957354 549567401 835750939 148272746 510381439 980408361 500091889 242870574 731828295 90524069 874622475 187438315 526763658 24218709 890689039 453010774 707700487 851169248 667061546 520220431 50236357 327753750 499666202 785236541 414061492 814924984 951084238 969367423 963331795 335479107 908196130 100002065 655444602 312590908 664805161 557952405 852574585 976081058 747540932 811691056 786947143 853424687 388844990 255186414 802860483 353827009 278054548 724541782 362169745 950056300 708744435 315175223 143963227 67685373 323790801 15204634 753882383 750674775 934827702 653621763 666370350 938964915 443507624 726418175 804616153 500405808 770389588 840830671 980469950 145853572 139601975 827187935 790151721 973959128 789058898 27733595 141407828 377687873 744208990 835566938 171755275 887574515 611734499 319275282 964783224 951399405 753409571 753691369 896860175 749423926 128073838 976098308 738660517 463534740 861751943 644049094 755323585 911062899 600657754 685891293 998711616 200807094 936742092 791830016 854243878 830507279 913915162 740640864 544948870 762819050 882804404 988493725 310354545 222523434 245616126 712780471 394526643 531790706 14946686 608921408 820504660 962319831 47918521 411774383 494589159 605276178 130098526 990363522 379473195 163692752 674707871 818344819 73836489 833306175 963958420 344570551 757183891 444513739 950920856 818708817 728309690 79901398 167892899 603910174 946111627 862633136 728758625 805256978 847412024 918561889 893796727 381756611 836126316 898839127 293808096 567930670 739930160 29825496 297939897 641296922 882210773 561664373 281914244 965421310 453546703 968061172 866166233 722869027 847626490 799315624 360540495 807451056 929126858 902625158 320227143 223181022 171433678 439630087 208933557 756710781 352138924 871098750 365343149 853731804 122931357 741068834 769512446 988734688 799344656 485741692 806857003 520580777 171068629 643692913 797052231 430509620 577814899 474801650 841811905 67873473 419868460 210928520 565922013 489664841 751219958 724328757 720676461 574897872 960684747 10021031 771448106 740850732 978102107 242712282 660622524 904273915 840942233 652023152 924088459 172978665 879248389 954486656 979541261 991241712 669396322 156112680 879758330 873706701 451489925 63398568 128357882 928880820 854817257 78934793 482679144 609218212 296395650 367884574 910280784 847500669 656271278 774432190 299938757 896286012 665152409 690621574 437754199 357646397 132937889 762759283 660188643 798313599 676826621 852645961 250033372 211938041 90749412 220580604 742373683 862031134 839003830 106818978 196618830 450692299 485010838 136287520 981458485 916971920 911415718 974976976 183745636 495002907 867355586 687367172 983232136 116381507 800651757 893537496 961960151 888623739 395716182 94031570 932438817 995835135 44275665 912241662 64143118 913344454 559828323 151930898 833977563 729135479 1005444 240354171 836182478 219585616 111526646 665184346 784777275 597211579 43429743 793768933 438132058 593901313 560469826 785881572 333291315 593688321 852035359 980155176 874148983 613650982 648292961 663419055 938319696 50670542 778065974 905991873 676583852 971767780 734549720 857439117 108928613 891524722 465000409 895448782 760400251 113069498 111061084 839144781 432961049 844381181 985526702 638788041 983315854 918148660 621484860 798021373 68525553 751893171 690107766 271789865 428754717 235626237 281382210 616295565 417869047 260014808 246964334 171515045 761851073 701764213 918879078 981326068 973357293 144669071 922900179 502557123 425060249 134405462 766554785 749187552 744848134 28369007 505740076 268264902 601253460 806645267 724054100 88572056 984415135 942509987 817145422 24995924 946470264 747719303 952081481 503231217 204905069 882598672 975585066 836319091 95900899 802171035 910072623 365625209 771088253 751524669 740378195 860258176 901430644 223991288 421141640 174327724 656366220 835051476 719272156 721418788 835098677 550313470 150596865 502753034 765536228 852210462 846076430 211320838 747046040 749486965 302039052 769786480 117846871 870543499 583760335 973317728 805302680 41584876 677730570 329320020 374123254 998839509 273765813 957801129 818649793 552059881 811340404 813657185 218483220 642992150 899075184 893250237 779481693 238830016 533051913 700156221 773169598 443796580 805412588 840830056 826107001 991502746 746097721 315223487 845575136 125766232 568237881 966600596 866831884 609907843 123028491 320458955 457494935 621262129 733636525 727056802 616695674 622397765 822082910 215268690 969123723 689171981 217372271 990906858 738038423 14777966 9698107 146713355 884921326 940947893 292546089 158657282 93455288 463273274 750270458 804873089 914314154 109461047 929998988 763085927 814081902 938423348 52060835 668242250 787957240 112144520 751110584 890067809 742080128 242315731 371142765 665266478 621604329 339291361 274692876 222241047 902663340 669678079 85694351 712282694 770081235 769394314 14326010 370312642 535227504 902354061 205316525 756524094 753835435 579134009 357404076 819846234 876447417 717115800 989746958 784093737 785915005 482613970 968797934 466112522 827391596 607654609 902491528 175657118 690047217 113427743 180193808 798477125 609333528 945390174 968285493 771399202 19819918 892936926 138526502 364767733 96218723 456603913 462819576 4956636 670643460 898012116 990218628 588546896 814668616 368778053 688348236 129193934 943343049 863292597 989014375 85696200 970899605 741329299 853014040 842279097 278456513 557590538 28633658 528557765 881898254 893730469 266885035 901547352 986429761 746351689 769511403 447931743 243061527 55131763 108721639 944201758 206873467 805585357 736959494 712408220 811051553 285868779 632713727 309565920 901836947 897047559 521589340 682887464 774838847 53058857 895690946 811706829 926551819 952122199 223387812 432780281 48122684 918723846 602792786 744537143 604001199 314930115 990118662 820644087 367766132 311151671 164709945 47329292 604791033 331018263 984351338 906078403 730772674 494334338 848941223 520963768 671493174 870186995 20627254 624874442 785802522 841113843 834137715 188150304 883025215 906658610 772306718 926850773 798149869 819882455 88315278 66685388 344487607 471283791 130736887 905122659 814462746 834862024 968124054 891967653 893145697 446820374 408319942 751458072 626426964 761690075 777783701 651941024 707392331 815821887 847380109 5192230 144292226 768108036 768494990 483618085 134554430 960537428 769608569 839082146 932919589 579423039 990677951 8110860 855660795 300547700 388976530 190972820 647374880 606705773 320756527 72868138 884886488 535324577 500484232 425725436 423451579 839882366 885807858 255073214 222386799 846168413 883292283 769714624 617021725 25277958 628846168 161168386 976122243 859901364 302242588 971251625 847058590 858764154 775379601 743487054 968918877 987736425 983096105 123311623 539595890 785359687 932396188 899766751 785575091 100974614 880269983 983776607 519878180 256869945 561415467 696274371 770804709 351098684 299710062 192905753 743001271 800820694 903035168 286985458 80369132 768472558 184747048 36665989 765300378 977102422 129965000 751400144 745960789 483305987 926085791 176387426 536445820 955400935 323932268 158595967 308903711 288749239 785088410 944353233 779939609 856975203 160215446 555584014 737543892 217789993 831201994 643771207 998154120 839877430 930985010 978688780 287237125 682011969 418639175 490162512 537703192 495114282 956193840 995900523 659967518 748688051 924352465 36463272 955018376 463636635 144099865 87038440 434883949 796194894 936968268 461747799 262734919 854056587 365251262 223359667 802654918 935617058 985246821 968130601 785953145 821279294 424609328 428250600 927394638 293363537 744486038 871026989 65995638 195926230 878211850 266748803 316363542 241946674 751307214 70863407 978910013 912544282 887184180 451178801 791504446 956778795 638564721 827639879 114767651 916985331 868859737 848893784 697479725 405494204 830249033 986732932 788137093 904542618 875715471 741295822 6498366 666668874 595872835 821361546 790190112 343367103 418988982 399206105 657692883 376941839 429558910 646390056 424097557 256922580 224376918 159767955 799041737 585156482 345412595 573456157 671923663 785729624 963932782 335281386 264008932 823845136 354158349 625049438 400180791 935484425 527730199 760569851 236943962 974704738 617738657 402623582 204080676 30561807 858866420 361063255 383358063 560098553 847687720 432930747 784641539 943451367 119772240 633873013 194534861 751169081 331109498 456136407 73032504 812819205 449651149 148256133 888164336 745929369 985168594 28273174 325514275 899853358 693231653 592066702 848121846 40384238 951037779 314982801 625151057 804530689 571984680 701138843 927724798 780052960 815180637 181687609 839985292 795752425 691930106 408795934 968080729 44261675 438350190 828857905 26193619 777576875 324334830 757238796 195610674 373753729 932915769 618822968 815909887 421191101 198869007 22980800 292860263 310896718 359612135 231910335 829214187 880033717 384871934 881597471 597236132 699669740 906795917 861957339 229959264 389230590 500494706 261726537 427498914 519620058 283962454 710853564 872300984 843109601 944801757 896201279 660348819 106610790 920620990 210927568 898985396 960587364 270769953 616910059 763062409 909676215 732475074 240707028 352524832 606164854 298303184 294769157 66239657 681317411 861625276 781004702 254883458 919895170 936123250 598516571 933351402 785512915 673300268 826481530 844412296 800246470 265789381 922100062 117679892 642645895 860987542 979156703 467474186 496629969 770287364 430844630 367544773 740056442 915951631 101389897 745622443 869848851 274587524 955642937 987469565 870112051 121681145 987968620 924475649 552146593 998723183 961849311 78970 299617257 521614155 812495782 412627083 996056072 829651105 137620175 839811205 879591859 859685661 784218065 938808084 565786993 739887460 891550531 827633486 304639533 742712380 765114533 9883915 975404153 17227203 870804232 260761116 872318605 829172000 330057513 326079528 634900793 847575289 875198252 474838751 918660332 677516865 804548960 482932440 964909716 993240038 989373214 778443084 737020247 423643090 782658327 994237718 243051380 879630486 830855226 242169571 801961985 961761890 864150759 556966622 556430626 832740578 637714338 974652336 19773037 997447036 353930609 884072471 825643324 787607543 146217892 674465780 23901809 24322739 387908235 924073603 136129911 43556658 636239684 786780206 583235155 783120363 458417105 146961194 776007745 565371019 44189244 43392811 568030415 801876405 999034568 174009614 352964479 947199368 238135697 265917983 289831122 750774839 932973875 207113608 225137584 896582791 226613222 587317662 887080164 698624394 424878015 888947598 664710077 426779449 855721715 129148485 755740859 214295324 78233169 877109020 110103899 863172084 782914329 802160712 635249817 308007522 418088810 229258833 984067481 7857827 354542803 429384168 946820533 441983545 356613370 763742258 21483570 867828658 845271253 505066472 134469239 892154338 272022518 717736689 742299419 737089910 876493109 790661874 873198926 449192655 383105648 926448303 280061021 935281018 159696235 643222514 937708403 369931777 14462572 682322894 639208523 957809570 322255338 327691802 152658423 797677687 837979319 964816974 242114526 216320811 628410087 918723453 513891470 953657844 980310875 945361514 382603276 856075456 116323212 846312610 520495713 374136245 730432231 316194745 395983812 856654457 195512535 193239245 745242934 381748952 707389173 196724055 917399927 931536040 973900574 186548390 781644134 777323548 601127826 255624292 962089040 163781836 908679623 893943812 432746146 594377436 746282896 827475895 82132154 916732473 385086750 826639273 572881935 793170651 587917273 972581463 223793231 119656695 564021615 918759326 492294027 612513527 799112286 570541443 883713440 148369889 957826736 758271906 742563993 716715927 863836036 81008932 773909267 406415013 855734319 188445214 293663190 289014358 408632563 171633533 754934396 243752552 931767241 478448712 740395939 999175009 861105596 229219315 732969367 185210445 967141572 916921932 908722533 933620974 761668746 349364215 800094158 139129491 784985586 978164336 990683399 967452702 927426405 516984872 375816663 853446520 778820394 951052973 759948759 133059858 829743375 126534700 72031024 736558237 772424679 445477518 212622842 249018260 805042472 345760807 793712498 507621334 878834223 820142540 423924231 737020247 702762457 228692476 419962711 475612145 790926908 778515238 972764568 110944107 52038939 753374525 94415699 554978407 984844216 533816101 220003276 33667153 942103344 992035954 525649028 609048438 680954323 844774728 689663805 265415849 286106975 533264140 361447429 249208261 507185084 998268966 139897939 818409744 532489107 976677549 995885936 933743821 227822025 677659445 254444530 466406530 783480936 768599961 907625840 700092637 299721973 557446062 855857050 788304762 293332858 238293712 824900186 545278028 511176894 492462294 950162731 988115448 805724728 864701458 173277178 117575688 927574427 842078103 405481988 227873102 854752627 671005129 728203757 931008134 144764911 285817942 946814570 676029537 184282116 801718659 755799804 838307167 625385189 400574989 908397946 876129331 871899703 973337916 601996232 547534485 799417141 876603099 197918218 446044344 70950065 862084601 621008438 801978860 252655098 976311893 768111228 607725980 946124893 87346433 866015826 896240151 862414490 494785071 658663109 487729466 746284544 918854564 759889917 484162614 734260543 831436706 83738666 251405973 208232038 979848463 853700046 59170256 853682470 757487373 305777363 797977815 6233932 824162316 829258028 98841164 739824030 983911981 262634801 36179796 218421588 103046211 413166645 813412687 858384604 930113029 836929664 450607551 234152342 561106856 537127968 940688747 747594984 912550004 537283960 982683156 824399985 693268760 826112753 716942530 952871388 813728951 836602764 877258540 225656642 757064017 570413399 857207437 856255327 243603636 847534159 609114378 841825633 985711940 213797880 214534580 991972946 755433719 583728077 839641676 29014620 300526549 870922392 942675792 916081214 527901541 782502996 997862050 351471923 757403398 547716889 202247684 873876677 989758608 898735880 78733882 560932885 783899116 454603796 839025084 944610156 861746870 956457751 141763100 119311018 12306260 263657736 735125922 695314459 434524187 686879001 826093254 396163255 964278121 880564369 805989618 841381185 880196750 835611332 765337662 749992370 393954468 651396436 856412164 211657128 825466177 364477906 507141675 807922433 861757133 759407174 26231318 710284547 100463139 712339369 217002534 971981552 976806243 922952810 901020233 239429863 542147826 828134082 147497579 569194525 897271824 879492827 173495324 973543129 239838796 95409395 437749518 826348175 762370300 303678520 819188263 352192613 907765164 841766309 966581472 742545725 825182889 729684782 641662125 416939502 405368248 915691055 613582240 827823024 831718337 985308193 394636120 891704312 903807423 969430605 838419661 464585261 177935192 909220839 800540327 881766887 13657186 568428784 993905652 618443616 768450471 219026837 767922861 815835812 789666883 705595107 146438143 929837693 827000350 472060360 803427430 315311233 757590558 821603672 850321489 938345837 927167923 313987237 395118433 981579115 250755205 813377933 987450744 860700112 985947523 191965767 698781539 288829043 20365011 148288133 885020784 719339251 152547821 668836088 496288595 768609629 861252847 999644654 162802761 917156570 202697933 953674905 813139639 772202393 288286586 689904996 466774492 518838655 259141897 319454526 318919169 36754743 244078319 221035232 713597562 939127390 884842361 933672572 366658199 799680274 865772259 851690470 966393659 35742777 861979314 901661543 427637430 573298174 962966275 969966265 618388431 461869260 137959659 642702349 433460011 831041890 910987873 839934477 465150890 832306417 975687215 973349095 679375192 208867901 830243967 813955029 870602448 751291450 18545676 451725306 763543754 745485312 765292610 708893279 117975088 429397060 704932641 884949641 451028936 927431568 695295719 819395033 299297219 488858544 368825008 874346406 911016453 988087890 853426503 317778643 967812497 565702539 726156664 255029903 193331496 615372667 218490090 944095541 825116986 802000934 740690580 866385054 91189466 923229049 928871703 616534704 945312427 595550643 310271450 305136633 667712257 370297785 232095641 496318147 887423390 787408432 841962164 588307138 121706248 539801926 657935272 836407568 979942169 738085054 848217867 303975478 294053455 654725966 491929628 552743922 473606582 938045448 13616325 665405208 779221466 778279459 971875910 139203814 326620224 917257772 992424082 719133652 954740820 453512184 836491851 851894067 982074516 41397932 912691047 41554386 791019287 973037209 689280349 687049919 882986939 917995006 588110379 335616161 799700170 789596826 739160379 720281999 879375805 91077641 897447182 266367219 942664942 831898113 940358465 789528795 857014903 312163775 748124281 531340847 814051756 876574887 799699731 889620147 12178359 213458637 249840155 994000208 191383848 558074310 465932343 220021079 472702215 837412724 896573702 77338495 948925480 923139945 145372936 402507800 814021196 327291618 67095557 814331822 798920889 606600698 823121416 50991072 600003545 710804603 838867688 7429925 737020247 912103431 836373103 14823424 539211007 687086338 885240046 816779424 816100287 153012348 754193979 571353570 885674638 467936882 21922471 751123165 746282321 764929339 826956680 281447029 849505691 904568250 534748656 880685774 979732654 5228753 764063471 473111184 357627717 856185058 859913255 590248196 77456044 970928504 26491106 289432185 813071179 826881344 489695872 86682665 946406810 584713450 687146104 754602332 813349157 706873411 336505628 889621761 638898661 704712070 784220325 685084864 724461391 569634890 915403733 847363503 19892283 106134210 837650349 42368820 994762835 362921003 941231872 993860019 844677382 814605424 360474443 13128595 844294397 766486142 104607972 260294174 549440921 768168434 337597622 597486567 530647720 829140194 77563790 961337435 957591368 366444233 945530451 974816740 966368570 271602348 901358069 440991546 329586218 862698720 29954669 971845818 801774182 585901814 127616909 52976087 997859059 159474978 782813822 4292024 894642166 274743913 454348298 948671709 737476067 269380115 852866455 414155605 183876434 709426666 46082460 932394616 743408859 9339095 137469038 170437574 884497498 245863362 614397994 412436416 757110822 428225220 947876854 226970396 946349131 980174684 878355081 840882737 824962549 223706956 385261152 639398402 5424560 621167499 365051477 894230248 129814021 366609824 884912771 970351866 974879724 434019904 322275924 863079623 857463266 179631443 922862291 781501886 336004672 859563801 131293007 768245765 906332762 887231497 313311316 388463082 478592963 111060006 818546453 385527603 968291185 918168806 834759082 821860722 330790130 324993187 321854752 749102329 226179211 596072299 911086230 451550393 984337466 988770906 950122950 859541293 561972477 43904612 109234222 971554982 644169393 764336440 245608807 536463358 63758406 753897714 847134880 564200184 177331604 641965706 896169051 629940593 812704502 942695785 797305735 94281048 32213451 454209322 444901604 227218678 838232585 356743076 183796697 893705643 301175664 748697284 903489106 565128670 49747417 234800921 695453216 922399303 765047120 312648783 790553372 847799894 477120720 234952459 22254462 791530616 27129767 242977631 209047071 853496881 825991391 424576809 309435051 774241023 487706594 976065105 94182429 760374885 630422909 753139019 345040607 706163325 879158635 625306159 409272378 983264920 47494903 737020247 770819840 814255109 602042229 573876797 992895172 737020247 347127701 112754865 941386503 742394872 690857677 737020247 50752485 373828781 893839193 328124089 673355162 858782681 994560723 445071904 108372125 826989561 759213028 87075327 122205950 862519627 405902420 846553834 818152580 550291132 797851715 777954807 182928670 784637633 760511903 763953252 946075033 974966264 842222942 942010083 982688401 996780562 182081265 501735285 415658357 995385073 909070574 528802065 891778387 507777488 915756389 763145252 858284250 386278768 785533303 328733716 774891285 814249699 123866950 178468779 373149534 580202501 894112306 768089028 843795088 834851365 988907941 435729620 494331681 207415506 816992324 805534289 819220844 85080084 607887235 977367873 741596283 430070648 736459402 892975951 760553332 986596776 788795440 800429444 478922068 121327352 856290420 562646069 936477548 934323287 849099672 942425453 294392891 915695225 469501436 541319755 527789816 70952415 983738657 955117378 322688162 938448289 529789817 204666891 19588841 537470504 800505466 493301750 967070899 199209586 125063367 364916210 718588782 330341568 452145016 831337899 931072236 910750412 618472872 496791501 833262037 646695959 661975974 999218577 988266189 737284716 465284526 77457143 743129075 43738601 863073817 874118290 478968455 772111507 529287622 891038086 140470827 347569345 668926334 872579188 857735500 128548689 563324527 296485344 845406411 770725521 354289826 700519519 762062676 571635014 152529852 796327053 737020247 598928753 699018442 861207228 416684832 753493673 383676554 526636921 238103505 897865495 938838759 523985415 656193991 793071994 905237200 798364616 559400165 555424942 259026668 279651831 461660509 959241349 974217487 774642932 113792675 220281923 841420122 644387114 238229577 859441183 969064524 975605149 865429648 998636882 844239813 839839120 75167066 937976723 981503025 145459669 953385067 886887167 956899100 656830825 261863287 811267313 700000916 405398279 308676873 896469655 818224283 206553098 274207463 176272329 712719701 971419812 746550560 831218668 187410005 815371882 938334259 838236101 435033149 951896458 979181878 248431326 340492998 741736426 843509417 28801778 741569032 786575643 328147261 470642708 938849762 838279736 636236354 850999054 429240366 993443062 858725578 406140699 637993570 833562227 225468530 56619756 290556501 279826077 737029109 361799313 269335674 425586463 432565849 428631815 165664601 322303661 845705093 979623423 752452006 122110342 384714171 335452745 935017939 139004714 232001755 381181211 925594 80238568 120413763 647033645 515580920 310502841 938819924 95978865 163703883 246764039 93991071 404924078 876103830 750817634 497444839 797669101 5896950 862158839 597477397 597940970 584129825 79124573 761961843 702306155 81132075 759861226 343268431 979904515 843068571 264163477 920240281 869616427 773931278 784750408 180281772 576314155 108451751 135819623 188240900 774915692 677992662 992850823 777638753 111192297 381736009 862435245 197017658 906903292 738416100 796398465 12886543 884635306 998844820 908807405 779001602 773539049 421251271 551272445 322787925 489438930 952453982 846600036 820957565 296511697 928799332 841886068 451148556 262957072 832338200 507482312 245719584 424717659 425930962 271277425 941818817 971536651 543415132 987708097 532942546 834589391 164539355 866350404 606410138 556011847 195182268 837941889 177616266 908908519 818818432 560149359 750675866 304517722 852398940 773682405 373281304 898920330 842193004 705410659 254842661 887544761 478334273 851646818 871937957 24151749 851629125 382959198 895329644 993492097 650960721 741383870 531668705 831683689 978806725 835510585 882533725 259067375 915435584 854258472 992289968 666101223 891144961 835248015 911910549 794198210 925858861 797327815 939911833 631448063 974022718 798336734 895046056 902863813 744507076 819372019 215311565 942907649 877064590 343352929 486928299 747909381 353767106 679793048 665802121 28660401 580749296 581538722 654545063 954945405 151983580 952330025 995729962 128707959 987309742 92818294 803148594 508490428 334250810 789998999 896325147 696154744 969632606 309280057 133662460 542486725 332139760 772063386 213911584 953385384 873510786 242806024 204252102 492144062 815139142 955419769 417769892 927906107 55893007 110420535 67741958 968870543 213887012 173320235 926050366 981851418 794277110 999992992 674504150 737785023 245898481 372422078 609090380 298726369 855980658 750200950 713432883 824697154 378223971 350693221 997535311 683826092 363790556 425825098 823189739 92757731 165053134 703076120 920995783 646154771 947015042 146629895 804172327 268371743 660090677 39506439 381112499 526256835 358567887 896059036 944320378 641994976 228885985 822804331 817396797 362494180 990830329 128869129 98793768 865826210 817319446 871835402 879577807 884026177 30807527 826251060 618495165 772824829 750933472 76665032 430407429 966675265 864088749 868531253 18999993 775521160 831659818 446767251 855906327 994865129 888025506 455123359 208826228 954629834 57694794 319867866 646985476 794342037 841162641 819233197 217773304 794597991 784729014 14702531 967484856 479355289 876474690 778345883 752354605 581544148 531405499 893271503 618392614 944322875 583507012 456762199 18166647 759725325 234873171 255136185 737020247 614354802 863604487 979255762 389232958 291869832 82354712 739045912 970802160 682799676 786244656 349477166 899946246 846095224 839680130 164388743 465019513 422856848 917097411 892434481 815955658 71268234 543031864 412029864 122962802 796168860 788302675 195309054 773926483 955066260 80329409 858897573 737407174 876201916 189836787 600805129 806543460 79393887 433938886 795205353 519701171 909914701 487906754 42806613 744825314 520317973 672933760 123809732 743617521 955752977 758408481 973946075 929675119 843133143 838277076 43215509 491332523 953610249 494218856 837892018 43978430 220763331 199215746 844586234 578294339 989750023 205200925 762073478 45371636 990710586 906022815 996679672 511943357 398810212 342991457 125370978 588276602 895757730 680911212 551812337 970931239 606603691 515009466 597787966 268283887 276418963 970819263 930043574 956616015 316276390 215021611 908864124 882588407 150379351 978364939 315821793 718972345 51543573 986579623 883941289 969488445 837414990 434060392 10581305 804739026 75114367 566016916 495349572 825409477 86746204 117070082 12615725 36919639 281904922 975961071 790175396 17199884 930275157 901528121 553586459 764027201 564121723 833097635 171324272 697991615 969200461 584469013 749761592 842734763 839820857 531673125 902664985 386253948 976595112 65865949 570945540 723551441 845089757 867352096 802324843 878633253 385022753 455872387 372866246 596132734 758185964 749271213 166886830 72583181 924009574 942627178 819546249 902690217 389878961 841416877 759709830 294033294 42357251 846188939 827610233 52988427 236390205 94691946 586401211 552032141 859473257 981875681 333881326 141893789 821452881 985860360 363309515 990284124 527500675 997790588 569241960 469266184 745432544 9388851 186444603 886114614 786808760 445900787 736129313 956775552 799131782 183168151 656762692 479988914 377517831 519202544 670827145 513645182 923831944 88409833 594504471 237087000 411983021 807380465 822334481 474971660 797826377 818924568 884284975 154175092 758075316 982117553 713394283 580780683 69509953 827993754 835945634 951878399 805924825 917653237 281042925 979175885 280526196 682892818 208095196 989351339 945397289 199031558 95700106 258460425 899583723 990137770 804983599 276765649 423372975 435505612 450363344 756540086 649386986 383044849 294656426 849620869 980278712 198793119 731194496 838067895 358271379 919812354 825709232 862362885 420064136 972353249 124148596 710511436 900627898 685321638 739292283 371409703 992254301 473493753 601584362 338935820 573513457 288246044 444555381 912651026 33973100 317684471 46635921 132390581 481738465 87835670 860750021 843136729 915756169 981928859 176251064 908106019 115325114 642953358 958419259 134951613 709398980 356603976 277079256 824159982 743913918 835210344 54263896 783544999 308209941 805595519 610382212 972793445 829779954 198415689 956509013 314982016 484888193 867549171 329352528 981095872 118579356 772273450 2421033 421684606 856560684 342212996 824708997 949795004 142901673 843862646 51380820 976841796 793155704 846498858 51737668 458540583 743509918 288720853 990478090 979195371 645530726 887230882 807721162 34065608 841929227 757934779 202015039 433359021 54241463 737562581 938396516 869186434 863412247 664866222 938017410 256889871 131518013 296991453 438866970 30259070 105522799 90628673 58259729 869395663 877527916 744994722 153240043 947357275 326537596 106625643 326418962 982916511 537285723 546613226 248980664 782304264 847048669 485553747 945257795 178093286 125838236 737022914 202852011 940859782 440181189 317012796 775311944 773241092 743057907 801003097 986379640 288903582 268245577 593512434 872592500 961907689 801553171 910159558 992774836 966772449 863077356 971371099 649611256 921554492 595160100 941763760 578674673 149593695 744418399 979923143 895597192 104181678 469006308 675620887 898621885 98722382 807696434 813118385 623564660 906397032 894487704 188287106 441469626 995552018 831539331 854749249 927237740 97901479 946820229 913207961 647865761 960543520 946240721 855143201 387243537 334124478 441340350 312191774 761356973 748396599 871645944 994933729 218576556 181071257 889900623 877924131 936034669 933033743 917008845 408967123 286230845 104399592 840245680 919937585 839575047 642942374 447308615 995702188 801623804 798040917 867000944 866372847 141724062 961705805 319567540 586868823 587583688 853819161 262082696 892377019 715567599 828461774 446019985 621660083 576283924 316416857 547477929 398083505 775470179 972222214 891104810 851865286 973036158 833326041 476459786 94169617 936657474 970013070 569388173 41873984 168093810 31440125 905293791 203582361 553256526 853987654 129850618 327370379 822618577 824046033 685639236 962973579 745342461 687518045 291007927 958357592 831563597 635339507 450163390 855361777 972412162 746413004 502948678 163743178 569516669 610962969 940883753 470288267 793850346 120440472 552451932 884698208 112356792 368196406 705701851 905202995 690569863 739418985 900612835 366099359 908322204 858717285 856721852 917529080 665017683 528476201 396284383 945239756 961515571 949511895 837849306 189561115 988212961 973971911 367151254 126907217 985532351 769975719 977686133 859671417 588456172 952799603 239392438 805729636 517272043 795254653 751378610 154798669 357851199 834597446 704210921 670257651 757917413 641911124 473509106 467307076 802458677 857796167 963928124 828355311 918126050 210176199 909697024 540348059 884342581 657345010 797876391 977103751 520519077 32543384 411041833 953515184 94253524 628195685 843204073 5304196 761185472 907118080 819932158 295714344 198624212 972472830 991949687 999185223 805260004 40170735 761441393 792410057 623918927 976565422 220546251 805285480 769472188 915320833 27047691 743208812 913555772 359164539 800463749 339092307 587748163 377190740 198436391 802395010 790353651 115384929 336840283 746772691 549307240 368939050 81480564 577551393 780186748 224369460 894269695 139094519 911484436 964609049 964809914 78654322 842672410 408128428 977444750 857026817 314866654 829529283 318822078 272256988 841092752 965061320 972801448 495684481 600884979 713157884 899216128 899631479 257020985 353501246 860762644 205490428 772341918 714713404 811197972 983591255 684394430 350980359 450625419 803477105 886045244 857987539 198164040 160290643 752875652 646955858 274428240 305943830 820044505 481941565 72890946 852935099 858879602 207371923 235777878 834912453 812036458 424657991 832239625 625109640 861147547 667141847 247131015 941438584 828423266 865647791 572929711 959491399 239843723 459007064 43791080 784867885 584740196 464176271 558810522 609445210 155651289 154792058 983922851 446109963 217433536 974789088 987117534 293229507 373585070 321388278 813297831 766712482 383966407 679841360 112594818 393869075 905809762 927830054 83054615 878522151 823714936 329495342 788689280 926713913 401947226 777268177 170583067 567186841 976716816 821885848 996299591 744871435 710927725 876834267 134176058 328517873 666488813 934912411 956644266 460822658 284070043 773696951 578608465 966196515 914790645 987060793 659112647 389412977 470968106 245963876 697771058 762337666 831339534 87185117 314625227 769803859 770016478 558391500 282180994 550363892 975518709 269021323 681986350 586419980 386362767 930637836 882049723 241281699 184445570 135622257 564565179 443625995 324607391 876293824 970030183 690918999 130417196 930699611 488987978 820549177 958808704 914386606 414627895 32085038 706529442 831565818 738422050 954810113 452672044 121740688 971717909 562745044 529526411 919846865 47391732 342834011 288852694 588785581 111581377 841704162 931142229 499610780 210010323 938056849 644205292 780136821 874453396 417964878 519904525 973213524 763122512 831787625 236013853 361401454 421618578 884958443 862727143 745292903 942994697 509636921 81356966 577348410 790751268 654767284 685335677 915748283 790467613 282192980 744543320 83897648 766912171 206052671 398146987 506164622 946590195 105906591 608773815 748826365 856304981 139862360 393932229 963606663 556172934 692860210 988417279 391857862 147871334 840634516 122222267 918191105 935335121 761646931 430586961 954980809 868836046 880340427 848506277 828075291 795968887 813322353 844795428 936513299 600002708 884575883 985415580 636786008 752484536 979630708 520793157 986363483 400266201 262189673 827635244 829667039 622492413 964920555 359139800 950109315 857647692 773693666 55642480 308051865 146250593 886502258 729586291 852091048 973086505 868568671 353114963 402893826 959132502 875921889 672470813 876183770 965996870 354434210 389729296 897103962 495682629 948750627 484348684 536293017 998376874 911437797 796853940 492218696 852263565 590548812 748179289 993227829 820895158 784227930 951487452 203248217 766136084 588797203 123518557 976983349 198067543 955282481 261865867 145643613 33505483 929636868 873971675 197456922 9973187 650040396 859022603 290336127 187173850 992586205 868654418 801469098 432736357 243413272 419274306 483513839 44840560 870680488 771536182 838149231 756498149 880277437 795099740 875607200 129198561 597213614 885435506 627152893 862859289 58055248 593734628 956520755 823556546 46779657 748074869 948992772 674829683 917471799 742246535 466820588 617556393 721865873 737437181 486596833 147137582 652355395 964103769 896298792 790194904 462488218 979554587 457844175 481479870 50179677 244629921 824467938 882908336 777366574 837160085 490224694 636014814 841802407 808646525 4736289 360301019 593947577 770167714 8661968 825836713 515052679 881936755 252584110 769116831 989400316 24051444 713147406 463033714 197858493 875387241 982367635 557942658 371883895 406705396 641841599 654891559 378844089 907914442 765860507 884437702 242495866 814013394 187277081 294790260 180352903 901173759 977509191 510958030 816456273 745337003 996490771 440864015 384463149 544820205 887056030 806857785 569406386 904057695 948695766 743198015 506016344 583741173 216084687 611353808 914146059 866687698 852019451 561423572 749427125 951931307 934570467 982480711 862348487 601820164 293313244 226003408 977117939 949782709 838719368 406393940 991266664 553678960 612847672 987230514 211125570 164800252 905592279 496967132 928789601 234469329 929552897 92999256 30250051 723476354 822966508 489052066 634167072 54181265 933742643 80909974 103608564 173721763 368086229 853280320 870698777 114304901 77367397 952515855 255298287 369434899 58243199 748626249 744632411 938804218 884991405 197708424 768381360 594709891 979563967 382471706 772604479 438476324 108921950 807068333 834921578 560938132 53273911 52520971 775558627 797806460 185870063 672536427 546345197 643806749 76589606 454747463 510985119 433485430 683732588 894342854 752690026 517998409 140682045 394207717 598922148 948852483 25867053 45831732 161521969 860123708 95030350 515044422 764632029 934447077 751547353 974233454 139418417 893102103 883886381 311919095 34118854 21948306 160185746 685314304 864726834 822582110 925098125 133913858 960524891 416627955 121719999 207464238 795094968 845077439 749719492 746013110 53115373 842393934 647936167 399140052 498687282 712226361 866622893 249804860 190545101 906207528 601059344 888641202 259035408 517609241 302782996 911707946 584357401 982163667 887618144 827535351 965911707 138427441 494790473 12014604 759735324 754047911 373067455 118827096 161157245 565942532 417626673 848965052 243973602 513290981 140282541 846086704 384611444 997931375 105817388 817648834 972908190 778737623 529640283 423651871 944659898 942817034 927632385 902519530 655283881 938340643 60784122 776040210 831003242 690533671 749155933 443919512 881984429 396671206 207358734 116576431 281483989 800540120 798080085 970718068 535522703 525384934 935799179 695722285 967562453 488480585 959029737 827135369 567733552 886251923 47863814 51956701 973253201 860352329 749019988 754988982 930937460 884446195 408388905 981497896 935952300 700990856 228889935 816335221 317176001 920202103 415009960 383081044 193755195 774513660 441395338 792556834 838227945 610190133 848736635 576514932 875642119 987208575 859990925 606990043 505592452 965785107 777310838 134207965 799978417 871305243 926228746 247611141 536178369 858355760 911885169 110798425 537287744 21069284 378839013 802389994 807785384 999801431 355405993 850733559 552873048 667736483 92690920 769529600 986563849 890847131 76409357 209244945 367586486 192220946 218376254 626830489 940951039 387818065 823214027 904911861 761095068 846465554 534341551 295564434 835963945 388716864 412854519 236851464 954162000 638025003 806849277 805526902 825396403 449053651 748955627 807336728 605104038 737475561 763891466 931127264 818225670 989863922 742407012 58743588 191308473 983962595 121625686 664628283 22432239 475554059 646295959 995288529 117802683 685548957 878553992 670998563 743724687 826078744 372856396 937004355 630759457 803335595 627115204 831563337 322472847 952374979 905222327 865172639 845750242 909219989 924433796 904284970 781588133 758941520 895245121 67948849 512850138 444907886 892971089 843109887 919664545 584285536 424866872 292437175 260529874 994293380 765384219 315983658 84253177 497633700 776653451 906269292 891429972 956838509 654423899 83912821 218154651 796614177 895638930 818880656 210141924 834792715 575501883 861546437 153816165 881661759 998260502 786028832 63896755 311280416 766938655 890065321 799249001 423833496 248298261 162753893 356360567 764068820 621580149 659361085 941515986 647898294 431024079 738670859 252640541 885942652 872462651 848103091 753562004 755730700 431697185 760669496 439696035 956637919 978958644 822870695 146242107 870238021 870847369 840621812 137193054 954000901 886777811 962322862 808264907 187684655 125837422 29521259 89246050 662598318 956246167 682464714 908823865 854203366 793646996 941025665 975153642 836413146 10894088 882984837 443372177 779483307 209513665 765286815 150111765 311439201 30794787 347718351 751576951 764571973 28816777 539535325 593066729 9480788 99863798 922428982 50368891 193173127 934926426 382695748 970834470 651321841 897910472 391447892 921962255 353352526 76541441 411720851 203607783 810354926 550651472 869847524 251842869 606347851 430408268 128299224 970063752 531199861 120452517 332306019 304036400 209679960 85098015 279506989 140707640 934056678 689983262 790667393 172755966 940267179 780074743 975809532 11098547 803223159 566306599 387896678 597162673 713875445 770635842 187317648 64045450 863272972 691560366 970421322 866551896 4351649 957167599 767496594 770161761 933655382 840074216 797722850 856179411 699221624 645817568 680736962 170562187 668277401 536784589 66418267 541111575 279519665 918622603 909109560 282561839 853551681 919419729 409631253 976238723 238644361 758372193 456963077 946123105 91358918 771068790 236600758 920822030 272690252 472024713 369553334 957044452 951344431 771042261 329544959 612897097 708787493 828312128 961148114 759679044 976225265 901373268 828823115 379250842 946524956 787759846 166435693 558645888 874710650 755612525 801074151 793276633 771599750 737418868 189956395 22702866 396565622 576346984 323429774 674762782 389906663 813280998 337618828 928475017 708495724 131401107 928969789 528868963 507194763 38437318 846989232 425955273 799006430 940644632 916950444 46187844 156896318 747293531 815116840 666321697 963171656 935899971 815699154 222179883 750664666 788844887 823055739 435586745 243608188 573136632 972233529 758409495 997622780 898152700 961716376 473354776 222432128 685453864 794112575 237261454 849199738 881147306 36851510 445850430 429983633 334876802 890664416 753509823 935955910 827422894 918420503 907461917 994010278 831931260 761506720 108548531 686159470 887444860 988723346 413233969 775654548 744526209 811455133 68348626 172824601 242076943 954977942 815676770 346822651 900917444 616482203 996272348 795464336 495555614 178629608 757273793 762268132 848271119 131722042 480484944 391274786 838527099 987455150 255689151 273833741 848661166 556381245 717462085 881741206 414854037 881784591 355015151 241507988 872575946 181807034 974347310 812653247 3885768 427822442 765990457 410770648 667168109 954485400 793609278 224412933 287201907 238152223 848363364 826942516 854624936 757553447 595759049 928894661 790386663 147971823 102332407 918835139 867374009 932852689 924797052 603194266 758011018 803462015 858078808 784352453 741462858 33994706 880029763 998723496 787765834 128300518 588022643 832814668 811195639 953263204 606701040 917410614 934813436 541000387 578102863 384034507 877252368 820091466 533206589 924408895 29390932 494453990 392375317 110689723 443547261 183399707 570048077 214470697 969294037 415928136 131733953 367439689 766896944 778307675 852542197 151905893 87370742 889426732 967800933 955961910 959875688 836924859 200682950 925775780 14923999 719372282 821769038 313390931 957474960 820539062 352737838 684471412 732121605 545977560 861103109 243070221 53952360 497680941 376123004 715158041 871449935 810828709 955023185 900595510 985074961 943511826 891056812 267026550 60279332 984820956 740439624 539604554 680373309 967922462 481716942 72490021 705421565 281790307 949478880 792915794 629782103 795580166 783100971 809084216 984768712 866258069 759449916 429418875 919364591 270674947 280828576 517759244 712393677 894260937 847166236 613334229 485632157 738285955 783999446 609582605 687029544 948834664 151978581 842920093 766150069 778277185 807021369 314306081 882158698 436752635 218756945 801534769 697635231 995782084 665284757 407891447 913052913 953074483 684656225 893923998 530917258 946865138 270456655 830080099 979029647 853934881 876502196 451923575 177747729 79121218 386664715 742414614 903535594 797047375 19314341 473577794 331617046 878395282 734015668 770985175 629544306 817495316 243856571 993686617 752126268 883017096 851926317 294049116 753860234 951307637 771437479 675693028 516561577 495601148 321618878 764396952 226972357 885143881 777258813 998700356 573819459 581208613 236978343 943828324 122090362 891747812 737020247 263189662 988978546 125670660 115524195 744178886 920409025 805644344 688638667 605105835 617479441 801370362 883640816 848368232 222009907 799968770 441818959 864262809 865186214 744237161 877143935 754183061 200373114 827139909 293087090 808503975 982518542 980410428 850178635 838876489 683519315 988410584 302027058 19614045 815482337 752999135 883602953 895458226 806715809 799327902 695949159 799713472 121084910 846848743 960525553 966409090 913823895 529122436 922046021 913751784 644660999 394892560 863493290 831484097 507661264 830312878 751643776 720900771 869965694 321965303 132878304 161801220 954651038 912816292 789068193 900673279 546841670 47441323 750821868 756655927 982563162 310748303 765762778 578093564 145544510 617892258 569531542 943170576 757326547 640013816 131801892 825885196 7842132 613230014 235779914 5756542 764941540 838955535 597876643 930182263 942619175 108833184 862781702 980545497 125497151 725676781 545238226 968661836 792314473 658441422 806812288 920884035 989861655 759642863 472810673 61383493 770669576 322515089 948068741 611390064 593100057 414614360 123500286 825983594 154051802 907387445 218752529 610158054 703756015 993307747 516079590 763439320 682875436 748776263 759746807 623756949 107149311 884019175 832229437 265766196 733933723 830270573 885812677 616979256 977413357 853973702 983464786 362330492 923232781 731421381 767476228 807234722 463038164 380295725 952958365 70838998 888148525 248319396 886457382 905995500 790546168 977920863 747226049 768197476 941854316 828535228 865854614 825043647 738310974 849114848 45067714 944227699 162797497 925025900 917337978 751132175 809324919 753662106 935466047 981881692 301564046 871208683 434331620 235852251 821822826 164728169 161103563 545927382 748443204 906935134 678922912 386561728 234042312 33671095 373108601 848625926 564568422 54733781 897604410 784747294 811431270 927094075 577834021 944237890 877605975 734251148 805525834 195090069 497662557 576648227 509370132 586598787 743133982 965949081 64452876 642903060 24677126 502203016 88271066 100157069 893354148 596838631 981877551 528226074 992663382 883721501 291953696 881223080 828249831 944784823 609670286 843607190 763468439 336417465 268159392 981015938 53050878 485491762 882841604 451604240 520761280 879098584 750834811 562612475 619475013 846974205 852099931 935711042 938788912 825517382 619571815 47796741 606879261 973378200 816446269 218174552 719644717 811593542 925655231 419010309 913835076 160409174 797061126 399193663 367639557 634099706 816190318 954555243 985077843 223621830 414026222 287630494 993369012 763449579 37262214 828586730 845727717 984725374 43552837 996170307 927081146 454580774 765993422 768361361 577545196 527735554 896447356 613084022 416205338 26777188 861707821 967389862 906741563 858870615 982005356 369483141 911606351 101319532 898483927 760042032 846409960 801780270 516937904 312220149 889088390 30601339 191764708 632762082 926975400 917178106 765565049 539338642 881077913 285639838 770078564 794939509 947007867 458471020 110466735 90603119 955416660 990306170 758672852 324093995 831701149 316082457 642728382 397574674 346357198 78883656 504291280 902141533 833686120 844271952 755833769 953792849 131709159 135265193 105527953 350185602 197459259 167278343 330577634 515792172 946357953 182727050 911952367 880880228 31194978 299398852 893781064 24553758 668105412 967293018 567388443 369948857 721587487 745836916 755944799 752943781 740424163 832614274 799424380 952590185 884265504 959678112 782433843 212972435 998998022 740757548 334293637 761317192 766800772 514355994 459563986 254054318 768283012 433555991 91860395 283096184 14204762 260286294 909916730 758192977 736350758 9732177 687065713 766360574 917221749 779276726 260505732 356708509 910724789 834735235 593252562 407476932 161509736 487455746 171671198 823338258 266719807 882095206 813484899 405716325 733477976 782956792 792432230 443275680 537284757 298096849 257980739 986601757 404397521 753118261 417700822 860252119 922109063 919714 562328763 159386944 747440584 881249477 989522338 887951018 802630959 816924173 828121020 957487108 591771561 817147352 218304762 921209561 159785782 950084190 407414018 268406070 805310990 275451628 26423623 291587430 31939907 802157077 541797085 988685358 262799843 996805933 763919116 423058537 527012031 937202381 488153765 797368291 638208890 744221843 691059540 406166096 196040704 191402592 432694714 837967016 998752184 597833934 850754807 734128594 580881759 86659702 817509761 16904504 590341243 785411977 582861418 437081720 365764301 282755419 247887230 906482027 766852115 425326576 954829889 788657084 660494735 901339791 496394870 208655535 941577169 211844154 209998311 271505864 540588464 262698372 124505658 834958574 316669631 954369960 711043732 332816015 721043193 847088594 979895368 606571505 61406809 547636215 125251501 996351220 744566758 860409226 490398802 871780640 640605035 712123294 469511894 156462708 847530369 831337970 813420380 830924290 794174205 973487016 832780788 300671456 260926799 987903842 137674048 56847856 129053000 968336841 932484697 664517213 728344874 326584984 805936273 278190794 93032338 271943061 904835466 752458586 913189123 393689528 323693134 730201715 189972958 25431954 883115810 724587297 45115160 71385585 256547056 936140768 435734496 425484555 780268185 923971236 913784604 966889419 451063505 494832168 745294711 125278130 858920102 825617766 820651163 414694427 567164435 831841886 838435611 138884818 606876533 720915262 151200490 985125694 264315779 459314044 242118410 754612358 895601690 793163684 4628983 686814032 825145921 673863595 676703098 743591795 944247631 917803926 245291338 244161870 173492650 889397419 502184496 615055434 89027623 391240382 976305737 863840776 778892997 959530429 890468250 309034585 441408442 668419949 842497001 727068184 761330643 859457613 725854933 854669165 746512716 753228867 856653030 604175211 948743539 647019176 929219769 778830815 752662576 922484228 831709351 990919880 666802420 761384942 590936876 969206829 662739484 125016246 426676582 658067877 978426321 779747531 673615842 101067107 788884975 736520253 705528288 185806065 812523199 988118889 153951577 107466288 933092765 310070216 584437513 729158793 92856191 257326135 70373529 857670115 989405244 671493820 12900173 985839077 860753305 950815649 76488020 905431255 698507942 983292178 912532516 915297731 779029503 776622128 318555171 540572224 82121267 893868236 744724021 534003948 737020247 714506019 778513270 958024502 91373744 393707727 934744507 142818791 659952180 836748861 918213246 987650527 493379463 476408999 722569011 589860200 652697367 993687876 882234627 908755304 206009794 911604744 282294524 957910543 872788772 881948812 823796710 683253106 990049944 737478663 791883796 449410976 953164669 463739856 668851959 538919644 822261977 975440227 98789765 830962169 906437687 943253155 995758296 267508844 376017127 808667051 103031366 934259372 272525644 817333504 821783026 976316298 257049264 896742276 6085229 354740872 806108499 418878869 741422253 768565229 761077137 388041838 732306576 875840290 871835518 942641569 881494235 144878188 290629962 621990374 751915385 532698896 904975035 853988778 486594300 135449110 724875770 358252749 385922623 54396142 805396533 410446497 983769624 833892807 184251653 571659420 14692000 60096973 268772429 841039867 272959540 59227869 187990947 601646838 805260644 986068500 299036093 786020136 982307341 905720488 329236290 677043878 820175472 740370267 762548201 971375397 787865754 858769528 309644230 760045367 734845946 908225324 979179736 120837069 886127179 757509004 878478448 199246509 553276363 675999539 164094476 744972284 904236025 360070298 528135369 762132997 990463483 910976724 504112120 890314201 780476936 899871319 398543900 711710416 91843562 287671882 614459573 75562157 953523257 212195523 294732213 908988878 399704578 854844358 206788621 119770969 290791680 947505770 681275049 494352281 37586619 385576504 850352051 888668027 214486749 997967671 906337119 171577487 96505225 934170592 88103368 7159488 572888707 994479751 872710409 825995768 96765067 467976450 850296800 985481201 341392020 824886819 858097986 598859615 123259699 910144701 630245250 896569319 17732388 588061305 959646746 529062783 506973788 806121001 770660902 350842292 937568312 255613795 311876540 930260910 812130028 5491686 833704851 930543659 846128920 796040779 860843893 762841275 7088954 161153542 814804208 945336849 819417192 680971590 864894024 185723916 911192319 918778308 995317334 933790615 877718411 705616423 772013913 777043643 915790225 174375880 826677573 203072442 920366967 777172022 746471690 715316188 845885695 653375914 314686166 140985450 426487462 167850666 827938790 670707856 902595553 666884968 980524086 456656905 467273952 753276156 821990490 518518387 841220836 952600555 839552167 757411950 839856844 566356724 812184392 998961394 79378122 14802691 931599421 100358377 585839063 497432319 863970810 966921528 874232014 763343916 7769961 615934152 895670953 683483301 867706107 638624125 992064573 950195339 813905235 966979993 906456514 301312231 852190338 963232065 835965490 377439943 702422774 800167596 786151203 44325401 959903221 956537338 872937656 322357007 644542060 402067783 807914431 163069992 218238639 268469530 959892792 564593731 142511250 210022714 605503957 976931876 966583826 885341153 216847533 937522436 628253649 389275342 787692214 273173518 201107177 864702184 918600348 162078606 468891305 121430921 904780084 817423765 158737929 861700722 567159614 791831699 901613287 89311805 917860962 136055896 448283365 960382095 346457335 296187788 982396498 754238314 719188628 787591705 823056211 143006424 424249159 901011664 390775285 876689055 655789396 756591853 784756635 344268187 549886703 970295683 866059332 710419542 513343766 133879840 779523097 255571071 908085051 887033523 896775181 787942237 886096479 982090763 254478169 338889569 882592072 365791887 842401605 496531540 753347014 310432990 539700175 286053392 795065102 11441566 935168920 924402096 883505450 866845907 677435668 622418238 375566408 269850029 759084669 772225492 924778235 556028985 567786488 915323491 865563667 60868758 245346681 204954024 315251694 932182672 553289869 251125365 528811160 45478012 276145370 557372331 163835447 788545443 324860718 960041321 486430139 895431212 808278033 834297546 879438255 741504014 788397572 998406679 961932802 495180868 6004217 932315959 808925633 139129468 979259257 907261386 366745113 911755567 903748461 765404502 44279529 164198896 698058106 421887495 836191880 90452871 898217195 876769808 896861454 999791418 857955215 79451939 463929681 858928079 925151528 513143105 153340154 472760102 95723814 849988035 952794820 347022606 941912275 844517539 949958625 980785211 553212368 993004509 752179185 813651844 386456654 26530185 100739186 783204185 154753830 267444067 527138205 682098319 359370585 850068977 181967072 783648010 515891543 150003284 914677511 957023570 452177443 236176497 202902095 150602281 261399713 70654102 758975994 919952162 972759277 755741543 612128983 8754722 182721074 991966945 885273695 751399275 810628319 738528510 93454047 308020479 902643794 669697471 491474512 914935173 354659354 320521076 973149374 511925012 879317037 717760713 702983212 134426342 179071402 796030053 436003832 800210775 904881635 973266708 510759975 757839784 812496503 863946466 366309722 91560503 866161726 737483173 757264332 936492390 34668248 962121741 973416500 791070433 894439817 698763357 840811064 900444515 932351625 2420633 999324892 924838582 952868558 314867512 878257123 875668578 245550191 440791512 907142067 364737492 896961158 929120065 74503192 748571380 247428344 852769115 268692392 984756279 402079929 936312775 112293445 796386599 384421773 283764082 85135989 203434501 10602007 105755051 777855015 168659589 943929348 505125011 988711096 761593986 766413109 770799227 184273951 843633431 948534801 808383263 727409822 884841637 837622989 779299873 962564817 796782867 907156152 485393458 286262710 913690998 771966342 836800258 120375165 975230682 986448456 455794763 991627737 851625956 616417169 321849466 415005878 853718758 357409980 361241390 64787809 687921750 893429359 466702071 835518869 823551810 759439239 246138965 361381722 723986451 883375132 838199745 947233827 430124336 714557823 241311824 972540853 235268093 197295868 750122693 730368318 844413521 845951917 747383854 820698268 955112782 441716785 882498707 759361346 153941950 663392798 887343764 742648831 309955030 946740722 653300103 243328957 412310395 698671684 48399852 682201824 846497091 907156263 956311639 845546789 954058630 645908819 880723664 13148043 690881059 699155526 764252300 794558292 814218066 911589117 249112880 930529224 253752680 757273856 512057487 341604397 97027 707556429 790488660 681994392 151617949 15118277 215980635 828924961 195070540 832013000 963645643 443858431 931829653 976312686 300219239 885173395 575065743 880276683 117143026 754103735 895523257 815274439 808849609 469241306 934548454 109021829 901589161 520807780 743967939 886801059 626682531 877126663 988984230 267116947 155101167 927952764 547963300 966404717 139729105 716564156 540721202 11631569 462998635 548180013 857931962 903861473 607595135 781255076 912353111 78520763 866800722 356318561 754444036 813832424 71486215 991101296 14127897 730192688 920517586 868483095 879740939 504686467 414506522 292779076 851693452 855553557 738823432 835037754 869302677 643536560 943685982 976026591 871440633 526785648 65264524 791111342 261176588 813104012 457005718 236604704 11785282 964618320 654950394 892396181 76420222 913634332 838371369 951116535 147483594 544059774 998917864 932271932 739842678 797472081 64303637 801485749 710655370 342283720 901277200 875163141 662792625 130361296 709862932 16723464 587359599 907999879 929921952 436802128 523016203 39561801 917856685 758116882 63478599 892452396 546446500 801103399 192161349 757193261 771336818 636697567 771952355 951500931 838946027 747281894 977027417 808090340 814313319 823942344 969577188 771214050 820113786 800072762 173084860 205490907 735266068 747360316 996675061 788555366 470004867 907428158 823098683 116683344 858488293 488296863 108345025 829195618 988915168 851019994 885068075 834745733 819741252 861581289 557402467 239445424 352358455 962919403 871865297 624748173 869912983 888666474 889245101 365610716 886854881 293508276 101067230 19051142 776363940 225328403 789315740 867406334 665575575 300779405 452672597 802968067 889934966 100445423 428555249 600506697 923309965 816278866 711006596 253211396 865098754 843450799 943967788 503462425 842206014 829242704 991271910 225358824 890917853 812474204 941947139 371644115 913546413 259860272 807356572 897545054 59784242 247503885 724189880 919059207 948765067 522816624 80450600 104409608 738235825 296229286 910594698 257396280 884749181 685337126 753765171 797388877 590965308 933740117 759914625 273286083 536029968 303619775 672953431 283352871 950420140 23247592 489777304 133844997 810348459 923402168 69396372 162432349 847782373 745633154 561192234 663890372 76672482 776974712 675405151 204550704 748572745 760222818 252284716 694126386 880055588 922557466 952798738 264548153 732423341 47275880 365264954 332237216 958513386 646698337 851682512 395727106 680571819 27563021 421018608 772414851 785298042 65402725 858062891 473826194 909691869 994406062 743606580 262084397 87527128 977919373 762663106 753422006 675769000 48388389 635170892 797365101 395432494 689082686 314345147 790061350 754064119 79690815 989356734 612361244 986505804 821754270 442863281 924549076 935666807 324473423 415642749 948651064 346677603 872596084 525047622 432926560 857520298 806921226 561605657 851552499 913092198 178242854 797085836 894644253 861015568 842194504 816021430 933202559 589132171 489111355 467588701 785417697 819600315 925460427 836731180 812456802 893505087 760903025 630408378 350505406 509505505 100192293 790562878 557812931 259034628 786627728 864152294 321284241 550685772 986674788 584493355 15100092 933647345 907919662 494461852 883487741 794049230 22325567 280136869 280759287 803037869 942224212 937619528 42605385 107667573 834902283 419629196 492436250 989492310 893860006 908834603 968582503 793693946 935205391 296529038 130467242 590782535 752182733 487299342 340377147 575512194 743339539 851835342 827813943 797634234 621206609 263663267 595692310 993650742 819244400 888374813 654974362 182789532 890823228 785122632 426781315 892852728 806390125 710652743 853019586 753036530 691666773 946022097 545886617 757595570 904106692 137863782 467474631 885415417 466279175 357935959 958373438 806595778 82532877 746802323 777398263 245196270 888965987 328155969 924700901 942927091 619221650 50242895 974786517 961754713 867148943 435544319 137280838 954482006 138885056 596791857 918362241 822625706 809242937 601558271 795574534 629310890 818045970 110228482 405996996 784064671 381147911 751931444 844660655 324537402 899486145 30000327 883171076 384306653 124542609 754747074 963423190 71131727 758931258 422688330 991204084 906124053 486974608 939870006 674913743 359987040 650795513 635687936 650877941 275311055 992174207 208638684 788273296 70407561 915506486 40437531 970957806 573946824 187623669 721681877 238679500 882186401 269524441 743908746 443914687 449203236 917698264 454537548 708164611 907490632 908455511 811834760 767557929 420383564 974837292 531702396 960645116 878402380 613001781 743739670 281123586 798915773 256490050 506130806 87552967 457786090 542395376 887310817 814469210 190951478 105837489 590972097 91811189 876235403 750225523 838426925 808460306 573603961 12417537 285283021 996816541 795570701 305829978 85935178 934713208 640279428 761259618 276019026 901032591 359504063 990459574 248290558 836152884 212495237 371116189 75160158 977547090 72946209 324459658 245930734 340811960 900681186 156830892 832282032 845640806 973735255 724378324 819651018 139566882 35285808 882737082 304042396 852456015 901924554 408099255 945966029 577408790 939658251 437200305 817930588 442482322 327486796 347712572 244468412 378753820 109657973 614212236 746194180 745554766 710871091 376597507 979539533 113404474 766209223 6564118 197677751 790137417 613353535 924077889 973953495 669262154 370174604 12271577 344899265 718259809 981077032 592105854 892397957 978181173 485902729 328857125 747389992 946621047 224766308 941526601 647524391 27854073 746718180 257952758 184552428 246838785 872294261 957905921 183412249 602030917 299972811 119569200 473508556 810602366 888330338 908070241 847392300 926042513 794943528 267157722 871165255 426516503 755972613 844488979 564590624 111486552 691184689 777078510 838397949 386336916 891464483 186541273 916774179 237564501 660120517 802658112 183922335 863895891 970570033 705895342 929614220 949735024 918940811 562732726 837861687 808245170 311572561 977733747 265653871 831790613 757468362 913450033 810371867 952161864 932922911 760305450 846694332 781466878 462985611 70190236 195302933 981312473 767398050 343016594 830716081 743481979 434295193 53076692 204411888 941461020 440185615 404099959 828372434 418057052 568780886 70090969 963063908 570850251 852498756 770203744 928940523 201012751 836468906 341626196 810807721 561870501 891704845 744227981 205906850 14382118 507096315 348166754 894698724 160758539 788063536 587675525 931229374 453371924 738526937 911837055 284214321 290379879 585483928 799660455 743008379 779959902 461246515 514264212 419529081 515359833 23910309 890559821 222708292 605781791 954010564 991054737 872447145 989136038 948709737 722965414 861383444 864502534 879025002 392794040 793557540 766432355 158517913 790833317 492750890 409974540 943072819 156779703 840471681 793533958 428850244 395592543 735909545 12230369 952718261 891238973 734790851 763686900 131657360 940177286 354141926 202909810 950151222 924584477 821643167 619518521 744129645 396159413 64028335 962973795 940667789 231073936 751115662 874592513 891234971 895877528 941505971 930447870 785586964 974039523 6210054 877031676 703864422 749776420 924847729 814822499 792875688 722166732 112776806 801647808 748235131 51244720 119197004 390389131 247443680 82409007 958915974 996612104 364727850 183587035 884037945 352777974 948174014 772773998 871206033 996917408 418576122 241257876 901341715 3157069 804835003 427253823 440139765 981550686 541839372 275614263 901991545 687258978 841437849 160993785 205996256 886487188 581267767 682165678 986675352 980468792 807366530 658677809 222654179 994982740 169818190 794973349 170890006 854233574 691718764 483102149 789316611 962782755 403476029 330458639 368066723 794163898 955685312 947550030 955286796 907900134 86034106 227455285 847386204 784982856 449932211 120354541 742657179 303809571 819652783 803938417 653129348 983306967 769272981 619565857 955270314 676126909 921110002 210347515 600991122 338122320 399870022 797029385 850430449 62408075 697068513 937654054 856700610 860355335 998111325 996893282 685469287 404833531 781068806 490118694 90059843 741522473 829427419 996636554 28155434 970702761 431918469 91007123 41251221 278475563 898306724 920856313 862141597 758222517 767426692 602496665 539167408 489670589 983082319 891294377 700233202 772617586 828975134 914371186 898868983 14347611 866012699 867149892 473821548 876073281 718625172 170831206 336408573 910009952 776886954 924500529 647304339 624131349 339961856 810207539 663452049 341522735 213000028 966232451 783912699 847179157 735096407 103067078 930095835 198391999 755584457 846321720 565128979 993135932 901688524 792821092 493340756 11138172 122715744 121767724 750348250 760283753 310329411 152382693 930997152 731025009 763360743 827891464 624045737 884504156 933859165 491488864 745116191 818365871 740228766 608613408 926442544 972924761 140561157 807192075 536613682 758301612 87273676 810027360 744322787 75056081 461291379 31682185 882258351 776847285 215166805 735036168 278089625 664420210 682091276 116985619 128902521 893617478 142154463 398068122 175402488 592564213 741430912 867539611 926591560 108728166 247287718 104703992 834671951 795834725 933110378 875137756 960487003 988914281 769402344 855942756 869237331 331977680 177847384 979957279 799785851 561529632 173691060 834328027 889701859 981488644 820824513 769150777 638659322 559244721 706400544 860444242 179553480 93760581 892886481 916660384 429021037 918847800 463667898 797154780 763733976 458247043 882035739 768596383 872968393 580568919 944956765 950800660 893189602 639279526 845499571 700618485 87041508 784858996 259352657 784691576 198442059 968925562 394016123 765057293 603056293 600103163 766892141 930089969 969914943 115043745 437237939 626002541 937285854 665742626 364471703 182066240 754011667 701169913 645190461 327525731 803285707 865458250 759875895 444673744 527236695 880917907 733485039 440991302 803859807 330378833 869383958 375576665 525021697 874792194 667966022 476334168 404555562 789776884 827676663 914732512 790552839 239224457 973285281 51829425 740129680 192711065 893722683 360381884 901747023 407366091 649831891 405199263 823124508 76896684 452764425 554436931 403625771 264727129 207286709 799902269 859835831 878795286 5243140 675219914 20416859 725086047 676547118 685412831 233132808 999088917 963884550 897866532 928176409 269386759 35866968 492539635 948251217 897215942 770593452 808118010 868360618 928945289 807690125 325987357 774316106 987846595 823327242 97964095 753006032 597068915 605967155 669676100 448788884 163783191 775677202 84939242 860028166 876119553 248009014 871056766 712272414 489265176 850982050 46908620 515643859 948635764 926631805 862271526 222683241 993362331 298683937 283109869 615596445 361104083 767219359 35950561 762933314 524106347 33306422 785936328 939735107 185247692 833446053 4839429 822518366 251495966 663759714 806217620 921551873 713903117 125836675 557503513 62901876 754918698 990168450 749263197 587327479 576576185 199911617 857032593 300174718 693848712 965809717 914739354 488066037 674899944 932793240 321353826 879726000 263058581 843700309 334086544 754987480 777456416 595642314 957463516 672140074 847263024 518564906 634741686 521797441 376075764 936323062 931313671 639351423 681277736 43740902 957167683 833507970 914777423 902740283 392398224 995312592 61880502 46356227 358823349 988536220 195818967 244687606 634384565 159694178 844717057 584170572 719070173 889101142 862480261 230970650 745580942 778305840 789689233 883577727 343656041 741711785 836152896 866787275 999581955 978747429 990183044 49674196 248736069 659167002 736622195 451504464 840339832 55988351 696373588 967019046 782834265 835833003 438529031 968720290 994326503 458436076 66626192 755661053 856131586 19235539 938412271 836319913 790108352 519709701 715844865 591243281 921310800 622133441 48030855 179241194 845630396 863323375 251314583 304972696 979282852 398352424 820212834 931641361 911975026 769850354 953301659 426000204 165262859 976613191 969921094 490408404 871954332 135142131 843816607 864561477 565488769 17152241 985985357 679501931 239833202 143430409 734719639 986148572 825822215 415626803 956029592 112025177 954344092 992920719 32883185 742077269 31330064 388871853 399187337 787340052 339611593 812518620 788642803 16839848 890871961 827088198 652063746 983400273 289492728 860718245 42627942 626904982 318963910 383127900 737020247 918010013 254813229 954141759 459556389 810889918 950144990 709883051 133789591 352906830 483999892 558353537 376191685 981698223 173248171 873939510 325436038 774715804 61545369 919290145 928050540 411343759 877761418 826514010 93123722 801613545 464967742 10167083 891779262 824914251 787017806 737045030 633487602 962992808 732161610 947360327 449175981 959464139 196830830 659498674 331206747 692559280 823699930 815259561 235133881 837745456 846867057 82584579 841507812 688125935 832663969 653102053 802237788 796841824 295702545 187623615 566133272 944542110 975716158 510609821 200242607 428189362 809684254 701896857 936060024 954198136 162028899 845410633 981297631 217264759 769599255 897343683 921009237 359534907 908858467 439930380 640891135 486251864 761455445 382140355 146738141 192385820 627384900 988094427 30995994 30672547 815910393 783680352 936999884 969406746 971610600 806215484 325344272 210208788 769655575 802305409 245546213 967132074 914105273 312389758 983408079 857959728 927307530 808919815 837581269 286414809 864943801 947690895 974747309 822380191 326880986 397140187 110599192 225908569 841821930 503428859 868519265 638144184 202565106 863271079 870009067 838526310 191346132 227479026 676471806 893730156 220263900 767820789 502741921 861331019 595040255 980144325 19664387 768391112 648349302 736849412 764555429 740239629 986989228 514820508 583294806 309920138 794530931 856508493 995685103 804612059 995436978 934812569 556718960 240572039 966159330 365581152 319527215 167016384 745232295 196417148 330267358 952830358 852489853 902396463 487045859 930590931 466660432 387050402 13685888 176111257 963641221 186516784 406679853 809157707 887306905 510674640 949724992 468014031 188540337 895101836 940746620 981760843 19293114 374432895 74951134 840385527 530402879 689663531 649408706 462201136 840248439 521777502 197984788 177253308 916074651 819808320 820201136 273055220 82115056 420714439 810259201 290586805 40634308 776718695 910275918 743117927 750754323 316396882 765306664 497619575 364257498 940198197 589871101 73122216 848994607 764454841 761451015 747159117 855852205 791537523 867247797 996988001 404964832 776435233 813295628 601252506 917076106 926099102 980879523 62922649 933498525 743140412 823711932 897451145 869928798 948937729 375648661 975032448 394707697 786899461 809041485 494142548 397399102 852865288 906910803 751669978 786074842 780860719 543189733 217339227 851284995 318115838 296958352 767297198 837344347 419328899 763092430 981341392 210607639 885344157 511104644 116246957 920612494 745871767 343609801 620122802 766774317 881725432 464476203 748698977 122739664 997657654 817154561 490234397 636537840 715864182 667109820 992806083 976946942 916857579 756917960 952115664 589603346 838374271 521395946 457669392 328532512 882823795 826530003 861163506 668104217 589773749 996899345 102904898 730664815 249043887 795320965 999547632 305867266 414580695 418926975 175528752 969624509 672089320 230123527 925835139 941544041 806294988 245835336 961035393 806415610 346636871 581508127 53443305 666101377 144089554 47377336 905519009 851668249 744179219 44788467 897195118 413482177 901467614 448653682 912272677 330776876 748671000 968750702 983148533 364308287 861742867 145723434 639089306 791287878 69940567 965421852 887089215 908475580 836473380 58879181 467025051 591751606 846416853 675797648 867047241 967310441 293533440 209414352 445578437 938506993 261473104 884448053 992790930 18408044 715366526 734420561 283708862 618485021 865218419 161338144 328636504 649503765 24589794 535123517 974730637 965164479 709515444 218178591 742217524 830734138 872228624 676987915 743722614 930994333 972384922 988288174 530796180 272839371 841935474 751029165 511768624 833626594 852057632 909533844 231211572 606672217 666883955 582160841 750060393 328921338 664864570 740309180 830282057 925851264 805563042 782957394 980355236 799441052 741250424 157360798 978226782 820775791 453136753 240074519 895408540 217583127 844225634 260992626 843748972 876518080 967696781 647736991 7521374 958185766 822840596 680658708 467433813 245120011 503258623 43245172 916809183 935129070 109343603 566871982 64284425 572682787 512216885 96500880 567408266 835756957 603364048 774246172 312354516 863333050 841241653 882099267 216666615 986895909 945201680 562513611 696929498 445026986 922437297 2724319 495833530 873217711 970588604 829494076 688784974 820702509 940321298 929243217 468626339 444573173 614208034 405802821 657861841 393645528 465900532 902115991 769642622 851187889 682890037 988435049 785257147 485144201 915683030 369096787 870482038 883558575 576057401 879547158 798396808 836427994 775067413 140271413 851970867 861940271 962132325 343251878 671200300 472054553 660509496 823193787 180379019 652430636 224544397 872983549 858049835 482497826 819335337 798364750 442618192 860866747 786813628 481861423 939194083 190161304 644799185 635680352 874726108 372522874 523215485 845490003 607286965 749122094 918226042 212336192 30270517 714479391 419982377 859050782 932986184 876657126 394488829 964104377 210677615 98740898 21034037 530484034 514341388 998791712 863382834 460790222 823268077 263320802 417927482 316785846 749232430 300613459 946429260 915587546 499690667 913490024 6108184 959221984 596046089 729933110 454173017 15491584 954936542 920716973 987416797 972451658 482665854 52444308 642290109 934968135 500393603 692299695 825554345 872912522 553802461 528153006 983485241 958866548 128055382 841166134 387757651 721884595 124941656 540757016 426397264 119342144 522059747 142435268 851803518 456041775 875739820 460928709 719862209 423096504 970968813 640581112 487139545 797130505 188703530 787052571 498677215 794070279 549110702 308320788 241385463 416290834 400037417 311634540 783182081 364776111 610107712 758835511 363515465 978108578 204585064 789937810 201743451 809542663 285501167 420215361 822282364 355447782 808930435 603150012 493403594 774729370 901452550 818044361 767956658 776658355 887755215 624728188 693840163 714397318 915656817 628772619 987516960 699036908 819004506 851898076 444575378 366686625 34967147 789415299 923597471 45355094 929279657 94640181 992006043 192534721 277459653 911009341 72977994 950687738 911307074 872553477 939339759 756960813 429309203 798943738 135935198 916395740 810560529 962816391 270941826 947880759 646541815 376297850 427031387 845384846 93153714 766783690 527302360 875722148 550147083 742429400 469401552 962334011 963607771 608749086 29071014 621555163 810276647 872042758 866366082 866083795 112288162 205418354 783728071 283310020 848616435 205025179 416028857 801903226 773646292 149722323 997166685 942696045 746923557 861413987 790353298 992318656 745286426 999302075 748637321 334763742 149960101 278402409 741515812 849719004 646163804 810239773 830151824 871176926 822016813 299865964 576668090 953530288 262996711 863001970 644982696 915157870 139683276 766521438 939216380 834559985 421202578 935845542 452714264 837413196 545652820 247102158 854340554 248420812 786379642 466790553 926749105 354085349 746714717 659804137 152411867 996224828 959510158 901320407 221382840 582690537 149973300 113126358 806909042 851633033 841946386 87263199 658650146 214439109 940392006 30435714 889225188 962723359 77257730 925705394 95045810 670200296 938975569 573921069 915936620 599282900 948956862 284439642 225792178 300272419 877302540 443333022 90981719 603406396 351328015 815960370 292358962 314795742 715970002 866366386 771034994 567021051 587767607 812076771 969438263 689290316 42115027 697964471 375108926 843336889 780626232 790268997 865749169 576352751 758970905 771600472 62060028 298131908 987253854 852025150 263951233 982876452 868064041 107470807 60579347 774357440 846276208 754827732 885842406 880068123 947232953 935955748 427407010 169052558 467569197 919908249 438723652 878903597 644512031 946317990 962642425 196265507 670000468 978338358 904660844 896415797 999241444 228184379 533338886 946538204 100742800 555900071 923146094 901421868 17461487 55110955 734368938 988708309 844783913 759801982 337481202 593496226 808031861 977550922 169701667 932535192 238306211 737020247 396591029 486361331 489765817 892745352 128396772 807596927 771252969 50518901 918345987 148250756 685659406 785283905 634924634 183283078 868920341 322146293 951914023 430957000 204704969 194636183 49801211 743085601 862258386 910789870 737020247 766404505 762800687 235867318 310332580 463846900 165451983 478183847 771224423 757928930 756474360 885846080 421635257 57513142 923869261 391457885 956573147 432920682 125036689 874383078 11933147 961736196 952519140 476877521 793772679 702130049 658499550 49817819 937104665 543188858 36472772 887239858 487528212 765906133 759538566 960222017 881959905 885285475 924271826 241299789 238524788 745882255 618696355 744882913 889710009 437004640 177168380 306997161 403633993 769756221 578611005 147355813 428090734 306158150 306592345 108958729 680074421 238356706 962197396 828049601 772029325 738194349 815630389 730364697 864703503 757624328 685541671 881698246 567454878 753454732 915081163 115201045 836566604 925902083 782769486 946138246 391571191 765071388 341048560 643176033 848363038 747542669 300262889 99519683 507252171 167427475 951024517 789907501 370333326 927211638 828240574 896648653 905639783 923166966 227186483 806325477 571237459 118254763 572348956 800241892 555021120 139191050 795982134 801712259 757378267 840883248 702484346 961973308 50816805 167973993 267006528 730039777 283793303 943826613 904763551 171624591 821419544 916732055 207338551 321240441 325011150 901075057 60858455 289819333 914866893 940666843 206538535 873232161 801964322 303818410 869537316 298039739 930247859 380612820 387274650 798959437 190279738 921569435 158352031 830728060 783655016 981838385 23710490 68981262 151045251 768152782 27888903 823418742 958814754 886693161 46338157 601142914 776702864 449718584 818875266 874265520 977028414 961781105 978467039 11394712 885835399 981717624 775432326 167327553 998534485 202239007 957197926 843473686 669143397 772794872 144181235 749080944 6155330 895731815 862529511 203868380 820599525 86481047 926778460 929853513 793420175 440098056 747817113 931991867 978620307 55226745 886214813 243501835 294782463 235970487 842294688 818129002 683132168 869839520 869185025 168961784 360051281 738447086 912223908 856168761 900852528 751926803 434993706 131656699 169211312 198192122 990237079 937457086 748188933 788760504 691038546 737885686 798582861 280693909 534313426 147501905 753244401 973546900 612236393 926126856 462902993 872266548 365113900 99441446 910789556 42821226 278029105 730188135 844777690 424299603 998620958 762708525 602570215 3980168 394793362 807243763 289404427 104765816 817258908 972941464 844643522 415070650 341114231 638440088 858662629 7320451 898198397 272405072 882459822 800714753 285427492 848260213 567092751 601418268 240237862 156021541 716220860 27336054 402656413 746324664 23569203 201653956 758115317 768206768 562629339 158338260 877868277 840532507 434365587 723228363 358588259 884312219 835570963 688568992 765388174 589794536 755275400 700709373 26840266 931028438 882818979 448229959 125938737 978850835 934125823 893693952 740843713 785110881 936188072 980548044 570032668 918984047 473136463 896848627 590938098 881233979 764241881 780096754 446131707 990792136 944613973 449902530 622942684 365756680 924095080 117270048 831379683 836453268 761718729 578009549 866731995 847871350 295962290 682856986 818637494 311701088 959892320 835282850 729482501 878969472 559762007 776944876 984221652 576494092 911939259 893379280 767201426 93283783 793871955 113445981 145827299 405882852 667885622 870491286 308130003 758875795 878315626 922291335 822141112 933198947 947890353 968854603 993044476 698225974 217405477 233233223 853034881 206545276 837213502 416743807 882085184 325036484 886129725 556688698 28787042 985646798 226252571 982291450 988315433 496570523 956466625 485051374 753373180 420042650 756565380 599179331 866205292 922758384 253211632 246397289 749604781 886069283 958392998 809101092 848060100 967895112 218020075 750743147 539009954 919808449 633811705 795505498 794516254 266901539 543670740 281310438 910145052 408511699 815748650 766136622 716835423 892829627 928628067 876117726 264176674 883040506 887581225 167894397 586926933 820199453 829930148 472552006 905252101 823618253 612685793 451975333 814389034 836840682 338680391 62258888 939365765 955117951 841785519 932563154 860795698 933069869 801970616 895654615 223446887 866521379 806923976 190604836 865109164 429661784 752687766 297826826 741444757 19494970 439577846 922247803 910314694 958769461 923848880 2746637 766958971 102751859 834546453 634288887 932370397 18959211 849027526 844856906 879858986 880919372 178739621 763720832 343405752 992408640 405878848 729064647 688366671 797251185 927672059 875300806 904782516 321931651 191672269 832342325 641961638 218037454 964508077 748235479 334457260 992166067 584218622 321924741 928625843 847656056 425426678 497711273 855522922 970778050 34352844 654318684 164537543 805583276 428492571 848381200 269520119 821591524 267495709 202627701 54239896 561907328 826554405 578597862 462089002 924629408 693414016 762013175 792834123 319722290 614272001 782645872 811732962 605658333 839800666 880477266 678569874 827457019 519030202 996260967 178889176 463375400 954995875 53750319 690561677 378991116 935742134 908205681 48424845 513656590 746449980 597514156 972440207 555038649 558651275 889621390 484630848 789066138 910542777 294289182 378996162 810464997 414695495 826385633 342855855 931531090 957480190 952850159 103690091 669956333 452219359 778755912 312589237 201729664 540941495 360262118 431766068 70355322 605599371 640348060 273130821 715027668 796034266 987487561 74843327 958378351 172027643 259660898 5419087 201322961 420580673 864784293 721329014 327219138 837636084 784604403 193693802 648811699 498056255 58348371 379173229 675667445 485891118 919840503 796831937 491381335 12595603 216683970 286567422 931572591 941597635 974764667 693226763 875478797 836712725 874289831 109458666 816479081 78215167 369788240 281341416 995096728 718516646 155968450 227414213 583139257 316482570 585778864 123055563 856617057 360589282 907339130 705682869 524362262 860082214 991869441 936604717 938245236 935267480 84216295 910969274 765672213 54986663 839053423 163385336 928986889 268969311 3529156 110800920 792502892 860316585 386947931 918793280 812528551 228022795 822738012 578164250 779497039 975438972 746017065 611728375 761785616 859252409 881758469 524524933 940542924 850835761 66564299 125435600 883237157 302390976 347150200 39248895 947542677 772110167 499259691 999909308 933847416 754222158 781335852 815566182 462185933 34405930 160940481 923538750 714456738 921955201 186414462 607794028 816517159 280693814 171528994 168020374 723259557 512463776 299865201 883915262 564736661 10769831 167409176 619997607 965392787 826591206 742922814 592053926 848615291 63116725 825822265 358076294 165687234 107207509 517706737 945514031 777448536 799622931 879537971 29111507 532813714 43978756 943868551 881454509 746242909 477174748 718505772 79328078 960842193 340413586 556931601 215182987 964017659 571830492 403463290 628995945 414381007 935693628 637008683 17578450 640315023 243641020 913481524 830037417 865633592 340336026 828875277 560609246 320849612 335067603 974816431 150971544 740231637 897477524 641677293 861021415 834786787 445459898 831996078 821454813 461185734 590179591 772654350 272850863 300357958 498643262 485464354 748055477 328143425 871611790 834517129 828590727 555766010 905826390 989087454 52251253 152871064 770312548 719144292 374152477 861033086 937103290 743859450 857713811 512998506 771909079 198479277 55893461 170989007 702832140 751003919 701851070 743947239 24507592 908597886 6475708 961453922 742079474 803589574 893218983 804197070 555536156 849724027 146701528 877631051 842478358 981597868 555557273 799666634 187767972 478979839 627554992 114604891 956629863 683099049 796231175 662282268 176161024 698733069 928540818 267544554 892482641 739832575 982546460 400845434 384213693 668518891 418007532 210199699 148326018 979263087 941885003 856305247 784214945 884350423 362350946 634764015 862514991 332805585 998882526 144972369 441089960 918071253 370901216 184165714 823168997 280429929 573092663 374987422 916274074 459712514 906287273 486678411 860658913 453491850 982141244 530950746 893939013 29600626 959035221 286330439 838913480 965024572 951557094 935067844 131830091 957632887 917899992 848120102 909853051 295284069 87573611 320884212 90292996 984052733 221814466 805747562 672131084 568283500 7468032 861526029 899464836 767298621 971547589 934790941 900032178 940616994 887348317 862107703 199441094 871390370 808227187 849039617 899854831 608671669 902697752 323959607 970013639 182878515 930371873 854598769 77493641 604716207 196508539 760786644 758954115 884327014 658651307 709279080 896895315 315633870 923398228 831721858 784433287 986682529 775700275 307365651 680748962 983581128 877075025 524167675 352500055 449561745 833597590 340167341 355028589 423374947 403895630 656319106 500559346 831230099 215739254 777197694 910163699 685505145 620929239 418059534 877636407 757438804 780657288 908336321 972388082 588482232 985278104 517895276 880724955 864684896 79772023 820905531 439128733 434338025 137749975 989472072 922911987 338622749 919315593 946971566 940059633 962127807 139328623 679855027 814688389 696924355 586491515 377631534 808613951 967823466 387286896 957436920 449741009 986362908 734901604 970216575 791265826 283674871 446610053 526198904 874236779 816186531 757550679 633069187 768480916 944415263 821278271 873130677 658152183 526205308 298329755 388858018 181560221 311201328 99080071 788850239 317881483 949971056 525332709 903704006 186162954 930251182 858148998 916721036 770313765 340257354 78401165 947752124 650520619 806288223 449652806 962339312 519785856 988222953 620883885 217587599 315876242 527046671 166181526 209506587 589975797 1078722 841744841 957229777 194987287 905500994 770951155 950358441 719269906 842749456 391292972 980109663 288680089 954492239 811136464 783263545 718489773 36773255 933909819 408423008 964445108 43997677 944371749 374985957 845552452 945226415 999081535 166086654 918479603 884327442 476817589 723477284 945908184 659155557 944907900 652488782 240925446 24698788 372327618 770731025 397719910 833855956 179206799 750963267 827219781 965065376 992078588 907797273 836659021 944952509 979271414 756270936 814911328 485366044 995302909 37622418 838311630 353717518 642643029 642811564 904422053 945470233 543400455 866066860 752588596 849363115 453234844 841445264 907727079 821775902 587591314 930232192 858636706 743217371 529524495 953502993 516076077 837960956 603078046 45086247 782555197 883633805 275311671 783253916 744099727 351377784 961694066 451843723 960866312 909743822 376584424 612153115 655358454 13617264 718074192 683833834 971663611 740374628 830816554 757966452 921135427 835631351 966977378 318779494 185571847 315852567 898000950 465662938 709263766 852097644 120366609 112222558 427645108 341895717 199722180 885902410 901715976 819210004 901637124 129202948 995883425 2818839 84749729 266478516 869153720 757224805 807533766 971066902 755037250 16561059 837820137 341150631 478876354 759312656 336673898 15091471 806900804 818158324 949751742 874895626 128179128 60790130 239784181 959645095 11742087 691232844 751252195 121078490 823272883 902539269 558888353 773673194 991100251 547704453 764839403 291082282 561835409 31369226 848919650 578815234 546927712 87104178 776582934 367969185 791118788 795349285 811536386 865718063 59704658 527642790 947818771 354564739 14797401 910333894 772959159 648429649 54449937 826093040 510285293 794937692 764289108 769637810 453369503 700797207 991783307 763753884 688162902 962269262 943715563 40997533 346359992 753021932 754335780 957158315 317483050 140374093 428162927 907542609 808995089 983442915 799909520 143167213 971350496 365840639 764986953 949514708 310827265 978267584 882414640 854008542 787622570 814867504 139464544 68160064 881978282 532763332 990300972 44247748 793450604 750718934 902463671 105491267 614030460 735808505 668220314 356648217 903583332 765141489 664525692 555535143 776821780 907674107 899574532 91437138 973453617 837683947 171157184 962967167 555139803 433856841 978826659 257982977 929883687 878131608 414873846 507730709 904087820 214407155 226074977 59005133 944270267 846313764 765592112 944768831 380886655 165766163 732988697 373993568 763781122 344951889 950629143 932093218 945996440 963296527 879222266 208958925 999289578 882310743 333783113 767703683 50241359 637807414 748317566 210188043 975842053 706848346 390756850 951432678 78061094 663591664 611558250 228855463 155075283 983254452 27012312 825391643 875550249 425218916 330415490 789097277 373480492 856497776 536993584 852986595 778178404 966901146 168383756 82307858 78046011 780566501 854235491 825315788 298253594 693195118 884167115 642603319 921141441 839154281 916963952 188984578 787795860 176132952 944579985 794864202 973506541 261462017 853409906 126171350 34539730 848710749 414207610 218999112 953332558 51830506 121454561 477702799 783948501 118392802 445987620 916563385 151671126 653414961 858797600 512084615 900769075 852981353 754057020 380321515 955250687 445062974 452317793 978324670 960560861 964172108 814208171 854924555 854277487 357509655 693046327 978436156 962559559 998827110 667707133 944623774 997345005 772038293 160720864 799841124 568625587 150043815 110200759 372077661 307843166 979283998 883738096 295003210 353938252 992814140 970760996 869976987 225629682 265964644 787537602 716033795 904448309 167033886 356809066 255066189 915715115 736184008 717452738 576965267 973064318 996764799 790565820 613697333 590529953 843159734 935520920 682864809 806323050 730458566 926568033 996955366 153461592 789866899 529769616 483390933 248409664 973129189 679789052 894806833 530242358 544924900 417979913 209446351 983348606 988766293 97798180 670205184 879335159 937575265 821367612 907659892 872131852 619240713 176500637 786991194 822257991 996725675 809775447 620000778 22761290 986752513 764552662 665915519 872131035 326871080 591959022 421331991 975917349 844528627 817553353 87909531 883790323 990877734 715240185 61385921 613807017 791415488 736782968 403631248 308573741 951994437 864206171 930277604 641669875 130825579 285326721 482252680 267176031 759729819 770706646 885474248 431605102 520802833 802613480 821377107 985951088 204645732 30733316 261492598 747865911 864787759 907650074 840878916 671730699 986433394 886264135 740075558 926240921 784398293 88346145 291686146 110952093 770282364 962215381 782750279 297461790 179290397 904599803 861044978 817039905 758688853 35639386 72409033 689549899 590955248 682194150 691381225 644687221 631753050 990576380 902606844 390270550 771656153 978912248 738825966 923697244 880442331 838873339 765176963 830480587 823187210 123967030 662641850 571918161 7823756 170031158 48825628 320804739 946885827 814942270 862705298 692634729 677368560 269883902 384737758 747405608 812022384 246030594 35318087 754230158 664139261 745675394 315795546 52756600 826544954 848721926 772220927 498465668 699428925 200349502 915448714 940884317 559337743 340899890 892753800 852337189 919606152 473038191 339143884 310889167 953918032 779795217 901437953 950361393 147344131 545037730 234382912 914418085 100740379 532475295 885676065 420746254 806056377 824511524 106320455 98637340 93396875 559422675 888835728 810391012 937777447 729825133 903989467 679962524 788790280 913345616 881686709 780919094 849755324 358208304 117448347 430761879 347006357 702365214 944231062 172444548 912482049 808713466 746025111 498464267 60710306 950396569 710270883 918469815 471565071 380768335 931151208 892958296 983204777 213622392 32819033 868372199 532985556 772695175 822682961 603306566 820669273 983489698 33707465 126420118 933609965 943204769 646697971 737219890 713670812 794409816 943022758 429053836 315021682 136969830 800098761 871803642 842029479 257636353 140666981 615662391 974011881 626817486 572490570 217471002 939965882 110794508 630459750 848343123 545099773 762487895 340050185 703065318 825342568 499641043 815739196 867536584 33377422 176826349 598511186 965358729 665416075 497849394 152653391 530126110 732367051 825044821 235028978 419576860 261227348 5849199 805322566 994355567 765283633 42497532 860709626 439772592 953678197 960298100 799924963 857729918 964703060 232736979 207940382 773568987 936375764 38287532 89102392 831908931 796063675 971132804 860216835 756004616 456785714 984418454 622234698 472419779 764281467 368233930 755493472 881863969 53977966 834193567 839670434 291194338 472975289 769455793 875551809 621548006 788092859 973728809 738929332 983844030 182619144 943315973 837516931 879386292 746745682 222947520 230783777 543929511 233133251 727233812 86076785 948347670 899856158 819923671 889827687 552176175 202428756 762793607 931272504 805473301 472818752 739935627 805016210 919048950 944600607 664702236 675422404 891207386 418722718 915766823 160380641 842285830 830771067 235662399 90517332 418924717 908332161 79188117 451912728 750935312 230592261 952911637 815148801 447505564 796428844 657010579 773205726 598203732 919478016 909340638 101106843 834035646 833244260 748626407 870997776 600858250 603380264 255859627 261756107 737020247 891693905 827995576 339047840 745975030 368453494 820894550 369824578 363269148 737602103 842723268 985270710 844098794 487647256 198629248 388936632 962170611 819680517 315174392 913488158 483671729 916971327 877161936 817110561 127262552 814206297 208371908 940771314 864073104 751638968 753687824 493826769 862906736 914591086 932174882 710454775 761801428 932604753 830378583 590601102 912736418 347190811 854751447 553526446 762992696 877987384 771117240 862035923 457455687 157751694 816488072 867894424 834326149 275180269 605121560 985243327 852559309 764178996 50276019 908212573 35440800 86104626 990448153 770449319 895870956 318227551 840323372 816627964 995664935 589669965 241690704 202646729 827651739 830405579 945442670 525698208 421314640 950196537 518458696 829414458 530986190 780839011 630580457 770368502 306919522 897868086 915433981 114295730 975795353 895347407 277792886 791619527 708497713 769219563 18015502 25078005 582499546 102863672 959146093 990829500 45824328 915857281 72552524 514180134 872783446 798547941 251115799 405852304 456467332 774221211 834610757 830309141 457889057 44920007 741276915 867742222 468135737 38183193 762779115 753683956 272442087 809876728 969064877 223806496 600962812 764139719 112085492 736980590 116285621 948791657 872827858 977502157 314342053 968479113 541635336 737020247 525664542 223875061 672712607 51652927 310620985 737020247 958711484 949332800 649517142 354236090 956488790 494096867 788875905 973955240 417222941 869730624 879691879 361972109 757245254 786047644 78732415 575285372 992122196 970310516 590502626 487163510 352104559 823709789 332110550 757386397 776178575 875948317 995804172 700521989 859812608 798156091 454169000 878476744 975119093 197129547 756808775 440269315 988425147 906413692 690284115 898084171 750811617 692817055 875355230 784507114 320677972 652784667 171502520 6018427 60044882 964146607 956358216 493896417 831022320 871621730 891497901 740290402 627030309 842858400 417979782 795334763 868499132 590098629 17571320 42285668 615643633 140628143 982308630 54962662 533062447 897383054 604208269 178374997 414737552 963170486 2432909 277229338 605442142 428999881 854410653 416695089 844292060 10035219 827368379 247857612 677079368 375330190 451748129 897005792 484120495 742241891 996086058 628728319 795815465 315964866 73144225 28664729 997849368 205728666 61681284 937870022 384977548 935675366 365276478 824412011 542558415 902069112 954943227 286256935 992260319 954684683 775532333 67334460 255166052 763980091 872053794 811599707 597089128 794654795 923389577 588536041 433173872 706617724 797341548 317755594 524300932 65037619 256029598 957484798 804003612 802311513 543572797 387520059 193749765 671575468 940691948 989632142 952372733 818315037 807826860 95384644 921327239 651520868 916213105 907045643 925855939 470033697 432561510 621314530 572842397 738160575 401976285 121962500 308182417 602882445 831029453 26718031 693774517 53021036 860692992 685272119 335641785 961684324 663308574 987979467 903399753 89672773 987814357 837442848 252344356 785052176 984438262 648357024 159537508 331468389 766047949 857349963 40818755 775442194 891021194 203068216 772654652 823197428 225108569 882215941 705216014 698540223 949014223 10194608 968678402 493953420 368566690 748504902 878324965 953291332 954488227 228054215 520819833 420791406 976786923 392060711 48110892 895460846 899762213 804462651 936525428 134713347 980890021 849413425 479125028 531949724 74332534 865498335 361061055 783590795 369048419 248116554 905943246 652336602 894323550 786716993 644460873 410943802 899535645 933523653 679272262 918247114 760217187 873954820 929766499 223833166 272779139 949443681 343955872 784883639 852261119 640213769 427100138 711241227 450804655 645607179 945998829 962341660 785749918 759566203 539420434 690663181 847048378 53061654 441920544 931832248 347988601 787246287 342810537 382905374 271852504 784764876 626947541 320091645 880146097 516458789 792245402 813697346 263770000 668612776 278810590 135997881 420750328 798130639 269095274 991454634 687495866 281331575 802395589 704946898 746860744 819927000 747251433 253230620 626275193 27934943 368064299 593759844 990781277 226631620 113551736 542526305 431106425 54492128 822370307 921289292 879793117 339887155 749894237 499927582 34304696 801631571 263937587 139806698 286996510 584010674 846597309 956741489 933411661 259491520 319933520 737020247 29795479 885543052 932625019 861549527 207836679 948073065 876184700 722766800 33456628 856236608 744813842 719903389 696077565 916127002 899362250 207131120 832566077 470496367 779356579 470264629 903207267 743187934 449053248 917674747 30030843 613621466 662148303 553423484 895597692 792865153 981089456 983379183 953453090 675539160 680088296 917511236 452015375 746460664 185803222 937119087 41022932 226190717 860801683 148447889 718989997 659745454 805386226 336293978 478420115 860624995 784265561 660570671 555141480 880063532 556711086 940204795 748759174 839809536 935226552 558308425 981078112 894551863 794196477 920400785 709708450 519018951 967435478 904233619 750900786 323334986 650992561 960385568 175753644 801710673 352343527 157481366 861390043 50365599 938991657 889765009 625909767 745758683 401397533 980653346 6359025 759356445 771363101 982702491 648157698 930872701 428302589 825954850 390714620 9140340 241531300 370678820 802420953 905349549 898679226 235346168 665544560 51772645 490100629 479607977 701773759 941214102 339986699 916159720 183615419 967356879 694351210 823015945 507688510 490281452 390286337 976473500 966500147 769630458 941765103 496811531 899881415 945531304 33806243 793294448 771337770 850871882 997658429 450240992 977443567 827704167 743963056 537757266 995179844 947427546 264742923 990487760 867828398 486180836 868128224 409222690 466484823 899394264 224650668 748922583 742086169 258741178 992752851 916713033 243405201 758581973 409388839 212667305 602106474 466781317 66232456 672154652 370083441 987361278 362328611 905765203 203745352 867358165 926273000 626484071 933981025 766962641 985952141 251000394 27526551 608307762 824339576 914658903 602251074 791048864 176839622 826850098 743458827 745547905 845264041 200744174 819389285 371193700 811683469 984602250 778032252 36112021 260523288 749418726 980057166 260899074 76058793 839529143 27272722 962633872 874508281 590205288 737679439 375249913 980550109 28429909 992049292 493562864 998562406 367176301 108142094 168074903 965271331 959659176 176869165 944263350 798915368 917697353 675341460 844322331 749054500 699477869 11397222 754191336 652170455 886163213 643634674 620892474 678798297 929703635 356191488 736008219 909793072 140959745 850110125 352316158 172624928 739748207 453398693 780778987 115623847 801565849 368165855 827190425 935002416 650456409 697715988 640243789 874436662 810794802 917610808 165045932 944780189 281949282 806980818 829516574 96848146 166572019 584695647 69373554 269503061 908645258 804950186 867436262 131289983 927700083 318189496 232411098 749115928 792558944 979279955 772730671 507045134 874713458 481448654 149299554 834761077 727392232 805756406 747113768 756621662 978869870 133325466 309140598 579067537 274280506 786030844 393634201 852312001 765384162 2177209 292378349 436072741 794217221 992968788 838801680 587122261 365554817 645458722 988911133 110119760 88514899 789179537 456055269 894299526 819026620 154096039 952470754 191202301 852665183 104500219 888895288 504447909 182563206 542378717 802637359 909463124 839131969 462422663 992097948 901789421 903715493 792486357 718174639 934696072 922942358 185065905 780189914 221805381 602731700 346229973 850043624 839933049 915979056 144884169 538873135 46991484 897279294 849693129 919817226 800645998 932285474 426361274 856486455 267070273 242457410 373867007 703999891 450631671 961910352 805007923 975605274 32426811 409812727 308341207 748732414 748772221 953309666 365445278 617082074 864487514 716400218 793204408 55503326 783081381 991243919 958311782 142606545 763717444 872308987 265351891 878253296 196261889 225929484 996519676 876809503 683590405 890161452 670316807 113766501 495591443 922643788 856219598 387542006 29366568 681621978 785970032 669696545 515940233 40557569 803753573 651788107 949864991 291431654 356430261 270942287 902089729 26250015 933152588 968575693 760420444 322187665 593112392 452519351 127919272 929059297 844027243 50083589 91263497 54352467 741180333 795654182 917439198 15176043 337050980 777815654 217428987 274936824 563937945 964699858 315540884 991070326 281498403 137041027 965194042 395903466 130956622 619517797 355023926 728499329 928427572 5755723 754187860 839210821 773497851 923629982 275852886 993495573 991560360 975706738 803296320 423948702 753296863 599259723 194123290 652943109 662448359 874178614 800620141 626540169 799625519 958580480 709908886 424680898 61681611 192730154 812872738 781280933 444905298 882767292 912918023 455083348 592493671 805833211 883050583 976979412 691906310 787033712 810752180 876277439 840882746 205022322 874282081 129615991 552048986 874731667 895251043 824301929 804193612 919850202 700088028 646183909 496288156 589322001 431406757 887757745 782474365 280685611 337438143 951478846 405527436 854019117 951974831 998389856 968532614 172632634 51788251 516230807 868926619 506615653 474195511 838163668 478135542 926221640 89426613 813085815 777469385 821534353 875711087 886323988 879897952 5570190 229990871 421199520 610032589 238325543 933728925 738935394 577193071 659189997 911983815 886432454 990438148 815388394 53137845 845084308 480859434 904157330 980198303 104983669 718919326 934141040 397749625 364088039 986210645 134894556 952541965 828091772 917821854 670593424 823616842 745157945 709574316 759972176 187745699 932704034 681763000 112437505 969565261 759187041 680016712 986030412 300090991 201106912 799757648 750545435 428494319 899414049 524654440 89974206 543025122 998474275 966005702 788653132 318782711 930067696 496926930 474185067 710337167 125819770 522211878 823976326 813929262 932355822 994767908 145081992 911481230 531394984 933495068 997082029 121999959 931540259 897538161 108261493 70817447 167182811 878486444 549893430 458620619 841841016 217790342 185120722 998103808 921913696 972568460 908107831 705689735 931619320 241671390 332973429 160695647 759535517 814296749 510664282 756390499 800207872 750299634 308537070 908985830 892709255 757136264 711784548 869812334 726181797 454352984 796257211 761940966 493973265 92639477 219411220 239508108 660299970 921856893 661818709 619844708 423502230 414093954 795741736 6967237 274211101 272904037 818474100 225115057 958522126 227552998 197425969 806848572 869184099 746121459 757609738 926729616 911607193 793026975 778485336 769350853 815081794 883051156 472162384 600043361 465303147 70542400 901042764 531009450 334227241 957481812 336146588 661172917 843995307 955533090 964706789 356345286 826215684 58189322 204952962 654148601 478280771 994104529 793328573 772906652 764673113 755240586 720272211 994366960 319936214 977786834 681486247 993821778 948901648 782026438 622029498 263082736 147717247 804501703 742376332 804778633 774437546 165817954 689835279 797684660 284985759 904446254 963377794 790286326 320781514 590553893 972411413 200812729 869283125 831786550 849599372 830307084 900152419 942756072 273029640 331077467 816500039 647493420 752983615 822542213 108050663 139662525 805863011 185159967 974743732 356388046 628986696 56606627 247464092 889264980 702668266 277950240 877075889 841268531 769632763 409530957 308015694 858821716 3040233 983258235 489361672 961471892 801818838 706496846 780543190 172498647 900322178 684017517 890772286 907698039 940234141 65660590 229943475 816412620 962536222 939413133 771636855 964878239 140799227 772584659 584483504 75826559 986054215 814869543 324921267 817214183 850268382 886183449 701624103 797161194 793189472 881328416 759533139 659147812 302108612 287288747 337742626 986530506 285527677 842082653 911685035 824379541 152397075 488153427 724741673 339020049 482123743 685775950 193009079 858442532 912634335 717029389 26009147 645343976 759365750 564640907 754034154 287701333 193886501 23341330 184293378 195929059 935356522 954617503 358666970 451088583 232833973 743822812 720684149 898034695 564809666 137001658 968924718 819739428 985012521 114345130 870680663 365716289 743535078 526347745 303264705 364671445 911305862 949442147 747501181 828410781 608790769 930229991 866901849 788589281 710726829 592397403 300093141 764875599 47008515 818475792 995047706 847285652 415387488 878406549 25087348 650566906 393340069 738317183 28153042 89132812 856300156 973187443 730130978 425023882 122974498 390677397 798591100 987728363 850226316 757356700 838590484 948074052 681118640 850203035 820601463 38372153 427612569 162240997 469175618 701744633 773756652 910956937 711517210 935687525 773250422 677873587 649058360 138698576 933781742 751302406 958379175 739989003 866102812 769545208 345873283 878405585 750835218 866712655 888070526 185948007 616748632 257368254 934042300 908942604 695790575 727437120 968467087 791845907 617504460 982455873 186392507 16415201 879158092 815609233 938676777 962835937 321715089 637988833 89705256 234287445 820976592 950994610 702884904 768434590 111156850 824971800 783856033 365827248 797540789 398228383 826196399 53318632 823243632 192976261 560482242 777116222 953029298 522354717 974477369 961682107 780919572 314659606 17292959 819886297 760168464 343311426 946102251 918639601 817406224 840551630 503611528 961229457 532011253 837978794 877681260 674154981 141145858 757341346 475772720 872958843 338363740 308085454 789613991 932753077 821639690 506289315 854053766 793136609 912313367 878208543 619740134 651811696 580071365 702015579 737542179 823965048 500896352 970491220 207013330 888806765 810692019 510518587 989486239 272817790 736359893 759801286 759614850 78724777 444490125 109156377 218578977 798386242 53742766 248712758 294266180 748133491 989805705 249327088 719103699 313814981 875621029 934144214 927483728 63782358 19693829 656377753 781403954 905736045 741035343 842526509 83788550 811276481 60742231 908544964 322093596 609157624 928275194 484714647 369584548 807673104 633057353 155991127 207350779 925549580 340068546 752693255 759683074 842883949 690791034 916483314 377429731 931000927 796943078 839314835 913411916 814653281 609245034 224971397 52877327 851556019 731135226 631276297 909300357 555941534 849931587 803665519 887200509 969525680 791791965 733175555 781810450 702650800 750695985 316729567 847651916 547068379 749711251 894761827 46491262 806017824 406798987 439487955 436303691 624921230 965860014 256101260 589138835 996137006 117108318 860491541 8531688 859829651 549179447 603374492 664540493 848969694 52293180 545365837 763036338 850502353 787527372 554194794 993317312 194575869 981789633 850834556 838295690 75407761 68950361 652964486 253776121 643710912 781752376 358076774 224708142 435372224 856565404 885692700 65178314 781690072 865926024 79201117 820419591 307762483 791114488 773139894 790148597 66482569 879396725 384254411 360261345 782884544 879183700 139864549 73600044 351510968 887893154 755789963 758744298 254756686 986390070 182037126 849996175 537119957 850249015 952167917 984734605 277990116 891437064 818075550 778041977 804055231 990797674 628452661 14354206 756030524 837209732 416663891 813087014 796281103 878470067 925696300 760333227 87314724 432300066 221841271 821276507 61308978 556247070 592389788 845162214 987897907 374795488 481735078 865831735 922019733 39969715 813947237 193644993 196863885 891039326 911678615 746357469 791618727 135540753 565282632 106385463 506291536 12319003 247689038 583095646 976101223 985111306 810927659 142362936 320537948 965423750 992561009 603114110 759879416 64817449 60236009 408461568 159402469 94085895 479846964 897068896 222713804 817615003 294056265 14191588 705922994 173537210 992491290 992364247 759296375 237988385 820384958 874180101 209114493 34869687 272975708 808360207 783116389 842481013 827557624 193653205 726967624 910827406 928380822 770799650 931649341 829958321 477603595 226123739 525946912 97041145 897276806 854811827 235284850 37422962 547835562 711623540 872007347 189808053 417117671 255864034 830038217 773393702 272528424 416828360 780445135 206330735 640558033 395635442 652171904 849938362 999354890 299256745 254639773 544037037 831790969 357415333 855191266 227802790 936763957 861152388 87259207 951678527 918999413 904617564 702148801 745640581 530354401 725642562 957273364 764702011 295387168 575128523 567640133 106870005 645347409 986791856 865379891 770620654 20752965 401852616 952855337 796386560 727986324 68978817 914973248 977132193 741322891 737893818 526753812 974672480 490383010 982383153 104588193 102528823 131527018 848959745 826298601 227952971 624642366 993514869 50153034 992441732 923360955 273796885 600545256 552344204 749926609 501757451 957754933 55086429 876352216 746997728 804761960 965468344 342553903 743490189 652498174 247240102 535760738 954245837 959667912 902287034 89712123 550149736 805300867 939857085 915068399 754486593 968295399 533371453 184861157 759021058 320757681 705323465 927134731 89789096 615898393 235900790 808748448 444168808 964998966 272196884 123772621 88457615 929073604 818223164 984616613 765799336 593085030 526381260 719358817 999078271 783964554 924713449 189118045 526282844 144217433 672230111 207675563 290118289 54940340 340932723 861492606 848453409 813816218 894265869 327626098 878846213 489448003 369968879 496241011 564842898 841640458 722064867 714481476 693544891 885120791 423027605 873255648 474987583 979958241 821107560 152335951 368855709 74091614 897254644 941671526 323152901 890945878 890383146 771853799 957388372 351723239 893277993 378702234 105621086 799561665 883496295 992066716 618902914 494731838 808721434 526059227 408386481 755085396 140772594 110866617 843066339 365109744 880887906 861854602 799031463 851373843 834165370 802896782 685465596 109237505 683912878 6190278 915612182 537092031 321974813 712743006 296783826 807861498 814820193 804324453 913574666 892343918 846201692 912447927 964658480 560473921 336258917 339625994 375717214 406057734 897521894 452327059 797338787 239927919 795411711 947194938 222430296 331559087 498359240 249177507 202648430 151584468 599752145 773919742 240050095 642651377 415051498 204586085 746000870 991120027 907877506 718198069 780576298 390157283 945346184 953034073 857712061 878445906 947467765 408107837 80642027 11649884 708676660 332730972 768496901 766421100 204264607 659695612 934217051 781096384 784092943 925558797 755840169 159607825 898646240 83978635 967808901 822724636 811680834 776986525 647908495 842556371 790123862 741543579 272593980 109662570 254567376 792023575 863815285 739087065 506734056 924223907 453958006 864516840 949129439 799060467 915869654 851430304 963342702 608821434 291626770 546064319 956908075 756105682 746934715 743431071 304331438 995690093 843549141 454836971 974797394 143242421 92785028 38498908 557354992 769330576 869699309 924758700 200723569 259080602 541415705 452510264 809447710 959211951 16214800 123206951 437443336 740317587 857845022 811226536 770847582 119979117 722082146 875866303 832643361 268635575 311289386 543258080 786450637 964950768 901539642 262644486 814273652 370688526 384456894 931148174 93337904 69669115 122172326 954585529 397208779 963175219 906024262 782553002 433083495 849099105 248489614 741214266 785587264 841791632 324034497 873748739 39305179 844952620 792572028 747196883 255685348 789054285 458152196 984344208 985879211 33150561 920553166 742497442 156280527 487054061 389377103 465755283 819117099 767698681 32671247 820967422 735974546 873520572 961459966 907607996 772113403 856677498 749840867 219858066 374806470 412104072 898493915 492559660 28836275 796606253 960728035 959948168 141494874 617799877 648291833 160064460 435664893 208058476 34771916 891242096 223644446 564594227 257836727 746385596 557308396 888027077 307602212 752569365 597003351 951096567 826359237 653402454 555387660 946324850 794607424 130950621 509121539 842878150 460232993 191662341 770909089 288269662 359342377 899330835 313698988 864694222 861950475 490711268 936750008 907615234 914197474 38037388 602083573 738339997 757090109 609137120 820680194 341741743 458629366 348857628 749262151 998568857 719924154 495045155 880993042 68189027 848050923 428709517 336665311 167657508 382216719 325471684 757382159 905103080 867266684 307173523 24652018 920537684 740317769 147788656 851327093 543638614 244939627 918739780 824953978 884238421 572104280 959651138 777082913 138070392 927949359 401028358 783106195 464832853 498417435 496666742 278373645 284020946 405087866 611668785 452968483 932476221 538824621 268394185 956876514 847963430 817093098 945594041 62765414 881742875 750141599 713145845 950847564 158457365 886156515 625157734 861283008 785227372 505301612 154970113 960073729 707480298 983410930 682836828 475764532 355403440 90593465 536967111 170863419 870604183 270569475 811401128 764627949 957962398 893360706 44286831 920334352 941610343 726982827 105284639 330584441 890409492 758736488 405606310 492139956 946463852 906140797 50688543 981496677 683368139 775373838 902942342 26586837 657221250 692854203 800222595 854449435 447365554 83028563 874277389 731297973 303029661 424258186 894471715 887205644 660728148 828288990 779316150 369699048 781569236 77253037 297728028 168544894 567627672 357393904 191826618 784735522 319798655 907151851 562359893 624449785 984421440 616617495 916242757 407556521 476340749 807016384 135272636 445159138 351722049 920593628 868151427 392463141 697762788 980671930 934028491 300177822 94107513 220708254 214524912 933780189 373128505 758452784 818927358 745336325 280557137 990266407 976883638 855149191 862703179 820813175 92072391 316219509 58482925 838956187 538796228 85608817 755798817 443122989 637317672 968946789 202399112 526488784 409734166 270707800 683045090 399754234 19558220 897609972 870084270 950978576 304835800 814975831 826465961 415027909 436115454 763770968 869643108 940877837 398606135 394718770 83340232 635624347 957016337 825969479 500809198 610899923 813537655 532488990 555410954 318564088 249029363 19344617 237719164 763398792 428851974 708346682 783633036 540151885 911196385 714297129 807258648 876916675 545144796 761970741 935279021 870330073 967589214 171463906 614708160 157473590 516485123 602451214 387015666 802923673 823167193 917039177 212161118 920762162 996375292 372592479 677217518 403212591 929149884 809690861 378863895 799150745 370161134 614584417 951410967 496849824 842329037 844550832 936821765 764604050 77354797 782595573 939306120 257306599 899741090 933374127 619950663 205451999 775134757 901212677 634988241 542012633 182851963 322304382 404148102 961072633 946037411 750041832 920208241 13190833 574124141 723878078 383149177 997361502 701201601 463544549 787423102 122118957 434986226 143835803 43136644 859973611 984137934 890916045 595452457 266227550 800838256 724612698 996233166 489642933 519019470 783324923 582564961 306043667 616414180 754883407 221639367 800849212 624530737 594952152 844437194 957172418 965480178 812393937 837287107 785630319 739481817 596488248 161177568 639918622 903120103 186589579 905949557 879921287 167728701 323398674 125091577 501892748 876910636 245819558 154334840 532906234 211707433 150720889 88239202 424422098 780530722 477339303 807261040 75304894 914199947 974324020 651476517 971368720 923055192 770902970 339700234 660338496 853780700 456301004 289548292 178499274 151676106 472196125 772854565 870449306 963795054 853249509 173577637 884446298 829529280 354535713 808344844 186248119 542384085 829272665 400269513 862311213 449112193 874059134 870311046 744132550 600704429 685690198 33753826 984931851 753376845 787561162 900347644 159853448 765911044 158504729 785840277 552973571 840059957 876120179 419932109 880139619 695965590 407190925 756080295 833034265 440952731 880941321 887603170 486556507 137851248 227906480 451783529 251042651 998052972 907865478 867738526 857557059 706803741 208055525 463658076 264716731 885292826 441543024 353045527 206672148 752281322 497655206 343714297 784788417 853249737 662254146 748218097 952708430 753935225 992339647 830260656 815586172 449124608 375163404 389930129 142430924 508599124 732294401 781200813 185149626 873536373 775554741 812582617 898987746 546843309 154764042 117215782 760300642 842804042 756240999 768787609 244978065 780670796 717047553 797309020 792596332 895018075 113324456 633795068 219918263 318547792 896626231 635597698 21816275 289440414 961326337 600978654 841610007 479182017 37894406 996409755 988353021 751026385 260750481 766232256 910015843 742030657 402534568 601573062 474242962 995891112 576109618 512616133 621766031 114000497 830030813 357521166 880283519 848516940 969593251 845536663 195832706 637447201 239518915 750470383 800665710 855572777 43296627 8923681 799610751 212272072 641483028 854488406 320529125 81976023 756928111 176390628 829496566 793651987 744793210 553057146 664948460 540950956 808540603 113151608 877433010 884041255 767392781 281833608 6571008 824838962 23138930 820646970 970947677 925558703 864587925 40815704 914953888 470967680 468417305 742669625 992800094 870985072 736106326 182441296 778773230 727667049 492997240 771691032 400067635 979723798 718728277 898251440 792766480 934959733 948021886 953955730 32982445 842654073 829116749 708784614 531624691 922722582 830905839 453046420 995029482 751968037 867085836 781782815 302623662 205777586 900756010 991867207 762006782 335610144 237186955 868445755 886478588 757735097 53379571 650079568 635515720 840034429 881149519 538500566 354371870 985244146 82609181 657021931 336875984 933801582 905153169 969775781 725107632 425327653 48463786 395443939 645216234 329771971 567076127 966561249 687024083 889787759 737020247 751023822 420100779 785432636 830731397 46534377 910165298 878039869 293093923 265385878 981299987 937823677 168532171 577303418 81330647 838803628 753411042 964199110 393623040 681752990 705688230 124758312 395566813 976494501 701093136 619010642 261624012 520434234 268381398 760805928 691007350 906723287 331524969 121793811 862191188 252600410 653022063 374772328 845891646 801159805 568804011 306547453 885989075 137469824 194905463 6414882 779195132 610599591 272062237 819380290 838023597 296244399 834775816 682273818 957609513 937210267 763892127 997270499 610164526 832935422 762397094 930023759 906061373 191357346 41147258 848393784 994345101 616379989 373094817 411856226 887387536 738005421 926074219 161199172 843328140 819196261 723722635 426273849 545060263 834573444 957230098 504124571 571324117 988108977 782268717 42243823 88353452 735680918 377362869 53229109 642132233 845936624 71931672 598191072 917037628 865778513 734924483 897819048 745952845 926219334 229603872 690830416 11368972 226774500 937576210 773112757 944485966 509662467 466731436 61519604 965594513 991584851 933066983 525905505 631234412 589921357 671132254 468968190 949335905 7031853 892654871 684983564 655744155 741415760 788796591 992282064 657173236 991306220 980338919 914723218 406442987 363987610 104071812 623025076 849223287 808699011 350163357 653906469 31491341 305804379 998507811 674288706 451624575 349610152 582954621 35491875 826989162 160415800 960078637 439994845 223696802 911437724 58202248 801011756 289740809 823611041 971505182 997022653 576624431 917326661 844844832 711279234 976631691 981077105 901112227 416218422 764875102 63629698 149598031 303267862 943223302 730466931 901249096 305232303 937048049 893476738 896005369 879544690 414933301 860702718 896571680 768397838 67316351 838821151 819848009 171480703 826470015 857813755 392410223 976256278 941049572 317879233 542308809 164602880 880202131 269875100 910619351 458562524 928656391 770042350 13944517 111174457 433951224 748630962 157504433 990718095 990067625 469665867 541722123 491353932 105507352 724529491 154288730 406753858 964930760 877498049 929106888 787097535 209069612 908582566 508201755 90301911 154456578 564573502 789393048 869975789 800130164 415675358 737840627 805706040 70407717 896301667 977891215 609462003 967098955 840249078 723523634 584516207 780578970 170952878 767388134 324744157 584703958 939298132 975537185 952714668 18560566 856328014 520467711 935602948 716292572 765314908 818095713 188400202 777204433 198028094 982799524 39427030 896491813 849698185 751720548 402891550 820656398 501355266 485199693 500672647 26710346 827838804 848904502 608993106 106784883 841250324 842315999 938438172 902727422 881110624 915092287 468312738 761678848 291271594 175138551 390885083 881241806 265315475 935410861 461729596 989523312 103176564 645740954 845644117 544178911 828673550 823993622 87131454 840428811 315671855 807078799 886721237 840964885 306396574 181040140 431828646 835069549 276955433 599667815 162236244 182446932 453910437 7098322 261587438 759812410 750428813 125826427 150973770 627543471 982515354 798903958 874215035 98096947 952495212 810609160 14301650 790817725 428183979 976885342 39716841 400126671 917335316 988699336 942286399 611320214 308059607 920827730 722556141 675030777 383118292 874877238 737620100 933723294 989589440 740444982 252368465 183874049 782243829 87978439 210772060 947556572 800198574 832087808 737236270 551451564 939678282 285574061 432087390 210059456 13667219 887041412 583544141 693345033 844400298 964123842 47256215 699723422 366178686 696405885 847718122 97298473 802587156 634267038 204095185 746331136 276321323 993007552 745245949 105484738 124369856 764435551 326481616 646872754 1477560 977631768 688587558 129414146 824636975 829646051 544121733 124677364 950465415 696973675 700553060 75837189 776057953 5304883 758697721 735561914 513034292 767459388 772236896 543474754 885873037 38750443 315617197 742881968 720581538 950486298 859251289 314374937 963056683 851101388 859540247 126402937 100422167 944800207 830211451 334855655 891871767 368505179 852480903 818956792 645936218 728452796 991593455 264884559 963090510 565009067 936153029 231689975 833573563 443418694 842665324 124483359 644768698 900745930 773122456 275648979 395371418 420568836 104960715 853988727 737020247 930366787 234683134 334583572 949752235 875295136 55610421 665108646 941476427 508909106 458564103 100660553 989059556 832340715 951729143 51403429 954332696 827572645 560945092 967520912 794085463 998703961 977923460 818978728 229663929 967192552 490500689 960484888 993565871 473785467 850428664 997801486 508555826 748731633 428531103 592133203 372684072 139678466 796409158 967286706 72275666 940834886 622822590 981850598 356046865 956787573 905857916 825696422 782038706 358456095 873701821 352982683 832901312 764567530 234281504 866905527 897670462 706724116 783223442 54764413 923983905 959642349 418170650 428338406 108351146 987183507 179672212 471492571 864823669 907919304 922806922 813460385 169748585 745589315 276722523 764447611 13968924 864464841 172974841 259324782 911712217 787080104 430612597 502666527 740073465 931474334 906967860 392895857 869767824 339422309 814051362 938905720 908836787 136464170 863602140 760344971 716803102 773554787 508223740 829032725 605532491 949009849 511785084 250749964 359421629 757965327 261829227 758052153 718435024 939860090 980740936 451124755 962254253 873892609 928095426 382052651 956917836 938182842 567354040 725212215 893573379 655487594 748142948 601265267 322520032 176526473 763686760 878490263 928137052 293393165 997592418 176755441 789620080 955317720 858937412 187483524 994084089 896774409 890387734 818631752 682218445 203638477 889832528 977137749 806814489 158301927 907412336 834743896 573052965 976394590 884963651 578232260 316103332 239751384 104548858 109257374 793041529 775131099 755217386 850656532 516287416 865683635 216532279 11083044 366027708 384909751 114450255 152027880 785062434 851010398 89021135 800130394 151814555 843015320 35235944 129717189 554869796 917503722 831940322 737149030 893247150 312556782 767695784 850316074 517642456 268172185 555960911 856856360 906855078 732775793 916893908 1627564 723355755 649616479 795270144 892463117 234278319 141084690 869903810 920992001 301778558 893857890 746382019 906356875 857561281 582310424 817581116 444174748 624822311 12571106 195315945 546065069 411702953 912643629 748582835 320135055 979625491 928433271 616694337 71374363 964788823 535196322 980738097 926480098 885866755 830051825 903866983 272172293 874546491 436995375 450974673 51032180 36006313 786797388 802359314 672620064 291686893 727185968 42362684 747997426 149192180 743835281 760124935 790166525 739491633 579007639 904981973 322655841 359856356 850016695 863674601 752359020 578141718 845591709 820620563 66320058 968143840 919730648 69792098 705213230 406463228 413965347 835905222 930498939 367531359 669175407 918896228 925055861 994550527 504248346 768076753 238604045 845828195 573847798 746821543 468579828 438177090 922610220 418195788 467468661 840667905 682792103 949341031 878599744 585112261 259820377 910642530 749072770 237543415 61553444 781159092 842311477 790586356 457526055 929890363 979645146 49869608 446315511 85330352 926744820 710863083 960569689 830423053 271130200 792058987 968252958 163350439 922839077 682635922 25795240 753036057 870843603 636226193 870317291 914733609 931703941 840974846 812057005 545713394 868918900 580335703 936928024 869699345 977957967 903785259 551866637 779752025 587366428 956796872 938071342 157998479 662348151 500279066 742191184 844200421 641194823 891340136 731936427 930356212 292727033 770764967 961213786 988899830 763167479 803017597 160604757 922304876 537288737 847792990 932917028 114482252 118176057 159676303 991533580 623619151 872699931 986383690 985660257 751062802 38858298 985815895 807266333 602835216 706921676 238591574 731045910 885049514 785408033 848730312 752213778 45686878 569603480 355996444 665976828 750776453 292956201 188722032 817652955 325774745 792400796 541182218 983687016 623888374 975662124 438389730 800887074 882671403 712666471 849268251 112092646 779934019 190199763 917195526 863177370 766677657 523679453 506344228 757678292 222212611 78311407 976383190 857223348 313007141 776913242 947582136 107847876 127874998 226561703 873998794 847267196 760103964 783553198 882100718 985562886 161090008 782421182 906988922 643502016 17559166 766964187 547684211 252536094 283677406 323611540 735323309 885346688 658553797 854047307 950638951 629492888 918545296 691495595 749935683 370271272 205101233 671409595 690483203 760854300 955629857 783795268 941758760 995359833 617090525 385206015 871135792 559416939 549676017 526258810 340679983 553191967 970774559 942158642 805878159 804617084 21330204 284362845 885675993 511500724 681685169 429521378 153559197 925615660 6061178 825252005 265979664 74829576 841759156 872393208 141227710 232125113 987133312 968293475 969938248 710329268 801609541 853072589 914773983 282415865 737020247 927560869 281418697 57129410 801227875 428753969 957771983 651638448 824684469 105341718 957678605 881080420 119511617 700736074 165677382 833740947 565742901 899707186 340821607 232484251 2299869 804110224 347035963 841064777 620797661 786407538 908712097 213903817 845134088 377646578 528731914 839092098 659550520 797269356 71917166 22807407 993691744 691113446 508472732 830698808 805379214 790356042 418966862 405905059 548447093 830268856 38597758 828081223 927582721 812907770 327219271 385279659 899111395 666649315 539011252 950329493 788870989 829096843 828387522 956111789 379895571 259308068 102504019 929022901 887742326 571926515 311970941 531172893 832727107 999226550 556237590 513076169 601800600 900064356 458209266 379705854 945885722 936791971 196886438 16316813 352487317 914377649 423782285 845681798 888677697 952756423 869347089 766921675 217012862 894776380 157015687 983248166 460628661 882351449 804680193 418154583 507915679 936301399 331263052 802382257 199501420 748401332 992867815 331637860 994489116 362491033 748032955 903047127 242596180 947984765 618887616 713721255 829328931 745706497 801023077 886484572 121003663 557713885 858830545 930213239 221646811 952401199 228264075 849911364 356283441 746984724 61213697 818640069 524120490 158668410 762972068 369635071 780329926 815816059 961996741 77048122 769865985 522295649 420931649 413799152 753346843 56161651 996034473 287060727 664267653 635805869 362699996 822853037 856184596 299124486 459693845 472104529 881643238 427563318 565616235 623158133 707687926 68490758 898054070 440096676 979023450 447727057 772709030 2242005 851507031 806891940 921586396 538897394 608480526 582694348 967481609 739649995 950248760 834113632 880916402 912207521 930413709 897659638 324336309 862002671 948735030 582201360 256895248 602742065 79613584 788966120 891973707 912866108 935222329 387999781 663790120 25211980 833869072 925262157 885911150 494110956 920089539 400263700 757195282 367147913 708851096 446310486 844911088 911643043 95699352 960233987 667475311 861423201 743944240 765442803 769080227 743525645 780655390 268965320 584196847 981947270 377853337 798727903 912351560 775309267 796655345 837217990 358814930 653672483 241547665 758944499 446635166 776286593 324369496 300238590 12275211 873004678 770949102 751793128 946354956 424922566 370117747 702161933 863001038 547323266 950843723 595612116 1991853 369929657 113859008 427775601 215754601 547421092 249284793 531164477 678263862 283447043 217460238 868844103 203022064 894433067 780987464 517759322 622445411 770344320 234731032 839920497 107964362 758372546 819336903 764951181 607640025 704656576 941693042 779054277 737206099 737158168 574446100 22741305 463797934 329612609 705576089 841022684 821803047 111873931 758742313 922029119 145085877 888323683 143741620 76477136 344588954 757682000 942003713 473823622 757465351 438903449 797270467 73815390 767688379 746724332 777940653 999715058 716915246 814272941 494256745 724436890 750360924 398819829 738447555 940911138 154429669 737020247 370044073 39119478 366957323 993442373 171716711 923682968 887726862 754019869 781413012 873877009 773608609 508459927 730214744 811663806 776998830 290541885 734107999 253518528 746398670 267267592 828063003 718041544 984796831 904524470 143395443 907710564 68740546 832832354 720592942 599618852 74661677 764081216 970545562 289243250 957931746 141073630 200742845 365575937 622111674 873471597 792163657 759272411 843120807 466196956 996047478 750329911 224290961 772178347 822209135 836884870 272381601 621392293 526251242 775090239 471532228 671692600 329802602 964330328 964845760 443856986 896104615 569352719 981926763 902082879 874142782 879385036 89179256 835077242 922556112 737280044 626226036 58628483 304301458 530992289 614343819 708821285 950863100 919688039 539865844 393083283 820359157 378978704 239631088 754370752 884800702 969312824 757642103 314965046 429394770 979674709 910952035 615229656 266318974 989053334 848275738 808969965 997224642 524228410 835323458 980258408 745731555 610893857 598995034 649144844 706732829 491989737 953523474 952361260 259096367 327777479 804655781 438947477 986016733 597776885 638199026 851626410 138432368 743794268 783604079 940823053 634282167 760227541 872314763 757876613 741551950 747718070 886853834 263876995 44203753 419538902 246389863 381108065 994886790 912236972 958537310 588515173 512891891 531276872 434648716 779554567 18426447 598297239 539629114 123922982 780979560 747646401 801735230 454056900 47164935 455807333 416332951 148005039 739532992 345261395 893506322 51706494 940548593 271697189 207429015 40404415 41299406 723888831 868378151 427165681 855311326 924858058 530646092 11816341 995160083 30738204 466873408 398658164 901754639 912278643 923271748 890928519 930316595 774133589 949605815 796594256 973453991 948080571 940447301 579036535 966602794 869458767 814854952 660805423 791775170 466280430 210266060 781751845 482623569 454986331 374437107 49305050 893696977 767118128 801008127 828414769 924059431 608075552 699752294 996759635 600648268 247121463 786720332 167330236 804978571 418532619 830167543 370276316 993997574 740327463 778550203 942332529 977276103 991619172 811324272 982774370 770834783 21668541 637748075 773699777 21736032 188173323 87194183 527718342 276621193 831936253 936329370 787452185 759272485 972409688 183552186 902866158 116019286 537164413 665883512 266094374 370754919 971553936 955314338 963820228 855136840 925062433 912474301 840900803 919929554 67865361 993027524 65629980 509825214 815418681 825514467 383680637 501235206 440033410 3709163 475826505 861835481 313409361 909554213 821650715 47449702 903939898 786999403 280193026 170112607 829670426 335419329 789804800 803673373 266637524 894537230 637314680 591333507 260184621 539314880 949331052 805112698 846446138 101757885 864886769 662377083 987072432 609304138 977026640 823392197 924721463 338977821 135310683 742893867 759620800 517921740 874045667 701120842 817505515 860942719 895255913 49579906 871750051 24436610 960338141 975768677 926065143 739001973 348701488 415667833 388802121 811456604 413986445 746013314 536478452 927714931 822821065 293098019 815317647 345597252 154458968 922100541 997490220 777054373 731719847 424763104 788030141 323153656 93586981 168153288 433949169 298938852 457494704 289385004 296918912 472504905 198301147 600723673 391258803 650918459 410124701 985740493 926488016 813147252 747260834 203374709 701113423 81109400 371830507 36866968 967026270 813738775 493557605 896098477 967869030 310002285 909461872 894191617 238054536 802626414 438218826 212271795 883480593 228024600 645130911 716692003 977547076 556268791 921414112 457060018 821061229 454415142 783355173 548114380 999129911 984647170 837646785 663923457 449378790 812941611 951504816 45494366 996592506 328038541 881393268 609919812 965703503 920702747 759477171 995404088 31105342 837706550 940945292 610398677 747243996 938809596 954797625 605188981 626715732 786228354 788598847 169570887 963467374 894593160 963724771 379548828 928539648 833997796 672593680 879415296 989630560 112177965 853901948 796237702 888456006 979428375 170870008 839669858 178851177 465648954 543923579 530188055 765309670 484210875 449478246 906011422 172466541 884393706 419594657 760314037 874047633 303000512 389524210 902725924 360624640 444044897 999015446 897823310 603480683 812977616 701558833 870013102 473181347 98577738 899845129 192782509 489882347 376077505 778272759 989561424 939120162 485358928 855322727 732780733 972395545 178536468 197960460 824717865 628366182 94262999 553160488 896997169 349098961 584031087 181638141 967712263 386723250 824166375 292303275 603491258 888458693 372228505 601595418 109932264 969620640 837571796 470931041 379789098 440830203 881021130 980755072 498141425 226148810 157147875 536398724 671957151 811741514 773474683 972615810 957033576 284339795 553448921 66000116 895727239 311173889 746264349 836715823 802259664 664064558 380783169 131831985 963580026 816886039 776959259 986200875 489309388 956846137 349254172 900595895 408050242 776856925 149110572 973234473 983623430 378687183 451990190 923161426 677126234 804244654 962126328 241512520 714934362 888209214 384882644 197932372 853188395 864978868 812777496 843999028 674491512 440396685 495015643 777015770 855992245 295767105 792791832 837391179 258276074 808089840 755488295 48592466 988992311 729474562 992876771 224386056 705487829 126714490 600168086 837575383 901530603 365476675 300025684 954455088 196166587 586581808 885675986 399055395 733855960 846002376 938738186 291263608 916880009 453610500 807668777 84495523 726730487 756567458 196214477 740208827 775371100 115483290 332120053 738969016 752841081 832030940 778602053 789418181 749466973 891996408 653708098 202443643 477905841 350834305 989750650 742155566 942316754 997580117 793219199 954643617 541145531 696932978 733326565 961591598 815932654 875912554 996546505 211807870 913245971 953693806 942390752 299773460 351932854 915300429 934536850 938682187 841689926 956281312 877320917 994111473 983132081 894371388 354478283 817900071 513375042 524195267 756604852 838523706 848114985 631671552 194573824 32312658 902553015 758849203 985018151 930687726 885254451 153611723 847767129 312518563 477883558 381765004 783464543 235694676 895818468 705119667 45646856 935646198 863325563 756888685 952729395 272565871 294401761 938774996 893824736 903893009 840160212 832774103 762940093 871330511 859185497 265109935 807367437 886226465 565482523 902068945 906923798 955180249 608394739 787540295 692935554 826096534 481740885 479151684 988989117 805737267 842960437 937680571 283637910 783530707 738518517 505260239 85376723 879130587 190211335 796954481 1069597 880856704 847953168 478679501 949145120 943315633 889567600 68001309 998363067 258125903 883773024 86600512 768033522 756186844 879082186 927102676 793955593 541752864 935156227 206221037 248316202 799278231 860360025 975066216 23365438 592931865 863174599 315563811 704974966 964903849 817667660 590776689 886483149 76344171 827305982 14490588 495205152 70091673 760764116 909477393 905192070 947997129 984996246 813396273 306139374 823044756 208074480 868213390 632723168 797566904 603138253 813787089 385562538 922489743 910108667 737020247 501887081 528902119 819601973 590617400 941449454 864427468 144139559 88028749 797826196 109462896 589754178 77022657 594461411 821329682 243585522 49017215 779642447 738765619 745258677 861838557 892959934 919331253 970468549 103187218 241327498 100814763 547686368 812195468 753678291 834345876 100436237 526314126 288709717 491012967 925156185 702150794 612885387 973229438 794800284 410925343 958592591 742676137 750039815 86659150 99862781 751913889 747796600 58667140 129095147 755989373 957385133 363176377 632574559 411028467 128675691 993477605 977074497 640509168 408204963 739087439 806628231 489533934 791327418 580674515 419532927 328572518 962682298 319726981 362421535 485771263 848463986 830589504 885234757 981649432 822933831 710292433 655214516 818343190 825214277 231355263 500883997 760047721 784860387 786172426 82757456 384595142 39600978 878150710 951203351 654078820 479883428 972064807 145492139 917843032 719258094 765942045 940575767 635772201 893878173 482535284 250061434 20381665 499852747 293920669 639300921 677159370 306260034 979464934 859825468 546598682 768841939 894179339 508533818 759977775 127624572 89480540 953200323 786915263 403122265 491079665 998822283 755028672 820346520 320732880 979815386 925190264 542460231 147919745 423682915 972340555 111893946 318965783 870309552 740276716 212324453 277746252 955722137 444990926 662987636 698259758 875832569 618739698 888448273 586765710 779364776 875504723 220786551 196592899 167096770 813087299 846439856 209096052 737020247 751632096 462045676 408359269 907097740 351286635 182926302 759102882 972147636 45494047 773863807 758660607 990145902 347016949 776699705 455536542 347237201 393897478 929320421 364698335 409504463 874130491 714009962 140139559 484812282 756785166 843683709 742677424 905438037 51347606 872332297 811177872 176645442 44537327 554181021 726675193 734443087 283296422 611633307 850616283 641370389 773456548 286959705 103964552 940874923 839615006 539494456 473974971 877246933 952431502 947197470 764967380 853880519 853701045 821876368 322720733 412900616 652489106 861213674 367565280 758764728 726866458 805821093 339381209 757422303 505978428 864651893 718237629 809713539 766134269 689769473 960884604 677087551 13849337 899578075 148917142 864798093 105952161 852302031 920071573 174001340 982181394 917620042 482704489 800873487 783540506 776437314 737497813 561606391 848271355 869070267 788948560 931286369 341642844 810886969 950040713 996767251 377438164 958986529 878475619 807159250 914894586 512164359 224950377 153162145 852399440 893574474 314851524 805921471 729854760 735737940 901699284 793281136 817771313 668077614 687906284 770398901 737020247 580360998 970026370 169032385 480578483 197879245 630742707 849426906 747286762 4718736 166806264 844956892 975964218 44572958 263348785 750151569 936151884 738358924 965043656 346462856 906064114 722419941 944801227 606772455 612373841 984484401 749708313 433844194 929608313 908562215 955952067 634715211 821298277 333051879 829005381 920297468 987638784 73253583 66724478 205173340 525832790 350466275 267945407 982055742 374077014 802339191 787513359 25855949 449055473 746693386 990232702 897099885 792843965 737102438 7254155 611814803 865343259 256682842 801409733 944808389 447036795 297208148 553097761 660917594 909895276 656144796 510917991 723888145 616250742 254033161 760293990 336576400 392633402 846474202 480420157 522555275 505349594 459492913 703823644 451627490 908545650 119450252 822893678 875126181 54777554 933096369 845112661 199817927 762799237 960177446 71461297 874967417 12601999 746243852 422230745 337571016 988668788 376065024 557047459 720281831 853936688 997733531 988828128 113204409 938137255 807199481 230175390 783790886 404377739 796576270 892300523 272036060 225012346 747194261 750582826 427671132 904585489 900703596 799727563 973140611 535395122 477889665 874710792 936716870 113418152 312254564 563678159 534415332 107648075 776224784 809534505 447870804 367720748 232143695 395154875 231934278 943069115 791718264 371028750 959150645 800850818 910354015 192768886 168225870 912603747 799397161 765160669 698074940 860422357 951229765 925724098 503450250 870120221 804345909 731777962 924710988 964732850 761200578 802970819 939388245 298445654 956491207 848855140 929118522 931504111 874503360 903965367 285609902 677325528 771355577 114697112 829708398 740874109 245558986 821161860 857912302 387169428 104659070 900315097 820069971 865475652 220758687 800946595 165255826 767250118 928960028 727147253 832652640 53821648 57476875 411811056 195873866 976287510 458233484 743890563 913474956 719848184 897102904 725750189 17146258 895020097 723751417 207752983 858101989 831626850 162937634 889959341 768741571 807268219 828394718 163574332 825484069 995471619 301720913 825235549 566993082 772401095 425727673 744091607 259351892 876083827 42907121 304264219 815354527 462957358 943597917 617564936 333160770 151677054 893733943 360826193 791264325 993029029 947208596 227567586 997700642 852434359 360820823 228172412 92218351 938245859 526703574 604505445 996571183 836212175 879673377 1867289 405643115 821865069 163327727 531192833 987373951 920725231 887888094 66664572 776978020 997035586 893506757 195283393 690415060 897565352 337059905 725647774 93909638 796063918 462683300 491355380 941941165 738022220 729358184 944916323 877772232 201801417 497600758 852079503 764546990 124861198 520153974 851862081 488866297 993040392 854474176 890248999 819644876 87104948 827177871 971677125 689620166 999016411 784366308 941826816 853953395 981790215 451152743 697008155 748825231 592887923 901537964 260559473 796031242 923577719 778185627 429475040 758805402 918711544 229438709 771926297 128385889 823675063 758165540 929134019 843988813 799315056 957224623 919884106 184501541 640784694 906775523 597822968 546445577 879445684 329717062 59441878 910502049 606460132 895876572 656763540 857987936 750748863 777409797 384135618 958999742 786873100 316724517 161554665 758948625 45436973 388126253 885053887 571394373 438203902 415556354 842481276 882693342 827037235 758755639 846498703 871839498 757204991 328970973 488666762 225410462 72673167 157408051 943935069 866898825 957170837 511178270 525620541 852533295 116846495 760033700 992738280 902186665 22519601 177975972 101613303 59954735 916263439 531997440 396318130 534143750 549866926 357767125 505401163 720080019 378707577 919016920 242497774 771577655 532413841 793306977 669794693 916121883 385644585 193836551 920418887 504376511 787291110 744102261 819799208 778830424 898440257 755556965 669259020 246103378 668597783 917943613 982124419 525636533 143921613 540451821 478660621 917452587 749244771 511866130 940907083 964308216 894940495 111763612 335846271 17267937 808426681 862103231 472974782 194521160 874766075 776522832 960405685 781306357 339969144 121950333 816541398 645243661 389975669 35467515 825164905 458676196 792227476 842891498 833452301 483573846 550541871 455741570 163845055 51663378 884557235 392046632 759148175 323163612 577379825 847800341 89515680 84964481 707497204 702899840 786523289 262876880 426647929 244859099 769520994 305662546 788665159 339228268 886512938 970045658 758028555 169033689 985760602 483968009 780296842 606714007 905249005 287256675 224062168 922876041 60186135 432791163 974614980 518327417 970331509 479214846 860021543 859710048 73523228 991096703 679591604 398178884 868954978 979975750 841093676 292405754 589077194 428560970 167734062 450108379 577077248 969901212 876161977 508618486 796888206 250037267 251431846 698898344 17506245 945886925 312477262 455860661 677973713 134024458 964416251 430190830 952611006 954516508 952753987 3052632 800603756 913287481 871273641 109092751 779861876 81801159 948857134 766918047 426773340 965059495 829844172 963830543 807520541 917134282 827381517 316651972 17464308 855725250 309809098 779138526 824438645 233098897 979578381 720764449 861541055 626383480 970593944 915461882 994631549 401655065 999822776 234084117 743616669 722178195 813277091 509941127 896333366 308102225 434998606 334375220 755798732 941912757 407993328 846518430 777434790 122442050 955553269 774488264 933649612 351898540 255539470 151992371 812633104 778371042 886355221 929158021 939491772 771965579 693635896 774711810 758316432 899106958 782299536 601431387 432017369 908357392 20490349 921649802 763745380 235989030 589056326 676696775 832776438 972780975 994866591 123872341 846382065 775064543 847023875 957409818 120558273 991795202 888480816 688286430 750799308 996946535 239271687 960479875 979209023 910709045 659635040 277274017 817246968 833785645 68193905 819130144 779593959 990641554 655216179 93748895 663057802 899068171 293967531 990202554 641874875 544838831 664812431 691825832 899296050 763949452 774288066 292457933 832509612 643541314 908902880 738494141 903400416 769202376 178505043 486562002 531718701 263701646 937800773 953326436 934450484 789589104 139403997 436812926 971551235 609238890 86105062 564173179 55092266 322409106 30952032 106056739 669245850 476284759 953166375 831335376 806784207 349982694 242457261 581738171 289975743 32482949 865433529 830906965 904208120 768235961 559062381 345393733 226322665 396711113 343151272 476121855 778466181 956251040 623103989 540030280 331294739 849810228 877664184 982614362 997369356 860335271 925729731 924241420 168471014 966529262 991991238 659509117 356758747 272221383 582142285 792884566 951721554 930900305 739005668 760076380 940074895 919873294 851098565 816244072 202403975 982530954 943345658 758557416 708354632 441812734 819102426 903996853 806730186 158189392 606199928 847160196 245370196 993651830 353584664 81562709 63287799 831627388 325602820 812175380 411107692 362645435 304709054 743078348 673374235 752405407 992935050 601648287 995161574 873635691 853527357 31776172 63507738 949891473 10270548 813062568 160892468 263816683 882578628 771756067 893839919 794512133 796245504 775546033 756926032 464423425 227381421 407834352 748939250 896103744 181303064 26644369 792101227 211270076 927232075 934884493 572203788 739624398 827622743 454635732 463950982 983916910 845497528 832575190 90654149 545863230 770110213 816233577 780694641 121998576 25543113 772187355 159064632 770391066 17037152 843558133 769595898 538765012 245454590 985850531 887401658 741578482 764255031 789982158 309251454 916505792 759261156 848432864 576185756 992702317 684187018 845987952 777750256 673879781 853185635 417309599 171724072 919685152 972045724 232683736 830262533 256751387 57823135 995188104 225246653 131488135 796041271 213461069 234135184 535652122 929966413 892159205 810647719 290758297 323526677 76080394 289408835 383740954 951495585 595628172 743447586 864699214 347142444 922213079 858791380 94992030 750251462 888105597 854621001 539556475 818760542 923930540 62182699 482826294 956315049 690282228 335708572 310094515 907779268 751828327 263206235 946644172 887302030 632885088 881176780 298382894 590448464 780491084 980262609 414996806 92933400 918061239 827898304 599071931 678602268 823906505 387611312 288050278 155301591 309508518 707268924 348010158 409112375 841582287 679666406 786401763 422177016 858888365 737020247 468355775 546819558 999960013 384190652 715825050 751844320 827617715 968273258 828771311 809540474 820128914 653984483 41394477 796068627 151517926 651653084 469723643 917669335 589801613 957835100 778590751 394162593 912270888 977306091 6175905 608533112 228868048 2129144 256293377 689864826 998407227 830050616 395566573 136724588 456242320 822118175 571500671 688578386 693989663 39948977 820386475 814479980 81739587 793870026 914409663 4534401 801941939 670031492 112519862 822016474 910255438 158617174 617810985 882384638 809370506 914869080 622226311 200966792 913640524 995186336 472482629 770673534 858180008 484034948 740098120 990133439 806051292 60146293 938142969 673213962 566522679 769156593 814447009 739305899 26621703 327064558 837695034 641978318 943569877 935343705 987976656 841335279 765239339 953098515 473944686 489657599 16590467 913703693 953897508 913797932 410413905 460489674 763405646 904379412 912239724 815841659 291217931 882089280 743129776 991800546 912299706 770084406 966689207 841995810 927327671 654412780 655741167 955061092 914339905 317374054 101236532 461683860 689419235 768069262 746683741 825789388 316367601 925955155 672304601 877776773 124550075 999008742 945585207 349514478 323168467 742066630 882056583 150698636 655955444 929089382 556577799 55614606 832696632 343266238 868956381 345893214 663958256 801921925 43940404 889596767 468857025 121290063 462660821 441319194 786196354 104911583 798535227 807137944 847430756 2563545 631640396 320510851 624904682 737380637 530572066 843958851 47690756 272422827 916781891 410312532 806770978 400430749 718892049 987581196 317222314 404902074 362093119 797974702 814648611 994762379 797433091 830497126 288277800 500544541 573050728 915857342 968704074 881161796 967475024 782148151 983664001 814781070 827989860 1030616 995387757 421085171 815545249 402139238 627832759 822272003 75717 885410941 545132796 166325414 217063925 831624656 933424042 669559562 369210331 884943610 822388387 804707045 484252811 165584932 884139909 387432668 817317971 740597672 886044476 549506418 229352660 404693313 902910890 667786287 874637657 774016057 217708670 938589801 835079605 864962920 155430616 686093206 578639379 988119868 848980571 495201840 444239416 633104251 729556370 697130141 487002204 25172934 220044517 340061074 742966578 876978575 692326584 956685104 124204748 286344783 561839557 403492049 391160100 752318091 708724003 173379416 556029447 745497466 998792270 809106845 977949461 260145973 244973572 558945049 817637557 896658384 387240488 70292715 140028226 150844825 739138398 140874834 941265382 643476524 751974796 741596750 940646737 946919757 784183090 612129529 843911207 790517208 452072407 241068051 807757446 151961547 840311695 798992596 747577234 817716014 799819342 560902093 834697761 157373837 737184260 849955189 52508274 815703980 795690791 466467564 10894613 292377971 781121268 695913862 54382154 3489714 81394821 1487223 539191560 959235514 769414000 53353653 465807601 947479589 544662042 500557805 187307306 415884778 793428234 766442374 908425584 800407286 845374071 813438208 473361617 828170076 774599138 830950945 584731631 911728366 811154528 488588467 574375112 315888963 749004254 219798647 756206675 474908854 582216427 406133756 947654134 132674028 267315715 844892501 195640854 948699221 352367727 353108335 823450346 686876517 825272288 887997783 701582187 79278415 14356563 2262091 888792002 862692570 591594002 947371585 952663971 801024119 814990710 482014782 347815514 741583623 827334887 940057525 678603876 891903095 390761068 974383467 965834136 625837301 944004456 744404208 591359243 921259188 896718357 985248361 161229474 987308668 95587424 753710522 306006704 757925272 723969575 783680590 783023527 77847000 874525967 794901814 515911933 71482588 658332501 420402499 896910523 837514752 876736459 914693699 822636350 237646758 913533735 574200326 952389875 58354844 72846321 407870602 823107716 742309916 669548930 899441428 150248579 807498997 742704131 510823986 394386135 797367364 808867080 987920972 745889669 880742178 831632291 965340097 913634981 812446722 800819540 511707728 700799676 989177859 859428488 824355089 762540559 927775218 928376586 656413292 837008860 826761189 971474113 483186077 376894286 863389879 898912267 442477301 838065991 305219012 512582976 844615634 622630928 268493116 269139957 930876826 528877588 267526831 702944050 778444388 899703225 633263452 937686157 981136967 450399939 90599034 764110309 941638940 879494693 897419692 762959186 994924014 592204508 838530454 300771915 136362185 447380380 563429666 899941864 322262405 839354408 915853995 766734388 923380201 963882297 135451690 329594774 857295754 816773747 665203199 768122368 955919478 836939616 252665527 460007398 903107443 146711154 783820556 969389756 920408391 438877893 980812934 822652080 884769115 980007419 891005928 594221617 993528592 329816090 246644522 118045639 494972359 932029022 682924594 848529822 327438222 779262231 819249880 257429364 261291890 295630453 33106134 570604501 377120939 942410271 762782023 899678385 905767657 880234031 982630363 763155712 409154722 657615100 954323222 825468448 521312581 269457999 314717085 792814092 898444048 903756491 452807474 891456350 717571531 90392967 762349273 376354546 997869127 181260389 73333365 829877969 265677271 403207210 388267385 757729589 387228032 627756584 769208363 481727164 546230534 546638152 72596316 656431068 943809340 849626025 882083699 223421907 756213494 760330152 832431368 961972962 782234850 451144941 743980919 971813956 177194705 935134636 846223603 873780436 869893848 746940980 811709328 778276596 428454667 713226685 865535103 295468185 966948971 559755451 422014087 43209234 907220198 869710014 845282618 363469148 333699775 131803738 865444825 898224441 562015353 722369206 854821360 944991839 994383013 786868018 671656770 501162098 966141061 921810387 306053458 939338408 472533836 978886828 307396141 906451500 743068181 884323856 938983178 191440725 635653408 902686220 927841886 65616502 821395900 908343906 256373557 499362055 152158119 79294029 754121241 421729627 966712343 492958737 639218922 363174023 765781285 206184551 957052527 804778687 169715153 417153273 858563672 758536601 493873274 146182640 876741625 932838785 432365721 561578053 958303997 936482714 501338641 947068477 136563128 822311611 649168813 848157618 962845485 907616113 401890892 989448130 68568865 880768556 439569474 945314972 960748871 881080581 901365242 538371310 154444221 879661683 40009667 942652486 15282047 362137711 848483656 78332073 835123991 881428021 749290691 89964222 394284686 920748263 325982776 739542935 888719680 485666466 857060339 301333341 809855813 59804636 4793711 180096386 3010958 733760390 819266403 503433137 800757689 740631246 669211011 25217401 886177591 91116279 816856577 963299885 801732350 763384260 924299776 471681309 211139034 238618052 998139189 467598983 400100417 995175480 702930986 877530586 540720560 946442417 697606216 58414647 398212943 827383857 996018630 915321217 72277121 665341034 140038927 211260304 836819899 756986306 447166750 363229179 861797380 771085073 981565747 477336711 487958803 364821788 992554550 961517296 939307600 767491054 849542884 591798632 616692717 987250919 993565676 800525553 909840350 853704450 288820890 956424955 911598665 723034075 746182829 117530523 851206216 986615976 778186739 47579435 857877201 773630461 774331613 731207073 305515755 226164171 927269135 779658006 172557522 947617631 546336440 947355837 421634594 901398593 845753922 848641495 522358925 887435287 829997414 784129076 792782322 841934983 805596164 488693958 616652587 693195551 751910357 891674891 235408766 231804679 822703911 204483843 394819531 893906884 925636745 763733834 951101230 632208862 346390018 956774850 713990595 964220751 838062012 939816483 368916800 899885862 776170905 519746972 251310036 880271440 977941330 639877738 925588135 972581102 326825512 836043253 795490667 809347637 561361947 214809699 931228320 4325005 862236859 720763579 614785278 607786080 306649114 886230004 436093875 291964772 309187756 553032314 411971428 923182152 952840951 749901994 418582474 533190588 557016865 324483379 55536060 87111971 882719339 770372014 278601672 852970499 935168737 960919925 903288391 508139589 970147612 905433221 625230054 375857160 886557348 726027519 996905552 307315665 737020247 835654701 993808374 907699995 369298135 51997589 951257148 980116066 827068893 546556044 89433315 897779900 859756904 617910658 926111782 367059809 917087121 122308406 989560673 838918855 383466737 863648843 596542153 167219711 844197329 491128669 405998095 873146798 191515069 256140051 829651992 805486121 446146143 935482831 346992641 572024504 378390516 988259479 552324083 952557251 835863595 288110661 911376365 743064393 834543061 796881153 850842341 864202264 10290572 937207028 845878591 459757792 4607843 786378904 487780549 670971437 145731679 847228897 881817468 574841351 129162658 345178270 666444426 737020247 765448573 937660643 850097979 817326922 154002724 906682304 921661835 482141104 518570526 946790994 820589404 784577437 550344464 14789438 843159316 564195211 957692140 696812308 985156348 8749236 734007228 595303112 628516191 525442060 764413637 984727640 755285802 226385922 740937551 944907774 87750802 367665809 436064064 891561159 753351652 194821892 553469332 229109772 348957864 624417862 34188658 980984909 895876425 209613788 831677452 335323412 766172512 397383549 828076023 49106154 512108743 98222475 318505342 996466055 658032932 773719350 962438584 415974723 915558434 62323385 822416246 353847819 812469226 834060371 42736203 866014605 137992432 101471302 86260111 736870526 304045426 341422839 944862486 466763538 986528814 721067347 942974157 972554819 689830984 717818373 148046854 477579590 785884159 653880975 893998761 75903371 959737689 305220364 996087781 956240430 960109282 984528217 236380837 228015473 422662257 807876864 948515452 292633669 482670660 939902047 403383119 55140021 763676679 555452906 232861442 803186926 828195777 815439888 394334323 865521853 921933940 108692755 352496607 441415146 621206084 614190422 639642689 684881723 510955936 812373195 72987255 390274382 214582142 964784527 946967524 42910896 846850765 811557539 908253208 44889844 600342708 259639225 41689704 615947660 195231815 772827397 211358829 446438508 696958351 518765418 430773144 77687470 160001068 640453847 867532961 833116024 849597307 880117922 288222881 808266362 878903707 193689183 888558958 748631930 60228671 478235095 296354866 880661378 617248381 64488241 292974674 742336767 825526939 382276077 875719549 871975222 884816381 997928426 914118023 662876323 799852406 948001481 797486331 868121616 781279424 787169860 584278800 667803506 63521867 862440030 115410251 402761412 828139531 809902186 741572947 655385007 725357870 864791059 250580210 437362555 337372774 975155111 50367020 869368707 535374277 526203377 928729712 815675327 943076246 415262945 841742406 418847429 867139329 814448524 51026222 817094263 948363279 928132820 921325029 273094333 749130545 800634340 679800501 895850456 241800976 649486393 624822769 755737957 890753536 986341597 770122838 792554060 221102494 115532458 44798285 983000360 796846300 924470553 192488981 721682697 772055223 857316129 986284891 786419932 967125332 781747336 836850803 850739583 768051809 546294028 709825643 826790735 370780281 869267242 549860385 166192331 227135408 984649727 94646939 55074565 404367866 51997028 823756884 413950581 804260755 813983454 398502196 925588893 448897519 772430366 869855509 912320114 432349770 486237086 780280299 546258430 834678012 591741222 835615142 939857580 874771325 531255686 778984326 88123553 849441277 867696973 605806936 964467311 818862366 163470557 648096624 792414097 911004570 493551115 705632997 842681527 873743134 195605597 759844261 167656054 736790038 748384290 863394428 344269213 320108933 482407412 262183468 927701751 288288469 908569959 417073244 780790786 899676129 525434223 675693536 577757099 594158269 818398685 788975921 831292470 829165888 265584920 849443899 167357452 346325758 971371508 647587561 143562720 948606442 809997706 806195434 728399157 273493687 799450642 30648521 943910850 788330308 219817712 317387758 751082038 395915081 406082373 926778756 50158114 772669482 881518261 279542169 903188511 989336383 908609083 911245539 629577538 61733999 975659459 997135676 134946000 827927420 986484700 398018048 318351913 56573912 639548581 994122097 917712585 583875150 790708113 88725680 967896047 894832785 864123375 860966295 885199085 895075011 268202766 691952214 238540124 375609360 485610136 565555561 795647080 323494624 558156457 956728562 889466518 737540304 892489226 24861990 929207867 234617961 776119106 371745832 508171014 913119602 346094954 811034212 828202534 412960913 908588641 986667453 856933476 851363106 531989562 497416538 756003506 305959273 847887275 468247568 572952172 956053994 844653068 616396220 542428137 109351955 301856080 660555346 288385061 16887072 117660629 982804505 533990746 323688832 965591037 777598450 63356296 972014004 369084276 480819842 273648703 398039707 988272742 844151778 474601386 571064321 905613366 681766577 679518154 531794126 183503623 11245976 960628668 912412129 836627923 162306941 147838059 779139454 239990735 870358191 821457382 916672182 676154682 973890199 765435128 880904769 755732734 581506992 286483986 832609540 915243544 99977460 665489347 607876038 121438190 900618869 647051412 366779202 894364758 654997994 657487454 919022198 62674747 784836461 309860532 917604344 789353327 880739777 71059653 977625680 547399064 913371270 942855800 857740895 937431813 822688184 191441403 895265845 898752071 651545009 19242004 982473533 912462532 320102896 900711957 8873479 676446183 959432477 559426336 906138932 993154823 541957230 532646494 714609994 171670160 947517715 966170006 649964376 41367577 865439786 759042947 427799201 911753189 291956714 325782524 952379857 455272540 532908430 163745304 764241943 791771789 828754145 860341812 172725530 917982753 130034276 874904552 742360937 51206754 832107632 26459684 142234440 760475650 63159609 434125424 773674935 581145586 54105294 418806892 832518674 409239474 810048595 893109927 856093132 899807337 770115809 985160993 508077493 94324597 863521791 875750564 995593500 747138053 380337791 923168266 917751478 249666192 236495107 261709655 947737726 80428446 609904869 757400619 290504696 149301831 910859766 190160275 795262704 422476253 739410444 144876610 720185783 924221288 676173505 768469498 504892939 225716719 471571774 917403306 753580551 911447044 144723279 879405598 833984190 334916930 847873058 449802383 859013680 440743478 534658745 48239144 688209865 970186716 937725469 412226078 904359370 766827453 672634470 81701644 743260345 841624733 826062663 383151095 879545613 102614530 522358975 751469348 993057119 712485836 544150691 125922797 56480885 837109237 213612634 314356761 970901171 810611359 96072024 554061256 685134479 428580305 896246347 414115485 416686767 888374949 49232166 870435603 793944710 243983190 298714064 661389167 970358291 792662425 250163528 673267514 895621199 913528835 888930541 852509838 641041256 4097871 878058232 347305064 237971659 120978623 690521895 957548059 895198997 418354062 846298396 651407405 432723472 157939433 238737428 530012467 132558442 741094994 531728666 339226484 820722070 136632556 641941413 201657818 920685370 843798209 995961552 403256975 523431878 102066295 770765935 933064342 922229117 77430928 615940640 764911983 874461574 755178204 966274874 791946842 991988798 494243841 821125539 325530307 981589885 490435665 796837562 165368248 890352304 238035135 993196298 523359947 934609281 833589517 207656207 607192262 853776142 308448890 63512268 160542848 911364477 985162382 84642849 271536475 460421639 999628091 698650623 54291021 499862379 782558683 737020247 306384149 971593504 159861344 855054464 751115205 624086057 769045631 935108069 994977854 193284116 792682008 817704342 611284238 949894919 926381870 542157499 762180341 919790485 535012925 461993102 528854876 802615686 495878748 916873590 834706356 672632989 769974479 202387875 984066137 837627448 815916646 954350694 761058946 938399867 767848019 906504256 341626838 167993261 803401345 507380115 909018059 594594208 853901467 561796609 851708502 889234845 824348081 626397842 354813054 489721852 13553564 804967913 776988766 789419683 741089458 283681910 765139983 462681536 232813126 74100821 464625492 876138428 17315915 907043850 208651506 62871197 820482205 999640040 296277325 896802665 23361264 831234525 740204336 901584595 170400817 777361633 827037495 934443617 804353456 479147862 470764356 324706164 796956092 795224564 844427624 592998095 851086699 484984860 282914918 482866340 411996832 852310721 524538010 78100710 132063185 346393416 912451314 858963776 884472127 935192303 447045013 880508034 395609331 334391715 740815613 781886690 92117563 843767086 934394011 802528279 24641873 358255137 758295131 981825095 853524940 809666539 870050606 273839514 998932911 32468455 848984583 757453716 347521347 7645478 954603059 508152647 826608175 748039595 921951695 399110183 899757134 528786182 583829419 925024314 542817910 950234870 825913909 963920027 933783235 844564066 159241899 951316940 796022860 442835135 909452019 63390009 182935300 577387464 951338606 758031087 914457998 831786200 954407654 308891585 933277449 987714035 135751130 649018600 450004629 54489317 372893309 17538389 13938604 172820236 25863715 33408230 791101221 322956709 934152862 206635341 958199594 797845163 439991484 849315899 737388115 917087036 880600608 742437236 797916992 940644371 937453300 469859192 865491222 134289639 615539062 467993648 140845074 234616695 973164987 964580226 3041571 81180761 252127944 569850356 850141346 683428197 802190658 792749938 692623051 398214277 823867796 394228472 75580530 226370934 812353815 379406614 874775631 975777565 352313989 936424838 881195284 133262749 865230637 935486937 912639056 77893972 534293893 794027067 768120084 954562234 483318378 315365431 182561965 737020247 752487805 169657788 313266661 16597594 834280643 725369625 45307609 931660572 609347915 827117087 166433237 960065960 903307781 664363799 207906153 769758322 204626721 977859397 840801161 515355657 894024651 87408822 748188145 559442021 793582904 918314881 100438245 708912216 676743456 572077987 211193618 923102497 866111741 836346412 147793305 923732694 900561227 145290563 664184869 781751408 481234862 745570462 535721865 239888443 598526928 560415582 816524450 648044621 928601606 106331117 533586334 923325351 769368303 523047999 785483916 188744186 51460677 273993980 835960288 614428880 986638166 327513290 939064356 655690109 866366805 13422884 823007314 348316374 753668902 878432278 927916745 907848588 271937692 602214081 927315973 761803883 358840658 565548459 803671608 894831748 325419603 939346547 760298946 768424841 779714044 785280057 58425611 832591156 646037233 209441995 401345625 931840640 29144276 184683193 824308783 820435301 854319760 708389824 995660844 814891538 791594362 44480133 330749758 984413678 873532444 675892357 966325816 502374587 178862197 921594071 715130906 886783773 681440212 368389481 858807958 381979592 868168070 932289529 152481078 348520208 367624105 262852109 671813831 760286584 840070568 795211634 817860311 19721675 241796091 987709617 792993221 913241373 317388928 289108376 803812176 990718926 908164618 803331926 830022270 789759698 117655109 848202545 884103715 422848189 354354845 704773840 966892676 861128996 565658103 346062738 788726072 153769027 107198707 736453351 878216911 362176593 558557125 152135377 252584759 813712401 958747956 894684801 814698017 35151369 139966218 758533725 622483250 493267534 998561097 909077496 922016626 887045705 762041588 840562900 39637697 958459779 776096882 983643792 833929276 987790815 294504754 884327727 956615516 637150652 11435513 876991234 24970453 837659872 944752330 987939155 467577140 580914507 312059877 717300574 92553527 227247931 600613878 19829478 975276140 344178666 738392763 782856114 83571242 982316181 302012946 798469647 967356359 633664857 855641695 909935496 325534374 664830708 806735520 50405734 936015300 761509284 640127906 93287492 680284060 934335668 685759472 195407669 997631663 589675855 124147493 868837017 796303910 473772763 337667322 434892900 369510324 969667002 820719884 740006584 900005296 999650289 747047380 913295346 771684560 589693461 684561082 961639383 628463771 877406106 136836033 881639040 791156550 997301622 867419356 981927288 303449173 779478031 394318231 742764261 251401682 949329622 814404061 398884777 949950755 551931383 592968769 758195415 866634764 913139271 66821408 758490449 788544983 939178483 607244965 843857369 145323456 407539529 986719308 852756625 750195804 790439654 745843863 253599156 671803297 821979319 881672596 203380960 784425920 952775138 465656359 822153965 615658720 947578016 177457684 457446792 960789244 910883733 540021329 897680208 876134056 508144655 295879070 429241795 811877768 170540537 926315484 961792739 42376896 28503314 905987656 105813291 929307330 883760925 258186248 322835053 192288793 68256555 433949057 975598880 766048179 796441978 991920335 368487401 840982202 20944054 735517841 616727217 635402419 866966393 953307339 818257167 948443333 721058654 997994790 52174225 973076900 716425986 990172708 871946845 846880284 968391650 579580539 531922581 294206158 522362945 752844600 956466001 501564564 948141831 975371772 704035537 422413669 192110370 989318845 747156633 5635366 909480410 513971771 873660717 885191772 849071606 811675648 164471702 846761995 513441603 890751838 706691676 991946922 290364293 914214194 432316645 977468926 169791053 851060744 635599180 742986862 78671755 958942496 531834355 882091099 336532852 946345052 537879279 208710548 860765689 467614041 485049707 967795916 2359784 904989944 837469461 773391902 808931768 896119894 763544879 231495355 318635478 334328416 103266279 796796222 978668964 757972128 62044262 905752163 325740743 746569520 361844918 765052047 746881502 992327451 891474958 725951620 966241869 340327890 619551800 909967797 325447321 969427924 404376131 958252218 988036629 872320083 163004267 109663523 547515228 818687300 221821846 991609305 36710018 933255666 825459472 198360274 818599385 353660625 99572886 697125289 923404604 91847578 547662009 184203858 602492812 808276747 936645535 469566040 414139935 89723618 776581709 445562453 920886714 950006548 858469083 307506546 971074257 715880688 306068217 947057057 604804385 264479066 808872852 164704964 37254938 960642847 784136556 704457141 279456365 992632407 879307467 823002203 783612477 678996844 808945342 540408796 41386623 124303039 190975895 337464446 800867687 459217253 880365321 512047484 508354897 833250988 827443235 703661566 968893403 425173023 924024306 58379054 265690714 465563291 636994096 277768337 846385006 548082673 795630490 462767657 948666481 824661287 215177066 281464113 114534101 325259869 916588100 537728346 430353317 704556641 393956953 913078010 865343918 302020490 623126209 283359608 49737295 532384323 849231822 180682187 862775636 799547663 862594741 48032380 995075909 797506979 230314224 425564582 154707427 761694272 766194628 796794302 814500420 179012339 656676916 962126250 29662637 783347642 862941730 397359058 14259104 983712229 815634768 262464975 901791699 319397340 46547543 654342121 32648697 420239296 936658462 808332742 438796844 352570831 670218689 224879622 42275311 296569375 961002147 967903911 753411676 950632221 961819885 926694162 247459236 970886955 932388304 282125914 754285964 880800073 522405577 871921638 554259819 864280840 996540182 984787588 97275413 791755139 951436496 595477471 682873594 291616662 272871444 251969429 952651220 902086026 487131664 269692783 737020247 928074473 241907929 752916245 125445100 415156174 139839554 917697225 762811059 794285820 754124330 875442516 598155025 618395853 504995227 626739133 857990293 678648590 690496384 755702890 557148090 172329912 686828383 879268837 767965908 785360074 981996775 172396990 281502761 783171141 366595173 275886070 152359481 330059359 872586500 227690028 114911046 871933675 673906373 744415769 115732082 11897313 833076512 851954113 951089004 964723159 823061773 67378217 822807932 819385300 743767665 369514546 882204767 289643638 567959730 946078591 328115753 593619476 976300756 931894166 255727025 988688088 645508591 778495243 165761165 311627995 217487264 369412959 919302231 443934570 671520888 808589380 126597324 898816512 941045287 91147315 911510184 979313178 935678502 830647114 984858413 465209308 65469248 762324774 738716643 781849960 673775277 737020247 237719900 821520319 737412963 953675516 927659451 843867497 783718539 646038956 259717963 870544861 506382362 56586947 837146199 279669260 769288620 839121081 749067797 857732188 757249950 12004699 789576353 201367569 775218201 669595232 385505927 848059224 783311567 978336799 667314179 960369478 805158680 990376350 817019428 572865479 113810976 555839997 409058576 401435727 900370601 882329514 90311375 39090208 105259484 225187863 976884512 558810384 346786651 72704258 132536031 520231448 509143332 809277074 276745005 557500635 524398004 257503569 628045642 478667718 598443012 31501485 275511197 763596320 80821599 831249851 922548265 543051334 908985658 363872572 920453912 735143039 99968106 991564897 25956455 870952654 279866538 305652405 979900356 829363284 762994608 56834923 872642405 581994311 860726260 558797108 189182751 361824235 928968797 847724813 200138203 356329724 8290978 603407039 574867764 858078082 43631886 785179095 681957577 269978656 818767976 821938940 749793203 574964420 840456904 89140423 74829572 774773107 27395955 835824598 991152048 861088876 830444385 72078533 478774825 822357506 985096985 168847162 592642888 810528096 100029356 246491890 996481923 180048888 152619828 856298354 485767492 917846791 848548806 942388074 582754686 827379194 755201441 896524513 797862344 725121745 243963382 320746291 777002254 764993912 805413387 570930874 420077773 51239039 745262110 75783742 605573462 233687728 694874668 634222207 845764322 866675059 312107621 896556324 769921908 375664307 812491290 910794738 753449934 491200215 377804002 937548363 518674741 817388443 903051742 470964715 961580056 439849927 880868080 602268285 814329744 896271580 903187472 903658621 784964395 777087340 483203105 759433694 835691729 248183649 288241785 379396305 209084784 245643774 895831391 609093271 718396018 989046852 931017896 442250468 765956062 842523606 926562532 873546027 833642717 897595632 309457320 613388110 757865609 994455267 976688109 800424280 296616971 895977946 152404918 983334953 839883537 579474319 636894059 404575842 51142189 193135188 322927161 668227013 941976666 719302038 99959558 912850650 882812788 771983381 325290564 911322134 671921341 298821652 613597640 340823031 550010762 97153840 683584789 949148642 229181989 134818980 842114185 655571768 557886296 821503985 279806404 685712674 843671784 850532165 942821367 595807078 905770682 979861803 827640906 945308556 434940855 969716619 834763822 676533490 494889146 136362771 677680124 963647901 978135686 674838747 806051775 627272952 345566509 968666666 899361028 740265222 777870674 105438772 768739385 874819441 947686399 987421307 792001590 208852597 257016988 3005902 624946508 207560215 743276042 55939400 853207136 768151196 850923815 831912438 899798265 930753376 749788784 720158406 701372924 859531060 443180350 870700566 695661849 929532225 964412466 983794060 64520226 982652102 781083121 829601131 842043544 761588480 994298937 622739374 700096978 333951193 289440322 164348660 141400989 622647969 128816208 880687601 852160945 841700517 868971349 862092076 80166551 636267919 804721878 111939929 868470853 815746680 500337262 163636097 26088467 953548622 487099698 930507221 280859023 837497442 897204594 643571147 664426099 641048148 421728832 285651204 793701375 215591867 254702318 936288905 217768436 834399730 753864920 284379094 70704609 652424530 347710315 782169986 790392178 764889982 948073294 453054970 414958460 256418241 741646977 220727453 194983528 907755054 369516764 942849847 35230229 760673747 460301598 973326180 302799824 781969538 915473362 25693324 886647327 101785438 992989499 131109658 937975605 799903980 540306662 979834884 777772346 665188729 708812027 516429944 787590927 706380103 633215437 491857966 530701261 964734370 940656976 831474349 674842636 705013571 881098815 40048844 846699215 884737696 755360466 492879392 887830524 931031190 296887443 83364046 195425460 881717208 971827627 948130345 2779451 902502552 854071139 912150591 857044142 922405501 899432632 111655790 374539289 954466418 781281291 504923098 470880704 769049805 936245444 763786380 958307610 361590239 767360182 353526504 733346046 294487998 794582928 522891534 874959359 990243099 768487537 483668725 949218806 816863484 296425309 873415470 973746104 811880931 770695111 953814708 902106339 985819213 922925842 228352149 982140909 453120814 982649738 137170529 638442363 292849450 760283642 941542926 830466931 753554434 610756501 305596758 227305760 219866403 838555095 488188921 743946823 236713701 740298854 861449083 768326456 942880585 536454764 205322018 943113268 63701028 245368654 114565091 948612219 882889647 492829878 293278573 832758025 791817866 404464952 913473432 927025417 827746124 994661667 616042138 7757061 884968793 163442399 767038580 697348468 857224242 995805626 987999363 622502330 593106693 860084087 640978796 936552783 612833167 834289433 564537877 831464117 969801475 803438182 806453710 866700666 872633884 415507557 881974427 125227225 936416649 458646453 896297999 887887898 341756140 775755694 115771855 472787112 371717106 757084793 451323194 149605305 24986117 991110937 784428598 790256480 936303007 837567996 602095515 687069105 17259805 67353694 235454068 727642684 826313152 251315394 247683515 965518216 142568128 899234316 924017141 350258528 826060404 912881528 539608977 332244437 875819029 378032601 839177410 902173743 479786445 791124899 537727533 88050055 447462191 724961712 299480777 541929 499207551 280227916 886391374 987886163 855213429 760326087 649354926 897827281 856961043 719461874 432627033 103111169 709304972 931183920 820315848 370222065 496287478 933840698 799979955 291624444 31734848 808530284 181388677 684926699 259027730 389581576 767923358 689168125 490749285 371569254 868415187 454517020 343189029 422897042 886437856 256056681 624585949 544820262 869615138 871440912 894031366 573894813 803911877 742723748 786748215 851861269 96667695 353240928 212681715 653993519 37557949 862981298 959211415 118605841 74776548 656629464 432242175 966073463 714983566 669982002 572101535 920556271 924689629 832628485 855193718 894717115 619585410 491493728 917246019 325204917 778419992 209055385 97461035 785498334 454833526 186926705 58677769 995739096 341655886 776000503 929515052 359035321 243896378 326903337 909336596 903069495 947998257 860882099 59078937 981350511 489970992 767745952 887514040 837460732 779040427 959154533 842227194 220067054 770983553 997187470 993828462 876186412 894559260 302634140 421535299 195625883 524452933 961793163 956918132 113729153 113438414 347707238 45375367 377475809 177698992 104900769 932308231 915652479 61699594 801774831 993185785 806649375 812799834 858792719 489183594 739443063 949156473 725961999 820667650 901134711 442537156 837361332 809156190 217238201 809351663 827664349 442398642 759970621 351614831 473693220 973898085 987175708 742879358 902780507 445637703 978958270 932592256 312200766 773644918 798550466 78316477 818525263 136505132 97715641 547512887 791615617 952805648 828635442 255655254 382216049 565337494 230367777 986895025 535663298 737237321 734636172 214617722 571138526 910863298 45047119 250548897 987661837 164795010 572433928 300458611 922839131 656306487 661223169 802426862 800421051 535349945 390388516 881992118 508341965 866017941 667002520 425398512 522754075 586347670 464881071 373881994 958227473 826241175 734951272 943775510 79785893 692910225 493689197 345167613 735352161 813550072 799824039 867220659 232139091 494554727 546017659 735545822 531268108 788509113 780658260 852300038 345231433 848196916 51597441 657363327 510501304 274672486 33476174 448595892 746013987 761265703 963411545 938118997 893373682 333031188 920773964 228639322 848508651 999708903 993396792 531838951 881608156 951685368 830371687 71125500 185783015 140677547 958131808 154519715 809470971 887048917 984673848 765318867 888587847 771954699 260461111 612325750 839564722 488617899 233895684 309203121 903945197 897955130 748786193 826098396 767879606 483112810 309674004 977301144 8388491 849091929 339227670 990345813 319510285 956211727 397834232 423843375 778452451 803800748 568734456 715679956 211186811 841382640 767647521 454675812 740324577 62986578 879498487 942068340 865228333 719518560 891306105 176783366 375441229 867779671 383049009 812997955 813070005 987209772 959666416 970964494 98514486 948280745 835257914 969363445 908850096 603583540 569466457 40898768 810518125 902323324 138506152 902848410 481714288 243846015 81725383 778674522 376876125 950591133 849961981 943243230 538887986 69633098 974453149 835494126 304006771 860152204 724503625 865992386 792719454 308941390 756272599 550848206 756581647 118473051 907512967 826775856 838980084 865677694 181152280 969531751 394715636 225673425 400826188 916812867 799522434 213767660 764515139 862260358 697129086 984653883 215244362 821354595 775910068 150108691 861071441 747754949 106445720 833254957 822150355 970200604 949373233 811407915 888856235 6062873 889565448 532584984 214496415 242782674 721795301 871990214 648467404 959778287 796092984 824101211 756700035 380266472 845918385 840414154 459825376 88247421 361870535 729315322 267496330 640290604 874488889 944057940 24310349 761188076 862649138 871194735 189941817 798008416 682720577 807363215 521248222 439179042 668094897 950670895 757899259 505105039 800735665 848294099 137651776 903721674 746338936 944470277 877996718 37405926 312409118 314199640 339414817 386266596 704906614 336539754 454866017 877210890 73038928 777580152 241195150 905351725 808677517 262501787 925496062 370419771 73840244 196298792 334660221 985071796 882222932 807966805 40260293 82826766 761816315 385885704 757250697 304850932 791368218 950159676 384712119 403889669 766906493 419529409 780095369 925625985 617334883 20654307 751615090 953615946 542030410 325496954 216825921 850685390 796558031 910739328 185025018 558381192 793985776 288166228 412737901 679082575 895909599 223433613 242124501 468929146 496564731 340985461 651478290 979247276 868682518 435786112 862164574 814733131 612792423 80548451 887815119 952622330 169248530 12022919 967259172 757234003 759979520 981318911 773738003 89135024 757916947 852337559 808487443 474159534 788317522 412362925 719639182 50081849 708731923 771628043 945554879 776573338 861791930 115468963 812764624 170022100 860835884 425794775 217296825 446518133 256548609 59035038 205209744 607746544 675175495 444438759 110190842 215616087 714741361 751834790 988200643 808721112 198475658 847282331 687524643 862819670 917860408 909924558 805480320 428050125 970024055 464547873 877380068 553737404 916416632 977570728 878295270 668678474 585565838 861382664 595108936 837852209 895263975 467358903 951217016 794291053 695856996 349042037 180217793 903940635 227974436 448025520 404177121 984385163 685761944 912553653 736025038 961017041 798414536 764533676 591382357 814187076 964959042 210175329 991425563 951309114 984641210 629917742 107862892 745203074 938534397 994033973 644214483 63432889 799936788 708670661 760164795 910357831 153884245 970625863 922024016 969197334 976012880 550755712 18063661 987303866 178559487 919860359 351660825 817358858 762745712 464114503 235690288 738798264 499893122 467693406 646476863 779445649 914088197 786662447 280357021 991042195 808842804 669358947 791339577 803967175 247185267 482158972 753345631 322357291 577313783 958245956 359655710 747732421 761431104 862761419 745648 771719033 24916942 459547127 988655599 983460810 26429573 298235689 463609425 778968261 453802969 974779641 781729992 921117745 749843682 286493796 194171049 79347845 436225100 946595973 977051699 777408169 909058735 951203508 832676997 699940142 858197112 976464791 898857999 888763225 958590663 745569228 581740075 739535977 970964343 287433107 841025948 149556139 738147438 789336186 932281010 59576185 737020247 1499612 65837036 127517597 707620567 303582615 803514082 360640113 809890141 943019667 765200264 694294733 966407852 814564021 983880578 852652355 877326197 909039665 84737487 832476518 801057339 795401408 933674613 892021044 134596328 474359781 636662482 976632571 737672905 610016667 663592640 372682749 621156622 217366758 58909783 28767028 787566530 785210972 958632920 740925096 845042502 779549655 971510862 108957338 925793015 938789096 849059269 104497636 719531459 745766123 343674135 574604994 159520558 939869878 673276882 310152937 3827191 880353811 919352169 814129480 652151591 832661113 978468451 820443858 988769607 22763201 865479777 721512562 973670804 135234370 266407151 482959424 751580014 338493590 606762405 982971138 768836318 666303565 978624089 236382303 852736097 878947696 250543815 786907570 928755818 857988307 694606656 442171122 634961166 850788066 793624925 393596086 856029890 417826757 898159755 40214548 748537290 854232506 916791615 281857898 304925065 781177654 954727659 808390506 174382670 945971166 877098469 150555395 228576959 877133374 722575690 380049905 608643963 824428922 650462492 996680196 395074296 794700189 803475616 348206990 65413990 726264640 989622048 48894228 922101671 988520263 59706757 744458832 407150430 971573276 888055108 410325138 931038950 924360535 319112902 334117948 867405606 844530580 735660922 928358466 929852869 943637785 850485372 969861735 266873685 288568686 463609547 285228267 919002607 149322821 816869170 913553126 457836766 53756175 148555550 849892475 665596805 971337393 397832874 45551468 652843610 723263419 936868358 697316935 723139891 662672676 802266332 954156258 751075826 959474349 843020599 665654822 813888966 907485987 153971669 594395822 956144877 876100843 476577625 707809174 820443400 927503490 669052591 583876845 460552820 552069566 929594162 793202273 839520270 897512063 972824204 316842271 828379617 46358403 779906950 271480734 982623793 770636418 271641314 759208978 169397070 463960605 780889920 946254372 710214336 996453969 476235748 357815382 209958228 319249148 781430910 7139596 517875107 466913033 160436235 484794976 319514622 757231835 853570143 762009175 204535694 33457971 799393997 796358802 808492625 328814965 845010700 481919352 561653948 730266208 737359093 892869964 804230420 963698397 971678295 975011581 893702067 856194566 218785076 653280461 947041092 364907928 674407664 854437895 305548489 835466050 868209307 491812492 890285615 773972621 707749988 798137700 841260462 954328084 853115213 979996385 880481263 752012540 603459468 898201898 923681898 374736734 969549079 796807043 868977387 950038036 785156599 608861044 889074398 961638501 319415843 790301917 982264876 988190929 922835819 925263554 468572925 504602544 895798706 646096485 960350451 208876633 914958909 774883415 941915070 529406127 355545260 227252387 975283293 874985077 56142033 212632933 974451687 796806692 218772503 998953568 882732254 772697649 447676223 855239078 564609417 805408347 390906041 865998534 893183198 816869425 283808970 907059942 827300398 789489901 215786158 673321955 535188577 855660794 858028653 600559909 780854093 950420626 613447896 853904996 605184935 12098175 785990025 262656315 357265355 685957191 47092975 991781153 810372442 580663356 275282710 814805783 581598549 137935979 24236589 463343048 181222025 896239586 455116298 915462873 641103295 701066226 3508646 7600945 668894932 47076697 202894022 798949887 821734345 813089815 739466204 890582805 827541052 28903857 484942357 819673461 856306416 453645453 194751653 574989706 877474268 850317456 635046239 821668301 417601980 238209680 803409135 480028212 222476234 128076755 763970895 444703420 470971905 959630166 836448290 672437196 577316443 698436707 881135571 667573788 837699111 451489405 925155467 882732978 890034148 35599716 370964350 649913673 245231412 813134409 985522984 345115766 732041460 633494165 264017649 906631146 982657111 848533414 934182331 897445014 51471820 977689873 683495080 989013998 963563823 808002071 176889705 401527234 151129341 958986968 439307544 184780199 832487186 8023784 975465328 519591594 963296641 166964177 28158775 646435559 169953030 920202216 978940362 194582120 874938075 294691119 986924857 345648049 210508460 978927526 782663348 489326012 165193655 741645219 981709356 101191072 273446619 910750482 577998468 919117586 975284109 781160260 118915993 888298961 281925999 312908904 803828285 816328878 309136812 120787478 748492020 872177106 923106906 948156863 574357552 89130070 49591886 818634035 998506151 130800862 93625479 998818442 800170609 298253039 42470032 99590675 805524486 597255633 904094138 813768772 907310704 907237478 960509672 712320193 865232264 781190738 880998794 80247416 518875689 176405534 630505898 326922241 497482901 931735001 804717097 454609561 590974196 753412188 947484414 853079250 780921018 185961566 339866707 129321121 901689696 11668554 900770761 818348744 869725331 882256112 320013410 774165967 119290434 733424293 976967411 160537622 72961979 758033241 737555109 382455123 377163275 905167325 253650542 939930506 912250888 881806742 763557163 935606473 151035768 154815082 345173956 839138134 62063144 463245085 700984281 630760569 336634072 507986130 96277813 50742532 868421917 993119913 840527485 777573880 945689557 196645104 41157465 874849229 433539160 958484432 288500521 372110100 518767014 989596878 942999806 903800262 628561532 918481860 959454863 732881534 105856172 891551195 138741166 937619816 804971273 365130152 981170551 176903091 917358385 911204602 882258062 196085464 825546987 910022998 972125442 784063364 455157035 541679050 865642594 208862106 948425182 932691260 231831158 825590259 994423941 169213596 211001992 695831932 991697982 838031792 472679888 984704027 992316039 181391713 897803952 262086860 663354099 320236104 798737012 161507324 9758959 799107499 427961826 317076208 927419277 448016242 788001002 954754967 913727541 520611881 662269609 979519479 742925181 772536109 19689603 257076488 382468009 529838173 980486269 791188224 914863310 866884721 15833272 421319843 754004422 747663484 965556408 913268286 7062132 330815589 854627826 431646030 159338558 801606704 938175424 746223187 460930302 366487872 718682522 758887717 757153856 931035558 910040802 428077932 781063363 375900739 842904945 765130522 285843481 303198942 264785139 760236659 121820617 932368890 239305280 863338734 852276995 857275126 659557013 945059106 962437859 868953539 609745798 885209012 992782861 784614516 456440638 746090322 633204905 942571764 850652651 320666586 925275531 903210803 599442549 792206856 508652439 972847883 773624579 948122091 735170533 525288327 991371806 214791211 64208810 150449576 22123859 287964440 883436850 359876157 761692423 937297921 793361805 956761368 320586113 825150702 948004519 799502356 189533470 862027362 141617657 193919865 461308335 879763795 763524150 753736730 882870957 566398633 522725980 884024785 872080191 325333320 648755555 617712013 268965415 941394270 830757269 143452595 377010868 470272574 670092098 357543793 827747595 888478436 722019093 791837609 969537391 666748528 790550338 685618659 77374951 107325137 814925101 323570120 776471590 737277411 28787460 268911274 904878400 771795437 228455397 248660533 943581365 631142639 977520539 796574699 193860544 297532237 481546234 980191385 480765845 28490346 903842770 85863128 965285564 917985738 747939234 91438829 545177882 937123681 86687216 808712182 855308283 997343855 927614647 487775477 954835763 775405813 542789512 943689327 945294966 967403156 986225770 31614397 909920726 936018597 911261438 79505301 58822104 985235240 892712958 487408309 717426010 626872707 808147786 445204784 949595489 591545686 842922561 830956563 163111969 792149221 716956394 909719070 534960177 899000171 140261013 741579503 334954848 917193926 86583086 255429321 934656316 47661813 739930176 816545849 529643563 1571691 740751474 428338488 981325178 677654079 970989513 149117916 919087415 135922194 936845823 154175819 917468482 658911970 830254319 963080123 836848420 374070649 739569942 769017358 924418759 832549285 10241589 745603895 994185596 23746089 50946579 649048650 77534874 995131158 370191623 733062661 857345412 927792274 514684094 726469648 545224370 764832187 503237587 986762675 758227728 658872111 856469798 978447215 604408019 934833601 805585336 484694160 8335425 677609271 812539149 771599095 771235919 232689931 887789103 63506908 516202432 36351049 658164195 782272718 778115979 373519361 616862361 765482924 852575302 799288496 85040959 796103903 241688392 471731764 767485018 641093085 558476845 985054923 871486147 627101153 655858516 807052033 657376186 399385152 4655691 691476201 803765980 297371563 882810085 716063810 776289441 268431275 981040721 132790765 332418162 85362867 890582739 894224471 847413903 757842155 351675504 764752507 793203963 82606786 725887945 887075225 446450842 362388467 972054429 957835306 909529957 508848644 190380578 732975064 651411980 772540897 780689623 942629153 112805255 271670965 906659477 759627261 762032593 887432394 584122726 374892032 825084301 905408326 889174194 552302761 330284263 624187135 38115079 814697753 783705263 277419489 248953559 129344196 658109175 364763684 690552496 748567032 264492774 492959358 814679489 955716558 621787275 973092603 916320862 777453996 404930840 43532052 607497450 875556363 941926575 130803191 893899914 724199157 745475274 560396155 798219007 406771715 912221829 183357708 900013293 781555196 840195395 407151883 997044871 14307792 812857825 54524177 669422378 828452232 964277451 546541701 958006175 990714261 19342541 906682230 909409877 642905101 903905696 151942255 718327732 912543956 385950663 854077264 891780592 785042819 747697975 363639989 771189241 231675487 642005841 989671275 771728295 199919178 42237552 689940251 857972615 908772358 746321880 836628250 925211928 295624171 54792063 831872016 970708832 701738511 744703211 680625923 237882813 805034714 583601061 768063011 173724066 194921070 759641632 6020214 993125746 544116749 765432028 354410875 970365693 823596441 447573277 132566174 375218768 757867053 579703069 608049215 970171516 10789831 858924299 686800911 292879964 818333513 415337481 767451273 982526152 98795003 871095102 513710471 985716034 675861420 593126462 987836165 900581254 510488975 456351633 190765627 334934038 898627840 911272911 316315232 67898636 470261246 889015154 981175304 992490364 818322231 994641138 891504396 546773684 821330255 932114146 783598399 551740998 637097421 773824937 655187472 874481817 166381036 509049463 899725305 775228707 806180665 278262789 165815103 516850822 917988663 893966245 851164563 535747943 595336382 72655294 590156517 493062314 779470280 194949611 418484319 634393583 947536636 446119472 920828061 778266568 56507126 644339824 778672690 834014570 224144219 984954224 990360570 473527994 933366741 548166650 902776391 129170435 858417594 585435839 767373555 34149908 178728574 666608911 971296321 420176365 779028625 812859564 814951539 804163386 896653499 828575563 877848689 831063977 153672946 922278594 600045726 213146439 79118430 400671550 761055380 355588140 885368121 196935421 848124680 138523774 547301307 129901990 852080296 751729056 824461114 788677911 989465812 892757138 863882109 306759324 984150486 912873438 701921713 969177090 560780393 837965100 801626534 896322442 771589663 547053245 930088329 881901694 838556208 754002709 513346553 943020488 871468682 880949283 458941980 209785901 281689914 679790146 861794066 738622665 990113807 897155845 439011239 965727669 485272173 747213741 198366234 583221900 954378473 135175737 674416168 915619482 743638460 866043853 802753938 843229257 871455224 881711429 201733612 799921910 402639609 707796336 215366084 483272527 243585499 794254714 901275927 3969769 922916907 734686594 747064259 307822683 381718768 792783021 940966228 547991382 851815594 908841482 983253699 821707361 777322230 93925001 881894830 851812763 765608486 838026046 710204042 570120258 943581292 913103579 657897507 276916614 812923280 781785828 631291541 874697055 927320903 414730333 512110050 100770892 335153630 114297200 855673812 150084663 879806215 705351222 909614285 505286770 764149083 129997576 791791646 347424974 748638874 692024599 415596263 561422763 575063197 944901759 915341281 859600434 745103588 227689961 427933431 808308952 996250059 958267286 664411606 249614409 82666413 850975909 958046045 880168706 170948654 68886521 904000340 794059365 968192127 105995515 955192986 115820179 855678832 841367484 524301563 812163730 874865648 702529163 786738649 18170689 368343388 856745636 897125389 497962860 72899337 155524815 840832306 869042485 919432253 538129798 926876763 17893510 352064614 749225126 612963374 58013982 661111709 50275228 917842699 459288577 503872239 788053937 354903676 882535878 350633119 303626180 846410091 729320050 693081032 61650183 454148490 740797351 526164258 13563035 523290081 895384221 809049480 983341118 731440480 855897180 68146287 800807694 753233884 508631898 531850170 745926774 979005596 430927787 209451302 616935111 314141459 995726397 815517814 983282859 780901815 824257860 384631308 612424449 679153167 750478439 868921792 832799520 629277813 771270836 383167678 159519781 436687270 407068194 175537639 797019116 18800580 352889373 975486961 63659475 235413016 264092929 461962886 661396672 959600034 808876664 783900869 284827313 559983373 112939612 785461631 984543787 800228402 764010658 863653304 310002293 827594648 790489123 141414416 856675567 623874589 468081470 997110193 919351753 268560439 842520540 929613012 830770148 785301846 663956951 384411375 48613946 902440377 921345609 259337811 882299025 958547340 819308325 586316906 460950571 334972534 698153517 274501797 866453346 70831039 180829081 999286869 771444045 994970024 910388387 821894687 955791529 864879064 855105419 186375344 374519106 36102821 903605670 999886859 481779142 145244225 839699098 996961952 42056243 939084076 378590807 936477832 315689961 372737508 466524276 850588357 997373371 753048451 944285430 727861409 956020673 10645612 358215662 737020247 869033435 980167051 859134895 749922793 364402280 600079799 808427004 131236529 781297739 777401518 961305520 731910696 776463590 982730099 679914588 694599224 492253420 814519762 91371078 988076594 534844783 959331586 754128057 204294821 529108185 737902273 380678507 944977343 675525655 121599414 748744526 121214865 359495780 931862784 932499774 790188463 821101850 838322363 778198019 883854402 767447319 860309044 906326643 751258868 5998394 962621463 918286930 162607435 964691091 834770588 837633934 130736578 971282452 835644708 579450097 571210291 391338302 921243046 966048180 985236813 535273872 666077368 23046550 996609543 798456355 146525609 6162874 590194657 54447679 877394967 176246104 128454194 118605128 576765 468567951 616349021 872756316 728674088 911968210 854115168 925969102 863182095 400379776 958168193 988941265 482929418 790768961 889073636 444561606 110480316 56896579 113752387 77172584 951522379 939269332 615594380 922283535 857441714 398796752 939450972 802943995 89518253 534694509 885583258 961115706 784702992 436003515 852906918 930981290 122441288 642897821 103820758 806198443 319785424 895550898 975472449 696913136 281185368 689925678 110691330 921398796 438541934 839435193 941897445 793225155 928020678 999778227 788846094 195214721 797045131 745340116 964127305 545033382 917648838 822035169 437025547 812635527 217953247 532186314 628327896 491871934 817036946 741756879 177307453 995169936 929728324 837633904 989855591 923081651 682362843 891576739 389234323 984060110 340349711 968999083 430627949 361706984 765835918 805325142 886151709 179513257 917979831 127724217 614944095 908410865 185010505 145990276 567199581 531552535 962899225 930581063 679916574 100384520 999121504 912731768 278906777 861732495 893376552 570642130 971388953 415771534 884791567 869820665 913168441 134305509 94959956 872874994 933931409 67482061 524394758 710374549 440060965 810872469 447800864 498969135 475231776 781718241 614101496 139751924 909201557 726483712 389441898 931515702 875904590 954681190 861931982 265098636 960681063 928867108 298952132 819196881 37797911 592297134 620343675 821794828 893075063 740966390 967566167 485231642 124020636 808476272 895964794 689571201 882147205 316465072 942363761 848314865 883760655 58097888 654116279 536571095 81899351 838363725 463059616 425315071 973448899 413839837 838511674 730691669 986538667 199736490 831011860 797378876 88872557 718984778 851349564 807441229 556904504 878389864 827314369 318800187 999225131 345475662 773961246 280679628 722710952 773790967 804248817 880381020 217306732 971924741 572993758 871308209 771709326 319836511 552521389 443830865 780136455 869566991 116588070 913358701 988374769 954722562 141763880 757470480 961036651 526702893 502367858 649436592 959626131 965911243 583073709 298810655 364931897 777163815 969006413 815911437 314264 936845552 886069720 816755540 930458343 970513671 693196908 824170211 157337072 899814197 586000769 204284429 388214227 767776907 956993658 730224430 958309567 961415689 824083261 934731443 96151819 554316088 263402772 839459197 759161194 888827320 692229430 486109879 578336678 409467453 843935886 213876975 974381296 775530700 866644725 350286607 440873638 238687262 949576040 875829998 982913033 834049471 374648714 902663712 545869300 911881493 295094912 914669964 850408164 759987119 617082680 889286247 306240567 158203407 91847890 125554248 68051574 711734415 728074695 860200492 804984258 898902554 912740279 37678418 209242392 103900746 875552961 545996240 84635477 903484624 967589901 837140810 755790756 967224064 301929587 313149088 948708759 91311488 313367264 908809518 892526460 804825523 937706599 740120923 106535260 969820174 508648741 896679275 842129574 46127433 737020247 699711631 59298909 93391695 427373439 797852180 916954619 793796323 452648645 442915712 141304657 817939947 671295586 92390241 312739077 532171647 833640182 968384705 787955799 99230146 125891240 915835143 775327832 934691268 818047462 860309821 556668333 502678852 492021224 119956959 856473555 791721706 709179453 858314130 899542478 922469761 221770951 152050136 416655250 939536745 23370246 341145417 735279501 763529078 816949270 677288615 908333915 704394660 820238099 755630268 806943210 704293861 788116723 498210622 795450385 307915471 907705860 546141342 25939383 755232187 831318376 999224138 8332234 68118882 691426988 209249232 354777716 862950066 573188146 680094079 861173870 892811425 986144842 220071824 999469608 877259782 944260009 65342415 762132752 864381647 986093811 638729492 917973154 830406156 106638226 791142578 825855812 359153157 752691194 937983841 258722023 605586583 798144484 70770863 886120067 557441451 449006163 313917686 896819065 214319006 984544582 800371908 476289171 989692968 739661476 818232901 461459602 279541307 773057402 790426925 963508385 841688463 207707671 908569584 894931126 213616495 772629481 990730253 344771160 772121523 114666314 75352252 900650078 653801316 852128822 474168456 830363505 717375916 258724653 80765578 711752550 759989521 755040919 907796948 952473229 586975493 809988120 243537903 117305059 647492745 46502213 836717259 793057777 713909543 617097561 361013712 922146219 722592247 225417842 193594258 816621591 400441073 537397192 825579693 994917412 844638125 162450797 762317470 695065263 651272148 956938136 962885500 802940044 687441704 816822191 495457205 362754537 126393772 880314032 147175053 910625684 708601459 506711238 586645351 86169295 770733040 251541909 732631157 784465766 530484415 484286139 197867116 88022551 913336587 713013061 388210430 481635207 891305777 23400431 739631464 715353057 616890515 468548285 794687820 312433098 442134937 563719738 987879975 819439800 207680033 857922951 551201822 235404275 483733474 846833449 639127396 641540596 173373371 122126870 987630819 785809753 430773208 836326035 287457078 907328356 873820094 787911875 361656136 696732866 790714553 861076068 922394103 622459773 951730527 640534355 786155274 33350478 857384441 978574873 788437413 918509725 839755518 937013247 879683825 246568906 976429343 805106577 934350828 920408833 879983185 969834517 215837392 51010744 244738528 797316423 923607099 25984724 992721407 753504223 354913490 801871169 795473211 819580196 391129153 186225113 847441955 346775141 798089931 802856000 802837456 749628103 975888009 889392653 36446818 766318341 162752199 147636173 788978300 678770479 736670778 936123501 82142109 544944677 88726140 930451889 837609097 874108210 813093318 196125763 992316503 43209687 417128967 959164857 200297925 847972059 869048612 400218503 988973678 778391976 856559070 426450369 819994358 872858754 29124681 916242474 866446723 706554586 142991459 838100073 894008759 146687742 947980862 395787089 63037452 576641156 825956723 42654132 751862902 396632156 115837931 965677758 490967681 967249577 683391626 510191525 750069739 538787065 695440331 737658117 927258414 876163376 975640662 551570287 165562962 342696652 867500948 820275691 321880323 498644 380642084 351186852 754190195 94208468 744620668 857069861 961854472 90619228 354749372 835339732 787096427 736413551 538827225 645443557 747234298 972869757 232193103 333720055 997312793 914785543 672698291 189861723 471026574 831500646 470462639 260223514 599059856 151424408 297944680 145850530 891368865 726323875 428032467 618615516 557084717 194915010 759780272 172788766 866658150 996951453 908881322 895735842 830554416 755780328 935942200 492637141 983008488 810148233 997615372 579845984 893871485 558573975 222600529 302594315 202312457 150919084 748301042 984612250 502174388 210487127 786340361 357335623 837111162 519234961 806534483 939514451 458115925 127964982 437034249 888904391 74923266 191985765 851870649 171186068 696602046 962346521 484359050 99969127 24284955 824179742 843448190 838578425 842888764 893351729 88299630 834093070 922116354 49057360 765670147 934508816 333392583 802045632 984681122 143860365 28333626 902048287 950017182 861720609 737020247 493661215 558019669 931911472 125169031 749097445 860285968 640348855 708554025 684963498 611466357 179036817 822206489 306641015 561831529 542789268 800915125 322572162 304435971 847558293 747496257 35470077 911961903 103968818 312710175 956157714 948251009 427482478 251528673 418640998 361375427 104229824 61236426 899860848 563990589 411258984 749278182 832132443 858137193 157284016 372873786 537129975 902174560 842677260 173594713 276205264 162291526 988919378 770505877 41913994 2211572 371615911 311621152 795524922 765034422 997796841 205063378 282670517 77546066 871017616 951467998 449711193 46618763 831023369 814590440 767939702 377337260 946575130 981966303 806443923 806891019 404236413 916048767 286196426 868792486 705305058 875515460 776475633 358979185 571081458 928566149 926390177 294069898 273472434 650504800 290998820 152205483 877912399 148382710 831424328 79206908 946236818 78264944 931821702 86049004 880854212 100434112 404837500 952908232 584802522 605380396 979839660 582101095 188540034 818154790 788913104 902690190 822059551 333196094 967133070 127417793 775793018 852802484 665011362 86684717 435727154 737914375 69199733 12331673 837974421 594842162 756447298 308249461 53942103 831611987 819929174 280904180 73222437 628621094 904656179 923744621 853121431 537730030 504685200 93163963 961152792 510682725 566686483 914201365 453763280 937522082 194981850 752746119 670052808 808720930 816636730 961328619 790316572 969395323 331030744 292965341 830806608 7547648 194919846 330377663 673537516 430777045 695497314 586017605 758371979 765017488 926323545 913989401 979356434 739818565 744617559 664282373 685625703 915517493 967454410 949406076 951760121 952846453 725724967 761440581 843573890 494810157 348502215 720026643 440884286 880553869 541756138 826162120 997108231 542662075 381680005 982700235 693611189 972959234 69418728 819642376 306856026 123925806 297906148 42845938 457112542 106305464 961941542 333022092 814616802 787783351 477170213 374884774 300107629 122386580 948077323 762932771 594985306 130083214 984245858 449841725 947409177 103888758 892779271 285765177 931570017 461847627 764459570 892497227 439744616 784689929 164988944 264491576 866937202 822381387 892877891 806883567 883661808 228776673 658115602 248913475 558125520 875325134 750859443 804793071 47730947 791105025 770174862 658232167 393603883 977698685 983052432 688049937 408842825 467580128 692828527 859344526 86457946 880781703 56507198 902549472 459701571 768341079 942483444 7770973 769194130 346837336 621592076 438744527 670056057 330787125 327369981 323601878 555327859 442738302 957676964 445739670 594890358 149413871 249122476 788889526 773108459 54731095 251994920 950171641 286954304 793316865 573345962 814891901 749925481 750198932 727439844 492923798 809127224 932003173 362744582 793867141 224755157 940057176 780990585 965712252 783990979 885531479 385804217 953738017 25415768 381070943 939436275 667348512 729051785 187059231 753799234 285093429 484623264 524497236 811900619 474416561 174185978 853179695 865893008 941913523 844536153 895578027 150730765 818700858 897171468 586537305 830616202 560843214 813463373 394456537 853684137 96761804 953059433 221670605 828229427 949204783 699036384 379158872 585146348 604206824 936149743 294245486 929697839 424247786 983780969 297178646 340174572 399776681 893079810 800406245 341297274 240776496 288951903 918949508 558288110 815139130 249877890 923691628 442141954 533590148 391198448 724886637 973737501 79943493 88422911 985981239 897968891 32327284 824811812 827545961 814742997 99238699 723589231 907007985 872710622 685651231 987086919 418382130 611940256 109163549 825577560 23736029 32486653 239264515 316860199 354315938 610521518 544408540 386428710 342788064 940235439 749105987 921873333 462925751 383484689 914675473 778004846 498981541 291150051 927785401 488421434 755481391 299938464 302509500 739817905 833063637 646664522 835823203 821111347 11304149 65367698 935787306 793932594 312711327 639086868 283673381 6166669 930919231 957649197 991295735 888797244 207857474 585875844 956584669 298711906 281211706 220005793 803807817 450474379 352053685 818959516 852483493 579069742 463394765 560371436 493575389 999607090 894878276 312461617 233271538 281204039 748499356 985349772 871071210 517797101 831527122 355335055 932028494 406395237 871389282 960990509 50886173 900624446 985881586 723079083 500296524 792402897 942405674 797126010 298327352 403725820 312211371 281085977 255465917 581521247 526017370 78421570 736183861 297105632 850002609 808773776 922051172 267194917 981725913 779871274 834755650 746077601 961592414 421057488 168963237 982728558 707260891 690558220 369405938 98640119 499696732 26363452 998416896 614540965 413311417 104142292 880013923 50616356 960240494 660172030 871147954 948090065 700343021 352770017 124058825 996155395 57139669 664187541 888022236 72916435 685577402 611483005 954101903 798979474 883983465 819583212 179662921 869006650 754476236 182514105 794975730 903318583 842481899 946253777 448961125 686828371 363832131 322362412 767708265 623709016 962014054 817037888 908674032 742815315 517792699 665008064 848126555 850997230 850113237 994248137 852935084 810484792 919496680 844799983 979823473 282415299 189409397 770555228 936991951 704602547 850535560 158309723 515410828 333341115 999101368 685276139 962689952 707961105 536453024 726143232 987445108 521408049 996601420 813449136 185302165 747306776 817879622 62577164 419540949 961232625 739097798 875072511 672903856 824101705 790387822 444476069 979627040 977316921 804793863 295668194 872326953 860575816 327997124 243675038 372857185 856088938 568918471 866721009 870823530 643110424 755636536 864208189 866976144 652696011 279187160 94918386 805632370 708567925 80742795 872913120 742768865 995830602 188847730 598002495 695287679 906725648 343101455 411725171 519958076 820598953 958091161 927397087 348809802 529485631 520118474 628373210 289977462 838665193 462583713 544591761 641901919 791175021 311784770 753103247 900573849 918539495 978299378 941241017 267915271 924373871 377934520 947803113 268208538 948991965 711616022 14962305 845086111 51919945 678972851 825972172 766752735 75234784 430672623 38120951 920477505 496590569 947585819 901994902 858219936 674235950 854641836 826479080 898638772 823707459 584414667 915434740 868176855 49186798 552856812 731160844 792803644 908544800 992156816 916751279 190542719 804057532 495642937 263137001 838969333 583493732 936171795 407968696 867883337 59787415 737020247 13947241 907470056 764276898 909314514 634542116 254978646 581763542 795405970 780188636 920486153 858784000 927958276 886414304 121797105 755422231 16202457 941586740 958365082 965349620 826316270 330026893 888035380 326058164 546437076 580450971 554807627 921007738 307169120 767245936 915224200 784946014 785345914 941255983 854728140 808163338 955967645 276395796 949977674 827874608 161189694 534242082 837532243 443894847 987706090 961414169 605699403 924074494 705280318 173683099 736007903 971672260 914200172 881867626 469020253 819217828 556441215 715466896 966363780 995587210 795173561 468918739 780188756 430491691 767360169 570723442 875144694 837431528 912971235 383112611 382853856 635915232 833411227 64975776 818185602 263228379 975231617 989651989 546323517 754428269 807830530 999575776 993994543 464448654 869741425 989900011 777365526 390284203 961549155 907306824 75997018 154263304 978381042 334801244 573473218 513869819 419540572 852268925 873747096 758319790 750032557 880613750 748908907 560486514 684999746 129229185 402950504 892610069 782334173 433451643 897046365 605815653 375306096 110343559 837560377 974477140 62021755 861788389 804523015 165585278 634185889 311724213 106747150 817235666 944437132 866422095 889995984 59074448 774317590 927771205 895550135 677370968 968699530 955626398 36527095 27636001 940912940 742271503 810762273 985548751 103023972 23153718 104448756 601903010 195422942 258887887 88587455 593347571 737020247 726492757 168676424 113179539 985988663 440470110 949753503 817136300 544822031 509420718 212928138 97960053 4740594 812582111 928914730 948536648 903084103 910606009 212104017 132888581 103870682 741084043 926581500 49510618 187747076 640032387 917697887 436000877 380150752 316247562 452530495 918673422 399496003 851234025 743463523 786424404 810199812 143549381 676947950 496959566 567471489 900507850 79335622 828025486 852613080 555205030 358948583 919550938 876619812 854158544 863310772 65450131 777798662 800099312 852340339 969907532 575216681 828203293 257414683 753779156 769542361 361465914 914853543 152820994 67391030 686835278 937693337 971581097 52850582 785427557 631375143 929399058 762079444 766000694 632631134 808466180 669955817 901893721 985524813 976298523 518175627 883224241 334811789 212392841 311202232 195967462 259477197 988134343 301870784 319968363 327306479 60305038 693228015 304479659 473022446 928095203 511408948 387221284 985766109 629599248 119883459 873169356 995356839 980349740 214492230 741710317 549430496 935437875 459265004 531241707 853221275 881515692 796652837 203248862 684336197 827922210 912729494 774827009 385519646 841796021 544184632 526543439 3754687 908951611 866062109 251110979 789085592 899088861 984280520 608174013 30743037 811821443 835864697 897401485 959352044 985519138 888721541 967959400 849840679 751089725 523982751 779842269 943841342 761211925 407869869 993156370 991975958 526511557 955462175 338236980 324609380 334853763 890815635 467417310 13235027 567492416 374248363 427902329 488436002 764625635 247154546 934040465 938783432 508109216 850516826 407271823 979294821 682835239 992465786 748801005 408284128 179041307 991473548 976877359 781073847 905520693 942298578 976934814 808746492 561819159 606850307 819226884 366417107 927187059 816820493 802313289 846674525 612867673 238442677 139232984 799869320 188067504 172323566 775164242 408996093 405148150 968245944 990518954 955074624 446155604 425222380 288544799 256153138 828300017 217284203 756669689 588909605 291168659 977439401 3335794 617467705 798282814 429367116 863942790 872334823 416577434 915626998 289743196 837489950 528469753 935458731 970734232 482857329 45427653 846729234 960842549 863949485 577441436 511648821 436342996 323805218 647587552 949650535 979289002 173933975 358631684 443188713 929566891 915258936 771708905 934440382 551708141 872644069 934384245 743149722 966381515 888179525 604014184 339633064 803803176 513717869 810862519 948114426 936958055 55051223 16156388 859380193 979278754 685375667 558926795 325518839 951293058 301231833 857135735 436260373 867061339 56947366 986402138 799724350 775471190 968868254 455344803 941111627 877403472 434016377 527114072 317614352 780962888 784228980 945628504 954531141 739529597 843130724 406844583 797917227 986401097 830875349 951009965 57085183 912125215 965070274 753855743 807895924 999930276 652331253 738011907 971158460 53410853 836522973 280743366 43586090 664456616 624418928 789890403 949042470 613415815 765209266 766139512 569876911 652634832 854069455 876559953 833607968 608435749 368126435 449021984 932414768 797608738 892574447 778146924 739278357 997053871 765108051 953265987 184360524 285820153 894187092 914435800 283109340 979652669 7030861 724540110 901564598 758439402 492030003 486810557 784869839 323847023 972826763 939007722 206813842 897460156 816295726 335067944 858661420 363278608 858658602 898687714 751854838 954335418 876249685 819110710 910215544 997347329 629506345 55114937 825380588 987679461 372073585 869585485 216113606 36312883 660597842 918492831 979144322 680475162 787776177 996258462 568549766 337076165 341265672 578560514 874293359 867192045 90717228 813972064 879439465 878126898 579543673 944545936 844627364 210608644 812844848 221439487 921685434 849297261 310474076 710884431 74750330 910981366 853983378 841374620 942388119 967145498 674912742 471710308 683911681 955905288 853840567 382366089 512335259 75697652 711190001 920409991 322450496 786101975 955788947 597704723 849360616 189058135 877911004 350682899 951743750 550938619 760802318 743633547 711233067 795488326 309122550 755523312 90129836 987231337 202837176 426356198 704222848 884041959 840690789 817964447 921662511 745765022 629736260 44745270 757286252 384887689 987028730 852391996 823721882 733386719 909416141 516708986 439857601 639733727 95276893 916859696 779665562 894306165 428532591 429070320 576271661 882349182 275462624 467126298 165096006 71780625 85677455 906145307 999837549 903898082 974730634 449966642 554757115 806240977 848505258 775334708 411275341 315317646 682125727 775632545 999859370 513808525 312290529 755074170 454829753 269182683 294808749 413375226 954476577 356014444 301096745 833470442 184363835 504253123 541556782 501527850 846856668 939037045 162754088 783812023 742196520 349388979 961432368 878342999 321880088 740249715 773397207 375293106 816719646 807023164 804452496 366389961 861700307 831927150 821909867 73583329 120751798 742384802 954595899 16088332 344873854 124742130 746775091 792618618 340445655 899328192 265713473 960067058 445220489 853448332 983124033 816783791 752596459 287482034 238846785 939629927 769399471 789421215 32710934 521350475 888202070 759075595 378510828 853379829 914254590 746752842 958424812 20157588 920095236 380930563 947796120 859468061 420036723 790838383 842190635 833780392 294893952 833264266 929841835 782785523 620919509 961575530 527705755 514176563 702401046 2515007 884253984 572586847 14925864 248792345 975683723 96347464 959249809 423464444 870321036 702916666 823808864 771517510 846844183 845136792 897543413 772183079 802211322 981687755 448552683 828905229 797223865 510604155 770143125 264996769 941033370 797706279 226213112 359043009 5892439 581150024 93624247 743326157 798965970 129459008 706819974 542111167 486639459 998950257 883311140 776944170 432961358 12967657 317084825 919796608 304730379 527520246 396757350 532957884 35327850 87708648 759050160 854474182 831668376 908578149 198934297 764831604 364025685 391037566 756331834 923087112 422868911 522860862 237608047 739726573 988010540 702305391 851474257 745200051 811633844 845462463 657366264 91938135 901620825 154147179 89375275 119140895 705372462 919940470 889538270 397005096 749104153 836035463 907482172 259621733 945583151 256985821 789345702 191441132 760747051 952369845 937949468 935644532 320688017 925011320 880947180 970573521 523446093 743096411 888854985 233670306 937749274 755467729 829719333 790829660 848831463 578685902 384034112 927617610 975471585 963893366 362281582 323146659 129521834 946401735 298992177 645729808 732205808 242848633 425944934 126210725 907650988 881321459 245981081 100781002 787072105 779926680 54240747 521402031 918030126 34545590 962049754 295270507 108158898 927224955 734059545 154523426 893333214 865987099 188024888 188577113 503772201 300320222 647851080 347486845 360024775 344743262 548130730 902539015 867171891 905591912 986693484 662465731 845489511 650376238 42082857 13843726 284247706 582168207 900222580 250814467 461529681 815816481 256079298 878088335 215557146 912303673 824213909 816500210 776150251 811401625 147020642 202190145 861433267 939835315 423161098 814536795 991403935 579910407 277485654 147172803 71170279 830085623 52358325 782127081 850235032 477660327 958896419 868028214 505156760 464734785 692157888 328112400 853036895 532446381 847002910 683043199 832838690 237990673 744398134 997988523 822353616 841119864 860093122 867996674 286975123 942812066 567681155 812667155 803744320 964137291 537671081 941893865 929069102 943156637 204675691 7359133 461754690 203600974 265075224 625523490 607062406 790715052 773495949 387250018 805909079 242147343 708386751 970098005 379478481 655164853 676163701 995868113 286070860 944589120 552889059 658790118 826829481 732552577 167252621 902839026 997576338 982657116 933506256 867185537 918854480 997146706 968239410 602995238 913527187 923350742 765028339 12832398 736058329 860822055 412202377 944468485 294261467 161167772 860061402 698408371 288581948 538907493 552707414 880582178 625453966 752185447 607463598 982432275 63095479 857198351 265603573 616608232 136991853 916822399 963065944 106599894 981748218 442777904 540823450 620301504 861647189 668295567 87978936 696503050 451787303 610024382 300036595 31644249 61669007 969720933 780126418 89923302 994171266 63173237 69397893 104232719 704898592 383114390 605902063 941181189 816692758 873189647 582413569 882924166 60299285 974813307 949257335 966597195 124970057 632286697 694678733 343667683 781967430 752735162 844797673 789194777 660273478 903725468 842667180 893431547 871397773 818134420 625633346 833822638 35878694 777963662 975725034 940022646 866559523 681231770 817174441 150904206 219939198 509163331 959653010 796418560 749341446 483533225 907819190 152001385 948213175 540282188 854572607 941878062 634877055 41824037 985497042 775511742 882728741 870834398 686052772 784456149 90790387 993508120 879912561 864410858 651188572 998346262 822863999 881272096 699105790 962242237 194345078 21103595 539507207 157915452 24510818 840348431 854480876 851276152 860453144 46558921 35276680 325001115 650680072 320936584 952221914 618605716 809669220 614343697 462693096 834854195 895811218 837852617 834916507 893360971 888787870 818494715 828968123 427999323 795076957 750607440 308510488 81559082 106554108 216149851 669216688 771440076 271140595 244174847 820856250 468429846 741387684 249657146 180778691 703665643 571277747 684552328 410814060 936307722 666340493 484164037 28747353 796966816 809444786 230667421 948195233 569653315 656571692 32754914 120818295 734922367 786574630 933387304 61721812 855128861 868320760 630517540 943705228 601530088 576092071 964160264 805403422 762608521 815455287 884430767 587190578 476073335 845598462 795055236 872071959 991328199 970418743 245522407 776429555 957552188 698960177 826826622 863183282 97087743 271047812 785410011 836146522 776869458 841985464 845383306 478999846 877670929 248243198 175376389 165555400 207346941 933161019 996451528 799597521 751098818 517776524 278982630 255843505 976673331 375634348 789181545 905119766 264575000 275885624 120938620 859179447 856118504 929794464 499672185 996804027 879297469 535845817 866093472 988869528 556862497 915383322 158349881 412929919 423315536 289161362 359867999 506980820 762418514 444420649 823056792 302821785 849375805 826168649 702272820 575014469 812553978 929808148 808458339 382111711 423717286 351540455 206277468 979769802 970803142 953538574 64720631 608967312 141089441 329439328 659745116 486362732 408690294 942744244 880233052 303149320 934123456 898566155 941676874 698973281 863106703 969088121 454520110 996162894 641253160 778589018 738295583 378512354 45531502 804172507 585455347 632802186 810356818 753956216 836385161 632332462 987359806 63961068 224050900 350596038 620083249 819823895 136992771 942507408 688663607 380545943 908441271 778056312 782996817 737020247 961576871 605834534 942915537 190162218 95799762 900989906 962680828 351295948 897353579 394096334 897892233 378517458 602267317 960861355 801772721 894104817 66287124 864499777 906564139 260990659 826621412 89118159 613574075 235819198 395568356 566393887 529480618 511376250 930231695 594430969 3278169 368806625 882678988 254259122 918742345 392403214 360744978 671652837 842798709 814549333 455107843 983166099 845915307 920011800 95836842 978026014 307766086 394165222 564894317 840057029 194086434 826707135 375855973 852040847 750612773 766640943 649569521 597832188 492920056 924297138 817482431 900965538 367698851 914328338 898937825 821926087 867337385 813076543 915916598 896950615 144623717 773481943 776434017 720098396 943707016 783051076 962996239 921989192 934654212 162062172 791925306 175098109 988296305 299373480 234119489 897413902 96764275 771222325 172016125 21416586 348582634 112080541 849831133 896425047 190855445 162293557 781344305 933319852 947463269 812318181 398380451 158069395 993909967 47636683 491221918 313557803 832971918 813539776 903084946 217994552 258975397 288510799 67425234 230745220 866456824 230745663 796378447 838295076 795132312 571592740 58715189 946078643 256430936 995962056 948543715 207737298 571678999 838055705 290581474 124021591 697705276 623023305 321588106 278028742 744458519 566643060 334958539 190314822 488366997 146263800 500181246 835115702 296968664 827290000 887000972 574616256 496013125 974575841 185019169 922988832 229390630 743269680 127835408 429605222 494631873 942027125 671927600 813413063 781470369 890137436 624854306 490420852 362957079 877379982 922848440 158350394 837280128 599154822 936585226 190945617 904276930 837961632 73214908 737222453 330864733 812368320 550416990 784813478 768983518 595330960 751670724 614529300 424645717 876699317 199477870 773626681 615826076 373314636 91851877 801886920 559226338 795925825 684969655 990528240 940837927 820663771 35398336 89809912 737646732 620988017 200561534 369074805 768008674 222568364 120398946 883086211 762201170 187606919 594536101 766701049 902604817 749840315 801866029 584820083 954329852 885375280 128020846 170286711 747307301 808917723 757058999 232974911 624504271 810167475 214175855 223280392 244079820 793787855 387731801 445598961 208523705 199544514 96438572 464331811 260509309 746023387 580162710 874100427 801854589 530860876 851189610 113259267 862750704 470359337 924825027 759909906 332001175 994977438 76762934 598682762 224497287 13241359 597863988 949671969 501211667 219829034 234205476 328421683 626041393 771303678 714779173 414742993 292684659 439420330 790423836 802022474 386540882 427066065 701042590 918368473 209936016 970916196 909480725 150154708 138766198 85965320 431501882 469778388 837694405 404531542 878092134 877814082 783754371 228701752 791363103 972276463 233630421 404182027 932812452 862225426 830174868 744566188 709574094 806699173 255787368 979758450 358961866 168469667 834460511 952222716 710646876 107908273 988644745 52593696 516500223 917888784 947102121 233583954 994403733 955894232 984684168 936473287 32128955 172576519 820891524 795194885 370042854 170918954 864825026 804650525 509591116 586952038 982530016 176865489 739116982 863576148 755051286 50703212 947377512 84087044 972282877 94140713 548031344 897464181 463840994 709216235 823265066 900625413 800355855 902187619 730038201 41960218 537830175 662959832 896622438 142830537 797294883 694726127 740779459 649669809 835786721 774498382 831190462 877116259 744780191 849393149 926538073 412418233 574958743 740990317 814500023 519165004 40717113 873773190 216063706 321249162 902221022 955082573 798747048 37822742 760287543 382176650 340258189 71274938 751500967 830751377 878506983 105051520 545536771 749564484 28335601 890265834 729777701 782338151 713981266 920424305 360657364 821659859 8915192 744522367 272036143 893198905 858801804 842064505 103848979 954174833 877518062 386371909 737650405 177086104 843097705 465907569 836284398 769426305 609629864 667889849 183325608 687368034 681645259 552203500 66388164 752441100 559629089 766433338 881823617 466831761 955092234 943852237 894011247 963702981 467640304 658941399 419513670 871816129 987904488 857405961 580532307 254331625 822925041 799427913 817037217 390013202 197645167 669519217 429768666 737020247 939132102 843048897 842049553 442235534 244849560 307205314 140666981 438824546 605827224 900845229 840294792 980100774 717316499 208440310 826029635 343958101 555798152 193752512 832956677 767993666 333309936 756485726 662444958 951444614 715194082 912933167 849555161 619251991 231897857 762538145 768544055 5937493 641500750 946758337 958010332 937100447 869596910 343118293 779383304 667133162 992051853 6509494 380596372 212958207 96979257 517378618 243164873 736667719 784666965 245806468 896619487 993398025 672416798 817544800 147330086 809478543 434347235 904095331 84423704 213602365 114187398 179497875 999958305 512383178 747758290 279542072 969378302 341148791 446155123 245591100 693958776 745960974 637454127 872931800 635076707 975106449 824292656 373670944 495085906 313013931 925112860 905105259 107084801 167099397 790664944 599501411 899637453 796369175 221854463 386390987 940533852 416284773 933028280 999322464 799860912 146108958 555527502 885969823 921398053 803156054 765679002 195476244 186782378 515076166 986399191 838184704 364059508 777219132 75707415 384639905 739761211 729763165 763869043 891093311 925516383 322930332 288203445 849490277 197853751 54072220 356074385 867167348 135236225 857238433 682989804 896204355 520559106 913037859 774869229 850081853 271468835 85433277 929600965 537465391 976055833 519352309 875784226 685690580 302566834 368147118 586426803 986857493 803180960 257652363 481454491 959602627 396977885 350052234 183580464 823653328 51724236 954326453 489654667 528505262 778247555 440933333 479440812 311180656 977696567 656730859 762107842 852908963 797518244 606471063 676497213 188398801 824372299 888984888 740918378 870278589 364460561 424223989 953989806 349031428 202754839 69042280 808382910 841454219 988121744 877534982 936231159 957660492 580735568 915508601 771049550 802742156 847349753 720373465 65924813 753785415 976952683 267570477 123692925 844605621 667384886 127558929 141685458 983994107 736019186 772438072 942633007 890130616 810909712 513024475 548793546 379404975 173773582 290877077 992471969 398406008 385787647 907254955 429791653 497297269 544429111 177231698 950691352 12275604 297780391 283871302 802154871 506558266 816399764 310168503 904150018 466409363 275227680 785677095 800457372 678007488 971717404 990271089 265234130 777519441 957628839 808082737 709170445 809647334 820181993 702868777 581751913 942172658 998000713 664429732 16955577 273965306 473790733 918708608 62612881 574479447 931762776 741340745 140941981 866635181 906008686 396835602 865588105 45427904 827360155 32818228 697485238 769777381 610075600 971781948 368350997 751152972 768918071 579153938 846957697 917278257 938067013 853515735 197654696 782306252 805180126 868948973 790120259 363373989 801442368 973504935 545542735 873351543 444718858 879435881 151692568 834047710 164236972 776791247 342521930 891695110 353748433 737216477 687105820 11664164 76917230 860836620 639091000 991526448 871895540 810802890 744127792 843110377 974315169 914673055 519851784 105917609 921237561 888555368 465221503 797309673 297073527 804743479 751601994 426608587 705998397 106962409 185001351 796345112 981376009 134934665 61094906 190413868 694685452 919376131 740156921 986778903 111963498 728228497 998638946 997628168 888087080 929268984 234042416 616397425 199497572 936931873 262087901 805637347 894236575 318474555 994626498 364332830 826186076 527822513 747427392 271906308 774459216 880266973 710074907 674425384 327647189 573070852 747506018 764377925 774375661 931191623 922453671 367442913 958600605 439147867 802635022 520398201 419229779 875247971 908717491 988597562 816548621 24801442 975894661 995352724 765908971 825846139 183685550 792536904 347390143 740439300 381700967 791125278 489290221 37641047 456180513 766480492 877228887 247704433 792119709 843402232 898072502 848159946 226180141 865847140 973731235 935109497 317420748 636973437 763319439 472712508 644370742 774167081 870967457 217481774 45807217 543410343 26126962 845320294 900335707 796579773 407436693 253613412 717043681 508806250 215155530 790497591 73959037 217885961 970606532 541162757 568168787 148233592 950856943 592034178 914867036 355132282 671285626 749764742 971069334 192040567 483089090 618316147 956632411 671043843 192464708 132281416 263733455 85237582 428534696 457085030 243922633 584537324 90908844 829305968 29044497 576225242 760726419 627063342 488315971 498605413 506073391 862452646 431223878 444987523 933071630 850118730 926964308 681894983 972981613 924254480 488057826 586742367 718454925 857673120 674601078 504246766 95124979 630458357 485793067 317050038 834287576 95818766 564314884 422877797 934310515 856115177 387968867 203596725 812653646 765513388 397986573 432181298 811597711 894203783 630599105 385706698 766866820 996560863 784205301 777335246 748914227 695842945 548000456 500598754 153445569 823704856 874920869 546336734 536855784 766544610 489992875 984529963 817904951 648055038 515275580 270388627 151459090 886379346 584291605 998885728 962264088 840308615 797021757 784271366 364690071 577341379 608490440 865309930 16999796 119704207 231760416 791479305 584147349 785977140 642450163 973824332 128312952 755101232 710574359 394384753 878078306 987561128 822317040 86738568 346195412 717015894 186305567 310964914 813680963 988751892 639315371 596787241 965025476 492789451 815864348 277841466 746895223 807248149 459051239 301314819 496585321 937922358 935609224 917409889 192070033 884145326 768612452 738256884 810004820 806713648 785539532 808777081 1845432 153759532 951979823 613840125 650862718 719448176 876432055 850205926 318805080 929596727 317708126 973324251 191333165 746624376 241690203 716094584 662430302 485496483 729067540 400310031 812967193 932419708 245949979 783968716 761221077 31368149 455656047 772306227 243078227 264440342 96022739 877261933 984632394 956620567 956118184 626430538 368095945 747169362 474468003 78654810 866491077 431765085 770461166 201906401 829804517 224951441 555803534 9793894 779694693 952242456 209457697 448257874 976572594 797713996 883667374 777539085 421624930 740320838 115862636 878976963 892227616 52589052 609740964 984280099 769363571 980465362 167507972 489317669 864531041 867040757 35692080 931306183 445239898 440583578 100007301 864684660 904290928 995220515 894970875 456055532 349190104 197219997 783975007 5632205 772405697 962282985 725643286 609957414 249302909 34187098 502873587 833106161 799770449 884756799 972475262 907002066 928080704 830762171 259216715 753144574 847186161 997595384 710009160 797954050 632720692 947374038 764706118 514434600 87971064 902117480 730021512 600981862 747362891 925760969 959767838 109515016 977640365 919126645 726929972 948340730 682656213 622461278 761141075 826720806 924947962 311933952 799259235 996919968 666449336 587482548 764550617 122220226 396511228 134091976 215628782 852781295 957000570 768379471 664758592 205911037 779267708 797345190 944746271 949291870 777300496 321937054 760383130 830325272 583998138 628430939 240536417 385295689 608909353 876626995 194741319 456646854 510844063 360966399 496511594 801925140 392727282 797829885 116590217 932944621 662070663 624595350 747985178 927815766 377793356 716544320 862566307 54937025 692760392 880560387 600698272 579344470 934752321 326168630 373742553 328178387 874645059 832075486 997459626 194425007 634410347 215627018 220130058 373211726 392318482 877713482 874679303 813070547 984370031 779927039 958946675 895101833 348960802 306926141 996323656 901519311 566149589 253483834 885517159 700089098 617878302 964552021 918154018 959623124 601201468 17093252 245356118 41756302 884291038 79336299 247188183 975443363 919565547 10838079 433580691 795371005 871050876 740391406 815011441 203713307 930115944 931073052 692353712 258896664 791166155 836250169 955160030 918431402 246870075 933812386 993987759 349089545 372996862 25123353 39318822 600404741 276573733 191172772 140693385 978051362 882921862 892662198 925801059 518277498 620611319 48433888 831087915 773059838 911048102 955797675 939617917 531078817 618444026 153424168 878591932 741395350 473684995 937145945 144103504 771782825 646912870 650261921 834682525 94392366 856271935 856784044 716284119 915556463 907328549 555522756 930754393 827102744 233938348 784097520 355509100 923928522 747175966 697464750 704433772 46793362 888628999 953007443 954246159 38306431 496832283 37711333 934315495 154446141 44766570 743416012 104786181 979623084 756672864 818058735 595608465 265078974 254731258 951859968 789862229 909312254 773804808 866828995 609572827 124155677 510291304 348810489 589890537 908229330 662406373 651901198 999125214 873098889 437569054 422204427 426105732 868510508 855747778 499896815 211974815 811373818 844784667 886062871 764676501 900004930 737020247 197531505 802471222 844106369 885011552 317707451 90001704 391361745 253200618 770661156 270882782 869030653 992214426 871120280 934086064 865066722 302316293 392446521 846092649 13053310 801570989 700017866 852742720 179925017 586435655 750969448 614301333 944949479 619348126 874184906 389097380 893511322 782119915 904264607 851072647 561516014 386199625 873612866 286954019 794085451 887285515 524299975 668655246 979374907 200691008 158830375 586208344 181513515 229753376 828903373 101652810 267051796 384536570 741253231 760110946 505986928 46849337 796463046 754660232 288299126 426651127 282084140 973902547 667912165 246185744 155328537 552004765 932593997 83814853 797087096 424173507 450308914 891111237 886025809 883538783 551737955 830310596 752554275 317005872 59716105 75434675 851795086 919002460 982950313 780549167 793502878 514052457 739667440 872300829 769812189 883116922 863262463 466625778 477534255 924417243 383053042 749384610 353970615 101780633 637937513 692910550 312062357 189551401 65645374 101021558 388549259 987811618 322835339 862524053 771699073 273270104 37615308 781242393 939615922 822359935 906010875 989402870 795741854 621292631 791949278 217353485 807625028 966077347 141958856 37771928 123208222 103056197 833362869 96495195 440341718 41795889 929807553 770176012 947275571 626146600 873334383 950641302 483532707 958587732 890790375 320799109 853738841 535599399 453579631 412708866 787766093 106389776 15267794 784125074 338583113 632388013 711452217 698655240 177060859 973917282 955511088 772228369 782875118 71929265 420978969 786881287 609143228 689544075 66552515 349914943 554612077 630075601 109754736 759917789 978155117 851286787 414690217 194439300 978997439 85380598 256891088 864622398 499517765 867387727 107851998 358293742 690324431 119530538 162476064 999056553 938604352 934573699 763066096 372548539 955912831 571670086 240684064 773456079 722601908 178774402 967677306 555580578 852939230 493045011 518981543 740407709 535651457 856514246 757888272 603831807 966030670 877086247 804904561 814608824 82351558 221367535 867786817 802829970 736987236 656395517 808176761 97767948 31219481 16546591 849558312 770613960 780873992 873861819 816258074 899495261 416285747 895908342 485954907 599114846 708108333 791250604 556739437 780017292 854792115 267842965 31543707 833892618 855951358 632527022 803214217 84576029 498962722 943812336 745283807 304172077 132236967 823661562 521708861 887356969 541705418 654630338 748919186 708964984 745036402 825256774 946095261 813496182 611922469 401706816 740272482 774153493 737020247 159117227 481060038 108716575 820347661 880802323 800888906 770319149 528600389 999102545 822620429 903209363 651394608 765714016 783762225 374596423 932180482 816905673 943366503 481411209 607138633 97899004 735652354 135804649 894707546 171221620 167131544 762608274 137097993 587441131 941322906 143373373 790944303 484132977 858426425 664100765 780209034 961820922 831983416 927251546 829980037 847574146 921406440 745711952 589595974 811632330 411890213 429630959 641568626 971213002 758107253 811383624 908349676 734252607 567002667 138583511 713612518 701699061 154568653 96217890 521117259 443419138 842554237 930835782 989471596 823148349 878119011 508815708 834111115 754484411 242268711 890282243 11611021 970220021 845919161 963489443 841572414 305564906 45855214 864678812 211600055 99222325 266137419 142831217 985469208 852089209 116504223 803616791 929663083 726561162 457658913 32209943 754698406 626142457 159742351 794479210 177743332 740870381 836174569 932695532 752209617 392047709 754944248 82527710 885703053 567864932 135716462 366599683 890324593 362771539 993273648 666949601 955618697 315546749 976041455 421957027 429507933 571980593 915199805 266761254 519763416 256069133 904479603 972924865 984982500 744606548 895909047 841166488 512924472 400725733 18180054 757352362 885978012 472238621 236043602 899847791 740820510 811010890 422092501 914636146 32684212 257635219 554316443 759401454 564815901 698524055 249986149 482412962 738922398 825409460 720591181 947175251 902481725 745115051 608906228 949569965 853829838 364500660 301789838 963080499 123536339 772034375 589681982 497497490 984342165 548687504 232324550 762926652 273059810 811680522 842420535 267793363 840287797 774527291 173642555 541928104 830354476 377467156 70879389 126454088 306848762 405433142 895979642 628909079 95766830 752849876 330210318 990401533 947241262 743003613 555975857 260754624 230146400 780621282 910015642 920170978 729187189 50166021 232155398 568555349 389358630 974285840 788560872 163991729 945369760 959426602 905713002 814488755 149681701 979435199 950592389 808464602 915326720 856568402 931073721 830380384 689051912 827590408 247390904 483332551 288859594 476558769 461306661 849978039 88876532 736448262 817761668 378850781 130411898 493530419 123654351 742190275 492921484 867416931 775202401 633242157 383885181 857880865 249430497 959667377 854203863 992958361 970143764 454253891 825431293 874483240 188213839 148608339 188870770 274595629 419772953 777212488 995433055 478895006 233204145 90094358 629020732 83246316 52570883 754760037 992263115 819789994 433571372 462822705 898112863 905635673 868114819 794203803 945097804 681943217 593973986 628065914 810007105 318449823 49282517 790682577 309027830 102925531 985629950 65756897 848305913 225241165 914161233 761868895 850924705 474171734 849505037 520791312 988596674 658914667 455398126 957525745 909050480 830577547 997778180 836502619 326422177 898057391 757319123 999630580 865345503 834286297 497621392 803759859 975213236 927426685 933388221 278056398 56182738 989299745 555657831 207671941 792967750 826876570 755095927 55704182 990970308 327288385 708078422 383718674 909427139 886183427 131420806 969964796 219587165 771263097 233242958 959575075 451640215 763932686 675720962 808406939 949385707 640374024 253181025 964272382 492215221 829518467 145254907 956842205 799622844 871109118 371889897 614082201 940294087 378893760 893855843 243770347 270517183 578962040 687692717 609955836 362745521 497583023 843227593 743481774 599169562 378915495 332431762 800602368 949988493 588341348 481609058 985458830 215014688 827933459 906749040 948054112 419719748 211182185 343164656 80081817 462521684 952522915 139067894 591642627 702542953 789725536 509948093 46038674 953681129 941022130 393441261 225141848 795933656 776407340 806627074 937204323 189363600 380517443 344972128 964160322 151658127 546557986 871042975 174039155 249125475 317052178 653048590 578302607 274603495 839480341 631325671 233243968 771027831 890408445 106051552 649174945 960547976 667343706 864329541 764683569 146493838 683585800 790393584 781812458 824566421 975424984 754538545 292848124 680561426 769235912 508058510 992231567 232618045 16279199 888148769 835405670 652720382 590439935 937461756 507798291 851245642 819536894 187677941 891965640 739659606 512597661 906052704 732027099 602763197 153332976 38760853 50793409 187085964 676990913 219194144 116429787 954106932 561157966 925988253 834947014 179699065 729045667 786290452 575877707 62975754 510865856 984800640 979729915 328629490 813342432 572120452 837129253 868329210 496287706 875356802 792308114 347523121 796422846 597537472 355090159 105889951 838349524 136971072 783630919 33268750 874458126 110444672 678945956 753308309 874998286 786891584 814436549 988734392 701980032 918820629 983977763 233214305 860445891 73667832 419174319 793625286 711477521 790896735 468334627 832230854 914630784 244442349 772372706 946112674 879850700 68702469 120566037 994746956 637572261 565985131 283779670 896933950 396227133 571724852 782077071 677282691 970466926 48138703 351196501 978312383 989850817 918945037 901336710 592860311 288590372 91027388 327573916 877429426 76923843 221607547 924802262 884097689 912221177 739980100 833534066 759163189 719103480 772350406 495717782 827531259 828907993 32916644 475549126 884897329 887196194 54289746 84041614 905807776 51347020 841276780 910529614 847097583 451487818 775609092 914503715 862856000 488217210 690440341 240501164 896594187 638768529 971938237 702042356 125830300 908760665 946929992 193648811 814161551 913362146 203928685 509688060 376817654 408592273 644657075 774710186 737020247 847564408 801259231 621344640 453564754 760814723 156360062 65250168 450533769 718181317 37837532 77592241 361480172 320401541 937414697 754834890 744652044 325773313 627056679 881994867 979253931 981125063 806574361 919537382 180154533 819103759 216973344 817893157 119669669 872810652 776586100 294710251 527673361 274251035 692028711 243349055 442917397 784216526 515164080 906721779 122853494 687129206 997616520 921980140 929279070 987739175 805713751 887728570 462183883 831464653 933327260 393495435 893231892 717574440 859037117 259824483 990879268 563323083 997677851 531221319 269320551 967140307 843232264 885061224 112051620 762722568 74105470 807617503 974289373 363761510 943459092 772586254 655120755 64954282 203862432 98295572 45293755 85048512 939709703 365867857 237830880 774083124 7019749 660225873 945344888 548852025 307233863 941379938 19633546 73200778 815216428 836742251 692623378 799723653 30625395 556109328 543741536 938762890 749636002 577124461 527560229 72890738 831708755 852408432 696041148 240071431 581788211 519415265 891803985 784551062 683880704 70615375 652891695 487126496 693862055 770664119 833525897 908907095 826329424 431760215 332037542 978201455 789593040 131552890 989647207 925466304 321486032 886565940 962975937 721845164 865545274 667161888 905377546 491544095 74244741 378785328 918002430 355878266 867609114 861355381 860060472 810494274 136031390 521622583 926628430 351214427 345956030 760672435 938745042 921828818 19243817 711632189 980961105 925710668 455643715 354705847 797296194 911763150 145925142 148264293 88818602 723172593 256887771 292432674 789748803 876942846 895254925 343556088 863500077 81151530 932238002 856289052 632670960 865699350 868015441 812963998 887062998 445962447 199483223 333872020 617872292 771463683 965401124 971178126 570087708 308035760 481385333 700232467 902675118 813284786 57401503 735751207 820974620 744509797 899857830 120097309 744186889 194743381 43713382 823780542 48163651 736983939 288298274 637418294 616695218 959070199 928860177 892385621 444739013 399944330 831516125 368039564 843989426 775718338 949328734 150426491 596037871 590455965 891365239 797538133 974241370 309945068 41383621 2863124 585734359 758046675 175352653 913498795 770488916 749530728 713334626 417934501 6221304 868594652 327284854 313065142 891794292 747572702 221522218 121020660 827198498 201110696 957022294 340253479 942353258 255830682 857993746 694841317 871066981 767710428 995173485 117265527 807055472 175489826 916599596 152642650 898054780 33339180 768671526 907585728
